ice-boy opened this issue on Apr 25, 2011 ยท 111 posts
stewer posted Sun, 01 May 2011 at 6:24 AM
Quote - stewer is that you ?
http://forums.cgsociety.org/showthread.php?f=59&t=974578&page=4&pp=15
It's me, although the photo is a few years old - I never changed it since signing up at cgsociety. As a reminder, whatever I write there or here at Renderosity is 100% my opinion and I do not speak for Smith Micro. So please do not try to interpret anything about the future direction of Poser from this post here, it's all just my very own personal view.
My thoughts on a few things mentioned in this thread:
Software modernization: Software is not like a car and not like a building. I can rip out the very foundation of a program and replace it with something else and still have a lot of the upper level code intact. Also, code doesn't age, rust or deteriorate - perfectly working code written 30 years ago is still perfectly working code today. Best example: Unix. A system that was designed decades ago for room-sized machines with text terminals is now playing videos and 3d games on my cell phone. There are many dramatic changes that a good programmer can do to existing software without having to throw out the baby with the bathwater.
Ra tracing: There's nothing revolutionary or new with ray tracing or path tracing, both have been around for decades. The main reason why they're getting more attention lately is faster hardware that reduced path tracing render times from weeks to hours. Poser uses a ray tracer for things like reflections or shadows since verison 5 and expanded its use to AO and IDL, in 6 and 8 while making numerous improvements to the tray tracer itself on the way.
Unbiased: Doesn't mean what most people think or what marketing departments want you to think. It doesn't mean physically correct, it doesn't mean path tracing, it doesn't mean artifact free and it doesn't mean converging to the correct result. I could put a physically based path tracer in front of you and pretty much the only way to tell whether or not its biased would be studying its source code. In fact, most renderers that advertise being unbiased are biased anyway. (Does their max bounce option go to infinity - real infinity, not just 2^32?)
GPU acceleration: cool stuff, I love how much computing power we can get these days for so little money. However, there are severe limitations: CUDA and OpenCL don't do more than 128 textures, and textures have to fit into main memory in addition to geometry and code. Before Poser 7, textures were what made many scenes run out of memory when rendering, but the current version of FireFly can handle pretty much any number of textures in any size using less than 100MB RAM for them. I'm sure some day we'll be able to use texture and geometry caching for GPU ray tracing, but at this point, I haven't seen any practical solution for this problem.
There were a number of things thrown in together in this thread that are separate - physical shaders, ray tracing, progressive rendering and path tracing. Shading models like the one used in Cycles don't depend on ray tracing, if you look at the other sessions in that SIGGRAPH 2010 course, they are being used in games too. Also, changing a renderer from REYES to ray tracing will not add global illumination or change the way its shading works (you can try it out with 3Delight if you like, the Hider option: the render will look the same as before).
Don't get me wrong, I'm not saying that I'm against any of those things and I'm impressed as well by all the cool things that keep coming out. It's just that you don't go from a simple demo to a robust production engine in just a few months - for example, the Arnold renderer mentioned in the SIGGRAPH presentation that ice-boy linked has been in the works since 1997.