2010-09-29 16 views
5

En sus opiniones, ¿cuál sería el mejor lenguaje para crear una grilla grande (masiva ...) basada en vóxeles 3D?Voxel 3d "grid"

es decir, como Minecraft (http://www.minecraft.net/)

observo que Minecraft fue creado en Java, esto obviamente tiene sus desventajas. ¡Ayúdame a tomar una decisión! :)

p.s. Se trata de wiki de la comunidad, por lo que no hay puntos ganados, justo después de las opiniones :)

+3

Java * * obviamente, tiene sus desventajas, como claramente * * siendo inadecuados para un juego de varios millones de dólares que tiene una rejilla grande (masiva) 3d voxel basada. Solo digo. –

+0

@jleedev - No le pedí a la gente que criticara lo que le pedí. Me preguntaba '¿qué idioma sería el mejor para el juego de cuadrícula basado en voxel? –

+0

Si está pensando en hacer un clon de Minecraft: * no lo haga *. Minecraft * ya es un clon *. Minecraft ha ganado * millones de dólares *. Notch ha trabajado en eso * mucho más de lo que harás *. Si no eres, sin embargo, ¡la mejor de las suertes! –

Respuesta

8

las estructuras de datos que recogemos va a ser un montón más importante que el idioma que elija. Es probable que un lenguaje que le permita obtener locality of reference tenga ventajas de velocidad en la detección de colisiones y cálculos de visibilidad, pero puede obtenerlo incluso con idiomas administrados.

Minecraft es un POC bastante decente que Java puede manejar grandes mundos voxels, siempre y cuando no se escribe el código retardedly :)

+0

Gracias, supongo que no sabe de algunas estructuras de datos que podrían ser útiles para mí (para investigar también) –

+0

+1 para señalar que esta pregunta es esencialmente sin sentido. El idioma es importante para la dificultad de la curva de aprendizaje y el mantenimiento, pero aparte de evitar elecciones idiotas, no tendrá un gran impacto en el juego en sí. –

+0

@Neurofluxation: nunca programé voxel por mi cuenta, pero creo que deberías echarle un vistazo a OCTrees. – snemarch

3

Es posible que desee echar un vistazo a Field3D, que es un C++ biblioteca para el almacenamiento de vóxeles (tanto en la memoria como en el disco).

http://github.com/imageworks/Field3D