Sunday, August 12, 2007

Cinema 4D as my sandbox

I am constantly trying to avoid structural mistakes in the efiRay back end. So I decided to dive a bit deeper into geometry and shader programming prior to even starting to implement them.

Drawing paper sketches and coding single-topic-prototypes is a bit too far away from the matter as to be useful in understanding pretty complicated aspects of 3D calculations.

I needed something "ready" to play with. And found it in my "old friend" Cinema 4D. (I possess version 6 CE which is and looks in fact "old" compared with the current version R10)

There are two ways to program for and extend this excellent piece of software: Writing a c++ library (complicated but producing fast plug-ins) and using their proprietary c++-like extension language "C.O.F.F.E.E." (much easier to handle but slower). As computer hardware gets faster and faster these days, but my available time is very limited, I decided to get me a cup of COFFEE.

With a little help from a kind C4D-plug-in guru ;-) I managed to get my hands on the old COFFEE-SDK-chm-file. That one was really a great benefit for me since it saved me from analyzing dozens of other people's plug-ins to get answers to the basic questions...

The provided screenshot shows a scene, created and rendered in C4D using some built-in, self-made, third-party or SDK-originated shaders. It is amazing what level of enhancement those plug-ins can bring!

Besides writing fancy shaders I plan to implement a Menger Sponge generator. I hope to get inspiration on how to realize vertices, polygons (along with their normal vectors), edges and the like in efiRay.

No comments: