Want to create a cloud in 3d array

Started by
20 comments, last by _WeirdCat_ 8 years, 10 months ago

you need some cloud models (which there are plenty of free cloud models all over the internet eg. http://www.cgtrader.com/free-3d-models/space/other/realistic-cloud).

you will draw a cloud model several times while scaling it down using it's normals (move vertices in the opposite direction of its normals, as you scale it down you will increase the density of cloud).

then you will voxelize every down-scaled cloud you draw.(you can use peeling for this http://www.ijsk.org/uploads/3/1/1/7/3117743/1_3_d_point_cloud_model.pdf, the level of down-scaling will determine the intensity)

then you have to save the voxel and load it in your program so you wont have to voxelize the model every time.

Advertisement

i made it, it was quite simple

i start with a sphere

for each x,y,z i make a normal from the center of the grid (in my case 32x32x32 its point 16,16,16) to x,y,z -> normalize it and multiple by fixed radius (14.0*perlinNoise3d(for x,y,z point);

here is what i get: (note that i draw each cloud on 128x128 viewport and then resize final image ti fit the screen);

cloudsf.png

This topic is closed to new replies.

Advertisement