GeirGrusom Skrevet 21. juli 2012 Del Skrevet 21. juli 2012 I et privatprosjekt jeg holder på med nå, så har det kommet opp at jeg trenger å proseduralt generere voxel modell av en planet. Det jeg har gjort inntill nå, er å danne et octree som omslutter hele planeten. I hvilket som helst av disse cellene skal det kunne on-the-fly genereres voxler som presenterer en vilkårlig bit av planeten som kan plasseres vilkårlig relativt til cellens posisjon. Det hadde også vært fint om dette gikk å danne på de ytre cellene også (altså ikke bare i de innerste), for å kunne danne en mipmap modell når man kommer et stykke unna. Det som egentlig jeg fant var litt problematisk, var at en slik funksjon nødvendigvis må danne en sømløs figur Foreløpig har jeg bare en slik funksjon: bool GenerateVoxel(const float radius, const float x_angle, const float y_angle, Particle& result); Den må føre til sømløs tiling, samt at samme verdi inn bør gi samme verdi ut. Dette er geografiske koordinater, ikke kartesiske, av den grunn at jeg tenkte det var enklere å genere en rund kule med slike parameter. Dersom funksjonen returnerer true, så er det blitt plassert en ny partikkel i result. Så luft skal alltid returnere false. Foreløpig har jeg bare tenkt perlin-noise i flere lag, men kunne tenkt meg noen innspill hvis noen har noe. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå