Hey, Athens' over :( ...so at least small reminder of Acropolis :cool:
Printable View
Hey, Athens' over :( ...so at least small reminder of Acropolis :cool:
That's not the Akropolis.Quote:
Originally Posted by lobo
No, just small reminder of it :)
how bout some details... did you write the voxel app that rendered the image? what API was used? where did the model come fom? am i really the *only* one that can prevent forest fires?
It uses DirectX 8 for displaying purposes, otherwise it is all mine :)
cool, good work.... but uh, ahem; i belive you ignored my last question ;)Quote:
Originally Posted by lobo
j/k :p
maybe you and bubba should have a voxel death match of some sort...
Well i guess we do quite different things ;)Quote:
Originally Posted by Perspective
But anyway, i'm eager to see more works like these here :)
I made an awsome opengl program that draws a triangle and makes it go swirly.
It has 3 different colors thet blend together in the middle.
:P
No, but seriously nice work, I have been amazed at the stuff posted on here. I havent even done a partivle engine yet.
well, you could always do a quick game board search...Quote:
Originally Posted by lobo
heres some i can think of off hand...
SkyRoads2004
Voxel terrain
Ray Traced Reflections
You wouldn't happen to know of any good tutorials would you? I would like to make a voxel engine but I can't find any decent tutorials. Everything I find is related to landscaping only and half the time is too obscure to be helpful.Quote:
Originally Posted by lobo
You might want to check out Ken Silverman's voxel project called voxlap. There is a fairly interesting demo up.
I'm afraid you won't find too many voxel tutorials other than closely related to landscaping, because term 'voxel' is used in context of landscape engines much more often than in any other situation, at least as far as i have seen it.
If you want, try looking for information about volumetric representation of space in general, though i really do not know whether you'll find something like tutorial that way :(.
you could read bubba's thread where he posted his screen shot (one of the links in my last post). its pretty much a tutorial from a high level stand point, no code though.Quote:
Originally Posted by Frobozz
That's because voxel's are best for landscapes. Hardware is not fast enough to do actual 3D volumetric pixels althought I have seen it done and it looks very good. Voxels are interesting because you lose all the jaggy edge crap that polies inherently have. There are several websites on volumetric graphics and voxels.
My landscape engine does not use 3D voxels, it merely approximates what 'should be there' when it renders. To use 3D cubes would be slower than death. So I use flat faces. This voxel render above, however, looks much better than my voxels and I'm quite interested in the algo.
Hell, yeah :D . So far, i can do from 5 to 25 fps in 160*120 rendering resolution (on PIII@800), depending on complexity of the scene. That shot posted up there was taken in 320*240, with fps slightly more than 2 frames...need to get new cpu ;)Quote:
Originally Posted by Bubba
Can your program use MMX/3DNow to speed it up? Or is your compiler already doing that?
Introducing the new benchmark program. If your computer gets above 10fps you have an awesome machine (mine might hit slightly above double what you are getting - AMD AthlonXP 1.75ghz).:D
No, so far, i haven't been doing any opts (even compiler opts are completely disabled), though some assembly coding might speed the whole thing a bit..
BTW i already have benchmark built in :D
Well I've got an algorithm that may help you and it may not. Essentially a line in any space be it 2D or 3D is a displacement from one point to another. If you know the endpoints then you can find any point in between them using linear interpolation.
If you know Bresehnam's line drawing algorithm you can use that to 'step' through your world space. You know the origin of your rays and you know the endpoint of your rays. The endpoint of your rays is simply a function of the viewing angle on x and y, the viewing distance, and the distance to the rendering plane. Once you find this endpoint you can simply step from origin to endpoint using Bresehnam's integer algo. I've code this for my voxels and it simply flies. There are some issues with it, however. For one you cannot bilinear interpolate the texels because you are using an integral stepsize. There is no way to find the barycentric coords of your ray within the voxel being rendered - or at least not one that I've found yet. But the actual algo should run fairly fast on even the slowest of machines. The algo is very good at drawing lines on video displays during rasterization and it works well also as a method to trace a line in 3D or 2D space.
If you are not using an integral algo like this then you are essentially doing what renderers currently do. You are only interpolating on 1 coordinate - renderers typically only find the x coordinate the line while rasterizing and simply increment the y by one pixel. This produces good results in a render....but in world space this will not do. Problem is you will be skipping over certain voxels that should be there...but are skipped. This results in a blocky render.
If you are using sin() and cos() to step through the world space then you are suffering some serious overdraw problems in your stepping which results in extremely slow renders. Basically you want to assume that you have drawn 1 voxel and then step forward in world space by the size of that voxel. After all, if we have hit a voxel and already found where it is at in screen space.....why constantly recompute the ray if we have already rendered the voxel that ray hit? The size of the voxel is again a function of the distance to the rendering plane and the size of the voxel. Small sizes result in very good renders, albeit at a performance price, and large sizes result in blocky renders but are extremely fast.
Perhaps we should join forces as I'm looking to add some objects to my terrain and I do not want to combine polies with the terrain. Using polies with voxels causes the polies to stick out like sore thumbs....but using voxel images with voxel landscapes would look.....uberly voxelicious.
:)
PM me.
Found more information on 6 DOF landscapes. There is an article out there about Vertical Ray Coherence. It's freely available on the net...but I won't attach it here because I'm not sure if that's allowed or not.