Test de mi gameEngine en C++

Todo aquello que no está relacionado con Gemix Studio ni con la programación DIV en general.

Re: Test de mi gameEngine en C++

Postby erkosone » Fri May 31, 2019 4:19 pm

Raylib 2.5 publicada. No digo mas .. atentos a las proximas noticias. Gamelibzero 3d esta cerca.
User avatar
erkosone
 
Posts: 10654
Joined: Tue Feb 24, 2009 2:13 pm
Location: Barcelona.

Re: Test de mi gameEngine en C++

Postby Hokuto7 » Sat Jun 01, 2019 9:36 am

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.
User avatar
Hokuto7
 
Posts: 1396
Joined: Mon Aug 28, 2017 10:14 am

Re: Test de mi gameEngine en C++

Postby erkosone » Sat Jun 01, 2019 9:51 am

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.
User avatar
erkosone
 
Posts: 10654
Joined: Tue Feb 24, 2009 2:13 pm
Location: Barcelona.

Re: Test de mi gameEngine en C++

Postby Hokuto7 » Thu Dec 12, 2019 9:18 pm

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.
User avatar
Hokuto7
 
Posts: 1396
Joined: Mon Aug 28, 2017 10:14 am

Re: Test de mi gameEngine en C++

Postby Hokuto7 » Tue Dec 17, 2019 3:20 pm

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.
User avatar
Hokuto7
 
Posts: 1396
Joined: Mon Aug 28, 2017 10:14 am

Re: Test de mi gameEngine en C++

Postby CicTec » Tue Dec 17, 2019 5:51 pm

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();
  •     }
  • };
  •  
User avatar
CicTec
 
Posts: 16553
Joined: Thu Jul 31, 2008 10:18 pm

Re: Test de mi gameEngine en C++

Postby Hokuto7 » Tue Dec 17, 2019 10:20 pm

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().
You do not have the required permissions to view the files attached to this post.
User avatar
Hokuto7
 
Posts: 1396
Joined: Mon Aug 28, 2017 10:14 am

Re: Test de mi gameEngine en C++

Postby CicTec » Tue Dec 17, 2019 11:05 pm

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(){
  • }
  •  
User avatar
CicTec
 
Posts: 16553
Joined: Thu Jul 31, 2008 10:18 pm

Re: Test de mi gameEngine en C++

Postby Hokuto7 » Wed Dec 18, 2019 7:20 pm

Gracias por la ayuda Cictec. ;)

¿Que diferencia hay entre .cpp y .h?
User avatar
Hokuto7
 
Posts: 1396
Joined: Mon Aug 28, 2017 10:14 am

Re: Test de mi gameEngine en C++

Postby CicTec » Wed Dec 18, 2019 9:27 pm

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.
User avatar
CicTec
 
Posts: 16553
Joined: Thu Jul 31, 2008 10:18 pm

PreviousNext

Return to Offtopic

Who is online

Users browsing this forum: No registered users and 5 guests