Question

Je travaille actuellement sur un générateur de planète procédure OpenGL. J'espère l'utiliser pour un RPG spatial, qui ne permettra pas aux joueurs de descendre à la surface d'une planète, donc je l'ai ignoré ROAM quoi que ce soit lié. Au momement je dessine un cube avec VBOs et la cartographie sur une sphère comme le montre ici .

Je connais la plupart des techniques de production heightmap fractals et ont déjà mis en œuvre ma propre version de déplacement du point médian (pas utile dans ce cas, je sais).

Ma question est, quelle est la meilleure façon de générer la procédure heightmap. Je l'ai regardé libnoise qui me permet de faire tilable Heightmaps / textures, mais pour autant que je peut voir je besoin de générer un filet comme:

this

Laisser l'évidence carrelage.

Quelqu'un pourrait-il me conseiller sur la meilleure route à prendre?

Toute entrée serait très apprécié.

Merci,

Henry.

Était-ce utile?

La solution

On dirait que vous comprenez le problème avec la génération d'une surface plane, transparente et ensuite essayer de cartographier sur une sphère.

Que diriez-vous d'utiliser une fonction de bruit 3D à la place? Une fonction de bruit 3D prend 3 coordonnées au lieu de deux comme son entrée, donc imaginer un nombre entier de matrice 3D générés (au lieu d'un tableau 2D). Ainsi, une fois que vous avez une fonction de bruit 3D, vous pouvez générer une texture 2D, mais au lieu d'utiliser les coordonnées 2D pour chaque pixel, utilisez les coordonnées de l'endroit où 3D pixel serait sur la sphère. (J'espère que cette phrase alambiquée fait sens!)

Jetez un oeil à mi-chemin vers le bas de cette page sur Perlin bruit: https://web.archive.org/web/20120829114554/http://local.wasp.uwa.edu.au/~pbourke/texture_colour/perlin/

Je pense qu'il décrit exactement ce que vous voulez en ce qui concerne les domaines.

Autres conseils

Vous pouvez également consulter cet article de 2004 sur la façon de « scission » une sphère en parties faciles à gérer.

http://www.gamedev.net/reference/articles/article2074.asp

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top