Port de AL3D para C++

Estas últimas semanas he estado trabajando en lo que inicialmente se trataba de un port del motor de renderizado en javascript AL3D pero que al final va a tratarse de una siguiente versión del mismo motor de renderizado.

ALMath ha sido totalmente portado a C++ aunque actualmente para el motor de renderizado se usa la librería matematica GLM.

Actualmente incorpora un pequeño subconjunto de funcionalidades de AL3D pero ya incorpora algunas mejoras con respecto a la versión de javascript. Las características que soporta actualmente son las siguientes:

  • Cargador de mallas (en formato obj) y sin texturas
  • Luz direccional predefinida en los shaders sin posibilidad de cambiarse
  • Camara ortográfica y perspectiva
  • Bounding Volumes en tiempo de carga. OBB y AABB
  • Selección de mallas mediante Ray Casting (a direferencia de la versión de javascript que usaba trucos de opengl para realizar la seleccón).

La idea es introducir técnicas que se usan en motores avanzados como Deferred Shading y cuando esté acabada la versión de C++ evolucionar la versión de javascript.

El github del motor es: https://github.com/RdlP/CAL3D

Se ha creado un pequeño programa de visualizador de mallas con el mismo motor, su github es: https://github.com/RdlP/MeshViewer

Algunas capturas:

cal3d_pikachu cal3d_suzanne

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *