Seeing beginner ray-tracing experiments evokes not-so-fond memories of my own first experiences with ray-tracing (and 3D rendering of any kind). Around 1987 I tried a brand new ray tracing program called Sculpt 3D on my Commodore Amiga 1000 (7Mhz 68000 / 512K RAM). I'd been lured into buying the software (for $99 IIRC) when I saw a looping ray-traced animation called The Juggler at a local user group meeting (http://www.etwright.org/cghist/juggler.html). This despite the salesman at the computer shop warning me, "Yeah, so... 3D is really hard and slow."
With no knowledge, experience or clue I enthusiastically raced home to boot up the diskette and dive into what I naively imagined would be a journey toward making my own Tron-like images. I cracked open the manual and pretty quickly figured out how to create a new scene, add a sphere to it and apply what promised to be a shiny chrome texture to the sphere. Of course without rendering it all I could see on the screen was a wireframe. So I anxiously clicked the magic Render button and the screen went black.
I knew the results wouldn't be instant so I went and made a sandwich for lunch. Upon returning to check in on my masterpiece, the screen was still completely black. I went and watched a TV show. Still nothing on the screen yet. I went out and did some errands. Still nothing but black. After dinner, I checked back and finally saw the "Render Complete!" message. But the screen was still completely black.
I went to bed demoralized. The next day I stopped back by the computer store to seek some advice (or, at least some sympathy). Being a Sunday there were several users hanging around talking and playing games. The assembled brain trust was stumped until one guy asked, "Did you add a light to the scene?" Doh!
Suffice to say, I produced no images worth saving (or remembering) in those early days :-). The one positive from my newbie experience was that years later I was involved in software product management, marketing and design, including a few 90s 3D renderers. I ensured that every one of them either included a default light in a new blank scene or warned the user if they clicked Render with no lights in the scene.
My first experience with POV-Ray happened around 1994 or 1995 on the Amiga when I found a copy of it on what I recall was a CD that came with an issue of Amiga Format. The raytracer was dreadfully slow on my 50 MHz 68030 compared to Real3D and Cinema 4D, but all the same fascinating. I played with it on and off through the years, eventually on a regular PC with Windows where I had enough performance to program/script looped animations.
Before getting into computationally intensive effects, the one thing I thought was really cool was reaction-diffusion where 'textures' would be coherent through a volume. A cut-away of a marble block or cellular-like structures would be great to see in one of these scenes. We see single surfaces but seeing that they're not only on-the-surface gives it more substance.
No. It is not really useful in any way these days, not even for recreational purposes I would argue. There are better alternatives. But people like the nostalgia so it pops up here now and then.
What is the superior alternative for a purely text-based scene description? (honest question; maybe there is some obvious answer but when I google it I get tutorials on how to render text in 3d :/ )
I used POV-Ray on my 486 back in early '92. It was the most long-running, compute-intensive operation I did on the machine. After running it 24 x 7 for a few weeks it began hanging during renders. I'd just reboot and go on. It wasn't a bother and I chalked it up to something I was doing wrong in my POV-Ray scenes.
My father purchased the machine for me as a Christmas gift in '91. This was, in part, to stop me from repeatedly trashing his business computer with my 'experiments'. ("What does this 'interrupt 13h' do? Let's see..."). When I told him what happened he assumed I'd damaged the machine leaving it on 24x7 for so many days. He offered to call the guy who'd built it for service. There wasn't much of a hurry, though.
He'd purchased the machine from a local "computer consultant" who handled the business PC and DOS accounting software. This was a guy who had a regular day job but did on-the-side evenings / weekend IT work.
Eventually the machine started hanging under interactive use. This made games difficult to play. It was particularly galling because I'd gotten this exciting shareware game, Wolfenstein 3D, and it would hang nearly every time I played it.
It got bad enough that I decided to take matters into my own hands. I called the consultant at his day job and badgered him with questions. I'm certain he didn't like this 14 y/o kid bothering him at work. At the time, though, I knew no bounds of politeness or appropriateness. There were games to play, BBSs to call, programs to write, and ray tracing to be done!
He knew I had basic mechanical inclination, some electronics knowledge, and rudimentary PC hardware skills. Eventually he suggested I pull the motherboard, put it on a solid surface, and press all the socketed chips into place. If nothing else I assume this was to get me to stop calling him. Armed with a task I pulled the PC apart.
At this point my father got home to find the 6 month old (and still under warranty) PC completely disassembled. He was not pleased. I appealed to the advice of the consultant who'd built the PC. My father sternly told me to stop what I was doing.
He called the consultant at home that evening to make sure my story was true. I think, by that point, my father's own mechanical inclination and drive to fix things himself overpowered his frustration at my having torn apart this expensive and still new-to-him PC.
My father put the board on his wooden workbench and pressed each of the chips individually with his thumb. A group of chips in one corner of the board made that characteristic "crunch" of an IC seating into a DIP socket. The he supervised me reinstalling motherboard and cards. To my delight the PC seemed to be stable again. Wolfenstein 3D didn't hang!
I fired up a render and left it run overnight. The next morning the PC was still chugging away in POV-Ray.
The consultant did me a solid by explaining to my father that leaving the PC on wasn't harmful. After the motherboard's trip to the workbench and the consultant's sign-off that I wasn't going to "burn out" the machine by running it days at a time I was back to writing batch files to create TGA files to string into FLI movies.
Eventually I learned enough about PCs to understand the loose chips nestled in the corner of the board were the L2 cache. The chips had simply "walked" out of their sockets thru thermal cycling.
I hung out at my father's office whenever I heard the consultant was coming. I loved to badger this guy with my computer enthusiasm-- showing him programs I'd written, asking questions, and otherwise distracting him from work. I'm sure I was a frustration to him, though for all I know he probably just billed my father for the time.
The next time the consultant came around he asked what I was doing that kept the machine running for so long. I tried to explain POV-Ray to him and had limited success. He kept getting hung-up when I talked about "cameras" and "lights". He thought I was talking about real physical articles. I had no way to show him the images I'd created. Even if I could have somehow accessed my home PC from the office the Hercules graphics on the accounting PC's amber monochrome monitor wouldn't have helped.
Eventually I explained I was trying to make computer animations. I called out "Terminator 2" and that seemed to connect (though I think it also enhanced the misunderstanding re: physical cameras).
Of course, my animations were not "Terminator 2". They were 15 FPS FLI files in 8-bit color at a 320x200 resolution. They were mostly renderings of groups of chrome spheres spinning and gyrating over variously textured checkerboard floors. Everyone who ever uses a raytracer is required to make these images.
I guess that's a very roundabout way of saying POV-Ray was fun and a formative part of the experience that got me where I am today.
OpenSCAD uses a text based language to describe the construction of geometry in a CAD-focused workflow and is conceptually similar in this regard to POV-Ray
Both packages have a larger ecosystem surrounding them -- that is to say they are not the only tools which support their language specifications. Naturally there is some focus on interoperating - the ability to convert an OpenSCAD model to a POV-Ray scene in order to visualize it, for instance.
Purely as a creative tool, I think anyone who might have reached for POV-Ray in 1993 would reach for Blender today.
With no knowledge, experience or clue I enthusiastically raced home to boot up the diskette and dive into what I naively imagined would be a journey toward making my own Tron-like images. I cracked open the manual and pretty quickly figured out how to create a new scene, add a sphere to it and apply what promised to be a shiny chrome texture to the sphere. Of course without rendering it all I could see on the screen was a wireframe. So I anxiously clicked the magic Render button and the screen went black.
I knew the results wouldn't be instant so I went and made a sandwich for lunch. Upon returning to check in on my masterpiece, the screen was still completely black. I went and watched a TV show. Still nothing on the screen yet. I went out and did some errands. Still nothing but black. After dinner, I checked back and finally saw the "Render Complete!" message. But the screen was still completely black.
I went to bed demoralized. The next day I stopped back by the computer store to seek some advice (or, at least some sympathy). Being a Sunday there were several users hanging around talking and playing games. The assembled brain trust was stumped until one guy asked, "Did you add a light to the scene?" Doh!
Suffice to say, I produced no images worth saving (or remembering) in those early days :-). The one positive from my newbie experience was that years later I was involved in software product management, marketing and design, including a few 90s 3D renderers. I ensured that every one of them either included a default light in a new blank scene or warned the user if they clicked Render with no lights in the scene.