Page 30 of 33

Re: Test de mi gameEngine en C++

PostPosted: Fri May 31, 2019 4:19 pm
by erkosone
Raylib 2.5 publicada. No digo mas .. atentos a las proximas noticias. Gamelibzero 3d esta cerca.

Re: Test de mi gameEngine en C++

PostPosted: Sat Jun 01, 2019 9:36 am
by Hokuto7
He probado un poco esta nueva version y solo me funciona la version de mingw,la version de tcc no funciona,me dice algo de kernel 32 y no se que mas.

Los ejemplos de sonido en general me funcionan bien,solo hay uno que tiene musica de chip tune que al final se ralentiza,los ejemplos de shader solo me funciona uno el resto dar error y tambien probe los ejemplos de fisicas y hay uno que crea objetos con el raton y al poco empieza a ralentizarse.

Me da la sensacion de que quitando el motor 2d de raylib el resto de modulos,ya sea el de sonido,el de fisicas,el de shader etc..No son muy buenos,creo que ray tendria que haber utilizado librerias externas de calidad para cada cosa como tu lo has hecho con la libreria de fisicas chipmunk que es de calidad.

Esperemos que no de problemas el 3d que quieres meter en gamelibzero porque supongo que utilizaras el motor 3d que trae raylib y esperemos que el sonido funcione bien esta vez,si no tendras que meter una libreria externa para eso.

Re: Test de mi gameEngine en C++

PostPosted: Sat Jun 01, 2019 9:51 am
by erkosone
Yo esoty de conversaciones con ray por que quiero empezar el port a web y necesito algo de info sobre el entorno para crear la compilación para emscriptem.

Pero vaya.. que la libreria de sonido de raylib si que es verdad que no está bien optimizada, sobre los shaders y el 3d pues es normal, es por tu targeta grafica, pero la fisica deberia irte bien.. pues la chipmunk me consta que te funciona bien, y en processing la box2d tambien.

Re: Test de mi gameEngine en C++

PostPosted: Thu Dec 12, 2019 9:18 pm
by Hokuto7
Al final esta version de c++ que vas a hacer,¿,la retomaras algun dia o queda descartada definitivamente?.

Creo que tenias que haber usado tilengine,estoy seguro que el creador de tilengine te hubiera ayudado a realizar tu engine con esta libreria grafica,ademas esta persona es de barcelona y podrias tener contacto directo.

Porque no haces una pequeña prueba con tilengine para ver que tal funciona.

He leido en el foro que hay alguien que esta realizando un engine con esta libreria junto a c++,pero para programar la logica del juego a introducido lua como lenguaje a usar para el que quiera usar su engine,es decir,el engine esta siendo creado con c++ y tilengine,pero el usuario usara lua para hacer su juego.

Re: Test de mi gameEngine en C++

PostPosted: Tue Dec 17, 2019 3:20 pm
by Hokuto7
Tengo un problema.

Tengo dos clases,nivel 1 y nivel 2.Quiero llamar a nivel 2 desde nivel 1 pero como nivel2 esta debajo de nivel 1 no me lo detecta el compilador,supongo que habra que hacer una expecie de prototipo de la clase arriba del todo pero no se como.
Source Code (C++) [ Download ] [ Hide ]
  • class nivel1:public process{
  •     void frame(){
  •        new nivel2();
  •     }
  • };
  •  
  • class nivel2:public process{
  •     void frame(){
  •     }
  • };
  •  


El codigo es solo orientativo.

Re: Test de mi gameEngine en C++

PostPosted: Tue Dec 17, 2019 5:51 pm
by CicTec
El compilador C++ usa un parser top-down (como casi todos los compiladores) o sea de arriba hasta abajo, por ende se espera que las definiciones de clases sean ante de su utilizo, en este caso no lo es porque hay una llamada de nivel2 en la clase nivel1 y nivel2 aun no esta definidad, asi que o defines ante nivel2 y luego nevel 1, o usas una "declaracion forward", o sea declarar una clase (no definirla):
Source Code (C++) [ Download ] [ Hide ]
  • class nivel2; // declaracion forward
  •  
  • class nivel1:public process{
  •     void frame(){
  •        new nivel2();
  •     }
  • };
  •  
  • class nivel2:public process{
  •     void frame(){
  •     }
  • };
  •  


o invertir las definiciones:
Source Code (C++) [ Download ] [ Hide ]
  • class nivel2:public process{
  •     void frame(){
  •     }
  • };
  •  
  • class nivel1:public process{
  •     void frame(){
  •        new nivel2();
  •     }
  • };
  •  

Re: Test de mi gameEngine en C++

PostPosted: Tue Dec 17, 2019 10:20 pm
by Hokuto7
El problema me vendra cuando acabe el nivel final y intente ir al nivel de inicio,como este nivel esta abajo del nivel final me dara error.

Lo de declarar la clase(no definida) como lo tienes tu ya lo habia hecho y me daba error.Te voy a pasar el tipo de error que me pone,si no hay solucion tendre que manejar los niveles desde la funcion draw().

Re: Test de mi gameEngine en C++

PostPosted: Tue Dec 17, 2019 11:05 pm
by CicTec
Se vee que la forward no es suficiente en este caso, solo te queda separar definicion de clase y definicion de metodos, los primeros en un .h y los segundos en un .cpp:

fondos.h:
Source Code (Gemix) [ Download ] [ Hide ]
  • class nivel1:public process{
  •     void frame();
  • };
  •  
  • class nivel2:public process{
  •     void frame();
  • };
  •  


fondos.cpp
Source Code (Gemix) [ Download ] [ Hide ]
  • #include "fondos.h";
  •  
  • void nivel1::frame(){
  •    new nivel2();
  • }
  •  
  • void nivel2::frame(){
  • }
  •  

Re: Test de mi gameEngine en C++

PostPosted: Wed Dec 18, 2019 7:20 pm
by Hokuto7
Gracias por la ayuda Cictec. ;)

¿Que diferencia hay entre .cpp y .h?

Re: Test de mi gameEngine en C++

PostPosted: Wed Dec 18, 2019 9:27 pm
by CicTec
De nada,

.h es "header" o sea fichero de declaraciones de "cabeza", el CPP es el fichero donde se definen las funciones, variables, metodos de clases, etc...

En una programacion ordenada, se hacen las definiciones de clases y algunas declaraciones en los .h y las implementaciones indicadas anteriormente en los .cpp.