kristus Posted March 14, 2008 PC Perspective posted an interesting and extensive interview with John Carmack detailing his opinions on what will matter for future 3d engines, as well as a bit of information on what he hopes to achieve in the future.We're working on our RAGE project and the id Tech 5 code base but I've been talking to all the relevant people about what we think might be going on and what our goals are for an id Tech 6 generation. Which may very well involve, I’m certainly hoping it involves, ray tracing in the "sparse voxel octree" because at least I think I can show a real win. There's even a screenshot of Doom in there to boot. 0 Share this post Link to post
Bucket Posted March 14, 2008 I don't think he's talking about visible voxels. 0 Share this post Link to post
Snarboo Posted March 14, 2008 Octree like what Sauerbraten uses? Sounds very interesting. Ray tracting tech for games is still in its infancy, so I'm wondering where Carmack is planning to take it. 0 Share this post Link to post
DaniJ Posted March 14, 2008 I think by "voxel" Carmack is actually implying that the data structure itself can be used to subdivide space into cubic volumes, like an Octree. Which in a lot of ways is just a 3D version of DOOM's blockmap ;) EDIT: With the "sparse" bit suggesting that not all octants need to be present. 0 Share this post Link to post
myk Posted March 14, 2008 Carmack generally makes a pretty fine use of language, actually. I guess that if Quake's engine is id tech 1, Doom is then id Tech 0. 0 Share this post Link to post
kristus Posted March 15, 2008 According to Wikipedia, Id tech 1 is Doom. http://en.wikipedia.org/wiki/Id_Tech_1 0 Share this post Link to post
Bloodshedder Posted March 15, 2008 If I remember right, Quake and Quake II were both said to be id Tech 2. 0 Share this post Link to post
myk Posted March 15, 2008 The Wikipedia links to an article that apparently got that from Todd Hollenshead. And yeah, it should be proper if Quake 2 is a mod engine of Quake, while Quake 3 has more definite core engine changes. If so, then Wolf3d is the "id Tech 0", heh. 0 Share this post Link to post
andrewj Posted March 15, 2008 DaniJ said:I think by "voxel" Carmack is actually implying that the data structure itself can be used to subdivide space into cubic volumes, like an Octree. Which in a lot of ways is just a 3D version of DOOM's blockmap ;) I think it's more than that, instead of having polygons separate from textures, they are combined in this new structure. Imagine a normal quake level. Each textured pixel on a wall would need one or two voxels, and the rest of the space is going to be a constant "content" value (EMPTY or SOLID or a liquid). But I can't see how his concept is any different from the standard octree voxel system, it's all so vague at this stage. 0 Share this post Link to post
DaniJ Posted March 15, 2008 Yes. This would make sense when you consider the information we've had in the past about the megatexture stuff. Given that you do all your texturing within a fragment shader; and that now it is possible to build new vertices from within a shader on the GPU; he very well could be storing the map in a parametric form and thus is able to resolve infinite detail. The problem is how to get the data visible within the shader(s) so they can cast the ray. Is it too much to pack into a 3dtexture? It is not inconceivable that it could not be combined with a method of texture paging similar to that seen in terrain engines. However rather than paging textures it is instead paging a block of encoded, parametric map. 0 Share this post Link to post
FourOhFour Posted March 15, 2008 I wish I had some idea of what you guys were talking about, because it sounds interesting : ( 0 Share this post Link to post
andrewj Posted March 15, 2008 DaniJ said:he very well could be storing the map in a parametric form and thus is able to resolve infinite detail. The problem is how to get the data visible within the shader(s) so they can cast the ray. That's an interesting idea. Somehow I got the impression he was talking about quite a simple structure, simple enough to perform ray casting tests very very fast in hardware. An idea I had today (perhaps utterly bogus) was that each voxel, traditionally considered a cube shape, would have a normal vector associated with it which defines the plane it is on. So the world might be represented as a "blocky" voxelscape, but the renderer could use the normal to create smooth planes and curves out of that (so you'd never see the blockiness, even way up close). Perhaps Carmack is being deliberately vague, as he want to build id tech 6 out of his idea and doesn't want the competition to beat him to it. At any rate, my interest is piqued and that doesn't happen very often. 0 Share this post Link to post
DaniJ Posted March 15, 2008 Kind of like a cubemap but with depth values? 0 Share this post Link to post
andrewj Posted March 15, 2008 More like: a voxel renderer that, at close range, created small polygons by analysing how each voxel connected with its neighbours. [At far range, each voxel is less than a pixel in size, hence nothing special is needed]. Hmmm I might play around with this idea tomorrow and see if it can actually work. It doesn't seem very compatible with existing 3D acceleration though. 0 Share this post Link to post
DaniJ Posted March 15, 2008 Oh I see. What you are describing to me sounds a lot like the way elevation meshes are built from landscape imaging data. 0 Share this post Link to post
Grimm Posted March 17, 2008 . . . where the hell's that Doom 1 screenshot from? 0 Share this post Link to post
myk Posted March 17, 2008 Grimm said: . . . where the hell's that Doom 1 screenshot from? That has to be E2M2. 0 Share this post Link to post
TheDarkArchon Posted March 17, 2008 myk said:That has to be E2M2. Isn't that near the beginning of E2M4? 0 Share this post Link to post
Vermil Posted March 17, 2008 Nope. Bottom monster cloest behind the yellow door in E2M2. 0 Share this post Link to post
Shaviro Posted March 18, 2008 The way I got it was that the SVO was some sort of occlusion system. I didn't have time to study it yet, though. 0 Share this post Link to post
Jon Posted March 19, 2008 kristus said:According to Wikipedia, Id tech 1 is Doom. http://en.wikipedia.org/wiki/Id_Tech_1 That is totally a retcon, though. I've never peeked under the bonnet of quake or quake2, but I remember during the development of Q2 reading that they started off intending to work from the quake source base and more or less totally rewrote the code. 0 Share this post Link to post
TheDarkArchon Posted March 20, 2008 Jon said:That is totally a retcon, though. All the id tech names are retcons, sans 5. 0 Share this post Link to post
deathbringer Posted March 20, 2008 but I remember during the development of Q2 reading that they started off intending to work from the quake source base and more or less totally rewrote the code. Didnt they do the same to the Q3 engine to make Doom 3? 0 Share this post Link to post
iori Posted March 31, 2008 Based on what Carmack thinks of Intel's position, I wonder how he reacted to this. 0 Share this post Link to post
DaniJ Posted March 31, 2008 Probably with a "wtf, that doesn't even make sense it is so unlikely". 0 Share this post Link to post
andrewj Posted April 1, 2008 This proves once and for all that Microsoft is the ultimate innovator for all things computer related, completely pwning Carmack and other so-called "Geniuses" doing research into 3D rendering concepts with their stunningly advanced, fast and robust ray tracing technology that will surely take the world by storm. It's no wonder everybody loves Microsoft. 0 Share this post Link to post
Skeletor Posted May 14, 2008 I wonder how long Carmack will be programming and taking graphics to new levels. 0 Share this post Link to post
Recommended Posts