Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Presentación

Iniciado por victor, 15 de Marzo de 2006, 11:51:11 AM

« anterior - próximo »

victor

 Bueno es mi primer post, soy nuevo aqui, sólo es saludar a la peña, llevo  años dedicados a esto de la programación fundmentalmente base de datos, ya estoy un poco quemado de las sql, asi que voy hacer algo en el tema del videojuego, haber como se da.

-Ya tengo algo hecho, estoy haciendo algunas funciones en irrlicht, parece que es interesante este motor, en realidad me estoy montando una lib a partir del irrlicht, lo que estoy haciendo es quitar la programción poo de irrlicht y hacerla tipo funciones, supongo que será una tonteria, pero creo que es mas efectiva, ya me contaran.



Un saludo a todos.

   
ico3dGames

josepzin

 Bienvenido! a ver si nos muestras algo :)

victor

 Claro aqui va algo es un bsp del quake 3

En realidad con la lib creo que se podria hacer ya un juego, creo, puesto que está casi todo, falta el audio

Saludos






ico3dGames

LC0

 Hola, victor.

Citar
-Ya tengo algo hecho, estoy haciendo algunas funciones en irrlicht, parece que es interesante este motor, en realidad me estoy montando una lib a partir del irrlicht, lo que estoy haciendo es quitar la programción poo de irrlicht y hacerla tipo funciones, supongo que será una tonteria, pero creo que es mas efectiva, ya me contaran.

Creo que es una muy buena forma de practicar el destripar una engine para adaptarla a tus necesidades. Así vas viendo como funciona por dentro y más cosas que solo los forenses pueden sentir :D.

Pero, en un sentido más práctico, prefiero la estructuración POO mil veces que cualquier otra, y más aún para videojuegos.  No hay nada tan cómodo como poder estruucturar las partes del engine en subsistemas y meter ahí las funciones y los datos  concernientes.
Con programación estructurada a pelo queda algo más "guarro", por decirlo de alguna forma.

No me extiendo más porque hoy estoy como los zombies. Hasta otra,

MrSickman

 bienvenido Victor!!

Yo ya te conocia del "maravilloso" foro de Entidad 3D.
http://www.entidad-3d.com/foro/viewtopic.p...f20497e030974da
Digo maravilloso porque gracias a ese foro (no con tu post, sino con otros que deberias conocer) me lo he pasado en grande.
Animo y dale duro!! (ole)  
a href='http://gpufever.blogspot.com/' target='_blank'>GPUFever blog

victor

 MrSickman, no le entiendo, pero si, parece que hize alguna comparación que no sentó bien en fin, pedí disculpas y listo.





///*=============================================================

//Ejemplo usando  Valkiria

//By Victor

//==================================================================

#include <valkiria.h>           //la libreria



int main()
{

// create device

ValSetMode(800,600,16,false);         //crea el driver de video

   ValCls();                                 //borra la pantalla
ValLoadIntro("../../media/intro.jpg",1,1);  //carga imagen intro
ValFrame();           //la hace visible

IdItem item1=ValLoadItem("../../media/centercon.jpg");  //cargamos grafico item
ValItemAlpha(item1);      //lo ponemos canal alpha para trasparencias

   ValLoadMap("../../media/pak0.pk3","../../media/q3ctf3.bsp");  //carga el mapa que esta dentro del zip
   ValLoadFont("../../media/font1.bmp");            //carga la fuente  de letras
   ValCaption(L"Valkiria Game");   //nombre en la ventana
   ValSetCursor(false);                         //oculta raton
   
   ValUnloadIntro();   //descarga la intro
   
   //***************creamos el cielo **********************
   ValSky(                                
   "../../media/space1_up.jpg",
"../../media/space1_dn.jpg",
"../../media/space1_lf.jpg",
"../../media/space1_rt.jpg",
"../../media/space1_ft.jpg",
"../../media/space1_bk.jpg");

//ponemos efecto de iluminción falta por encapsular en la libreria

   node->setMaterialType(video::EMT_LIGHTMAP_ADD);
           
           
           
  // ValMapCollision();      //ajusta las colisiones del mapa
 
 
 
     ValFpsCam(100.0f,300.0f);    //creamos una camara fps
    ValFpsPos(0,100,700);        //posicionamos la camara
    ValFpsRot(180);              //rotamos la camara
   ValFpsGra(-3);               // aplicamos gravedad
 
 
    //======================================================
       
    //   creamos una entidad
    //=======================================================  
   
    IdMd2 sy = ValLoadMd2("../../media/sydney.md2");  //cargamos modelo
       IdModel symo = ValCreateMd2(sy);   //creamos entidad
           ValMd2Collision(sy,symo);    //hacemos que la camara no lo traspase
           ValMd2Texture(symo,"../../media/sydney.bmp"); //aplicamos la piel
           ValMd2Pos(symo,0,50,800);  //la posicionamos
           ValMd2Rot(symo,0,90,0);    // la rotamos
           ValMd2Sca(symo,1,1,1);     //la scalamos
           ValMd2AniName(symo,"flip"); //le aplicamos animacion
           ValMd2AniSpeed(symo,30);     //velocidad de la animacion
     
       //============================================================
       //   creamos un arma
       //===========================================================
         
           
           
           IdMd2 sy1 = ValLoadMd2("../../media/gum.md2");
           IdModel symo1 = ValCreateMd2(sy1);
           ValMd2Texture(symo1,"../../media/gum.bmp");
           ValMd2Pos(symo1,20,-20,40);  
           ValMd2Rot(symo1,0,-90,0);  
           ValMd2Sca(symo1,1,1,1);
           ValMd2FrameLoop(symo1,0,0);   //no queremos animacion
     
           ValFpsGum(symo1);  //aplicamos el arma a la camara fps
           
           
while(device->run())
{
 driver->beginScene(true, true, 0);
 smgr->drawAll();
 guienv->drawAll();
 
 
   
  //sacamos textos y item
  ValText(L"Point:",10,510,200,50,0,255,0);
   ValText(0,150,510,420,50,255,0,0);
   ValItem(item1,0,0,128,128);
   
   ValFrame();
device->drop();

return 0;
}






ico3dGames

Lex


victor

 Construyendo una librería sobre él

Como puende ver en el codigo, intento quitar las clases, creando funciones, no sé si es una tontería, pero creo que el codigo es más facil de entender.
En esa linea va toda la libreria, las funciones empiezan por Val.. y los nuevos tipos por ID...  

Saludos
ico3dGames






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.