Mailing List
Home
Forum Home
Softimage
Carrara
trueSpace
Dir3d-l
Maya - a powerful 3D animation and visual effects software
Macromedia Flash Development
Subjects
Cameras
scaleDown command
black out solved
Aircraft Tutorial
Mathematical XYZ ?
Its done This vs That
Its done first week
recommendations for screen video captures?
3DExplorer "Oddity "
New Director
ProTeam renewals
Fuel 's new websites (X post)
Blue peter create a make toy
targeting groups question
XPost: Shockwave 3D game ( sort of )
RES: RES: RES: Fish Modeling
Emitting particles from object intersection
Fuel 's new websites (X post)
Texturing
Big Break Contest Videos
New Plugins
Models and Texture on my updated site
Error Installing Patch tS6 6
Plasma?
Looking for Inspiration
Weird EMail Q
It 's done first week ?
Cherry not cranberry
New game
Camera Animation Problem
Particle plugins?
 
real time rendering

real time rendering

2004-02-02       - By Steven Newnham

 Back
Reply:     1     2     3     4     5     6     7     8     9     10     >>  

Shawn,

I have an ATI Radeon 9800 Pro installed in the PC I am using to write this
message, and have run the demo application in question. Yes, ATI can do it,
as can nVidia - and they can do it at higher resolutions than 800x600 - I
run it at 1280x1024 (edit the sushi.ini file in the demo's directory to
change the resolution it runs at). At 30fps? Not sure, the demo doesn't
include a FPS display - but the motion is very smooth even at high rotation
rates.

You say "And very possibly me and the rest of the CG industry has just
missed this completely." - this is not likely, as this particular demo was
released and widely reported on at Siggraph 2002. Furthermore, it was
demonstrated there by Paul Debevec, one of the authors of the original 1998
Siggraph film "Rendering With Natural Light" ( http://www.debevec.org/ ) on
which the demo is based.

Seeing is believing, I suggest you go to a dealer and ask for a demo (if the
dealer doesn't already have the application in question it can be downloaded
here: http://www.ati.com/developer/demos/r9700.html - whilst there you might
want to get the car paint, moebius strip and bear demo's too - and in the
9800 area ( http://www.ati.com/developer/demos/r9800.html ) get the chimp
demo ). Once the demo is running, move the mouse to switch into manual
control mode - you will then be able to rotate around the scene by moving
the mouse and move in and out using the mouse buttons - note that this is
moving the camera and not simply magnifying the image - the visual
relationship between the scene's objects changes as you move in and out, as
you would expect for camera movement and not for simply magnifying the
image.

Still don't believe it? Go to your bookstore and take a look at "ShaderX2,
Shader programming tips and tricks with DirectX 9" (ISBN 1-55622-988-7) -
check out colour plate 20 and then turn to page 451 for a discussion, by the
demo's developers, of the real time Gaussian blur filter implemented in the
demo.

Whilst there, check out "Shader X2 Introductions & Tutorials with DirectX 9"
(ISBN 1-55622-902-X) or "Cg, The Cg Tutorial" (ISBN 0-321-19496-9) for an
introduction to programmable GPU functionality (the latter is the better of
the two for introductory purposes).

As far as rendering Babylon 5 in 1/5th real time, nVidia have done better -
how about rendering Final Fantasy, The Spirits Within at 10 frames per
second (albeit not at film resolution)?
-->     http://www.nvidia.com/object/final_fantasy.html
       http://www.theinquirer.net/?article@(protected)

The rendering power in current generation GPUs far outstrips what our
general purpose CPUs can achieve in real time - they are now extremely
powerful, flexible, programmable floating point vector processors
specifically designed for one purpose - real time rendering; they are far
removed from the early consumer 3D accelerators of a few years ago (bear
this in mind - an Intel Northwood Pentium 4 processor has 55 million
transistors - the ATI Radeon 9800 GPU has 110 million transistors!). Our
general purpose CPUs, however, still hold the advantage of flexibility and
resource availability when real time image generation is not required (GPU
instruction sets are still quite limited compared to their CPU brethren -
branching and looping being one obvious area currently being addressed.
General purpose CPUs have the luxury of more available memory, offline
storage, vastly larger allowable program size, highly optimised development
environments, etc.).

When considering all this, you have to bear in mind that these are highly
optimised demonstrations, not general purpose rendering packages. Whilst
ATI's Real Time Debevec demo (the demo which originated this discussion) is
impressive, it is of very limited content. It does, however, ably
demonstrate where the hardware is today and illustrate how much further down
the path we are than many people realise.

Games are not yet taking full advantage of this technology, but expect that
to change very quickly - check out the Half Life 2 movies available, or have
a look at the Far Cry ( http://www.farcry-thegame.com/ ) movies or even
better the demo that was recently released; if possible get somebody to run
this demo for you on a fast PC equipped with a Radeon 9700 / 9800 or nVidia
5800 / 5900 / 5950 - get in a boat and speed around the lagoon a bit (after
taking out the enemies that will shoot at you :-) ) and be prepared to be
amazed - then be aware that the demo as downloaded has some features turned
off by default (reflection off the water's surface for example) that you can
turn on by editing the configuration files. The movies that can be
downloaded from the media section of the site will give you some idea if you
can't get access to a suitably equipped PC. Bear in mind that whilst
individual elements in these won't look as good as the spheres in the demo,
the overall scene complexity in terms of polygon count, lighting, shading,
etc. all generated in real time is quite amazing compared to what was
available twelve months ago; a game that only had a plinth and ten spheres
probably wouldn't sell that well ;-).

General purpose rendering packages like trueSpace, 3DS Max, LightWave, Maya,
SoftImage, etc. don't currently utilise this hardware to provide real-time
photorealistic previews for one primary reason and several secondary
reasons. First, the shader code that runs on the GPU is completely different
to the shader code that runs on the CPU - providing a reasonably accurate
preview would require each shader to come in two versions - the highly
accurate general purpose version in 80x86 CPU code for the final render and
a preview version for the GPU in Cg/HLSL (potentially multiple GPU versions
to suit different target levels...). The technology is too new for this to
have taken place....yet....  Second, the approach taken by GPU's to render a
scene (rasterising triangles and post processing passes) won't always fit in
with the approaches taken take by more powerful/flexible general purpose
renderers (particularly ray tracers), so some scheme would have to be
developed to ensure effects such as reflection, refraction, shadows, shadow
catchers, fog, flares, etc. could be implemented on the GPU in a completely
different fashion yet remain reasonably true to the end result of the
general purpose renderer - otherwise the photorealistic preview no longer
reflects the final render, defeating the purpose.

There are plugins for Cg/HLSL shader development for 3DS Max, Maya and
SoftImage|XSI which provide for the use of GPU shaders in the editing
environment for real time previews - the focus here, though, is on
developing content for games (including shaders), rather than providing a
real time preview of content that will finally be rendered in the package.

So, yes, ATI (and nVidia) have hardware available that can generate the
images you saw in real time. More importantly, this hardware has been
available on the retail shelf at consumer level prices for nearly 18 months
now and will shortly be superceded by even more capable hardware
(pre-release info suggests a doubling of power - which fits almost perfectly
with Moore's law...).

Is the technology ready for television/film production in place of render
farms? No - it currently lacks the power and flexibility that years of
development have imbued in general purpose software renderers. Will it reach
that point in the foreseeable future?  Highly likely - but that won't
eliminate products such as trueSpace, Maya, SoftImage, etc. - after all
their true purpose is content creation, i.e. providing a user interface and
tools to generate the data that is passed to the renderer, a need that will
still exist - but I'll bet the people behind LightWorks, mentalRay, etc. are
casting more than a casual glance over their shoulder...

Steven Newnham