Hey,
Ik ben al enige tijd bezig met een voxelengine in javascript/three.js (WebGl dus).
Laat ik beginnen bij het begin, ik heb een wereld die arbitraire grootte (maar niet oneindig!) heeft, maar laten we aannemen dat hij in het videomemory past. Voor het voorbeeld hieronder is het geloof ik 320*320*96 voxels. Uit gameplay overwegingen wil ik het beeld van een speler beperken tot (bijvoorbeeld) 128*128*96. Daartoe wil ik eigenlijk dat de camera slechts een deel van de wereld laat zien, en dat ik eenvoudig aan kan geven waar de wereld 'geculled' wordt. De camera wil ik dan kunnen bewegen door mijn wereld, en daarmee dus andere delen van de wereld tonen.
Hieronder staat een voorbeeld van wat ik bedoel, het witte gedeelte van de wereld wil ik wel zien, het groene niet.
Ik heb het geprobeerd met de near/far van de camera, maar gezien die schuin boven het beeld hangt wordt dan ook mijn wereld schuin afgesneden, dat is niet mijn bedoeling.

Verder zitten er self-shadowing issues in, maar dat is voor latere zorg
Ik ben al enige tijd bezig met een voxelengine in javascript/three.js (WebGl dus).
Laat ik beginnen bij het begin, ik heb een wereld die arbitraire grootte (maar niet oneindig!) heeft, maar laten we aannemen dat hij in het videomemory past. Voor het voorbeeld hieronder is het geloof ik 320*320*96 voxels. Uit gameplay overwegingen wil ik het beeld van een speler beperken tot (bijvoorbeeld) 128*128*96. Daartoe wil ik eigenlijk dat de camera slechts een deel van de wereld laat zien, en dat ik eenvoudig aan kan geven waar de wereld 'geculled' wordt. De camera wil ik dan kunnen bewegen door mijn wereld, en daarmee dus andere delen van de wereld tonen.
Hieronder staat een voorbeeld van wat ik bedoel, het witte gedeelte van de wereld wil ik wel zien, het groene niet.
Ik heb het geprobeerd met de near/far van de camera, maar gezien die schuin boven het beeld hangt wordt dan ook mijn wereld schuin afgesneden, dat is niet mijn bedoeling.

Verder zitten er self-shadowing issues in, maar dat is voor latere zorg
[ Voor 4% gewijzigd door windwarrior op 23-04-2014 19:47 ]