Las funciones cubren cosas como la entrada del jugador (teclado, ratón, joystick, joypad, force feedback), render (objetos 3d, OSD(On Screen Display)), tiempo (un juego debe ejecutarse a la misma velocidad en cualquier ordenador), sonido, etc.
El proyecto empezó en 2001, intentando llegar a ser una pequeña librería 3D, como un entrenamiento en
OpenGL.
Pero Raydium empezó a gestionar más y más cosas (motor de tiempo, scripts
PHP, su propio motor físico,...), y actualmente está a punto de ser un completísimo "motor de juego".
Como demostración, aquí se muestran algunas de las características técnicas de Raydium:
- Portabilidad (ANSI C) : Linux / Win32 (y probablemente algunas plataformas más)
- Renderizado OpenGL (80 000 vertices por frames a un framerate muy correcto), soporte para niebla, iluminación dinámica, transparencias, skyboxes, Multitexturas, MipMapping,...
- API muy simplificada: con una curva de aprendizaje muy simple (ejemplo: raydium_object_draw_name("objeto.tri"), raydium_sound_load_music("musica.ogg"), ...)
- Integración con ODE (Open Dynamics Engine) en el nucleo de Raydium, oreciendo el acceso de una manera muy simple al motor físico (ver RayODE)
- Consola en el juego, permitiendo acceder a Raydium o a una aplicación en tiempo real.
- PHP Support: PHP/Raydium interface, for a full interaction between PHP and applications. It's possible to write almost all the application with PHP (see RayPHP and RegAPI).
- API de red integrada, para juegos multijugador con la mayor sencillez.
- Soporte OpenAL: sonido, música (streaming OGG), posicionamiento de fuentes 3D) en un puñado de llamadas a funciones.
- Scripts de construcción simplificados y soporte de binarios estáticos, para facilitar la distribución.
- Soluciones de Importación/Exportación para otros formatos 3D: 3dStudio, Blender y DirectX (ver ImportExportTri).
- Joysticks and wheels fore feedback support (Linux only, for now).
- Repositorios de Datos: Las aplicaciones Raydium pueden descargar ( o subir) ficheros perdidos. La subida de ficheros también está soportada (ver R3S).
- Soporte de mapas de iluminación, cálculo de mapas de iluminación por radiosidad, con FsRadRay (ejemplo: http://ftp.cqfd-corp.org/radiosity_tex.png)
Raydium es software libre, disponible bajo la licencia
GPL.
Raydium está diseñado para ser el motor usado tras el proyecto
MeMak, pero algunas pruebas fueron creadas con este motor (ver diferencias al final de la página), y un simple juego completo:
NewSkyDiver.
Hay un montón de motores de 3D/juegos (y algunos muy completos como
Ogre,
Crystal Space, ...). Raydium no pretende ser tan complejo como esos motores, sino todo lo contrario, intenta apuntar hacia un diseño rápido y simple. Un buen ejemplo de esta simplicidad es
NewSkyDiver, un juego en menos de 750 líneas de código.
Los tutoriales (Tutoriales Raydium) demostrarán esto.
Página web de Raydium:
http://raydium.org
Ver también
RaydiumMedia.
IndiceES