[comp.graphics] Ray Trace for IBM

nanook@novavax.UUCP (Keith Dickinson) (02/09/89)

I'm looking for a ray-trace program for the IBM. If anyone has one and would
not mind forewarding the sources (or Binaries ARCED/UUencoded) I would
appreciate it greatly.

Keith
---
_   /|  | Fidonet  : 369/2 [(305) 421-8593] Brave Mew World South
\'o.O'  | Internet : nanook@muadib.FIDONET.ORG
=(___)= | UUCP     : (novavax,hoptoad!ankh,muadib)!nanook
   U    | USNail   : 433 SE 13th CT. J-202, Deerfield Beach, Fl. 33441
  Ack!  | Disclamer: This message was created by a faulty AI program.
Don't blame me...I voted for Bill'n'Opus in '88

sa@m-net.UUCP (Scott A. Almburg) (02/13/89)

Doesn;t  ray  tracing take up huge amounts of cpu time?  Does anyone
have examples  of  cpu time/ frame on various machines?
I would think  several hundred hours per frame on an ibm might not
be too far off...

markv@tillamook.uucp (Mark VandeWettering) (02/14/89)

In article <2897@m2-net.UUCP> sa@m-net.UUCP (Scott A. Almburg) writes:

>Doesn;t  ray  tracing take up huge amounts of cpu time?  Does anyone
>have examples  of  cpu time/ frame on various machines?

Well, last time I checked my raytracer on a 20Mghz 68020 and 68881,
I managed to trace a scene with 8192 reflective spheres in ~2.5 hrs.
Unfortunately for the PC, segmented memory confines you to small numbers of 
objects, or use large model (or huge, or superhuge, or whatever) which
slows all pointer dereferencing.  I've never really played to much with 
PCs, so I don't have any hard figures for them.

People in general overestimate the amount of CPU time that raytracing takes.
Improvements in hierarchy methods have made it quite feasible to use
raytracing.  Certainly the next generation of workstations will help.
Combined with the generality and (relative) simplicity of the method, 
raytracing is in many ways a superior algorithm to many scanline algorithms.

>I would think  several hundred hours per frame on an ibm might not
>be too far off...

People who have been working on my raytracer have reported times on the order 
of a day for moderately complex images rendered on the PC.  It's all in the
tuning and optimization....

Mark VandeWettering

johnm@trsvax.UUCP (02/15/89)

>>Doesn;t  ray  tracing take up huge amounts of cpu time?  Does anyone
>>have examples  of  cpu time/ frame on various machines?
>
>Well, last time I checked my raytracer on a 20Mghz 68020 and 68881,
>I managed to trace a scene with 8192 reflective spheres in ~2.5 hrs.
>Unfortunately for the PC, segmented memory confines you to small numbers of 
>objects, or use large model (or huge, or superhuge, or whatever) which
>slows all pointer dereferencing.  I've never really played to much with 
>PCs, so I don't have any hard figures for them.

As Mark says, the available ray tracers for the PC have all been compiled 
using the large model and that makes a significant impact on the speed of the
ray tracing.  A very good example is using the QRT v1.4 ray tracer which I have
timed on both a 20Mhz 386 machine (the Tandy 4000LX) and on an 8Mhz 68000
machine (Amiga 2000) at home.  Normally a 68000 is comparable in speed to a 
286 machine in terms of overall speed but when running this particular program 
on both machines (without floating point chips in either) the Amiga will 
finish in about the same amount of time.  Large numbers of floating point
operations combine with the segmented architecture to kill the speed of the
machine.

>People in general overestimate the amount of CPU time that raytracing takes.
>Improvements in hierarchy methods have made it quite feasible to use
>raytracing.  Certainly the next generation of workstations will help.
>Combined with the generality and (relative) simplicity of the method, 
>raytracing is in many ways a superior algorithm to many scanline algorithms.

I agree with this within limits.  There are still some things that only a
scanline method is practical for, like generating animation.  A good scanline
renderer on a fairly fast machine may have a new frame ready every 3-4 minutes
depending on the complexity of the scene.  No ray tracer that I have scene
could possibly do that (on the same hardware).

>>I would think  several hundred hours per frame on an ibm might not
>>be too far off...

DBW Render for the PC will probably live up to your expectations :-).  Look
over in comp.binaries.ibm.pc for a copy of it.

However, QRT v1.4 which can be gotten on Compu$erve in the Turbo C 2.0 data
library of the Borland section (GO BPROGB) will be able to do ray tracings in
much more reasonable times like 5-6 hours depending upon what hardware you
have.  If you can add a floating point accelerator to your equipment it is
possible to get QRT to spit frames out in 15-20 minutes (Tandy 4000LX & 80387).

>People who have been working on my raytracer have reported times on the order 
>of a day for moderately complex images rendered on the PC.  It's all in the
>tuning and optimization....

John Munsch

sparks@corpane.UUCP (John Sparks) (02/15/89)

In article <2897@m2-net.UUCP>, sa@m-net.UUCP (Scott A. Almburg) writes:
> 
> Doesn;t  ray  tracing take up huge amounts of cpu time?  Does anyone
> have examples  of  cpu time/ frame on various machines?
> I would think  several hundred hours per frame on an ibm might not
> be too far off...

not quite that high. I have an Amiga 1000 (running a 68010) and regularly
use a program called DBW-Render, I ported this program over to a microvax
and a compaq 386-20 (20mhz) with 387 math co-processor

 Here are the times to calculate the same picture
on the various machines. The picture was a translucent pyramid with a mirror
sphere in the pyramid. the pyramid sat on a plane with circular waves eminating
from the pyramid (like water with a stone thrown in it).

Amiga......................12 hours
MicroVax....................1 hour
Compaq.....................40 minutes

note: the vax had about 3 other users on it at the time and the compaq was 
running microport unix and (besides the usual background tasks) the raytracer
was the only program running.

in DBW-render you can specify how long you wish to calculate. It is just a
rough estimate. If you specify a low number you get a fuzzy picture. good
for quick checks. the time was set for 18 hours in the above tests. this
created a complete picture. any more time specified would have still taken
the same amount of time to calculate.

I figure the compaq did so nice because of the math co-processor and the hard
disk (dbw-render writes the scan lines to disk as it calculates them)
My Amiga has no co-processor and only a floppy.


There is another program called QRT (Quick Ray Tracer) for the amiga (and
I read in a previous article, also for the IBM now) that is very fast.

on the amiga it will calculate a picture in less than an hour. I never could
get it to work on the vax or the compaq. but I will get the ibm version and
try that one soon.

---

John Sparks      // Amiga  |  {rutgers|uunet}!ukma!corpane!sparks 
               \X/  UUCP   |  >> call D.I.S.K. @ 502/968-5401 thru 5406 << 
 
Cheerio-Magnetics: The tendency of the last few cheerios in a bowl of milk
to cling together for survival.

kiy@pte.UUCP (Kevin Young) (02/18/89)

In article <340@corpane.UUCP> sparks@corpane.UUCP (John Sparks) writes:
>In article <2897@m2-net.UUCP>, sa@m-net.UUCP (Scott A. Almburg) writes:
>> 
>> Doesn;t  ray  tracing take up huge amounts of cpu time?...
>
>...[stuff about DBW-render and QRT (Quick Ray Tracer)]...
>
>John Sparks      // Amiga  |  {rutgers|uunet}!ukma!corpane!sparks 
>               \X/  UUCP   |  >> call D.I.S.K. @ 502/968-5401 thru 5406 << 

Hi graphics gurus,
I am a newcomer to ray tracing but have been dabbling with graphics
for a long time.  I would like to learn a bit about ray tracing but don't 
know where to start (I have a 16Mhz 386 IBM-PC clone with EGA on my desk).
Could someone direct me to either of the above programs (preferably PD)
and/or a reference on this subject?  Thanks in advance!

Kevin

-- 
>|< Kevin I Young					uunet!edsews!pte!kiy
    Precise Technology & Electronics, Inc.
    Custom Automated Test and Measurement Equipment for Industry
    Old Saying: "Try not. Do, or do not. There is no try." - yoda