Back to the Korax Forum Archives


Forum

Voxels for landscape (again) - yes or no?

Fri, 11 Aug 2006 21:29:02

mago

I posted a curiosity thread on Vavoom forums a couple of days ago. Since then, I tried to learn a bit more about this technology, and found it was kind of a viable work area in 2000, bit since then only Build's creator has been actively trying to really dig this technology, and came up with an open source engine called Voxlap, that has support for gaming (even comes with a game demonstration and editors, but I can't check them out because appearently they need to be compiled o something). Anyway, if you guys read the thread, you know Janis has stated that Voxels are indeed possible to be rendered by Vavoom, it seems Doom and Build's engine are easily compatible with it. But his question was: why would anyone want support for it? Well, recent talks about mapping for SE brought to the surface the limitations provided by simple sector maps in terms of sheer size and details (complexity). If what I read is right, Voxels 3d maps were used SPECIALLY becuase they were simple enough to allow for incredibly large scenes to be rendered even when computer graphics were very primitive (which was impossible for polygons at the time). I consider myself still completely ignorant about voxel mapping, so I'm not saying this will be the answer to our prayers, but this system does seems to have a few good qualities that make it a VERY viable contender for our TSP ("The Serpent Power" project) and even SE needs: - First and foremost, IF Janis was right, this feature shouldn't be that hard to implement, meaning that we can actually USE voxel while most polygon terran generators are not compatible, or would probably bring issues Vavoom is not ready to support. - Some tutorials suggest alpha images to generate heightmap information, which means voxels, depending on mapping possibilities, can generate complex landscapes that we need with methods MUCH less time-demanding as hand-draw sectors, sloping, etc. My rough guess is that we could actually use the original 2d map RambOrc created, add the tones to indicate heights, and convert it directly to 3d volmun!!! - It arguably can render enormous amount of scenery without considerable cpu usage (not today's standard) - which means no more skyboxes tricks to emulate distant landscape - the landscape would actually be real. - CAN be mixed successfully with polygon models (the normal 3D objects like Houses, decorations, monsters, trees, etc) - Mixing with Sectors mechanics are yet to be explained or demonstrated (Build allowed it, don't know how it ould be in Vavoom, again, if at all). Disadvantages though: - No support from 3d graphic card hardware. I have been unable to determine if today's machines are capable or not to render LARGE scenery with good detail without any problems (it seems so). - The actualy maps look a little like blurred images in 3d (details and chaos are hard to come by it seems). - Bilinear dithering is great to brake the "square" look, but that is an additional feature (meaning a Vavoom might or might not be able to do it, if voxels are implemented at all) = risk of having somewhat blocky landscape. - Hard to implement textures on the "surfaces" created - many forms of renders doesn't seem to support anything other than pure colors (and shades) at all. Surfaces might look to plain, but it all omes down to what Janis would be able to actually implement. Anyway, here are some good examples of voxels usage on modern games (circa 2000) mainly on Delta Force 2 and Outcast: Voxel grass, volumn mixed with 3D models [img:1bblbruc]http://www.activewin.com/reviews/software/games/d/images/delta_force_2_3.jpg[/img:1bblbruc] HUGE landscape (don't kno if this is DF2 though) [img:1bblbruc]http://edomekuvat.soneraplaza.fi/delta_force_ps2/2.jpg[/img:1bblbruc] [img:1bblbruc]http://www.forest.impress.co.jp/article/1998/10/14/game8_df2.gif[/img:1bblbruc] [img:1bblbruc]http://images.trygames.com/images/games/74d3edf7dd82450cd25126d7e2c19584/free_game_big_2.jpg[/img:1bblbruc] [img:1bblbruc]http://www.angelfire.com/ex2/kafpractice/DeltaForce2_image11.jpg[/img:1bblbruc] [img:1bblbruc]http://www.pc-zone.hit.bg/game/shots/dflw-3.jpg[/img:1bblbruc] Fog + Grass [img:1bblbruc]http://www.game-over.net/reviews/1999/11/shots/339-shot-1.jpg[/img:1bblbruc] [img:1bblbruc]http://www.game-over.net/reviews/1999/11/shots/339-shot-2.jpg[/img:1bblbruc] [img:1bblbruc]http://www.game-over.net/reviews/1999/11/shots/339-shot-6.jpg[/img:1bblbruc] [img:1bblbruc]http://www.activewin.com/reviews/software/games/o/images/outcast1.jpg[/img:1bblbruc] So, the point here is: do you guys (specially RambOrc, as the leader) think Voxels are indeed a viable feature that we would indeed put to good use on the future project, thus making this a worthy request to put on Janis's appreciation? My opinion is yes - Janis said he could do it, I think we could use, this has very good potential in my humbl?e opinion, I think this could REALLY work. I thought I should make a poll because I don't want to waste Janis' time and don't want to talk for the team.
Fri, 11 Aug 2006 21:56:58

RambOrc

Using triangle sectors and defining the height of vertices should lead to better results, and that without any need to modify either the engine or the mapping tools.
Fri, 11 Aug 2006 23:00:12

mago

RambOrc - sorry, but I accidently posted the poll without having written the post explaining everything. Please read and tell me your opinion based on that information. I have big doubts ceonvetional polygons could do what some of those images show. I'm NOT after eye-candy or delusional/artificial features to brake the game's feeling - It just seems to me that random or automatic scenery creation is a huge plus, actually I think it's a critical feature to have in TSP, mainly because I don't think it would be nearly as competent to have Antara like trees or rock "walls" to create big halls, making freedom very limited in reality.
Fri, 11 Aug 2006 23:10:48

mago

Just another thought: if you look at the 5th picture (with fog) you'll realise having such an organic landscape like that is insane even with some modern polygon engines, but that is actually very reasonable for voxels volumns. Meaning: we could have actual realistic and trully complex landscapes with something that isn't unnatural to 2,5 D engines like Doom's... Again, I'm not talking for Janis - he's the one who can say what is possible, what he is willing to do. I'm just trying to show a real alternative that was hidden from the eyes of most of us. I think it would be useful for you guys to do a search and test some demos out there just to actually see what this technology can do for us or not. Some of those maps' size is crazy just by looking at the picture, having complax terrain like that with sectors is impossible. Slopes can't do that, unless we are willing to spend hours fixing connections, planning heights, OR go for the basic solid horizontal plane found on most RPG "openworld" games before us, but if this is doable, we wouldn't really have to be limited by that...
Fri, 11 Aug 2006 23:20:38

mago

This tutorial, done by a nice fellow who is also the creator of a voxel terrain engine called TerraVox, is a nice point to understand a bit more about this technology and it's uses. <!-- m --><a class="postlink" href="http://www.flipcode.com/articles/voxelland_part01.shtml">http://www.flipcode.com/articles/voxelland_part01.shtml</a><!-- m -->
Sat, 12 Aug 2006 03:56:04

Firebrand

I'm not saying it's not possible, but rendering a map based on voxels would need a renderer change, AFAIK, this has been suggested even for the powerful ZDoom engine, and Randy Heit said that it wasn't possible to use this technology without further changes to the way the map is drawn on the screen, I suspect this is the same issue as well, Janis said that the 3d features of the engine make it difficult to implement voxels properly and making slopes and other real looking landscapes is already possible (remember a tool that CheapAlert posted on our forums some time ago?), based on a terrain image in grey scale was enough to make a nice looking landscape. Now, regarding skyboxes and large terrains, there's already a line special called LineHorizon, if you mark this special over a line it will draw a long "horizon" by making some kind of hack to the renderer, I don't know how well if works in Vavoom (or if it's even supported), but ZDoom already has this, I'll try to investigate how it works and how easy it would be to implement this, this would only be used on the "edge" of a map that has a line to connect it with another part of the world. As for skyboxes, Unreal used a very clever solution for making more real looking skyboxes and landscapes, it used a camera to draw another part of the map as the sky (again, ZDoom already implements this), the only thing Vavoom lacks for implementing this feature is the switching of cameras for the player's view and if my memory doesn't fails, Janis already has some cameras code somewhere (there's a camera object and it has the ability to move around the map), I'm sure the only thing left is to make the player's view camera to be assigned to this invisible object and move it using path nodes or something similar (mapspots for example). IMO, your idea is not bad, but I think there are some other solutions for these problems that could end in better stuff for the engine, besides, voxels are a rare rendering technology that only a few games used, that means that it's difficult to implement them on the renderer and Ken's Silverman build engine renderer, when very similar to Doom's renderer has a lot of other implementations that the Doom engine hasn't, I'm sure Janis is good enough to extend the engine's limits to support this, but it wouldn't be worht the effort for the advatages it could bring.
Sat, 12 Aug 2006 05:47:33

Crimson Wizard

I am not really sure that it is possible to mix voxel terrain & solid 3d geometry. At least never saw examples of such combination. (Outcast has models too, no?)
Sat, 12 Aug 2006 06:03:00

mago

Hmmm... Seems we've hit a plateau... I was under the impression it wouldn't actually be this hard to implement, but okay, there's no problems at all, just trying to help anyway. <!-- s:cry: --><img src="{SMILIES_PATH}/icon_cry.gif" alt=":cry:" title="Crying or Very sad" /><!-- s:cry: --> Firebrand: No, I'm not aware of any terrain creator based on Doom engine (or that whose products could be ported to Vavoom) - could you please direct me to the CheapAlert post you mentioned? Thanks a lot for the explanations by the way. I'm very curious about this. <!-- s:wink: --><img src="{SMILIES_PATH}/icon_wink.gif" alt=":wink:" title="Wink" /><!-- s:wink: -->
Sat, 12 Aug 2006 06:12:05

Crimson Wizard

It's a pity I put you into depression. IMO that would be extremely cool if engine could run and render well map consisting both of voxel terrain and solid 3d surfaces for buildings and other structures, hard rock maybe. Generally I do not like models for building in 3d games like Delta Force (they look really ugly); I only have seen good ones in Morrowind, but it does not use voxels at all; plus its problematic IMHO to use voxel method in drawing hard surface like rocky mountain, because voxel terrain has always some "soft" feeling, the're good for plains, hills etc.
Sat, 12 Aug 2006 12:21:34

dj_jl

To make it clear, it wouldn't be much problem to render a voxel model as a sprite replacement, but not for terrain.
Sat, 12 Aug 2006 18:06:39

Firebrand

[quote="mago":2uc1c59n]Firebrand: No, I'm not aware of any terrain creator based on Doom engine (or that whose products could be ported to Vavoom) - could you please direct me to the CheapAlert post you mentioned? Thanks a lot for the explanations by the way. I'm very curious about this. <!-- s:wink: --><img src="{SMILIES_PATH}/icon_wink.gif" alt=":wink:" title="Wink" /><!-- s:wink: --> Sure! No problem at all <!-- s:) --><img src="{SMILIES_PATH}/icon_smile.gif" alt=":)" title="Smile" /><!-- s:) -->, here's a link to the program I mentioned, sadly it only seems to work with ZDoom so far, I tested it some time ago with an older version of Vavoom and didn't work, but this problem will be solved with the new modifications to the engine (I think), I'll test it with the latest version and see what happens <!-- s:) --><img src="{SMILIES_PATH}/icon_smile.gif" alt=":)" title="Smile" /><!-- s:) -->. BTW, here's the link: [url:2uc1c59n]http://www.korax-heritage.com/forums/viewtopic.php?t=1486

Back to the Korax Forum Archives