Ir al contenido

publicidad
publicidad

Foto

La influencia en el rendimiento del árbol BSP


Este tema ha sido archivado. Esto significa que no puedes responder en este tema.
3 respuestas en este tema

  • txesmi

  • Childrer

  • vida restante: 100%
  • Registrado: 14 jun 2009
  • Mensajes: 41
#1

Escrito 24 septiembre 2010 - 00:42

Esa meripeña,

Recientemente he realizado una profunda investigación en este tema tan obviado y difícil de aprender como es la correcta formación del árbol BSP en nuestros mapas.

El estudio lo he realizado con el incomprensiblemente olvidado y gran motor como es el 3DGameStudio / Acknex y su script LiteC. Más concretamente con la versión A8Commercial.

Este modesto motor nos brinda una característica que no abunda en los motores disponibles en el mercado: El árbol BSP. Es una característica que comparte con los grandes motores como el UnrealEngine y Source, no así con otros motores recientemente vitoreados como el Unity3, que carece de esta imprescindible, a mi parecer, característica. De hecho es una de las características que me llevo a profundizar en éste y no otro motor.

Aún siendo concebido para liteC, creo que este estudio os puede aclarar alguna cosa a los que hagáis cosas con el Hammer o el UDK. Para mí ha sido una auténtica revelación, aunque ya lo venía intuyendo.

Enlace a partidabierta.com

Salud!

#2

Escrito 25 septiembre 2010 - 18:07

Hola txesmi, no conocía Lite-C / 3D Game Studio A7. ¿Puedes hablarnos un poco de ello?

Estoy buscando entornos de programación, XNA parece que goza de una gran comunidad pero no me acaba de convencer el lenguaje utilizado. Prefiero C++.

Saludos.

  • txesmi

  • Childrer

  • vida restante: 100%
  • Registrado: 14 jun 2009
  • Mensajes: 41
#3

Escrito 26 septiembre 2010 - 11:38

Hola,

El 3dgamestudio es un motor 3D para programadores que se vende como herramienta para hacer juegos para principiantes pero nada más lejos de la realidad. Tiene diferentes versiones (Página de características).

El motor Akcnex funciona con la librería DX9c, así que solamente es para Windows, aunque a veces funciona con Linux y Wine.

Es un paquete de tres programas:
- MED Editor de modelos. Es una pequeña herramienta para guardar los modelos creados en otros editores en el formato standart mdl7. Contiene las herramientas necesarias para gestionar las texturas, animaciones de vértices y huesos, niveles LOD (level of detail), etc.
- WED Editor de mundos. Es la herramienta para construir mundos. Su principal función es generar el árbol BSP, incluir los modelos como entidades y asociarlas a funciones. Desde el WED se pueden configurar casi todos los elementos de nuestro juego.
- SED Editor de código. Es la herramienta para teclear código. Tiene casi todo lo necesario.

La interfaz de estos programas es bastante chapucera y pueden parecer unas herramientas deficientes frente a la finura del U3. Personalmente prefiero que se dediquen a mejorar el motor en vez de vender apariencia.

El gamestudio nos brinda el script LiteC. Es un script secuencial (no está orientado a objetos) pero puede parecerlo, puesto que cada entidad incluída en el mapa puede tener una función asociada. Hereda la sintaxis de C y se pueden utilizar muchos de sus tipos. Las versiones de pago compilan el script a lenguaje nativo, por lo que no es un lenguaje interpretado en ejecución.

LiteC dispone de estructuras de datos con funciones de gestión para controlar todos los elementos del mapa. Por ejemplo, la estructura 'entity' (cualquier objeto 3D insertado en el mundo) contiene su posición, orientación, etc, y modificando su valor se obtiene un efecto en el mundo virtual. La estructura 'entity' también contiene una serie de variables donde albergar los valores que nos interesen: 2 cadenas de texto, 8 variables booleanas y 100 variables de 32 bits de tipo 'var', que es un tipo especial de liteC, así como un montón de variables para modificar animaciones, brillo, transparencia, etc. Bueno, lo que quería explicar es que LiteC tiene una serie de estructuras y funciones para manejar todos los elementos que pudieras utilizar en tu juego como sonidos, imágenes, cámaras, etc.

El motor Acknex también se puede utilizar como librería gráfica desde tu IDE con diferentes lenguajes (C#, C++, Delphy) aunque yo soy programador amater y nunca me he liado con ninguno de ellos.

Acknex tiene incluídos un motor de colisiones con diferentes eventos, un motor de física (A7->ODE, A8->PhysX), conexiones de red, shaders en HLSL, luces dinámicas, enlace a WinAPI, árbol BSP, herramientas de depuración, manual completo, etc. Seguro que me dejo algo importante Xp

En mi opinión, es un motor excelente para gente como yo, que ha aprendido a programar buscándose la vida por ahí y no espera ganarse la vida con ello.

Más información en
3dgamestudio.com
partidabierta.com

Salud!

    madara

  • EXPULSADO
  • vida restante: 0%
  • Registrado: 16 nov 2006
  • Mensajes: 3.140
#4

Escrito 02 octubre 2010 - 14:27

Pues el arbol sparse octree basado en voxels da mucho mayor rendimiento, o eso dicen...

El far cry 1, crysis y crysis 2 lo usan. Instalate el editor sandbox del dvd de crysis, es mas facil y comodo que el udk. Menos completo pero mas rapido. Y su escenario de terrenos esta basado en voxels, lo que significa rapida edicion con su mapa de alturas.


Este tema ha sido archivado. Esto significa que no puedes responder en este tema.
publicidad
publicidad