lunes, 16 de junio de 2008

Usar AllegroGL

AllegroGL Allegro es un add-on que permite el uso de OpenGL junto con Allegro. Muy difundida su práctica para el desarrollo de videojuegos.

Descarga e Instalación: Para nosotros que utilizamos Devc++. Ir a [Herramientas -> Actualizaciones -> Chek for Updates] . Marcamos la casilla "Allegro". La instalamos y listo.

La versión que nos descargará es la 4.0. Actualmente hay una versión 4.2 Beta.

Testando la instalacion:
Vamos a probar un código sencillito para ver como se ve.

1. Crear un Proyecto Nuevo: Elegir Windows Aplication. Y luego borrar el código por omisión que no genera.

2. Enlazar: Ir a Proyecto -> Opciones de Proyecto, y en la pestaña Argumentos para el programa "Agregamos una nueva librería (/Dev-Cpp/lib/liballeg.a)".

Es importante que en la carpeta donde guardemos el proyecto y los archivos, tambien siempre incluyamos la librería dinámica "alleg40.dll".

3. Codigo:


/***************************************************
Autor: ElBoludo
Version: 1.0
Descripcion: Pequeño tutorial de introducción a
Allegro.

El programa se ejecuta con una resolucion de
640x480,una vez cargado, debemos pulsar
cualquier tecla para ver el textopor pantalla.

Finalizará cuando pulsemos la tecla de
Escape [ESC].

Obs: Es un claro ejemplo de juegos que te
mostraban los diálogos
entre personajes o te detallaban los
objetivos.
*************************************************/

//En ella ya se incluye la "windows.h"
#include <allegro.h>

//no hace falta, lo puse por constumbre
using namespace std;

/* Constantes. Posición inicial del texto.*/

int x = 10;
int y = 10;

// ------------------------------------------
// Programa Principal
// ----------------- [ CODE ] ---------------
// ------------------------------------------

int main()
{
//Es la forma de declarar una variable entera.
//Aun no me explico que hace
// el 'register'
register int i = 0;

//Inicializa el hardware
install_allegro(SYSTEM_AUTODETECT,
&errno, atexit);

//Inicializa el teclado
install_keyboard();

//Inicializa la pantalla en una resolucion
//640 x 480.
set_gfx_mode( GFX_AUTODETECT, 640, 480, 0, 0);

//Nos preparamos para leer una tecla
//cualquiera.
readkey();

//Mientras esa tecla no sea la de escapa,
//nos quedamos en el programa
while (!key[KEY_ESC] ){

//Por cada iteración, limpiamos el
//bufer de teclado
clear_keybuf();

// Tomamos a la pantalla.
acquire_screen();

//textout es una funcion para mostrar por
//pantalla de 6 parametros
// (donde, fuente, "Mensaje", posicionX,
//posicionY, IDcolor).
textout(screen, font,(" Bienvenido. \
Soy fuente por omision y color blanco."

), x, y, -1);

//Liberar, limpiar, etx
release_screen();

//no lo sé :D
rest(50);
}

return 0;
}
//con Allegro es necesario que finalicemos
//de esta manera
END_OF_MAIN();



Leer más…

miércoles, 9 de abril de 2008

Ejercicio Número 2 de Colas.

No incluyo Cola.cpp ni Cola.h. Doy por hecho que ya lo tendrán.

Determina el máximo de una cola de elementos de tipo Valor, sobre los que está definida la
operación ‘MAYOR(Valor, Valor) -> Boolean’ (que compara los valores y devuelve
Verdadero si el primero es mayor o igual que el segundo y Falso si el primero es menor que
el segundo) utilizando para ello únicamente las funciones definidas sobre Colas. La cola
puede tener elementos repetidos. Utiliza sólo las operaciones definidas sobre colas.


#include <cstdlib>
#include <iostream>

#include "colas.h"

using namespace std;
typedef int Valor;
bool Mayor (Valor x, Valor y);



int main()
{
Cola p;
Valor x, mayor, a, b;

//Cargamos la cola
for (int i=0; i<=20; i++)
{
if (p.Encolar(i))
cout <<
"Agregando.. " << i << " a la cola" << endl;
}

mayor=
0;

while (p.PrimeroCola(a))
{
p.Desencolar();
p.PrimeroCola(b);
if (Mayor(a,b))
mayor=a;
else
mayor=b;
}
cout <<
"Mayor: " << mayor << endl;

//Prueba Desencolar

/*for (int i=0; i<5; i++)
{
p.PrimeroCola(x);
cout << "Desencolando " << x << endl;
p.Desencolar();
}*/
system("PAUSE");
return 0;
}


//################################################################
//================================================================
// Mayor(Valor x, Valor y) -->
//
// Mayor. Si 'a' es mayor o igual que 'b' --> Booleano
//
//========================= CODE =================================
//################################################################

bool Mayor(Valor x, Valor y)
{
bool ok;

if (x>=y) ok=true;
else ok=false;

return ok;
}



Leer más…

domingo, 6 de abril de 2008

Abrir archivo desdesl Dev C++

/**********************************************
Nonbre:Pablo Mora Murie
Ejercicio: gran descubrimientoXD
Descripción: ejecuita i ya me diras
**********************************************/
#include
#include
#include
using namespace std;

int main ()
{
ofstream g;
string fichero, fichero2, a;
cout <<"Introduce el nombre del documento a guadar: ";
getline(cin, fichero2);
fichero = fichero2 + ".txt";//podia aver sido otra extension
a = "call " + fichero;
cout<< "a= "<
g.open(fichero.c_str());
if (!g)
cout<<"error al abrir fichero"< else
{
g << "texto k kiere k aparezca el el documento"< g.close();
}
system (a.c_str());
system ("pause");
return 0;
}

Leer más…