more on real-time raytracing
Miscellaneous Forums/General Discussion/more on real-time raytracing
This will never happen. It is not a matter of processing power. It is a matter of relative efficiency compared to rasterizers.
You can play Quake 1 ray traced right now. But who would want to, when you can play Crysis with a rasterizer? Raytraced graphics will always be ten times less detailed than rasterized graphics. So by the time ray-traced Crysis is playable, rasterizers will be rendering billions of polys, the consumers' expectations will again be raised, and no one will have any interest in watching obsolete graphics rendered with a raytracer.
I bet my ass, Playstation 4 will used Raytracting Graphics(more advance I guess) in either 2011 or 2012!!!
Be prepared to, erm, lose your ass! Hehe
I think it is a bit short sighted to say this will never happen. I think it will, the real question is when. Raytraced graphics will always be ten times less detailed than rasterized graphics? But what are we comparing, really? If some day we manage to get realtime raytracing with sufficent geometric complexity, chances are that the result will be ten times better than with rasterizers. If (when ?) that happens it will be more like "You can play Quake 5 in rasterized mode with ten times more fps than with raytracers. But who would want to, when we already have more than 100 fps with TEN times better quality using raytracers". It's not for tomorrow, that's for sure, but it's maybe not so much far away.
Someone who understands the qualities of a unified lighting model in LWE 2 has probably the required background to see that raytracing is much more "unified" and close to reality in the way it models lighting.
As for relative complexity, it's not yet so obvious how the ratio "required CPU power / image quality" will evolve as we increase image quality. It's currently in favour to rasteriers by several orders of magnitude, but the curves for rasterizers and raytracers may very well cross at one point in the future.
I just wanna turn my living room into a beach...
I thought sony said the ps3 was going to be that last one.
I would have thought realtime game R.T. at a decent FPS is a long way off, at least for anything as complicated as a gameworld.
Bet this 2.5 Megawatt beasty could handle it though lol ;)
http://news.bbc.co.uk/2/hi/technology/6584075.stmWhat is the official FPS rate needed to be considered realtime anyway? is it like standard tv (somewhere around 30) or what?
Considering graphics cards, as far as i know, are very optimised towards being a rasterizer, then it will take something big to change the direction of that.
Considering that Intel is playing around with multicore tech in the 20-100 core range, and that Intel does realtime raytracing on 16 3GHz cores today, this will come soon enough.
16 3GHz cores today?
So that mean 16 * 3ghz = 48GHZ.....Whoa that would be Mind Bogging(or blowing)!
given the size of quad core cpu's at the moment how big would the 16 core be?
or is it that 4*quad that was posted a while back?
and will the rspca allow hotshot to gamble his donkey away anyway
48GHZ seems like a good while away to me :o)
>So that mean 16 * 3ghz = 48GHZ.....Whoa that would be Mind
>Bogging(or blowing)!
Probably more along the lines of 100 X 1.0 GHz cores. The future belongs to massively parallel computers.
You can do realtime raytracing on any computer, BUT, it will be at, for example, 10 fps in 320x200... I prefer playing my games at greater than 1024x768 with 4xMSAA + 16xANISO with all the shaders and texture tricks at more than 30 fps.
Here's a little something:
http://www.gametrailers.com/player/usermovies/182176.html
I think we might find that the limit of how much stuff a dev team can generate during a project will soon be more relevant than what the hardware can do - already we see with games on PS3 and XBox360 that more and more stuff has to be outsourced just to fit it all within the development schedule, and pretty soon there just won't be enough man power for anyone but the largest and richest developer to let them create content that can push the tech or the hardware.
Being able to render a photorealistic world is great, but somebody still has to research it, concept it, model it, texture it, import it, bug-fix it, optimise it etc... and ultimately pay for the man-time to do this, and as textures get larger and models get more complex the time and cost for each of these assets increases dramatically.
On PS1 we were taking perhaps 2 weeks to complete a level with just 1 artist, on PS2 it was up to a month or two with teams of 5 or 10, now on 360 it's taking multiple months with teams of 20+ and also outsourcing teams.
Assuming that PS4 or the next XBox can render 10x as much, I can't see how on earth we'll be able to build it all.
I think they will soon have the technical ability to scan in gemeotry and create a 3d models from it and applications to build generic locations to create levels from, at a few clicks. Similarly scan in people, and mo-cap them for animation, whilst texturing them based on the scans.
being able to render a photorealistic world is great, but somebody still has to research it, concept it, model it, texture it, import it, bug-fix it, optimise it etc
Dont forget the potentials of automation. Eg, using intelligent software, robots using laser scans and photography of real locations or models. Some of that stuff is getting quite impressive.
Automation is fine but it really doesn't exist yet - even using mo-cap requires a team and hundreds of man-hours to convert what you get from the automated process into something that can be used in a game.
I think we're going to hit these man-hour limits way before the automated creation of assets is viable, at least for the majority of the stuff - minor prop items can be re-used or obtained from an external source, which at least reduces the creation time, although it never removes it as the item is always slightly the wrong size, the wrong colour, has the wrong resolution textures, needs converting to a new format etc...
And remember that most games don't use locations and objects that really exist, making automated generation of them that much more difficult.
There are some previously labour-intensive items, such as trees and foliage, that are ideal for automated generation, but current solutions (such as SpeedTree) don't help as much as you might think, and often you spend so much time tracing faults or adjusting and modifying these items that you would have been better off creating it from scratch.
Procedural content and automation will do a lot in the future.
I think it's likely we'll see raytracing much more commonplace in the next 5-10 years. I agree that we're majorly moving towards lots of parallel cores now. It's almost as if everyone's been hiding in a box of solo-core processing for years trying everything they can to make this one core superfast, and running into difficulties, and now suddenly `oh look over there, there's another core`, and hey presto we're gunna have an explosion of parallel processing. It's much easier I would think, to add multiple cores than to try to make one core super efficient.
One thing that I liked the sound of is Intel's efforts to make the hardware automatically turn single-threaded applications into multi-threaded at the hardware level, so we don't actually have to write in a multi-threaded way. I think that's a good way to go, although writing for threads is surely going to be a very common requirement.
I don't think it matters *at all* that current GPU's are totally rasterization focussed. They won't have to switch to a raytracing focus because they won't even be handling the graphics any more, all the graphics processing, or most of it, will occur in the cpu's. Although, saying that, I wouldn't be surprised if GPU manufacturers would try to preserve their market by turning GPU's into even more massively parallel general-purpose processors.
I think the suggestion of Playstation 4 (or other next gen platforms) running full high-resolution raytraced graphics is very likely and achievable.
Procedural content and automation will do a lot in the future.
hahahahaha...I can't believe anyone still believes this.
Procedural content and automation will do a lot in the future.
hahahahaha...I can't believe anyone still believes this.
I don't know. Objects and forces in the ‘real world’ are ‘created’ based on formulas and numbers. When ‘discovered’ and ‘computerised’, those same formulas and numbers can process ‘binary abstractions’ as opposed to ‘tangible molecules’. It may indeed be possible to simulate / generate anything inside a suitably powerful computer…
"and will the rspca allow hotshot to gamble his donkey away anyway"
What that suppose mean?
ass american for arse
ass uk alternate for donkey (and american too i guess when they arnt on about the arse)
To do things like reflections and shadows using polygons you basicly have to code in special tricks to do it, but with raytracter those things come naturally. When games are starting to require reflections on reflections in pretty much any surface and advanced lighting, raytracing just might be faster, and the switch will be made.
Procedural content and automation will do a lot in the future.
I agree with that. In way, using a function is kind of the same thing. Programming in general, is reusing previous code, enabling people to have a big head start when coding. And no-one laughs at that. Don't see why it's so unbelievable. The tools suck right now, the ones i've seen and used that is, but better tools makes things easier and more productive.
Wasn't it you created that animation tool and set of generic animations?
To do things like reflections and shadows using polygons you basicly have to code in special tricks to do it, but with raytracter those things come naturally. When games are starting to require reflections on reflections in pretty much any surface and advanced lighting, raytracing just might be faster, and the switch will be made.
Actually that won't happen. Direct X 10.1 addresses the fact that you have many reflections using techniques such as cubemap arrays and independent blending modes. So, again we won't need raytrace to do these things anymore. Already you can do pretty nice shadows without raytrace (Doom 3 is still a good example, but how about Crysis?). Yes of course, call them tricks all you want, they still play fine in realtime and they run on actual hardware that requires less than a mainframe in electrical charge.
Once we get a standard for Raytraycing and dedicated hardware it will replace todays graphics. Simply because it's more effective if done right and it's also much easier to handle. However: performance would depend on the resolutions of the running software so I can imagine raytraycing will be come first on consoles.
And Leadwerks is too fond in archaic ways of doing stuff as always. As a math student I can tell you that anything can wrapped up in the right formula. Take any hand made texture and with the right effort it can be displayed as a formula which can be used to recreate the texture. Some goes for any game content you can imagine. It's just a matter of time and effort but the interest of Intel in this subject shows that both is given. It will surely take its time, don't expect it to happen in the next 3-4 years but then everything is possible.
I don't quite see this to be honest. There are a whole lot of solutions that can't be written down in closed form. I think you can create a small subset of textures, models, environments, etc... and play ticks with them to get a wider range of media but I still think it's limited. In the future a lot of media might will be procedurally generated, but it will then need to be edited by people and the end result will not be saved in a formula.
Well, in my post I wanted to express that I can see raytracing coming. Regarding the procedural stuff I only meant that it's possible to store everything inside a formula but I doubt this will happen for stuff like 3D models etc.
squareiris, if you base your judgement on Farbrausch demos that you have seen, the procedural textures aren't generated realtime, they are pre-rendered in the loading / waiting time prior to the start of the demo. Procedural textures or non procedural textures, it doesn't change the fact that the objects are textured. You can do procedural texturing with shader algorythms, like wood textures and some others that are relatively simple and easy to generalize as an algo. You don't need raytrace for that.
Ref.:
http://books.google.com/books?id=-SI07OhiQMAC (open the book and go to chapter 11, page 287)
http://www.farbrausch.de/productions.php (debris, candytron, the.popular.demo, .das .produkt)
By the way, there are already many real-time raytracers out there, and raytracing can take a good advantage of multiple cores.
http://ompf.org/forum/viewforum.php?f=4
You want to check out realtime raytracer demos, that's not really challenging nawi, here:
http://www.pouet.net/prod.php?which=1914http://www.pouet.net/prod.php?which=467http://www.pouet.net/prod.php?which=1924http://www.pouet.net/prod.php?which=9461http://www.pouet.net/prod.php?which=5There are many others, but the point is, how does it compare in speed and image quality to what is achievable on 3D graphics card?
Edit, also on this article (
http://feedslice.com/feeds/programming/archive/2008/03/10/real-time-raytracing.aspx ) you can read:
Therefore the scaling of performance with the number of cores in Quake 4: Ray traced with OpenRT on Intel's quad-core CPU is great. The following benchmarks were taken at a resolution of 256x256 pixels on the Quake 4 map "Over the Edge (Q4DM7)".
4 cores 16.9 fps 3.84x scaling
2 cores 8.6 fps 1.96x scaling
1 core 4.4 fps 1x scaling
@_33: my comment wasn't meant to link raytracing and procedural generated content.
I just wanna turn my living room into a beach...
Nothing that a couple of truckloads of sand can't fix...