Rendering



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 14/04/2005 at 14:07, xxxxxxxx wrote:

    User Information:
    Cinema 4D Version:   8.2 +  
    Platform:   Windows  ; Mac  ;  Mac OSX  ; 
    Language(s) :     C++  ;

    ---------
    Hi all.
    Can someone tell me how work the C4D rendering?

    I'll try to write what i mean:

    C4D need to know how much RayObjects there are in a document to calculate intersection with their bounding box and calculate a intersection with a polygon, shaders etc..

    this is correct or i wrong?

    No info here about rayobjects and in SDK there are no much examples.

    Thanks all
    Renato T.



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 14/04/2005 at 14:14, xxxxxxxx wrote:

    I'm not sure I understand what you mean. RayObject is a class that's used to represent polygon objects during rendering. What is it you are trying to do?



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 14/04/2005 at 14:16, xxxxxxxx wrote:

    i'll like to create a virtual rayobjects :)

    Cheers
    Renato T.



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 14/04/2005 at 14:19, xxxxxxxx wrote:

    It isn't possible to insert new RayObjects during rendering afaik. Afaict you will have to create them before the render scene is built, either as real ObjectData plugin objects or in a VideoPostData.



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 14/04/2005 at 14:33, xxxxxxxx wrote:

    thanks Mikael,

    so the correct way is to use videopostdata because i don't want to create a real objects but only a render copy.

    Is it possible?

    Cheers
    Renato T.



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 21/04/2005 at 13:37, xxxxxxxx wrote:

    Yes, I think it's possible to create objects before the rendering and then remove the afterwards. If you don't want any real objects at all you will have to draw them yourself during the rendering in ExecutePixel().



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 21/04/2005 at 16:16, xxxxxxxx wrote:

    Thanks, i'll try with it :)

    Cheers
    Renato T.



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 24/04/2005 at 19:02, xxxxxxxx wrote:

    "It isn't possible to insert new RayObjects during rendering afaik"

    So is possible to insert new RayObjects before rendering?
    This can be good... how?

    Cheers
    Renato T.



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 25/04/2005 at 13:19, xxxxxxxx wrote:

    Not actual RayObjects, I believe, but you can insert objects into the scene that you remove after the rendering.



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 25/04/2005 at 13:40, xxxxxxxx wrote:

    I would like to make virtual object that point to real objects. I mean Instance like renderman can do.

    A stuff like this: http://www.e-onsoftware.com/Products/vue5infinite/video/ecocity.mov

    cheers
    Renato T.



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 28/04/2005 at 08:04, xxxxxxxx wrote:

    You will need to do this yourself. There is no built in way otherwise it would be a feature of CINEMA already ;-)
    You will have two problems however, lighting and shadows. You will need to do those yourself, but you can sample the texture directly from the instance object (GetSurfaceData does this). Its just a case of a ray transform to the space of the instance. How you decide to implement it is your choice, there are a number of ways so the best depends on the use.



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 28/04/2005 at 09:53, xxxxxxxx wrote:

    I though that best way was to clone RayObjects.. and render it :(

    There are not a examples where i can learn.. so it's very difficult to start with it.
    I don't know how C4D rendering is working too, i mean what are all phase of rendering.

    Do you mean that i need to trace each pixel myself?

    Thanks
    Renato T.



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 28/04/2005 at 13:05, xxxxxxxx wrote:

    RayObjects are real polygons, you do not want to clone these for instances! (not that you can anyway). A RayObject is simply a structure that is generated at render time to hold some info about the original PolygonObject, it just holds some data and pointers but is just a reference to the original polygons.
    There is nothing really to learn other than to look at the SDK example for rendering/shaders (e.g. ParticleVolume). You have all the calls you need in VolumeData for tracing rays and fetching surface data. Thats all you need.
    As a rough guide, you take a ray, your transform it to your reference space then check if it intersected, if it did, sample the surface at the intersection and use that information (e.g. color and transparency) to then set the current sampling point (e.g. as in ParticleVolume it sets color based on distance from the particles).
    This bit is easy, however, with the renderer you can not do lighting or shadows only sample the surface data (color, transparency...) so you would have to use the other calls in VolumeData to do those and then your own code for shadows.
    Thats about all I could tell you without writing the code for you :)



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 28/04/2005 at 13:52, xxxxxxxx wrote:

    RayObject have a collections of pointer to real object.

    So a copy of a RayObject is a instance of the objects pointed. N-RayObject that point to same object with their Global Matrix.. to me sound like instances.

    C4D rendering use RayObject to get all informations needed.. or not?

    Thanks
    Renato T.



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 28/04/2005 at 14:17, xxxxxxxx wrote:

    No since the points are all in world coordinates, you would really not want to start transforming points at render time! plus the points of an object have to be fixed before rendering so that the ray cast can be accelerated. The RayObject is simply the pointers to the data needed for rendering. Duplicating this would not help (not that you can anyway).
    I've outlined what you need to do, all the information is in the SDK examples and docs, just try it out and you'll see its very simple. I think you are getting distracted by the question of objects and ray objects, they're not going to help and not what you are looking for.



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 28/04/2005 at 14:34, xxxxxxxx wrote:

    Ok, this is a good reply. Now i understand what :)

    Thanks David :)
    Renato T.

    Ps. i'll like to have slower instance in rendering that nothing :)


Log in to reply