Volumetric Billboards
Volumetric Billboards
I just saw this thing. really impressive:
http://www.gamedev.net/community/forums ... _id=543409
http://www.youtube.com/watch?v=l05HgqQbUs4
OMG
http://www.gamedev.net/community/forums ... _id=543409
http://www.youtube.com/watch?v=l05HgqQbUs4
OMG
My company: http://www.kloena.com
My blog: http://www.zhieng.com
My co-working space: http://www.deskspace.info
My blog: http://www.zhieng.com
My co-working space: http://www.deskspace.info
It's quite nice when not noticing the frame rate. I think better performance is achievable using actual 3d geometry. Look here for example:
And thats not even full LOD!
It seems to be more of a gimmick of whats possible not whether its actually usefull.
PS: Speedtree can render much more much quicker, not to mention how much quicker that dragon in the vid could be rendered.
And thats not even full LOD!
It seems to be more of a gimmick of whats possible not whether its actually usefull.
PS: Speedtree can render much more much quicker, not to mention how much quicker that dragon in the vid could be rendered.
this one is very impressive. grass/fur!!
My company: http://www.kloena.com
My blog: http://www.zhieng.com
My co-working space: http://www.deskspace.info
My blog: http://www.zhieng.com
My co-working space: http://www.deskspace.info
i honestly cant even wrap my mind around how thats done. how much faster could it even be ?.
Live long and phosphor!
-- https://github.com/netpipe/Luna Game Engine Status 95%
-- https://github.com/netpipe/Luna Game Engine Status 95%
No i have read the paper and it is actually a voxel approach.slavik262 wrote:It's just some kind of advanced texture mapping on crack... kind of how parallax mapping shifts texture coordinates around to make the surface look 3D
We're programmers. Programmers are, in their hearts, architects, and the first thing they want to do when they get to a site is to bulldoze the place flat and build something grand. We're not excited by renovation:tinkering,improving,planting flower beds.
Just by looking at Virion's image you can tell they extrude the triangle to create a volume, and then ray cast a 3D texture ("Voxels") inside that volume. The main advantage of course is that you can automatically get "free" LOD by using the different mipmap levels of the 3D texture.tecan wrote:i honestly cant even wrap my mind around how thats done. how much faster could it even be ?.
I imagine it can be quite slow if you are looking just under the tip of the grass horizontally, it'll have to go through many volumes before it hits a voxel. Too bad they didn't really show this situation in the video.
This actually reminds me of another technique where they used raycasting on building windows to simulate an interior, it was on GameDev.net as well. More info here: http://www.humus.name/index.php?page=3D&ID=80 (Although this doesn't use any voxels)
ShadowMapping for Irrlicht!: Get it here
Need help? Come on the IRC!: #irrlicht on irc://irc.freenode.net
Need help? Come on the IRC!: #irrlicht on irc://irc.freenode.net
Re: Volumetric Billboards
I just finished implementing the technique in my renderer.
Actually, it's not ray-marching of a volume but slicing of that volume.
Step 1 : Render a scene (anything really, as long as it's not too detailed) into a 3D texture (I actually rendered into 2 textures : diffuse|alpha and normal)
Step 2 : Place several boxes in the world, each box the size of the original scene. Each box is assigned a material with the textures rendered in Step 1
Step 3 : (todo for each frame)
. Step 3.1 : Slice the entire space with planes orthogonal to the view direction in back to front order and with BLEND mode enabled
. Step 3.2 : When a plane intersects the box, cut the box and generate geometry (using a Geometry Shader here)
. Step 3.3 : For each pixel of the generated geometry, sample the 3D texture(s) and display using favorite lighting model
Nothing really complicated as you can see. The problem with the algorithm though is that you post many many individual draw calls ! Also, it's kind of really slow.
My advice : only use this technique at a distance, with low mip levels. Use (simplified) meshes for close view and traditional billboards for very far view. This technique is ideal for middle range LOD I think.
http://www.patapom.com
Actually, it's not ray-marching of a volume but slicing of that volume.
Step 1 : Render a scene (anything really, as long as it's not too detailed) into a 3D texture (I actually rendered into 2 textures : diffuse|alpha and normal)
Step 2 : Place several boxes in the world, each box the size of the original scene. Each box is assigned a material with the textures rendered in Step 1
Step 3 : (todo for each frame)
. Step 3.1 : Slice the entire space with planes orthogonal to the view direction in back to front order and with BLEND mode enabled
. Step 3.2 : When a plane intersects the box, cut the box and generate geometry (using a Geometry Shader here)
. Step 3.3 : For each pixel of the generated geometry, sample the 3D texture(s) and display using favorite lighting model
Nothing really complicated as you can see. The problem with the algorithm though is that you post many many individual draw calls ! Also, it's kind of really slow.
My advice : only use this technique at a distance, with low mip levels. Use (simplified) meshes for close view and traditional billboards for very far view. This technique is ideal for middle range LOD I think.
http://www.patapom.com