With the advent of Pixel Shader 3_0, graphics hardware has become capable of rendering hardware-accelerated voxels.
Voxel objects are stored as a three dimensional map of matter, with each voxel (or texel in a volume map) indicating something about that
Andy at
You have access to the source. Why don't you try it yourself, first?
Even if you're not a programmer, it's not difficult to get an idea of what's going on. You should be able to see the parts where rendering is done.
(Marching cubes is patented.)
Awesoken at
I recognize that text from here: http://www.pvrdev.com/pub/PC/eg/h/Voxel.htm
I wouldn't even think about combining that with Voxlap. It's totally different. It looks like that demo was made to show off the flexibility of PS_3.0 shaders, and not to show that voxels are practical on the VPU.
I've never seen that demo (thanks to its hardware requirements). I would be very curious to know how fast it runs on supporting hardware. Would someone with PS_3.0-capable hardware (Nvidia 6800 should do) please try the demo and comment on the quality? I want to know framerate and how it is affected by window size.
JonoF at
On my Win2kSP4 AthlonXP 2700+ w/512MB DDR@400MHz and a 6800GT w/256MB it runs like a dog, the metaballs voxel in particular which renders about 1fps or less, and looks to me to render somewhat wrongly in solid mode too. The CPU usage is flat out, so unless I have a configuration problem, it's certainly just a proof-of-concept and by no means a realistic solution for hardware acceleration.
Jonathon
duke4e at
so much about that...
i really like your Voxlap engine, but i whould like to see some kind of 3D bilinear filter, so the voxels whould look smooth when viewed from close.
hvox engine converts voxels into polygons, and thats not a bad idea! but in your engine that should be done right before rendering. that way we could have a "smooth" terrain, but it whould also have all the dynamic-voxel terrain features.
outcast (commercial voxel game) uses some kind of 3D bilinear filter, but it's got some rendering issues.
Ken, can you (and will you) add something like this to Voxlap?
edit: also, i have one very cool idea for voxlap
Imagine having 2 maps with very different themes (ie. 1st map is in fantasy world, 2nd map is hi-tech). On my diagram, red color represents the 1st map, and blue color represents 2nd map. It whould be cool to have a feature wich whould merge both of maps using simple crossfading (just like the red color fades into blue color)
http://img318.imageshack.us/img318/7776/crossfade8er.jpg Also, this idea of map "morphing" could be expanded to some other cool stuff, not just crossfading.
edit2:
i have dosens more ideas for "never seen before" features wich whould make a great FPS, but need a enhanced voxel engine like Voxlap, so if you're willing to continue developing Voxlap, we could gather a team of artist and make a open source game.
Awesoken at
i whould like to see some kind of 3D bilinear filter
I would like to see that too, but it's never going to happen.
hvox engine converts voxels into polygons
Converting to polygons isn't practical at the resolution you see in Voxlap. I've tried it before and it's about 10 times slower than my raycasting algorithm.
outcast (commercial voxel game) uses some kind of 3D bilinear filter
Outcast uses a 2D heightmap-based voxel engine, so it's a lot simpler than Voxlap. In 2D, a bilinear filter is quite manageable. In 3D, I can't think of any algorithm that would work efficiently.
Ken, can you (and will you) add something like this to Voxlap?
No (and no).
merge both of maps using simple crossfading (just like the red color fades into blue color)
Not going to happen.
i have dosens more ideas for "never seen before" features ...
I can't wait to tell you how impossible they are.
so if you're willing to continue developing Voxlap, we could gather a team of artist and make a open source game.
Voxlap is what it is. I really don't want to think about it anymore. Now that the full source code is released, things are in your control. If you can't make the changes yourself, and you can't use the code in its current form, then I suggest you start looking at other engines.
Frobozz at
Awesoken said
Voxlap is what it is. I really don't want to think about it anymore. Now that the full source code is released, things are in your control. If you can't make the changes yourself, and you can't use the code in its current form, then I suggest you start looking at other engines.
So what are you working on now that aren't "thinking" about it? :D
So let me get this straight - this ps 3.0 engine is basically using the shaders to draw the voxels correct? If so, then why are they using 3.0? I remember talking to a guy on AIM about shaders and he claims that every additional level he tried seemed to go slower regardless of the fact that he used the same shader code in it! :wink:
Awesoken at
So what are you working on now that aren't "thinking" about it?
I'm really not working on anything at the moment. Usually, I spend all day answering E-mails, reading forums, or surfing the web. It's a sad trend.
why are they using 3.0?
3.0 is the first version to support branching (loops). While it's theoretically possible to write a raytracer without loops, it would have to be horribly long code and not worth the effort.
Frobozz at
Awesoken said
I'm really not working on anything at the moment. Usually, I spend all day answering E-mails, reading forums, or surfing the web. It's a sad trend.
Sounds like pretty much what I do. Only I toss in playing a few games to pass the time. Like Scorched Earth 3D and Chris Sawyer games - ordered a couple for about $15 total. :D
Anonymous at
Nice Try
Andy said
Why don't you try it yourself, first?.
Well you know what they say, nice try but no cigar.
Dune at
Voxel Rendering with PS_3_0
My idea is to just keep the shader instanced polygons, there are also examples of non-shader ones in the DX instance demo, completely separate from the voxels altogether. Just use them as an 'anti-aliase' added to the scene. That way we can keep the benefits of VOXLAP and just make it a little more smoother. I emailed Ken and he said I would need about 256 combinations of polygons I would place in the jagged areas.
Marching Cubes is more for static converting I think but it seems he is using a quasi-technique of it with HVOX. I'll look at that too, For me the only real polygons I would want would be the characters and special effects (water) although I want to keep the effects in VOXLAP too.
Also I heard that PS3 is running real nice particle effects for water and most things. I wonder if they're just using all small shader polygons for everything. Still not as efficient though. Too managed but still seems nice.