Over the years, there have been a handful of discussions and experiments trying to recreate those classic 80s and 90s CGI / raytracer aesthetics in Blender. As shading systems advanced and the original software that produced them have became outdated, slow, or unsupported achieving that look has become increasingly difficult.
As someone who loves the shading aesthetics of that era (essentially the origins of digital CG)I I’ve spent a lot of time researching how those old renderers worked and experimenting directly with Bryce and POV-Ray. It’s still a work in progress, but I’ve managed to create shaders in Blender (Eevee) that replicate many of their core behaviors. I’ve affectionately named them Blyde (after Blyde River Canyon) and POP-Ray (“Popular Ray”).
I’m also developing N64 and PSX inspired shaders that integrate with the same custom setup.
I’ll be sharing more soon, but the project has finally reached a point where I feel ready to show what I’ve been quietly working on behind the scenes.
Well, it’s worth observing that one of those “early renderers,” Blender Internal, was removed from the Blender product. That being said, many renderers of that time were not true “ray tracers,” because there simply wasn’t enough computing horsepower then available. They “cut corners,” because they had to.
Technologies like “Cycles” and “EEVEE” today rely on GPU hardware devices that, at the time, either didn’t exist at all, or were in their infancy.
this allegedly took 45 minutes to render a single frame. at 30 frames per second and for about 24 seconds. this demo would have taken approximately 26 days and 6 hours.
Ya took the words right out of my mouth. AFAIK, that is the first example of ray tracing on a personal computer. You saw that demo at every computer store in 1987.
Yeah, the Juggler was a landmark. I remember the first time I saw it. It was at a small-scale Amsterdam computer event in 1986. Suddenly you heard those “PINGGG! PINGGG!” sounds, and saw a crowd of people gather around an Amiga 1000 screen. Approaching the screen, my jaw dropped on the floor when I saw The Juggler demo.
For more digital nostalgia, you’re invited to this thread:
@XYZero Thanks again for sharing your original render! I tried recreating it as close as possible. Even though it’s not perfect I’m quite happy how far I’ve gotten my POP-Ray shader to match POV-Ray. The cuboid is obviously the worst and I’ll need to come back to it once I make some patterns and fix other things.
Since this is Eevee 4.1 (but works with recent version too) refraction, reflections, transparency, and shadows can’t quite give the same results as Cycles. Though more recent versions have improved upon some of those aspects. So this is definitely something I need to work on. I do plan on making a Cycles variant for my shaders, but at a later point.
Also this has gamma applied in the compositing node which makes it darker, just like how POV-Ray allows to specify overall gamma.
@Metin_Seven Thanks again too for all your posts (I too enjoy watching those old CGI YouTube playlists)! Also, It’s in my plans to investigate at least one Amiga raytracer, though unlike POV-Ray and Bryce it seems I have to jump through a bit more hoops to get one working on Windows 10 (though I haven’t investigated thoroughly so I don’t know for sure). You’ll notice I mocked up The Juggler with my POP(ular)-Ray shader. Like the name implies it’s basically able to create most of the basic shaders of that time. That said a variant could still be made that is more fine tuned to behave like Sculpt 3D.
If you know of any guides to get Sculpt 3D running on Windows 10 that would be great! If not any other resources would be helpful too.
So whats next? I’m actually planning to release these shaders in a few months. The cool thing is it’s not just going to be for Blender but Unity, Godot, Unreal and (because it’s Eevee) UPBGE too. I also have a Unity tool that I’ve been working and I’m going to bundle it together with theses shaders. So if any of that sounds exciting to the few people that come across this, then keep tabs on this.
Around the same time Sculpt 3D was released, TurboSilver was published. You might like to look into that too. It featured the first bucket renderer I ever saw, and it was the predecessor to Imagine, which was also available for MS-DOS.
@rigoletto It sure is! Though I wasn’t satisfied and so I thought what makes POV-Ray and Bryce look the way they do and could I get it in real time via Eevee. Once I got it figured out, I knew I could then port those shaders to Unity which I use a lot and to other programs I use too.
My shaders will never be a true replacement for either software, but I like the idea that I can get these retro looks in any other program that I use.
Also, I’m the same guy who made this guide so anyone can get POV-Ray working in Blender with little to no headaches.
@Metin_Seven I’m glad that I could deliver those nostalgic feels with my mock up of The Juggler. Also, thanks for the info I’ll be taking a look at WinUAE then and either Sculpt 3D or TurboSilver to base a fifth shader off of.
Wow, that brought back memories. That was the first 3D software I ever used and I made a fair bit of money with it at the time. It was not friendly but it could raytrace when others (mainly Lightwave) could not.
The thing that so many people today cannot realize – after “Moore’s Law” has now gone through so many iterations – is that “the hardware we had then” couldn’t really do anything. So, we made it do miracles anyway.
Please don’t tell certain programmers that it can’t be done. My personal favorite was a Pinball Construction Set, for an “Apple ][” computer which had a primitive microprocessor (much weaker than Amiga’s …), a laughable video system, a “speaker” interface consisting of a binary toggle. Unlike later Commodore and Atari products, it had no “supporting chips” of any kind. And yet, this program would let you construct your own pinball game, and run it. (I don’t recall if it had music.) But, other games did have music. On hardware that had no business even considering it … and “48K if the owner had many hundreds of dollars to spend.”
Thankfully for all of us, the Blender project still has programmers who aren’t interested in you telling them that “it can’t be done.”
P.S.: Although I am “a computer programmer,” and of that era, I was never one of those. (Although it was fun to try to re-create “Q*Bert,” of course from scratch, in “Lattice C” on an Amiga 500 . . .)
Back then, it was still not unheard of to see programmers resorting to writing logic in assembly (ie. getting as close to the metal as they can) to speed up performance sensitive areas so as to maximize the number of machines that can run it. The fact that programmers also could not just take a bunch of pre-existing libraries and link them together also helped since cooking your own solutions to things such as UI quite often leads to better performance and less bloat if you could spare the resources to do it.
Unlike today, it was very common for your neighbor to have a machine that was at least several times more powerful or several times weaker than what you had because of the massive difference between processor generations. Compare that to today where the only real way to get a big performance leap is to move to a higher tier with a lot more cores (providing the software can actually make good use of all of them). If you are already there, then you may very well be good for at least a decade.
Now though it is true that these visuals were considered very advanced for home hardware at the time, keep in mind that a single image may very well have required many hours or even days to render (especially when doing more advanced visuals like crude volumetric effects). The development behind it was impressive but optimization still had its challenges and its limits.