Un moteur voxel est-il approprié pour un jeu de type Minecraft?

27

Pourquoi Minecraft utilise-t-il des polygones pour dessiner le terrain du monde au lieu de voxels? Un moteur de rendu basé sur voxel serait-il approprié pour un monde de jeu entièrement destructible construit à partir de cubes comme Minecraft? Serait-ce plus efficace que d'utiliser des polygones?

jeffythedragonslayer
la source
Qu'est-ce qui vous fait penser que Minecraft n'utilise pas ce qui est essentiellement une représentation voxel de son monde? Je veux dire, quelle est votre source pour cette déclaration? J'ai toujours pensé que c'était le cas.
Josh
minecraftwiki.net/wiki/Map - Plus précisément: "Minecraft utilise un système de voxels qui est une grille 3D incrémentielle dans laquelle chaque point de grille contient des données pour un seul bloc."
Ray Dey
5
Bien que Minecraft utilise une représentation voxel du monde, elle est rendue à l'aide de polygones. Ma question était de savoir pourquoi il n'avait pas écrit de moteur de rendu voxel.
jeffythedragonslayer
Mon erreur, j'ai mal compris
Ray Dey
1
Le rendu de voxel en utilisant le lancer de rayons sur le GPU est totalement possible avec les GPU d'aujourd'hui (ou d'hier). Avec des structures intelligentes (qui sont simples pour les voxels) et une utilisation intelligente de la mémoire, vous devriez être capable de rendre une scène énorme en temps réel.
Notabene

Réponses:

28

Pourquoi Minecraft utilise-t-il des polygones pour dessiner le terrain du monde au lieu de voxels?

Le matériel graphique fonctionne avec et rend les triangles, vous devez donc utiliser des triangles si vous souhaitez accélérer le matériel. La plupart des moteurs de rendu de voxels utilisent quelque chose comme Marching Cubes pour extraire un maillage polygonal d'une représentation de voxels et le présenter; le rendu de volume direct est généralement coûteux en calcul.

Un moteur de rendu basé sur voxel serait-il approprié pour un monde de jeu entièrement destructible construit à partir de cubes comme Minecraft?

Oui.

Serait-ce plus efficace que d'utiliser des polygones?

Probablement, mais pas parce que les voxels sont plus rapides ou moins chers à rendre (en fait, ils sont plus chers à rendre car vous devez convertir l'ensemble de données). La représentation Voxel se prête à la manipulation plus facilement que les polygones - il est donc beaucoup plus facile d'ajouter et de supprimer des morceaux, des morceaux et des morceaux du monde représentés par l'ensemble de données.

Josh
la source