colorpict modifiers in instances and frozen

Lars O. Grobe wrote:

One more question regarding this topic, if I apply a colorpict to an object,
and use this as instance, will the transformations of the instance be applied
to the pattern, too?

Only if the colorpict pattern was included in the original file you used to create your octree instance. If it is defined in a separate material file included with the scene containing the instance, the transformation will not be applied the same way.

You really should follow Schorsch's advice also about when to use the instance primitive. There really needs to be a help file or something on instances, and I seem to remember writing something like this somewhere, but now I can't even find it... The rule of thumb I use is that there have to be at least 200 geometric primitives in an object before it's worth making an instance. Otherwise, the overhead of tracing rays through instanced octrees negates the memory savings.

Replmarks replaces the markers with transformed scene files (or instances), and as long as you put the related colorpict's in the transformed scene files (or instances), and not in the replmarks input, you should be OK.

Hi!

Thank you for your help!

Only if the colorpict pattern was included in the original file you
used to create your octree instance. If it is defined in a separate
material file included with the scene containing the instance, the
transformation will not be applied the same way.

I think I understand, while I still don't get this working. I have added some
lines to my Makefile now that copy the lines defining the colorpict modifier
into the geometry file of the instance instead of defining the colorpict
modifier in my global materials file. So I have a objectname.rad.mat file for
every object, which is included into the the file I get from dxf2rad. This
file has a statement "void colorpict mypattern....", and a line "mypattern
alias l_object mymaterial", with mymaterial defined in the global materials
file. This should work...?

You really should follow Schorsch's advice also about when to use the
instance primitive. There really needs to be a help file or something
on instances, and I seem to remember writing something like this
somewhere, but now I can't even find it... The rule of thumb I use is
that there have to be at least 200 geometric primitives in an object
before it's worth making an instance. Otherwise, the overhead of
tracing rays through instanced octrees negates the memory savings.

Yes, I will do these "optimation" later... at the moment, I try the general
concept of using instances, as most objects have quite complex geometries, or
at least they will get more and more complicated.

Replmarks replaces the markers with transformed scene files (or
instances), and as long as you put the related colorpict's in the
transformed scene files (or instances), and not in the replmarks input,
you should be OK.

Now I'm really not sure anymore if I understood anything right... If I
putanything (geometry and colorpict statement) into the instance, and place
this instance in my scene with replmarks, the colorpict mapping will be
transformed to the position of the instance!??? So, if I have an plane at
0;0;0, with a mapping (using picture.cal, pic_u, pic_v) applied with
colorpict without any transformation (which means it is at 0;0;0 on the
plane), I than oconv this into an octree, and place this octree with
replmarks into my scene, the plane with it's pattern will appear at the
triangle markers positions, not only the transformed geometry without pattern?

Thank you,CU, Lars.

ยทยทยท

_______________________________________________
Radiance-general mailing list
[email protected]
http://www.radiance-online.org/mailman/listinfo/radiance-general

Hi,

I've got it - finally, after getting a lot of help and after trying with a
lot of objects, pics and transformations ;-)))

Thank you again, CU, Lars.

From: "Lars O. Grobe" <[email protected]>

Only if the colorpict pattern was included in the original file you
used to create your octree instance. If it is defined in a separate
material file included with the scene containing the instance, the
transformation will not be applied the same way.

I think I understand, while I still don't get this working. I have added some
lines to my Makefile now that copy the lines defining the colorpict modifier
into the geometry file of the instance instead of defining the colorpict
modifier in my global materials file. So I have a objectname.rad.mat file for
every object, which is included into the the file I get from dxf2rad. This
file has a statement "void colorpict mypattern....", and a line "mypattern
alias l_object mymaterial", with mymaterial defined in the global materials
file. This should work...?

Maybe it's time to break down and share some of your files, so I can figure out what's going on. Mail them to me directly, rather than adding to the chatter on the list...

Replmarks replaces the markers with transformed scene files (or
instances), and as long as you put the related colorpict's in the
transformed scene files (or instances), and not in the replmarks input,
you should be OK.

Now I'm really not sure anymore if I understood anything right... If I
putanything (geometry and colorpict statement) into the instance, and place
this instance in my scene with replmarks, the colorpict mapping will be
transformed to the position of the instance!??? So, if I have an plane at
0;0;0, with a mapping (using picture.cal, pic_u, pic_v) applied with
colorpict without any transformation (which means it is at 0;0;0 on the
plane), I than oconv this into an octree, and place this octree with
replmarks into my scene, the plane with it's pattern will appear at the
triangle markers positions, not only the transformed geometry without pattern?

It sounds like you understand things perfectly. The xform command (and the instance primitive) add transformations to the surfaces and materials to which they are applied. They don't affect materials contained elsewhere. It's really no more complicated than that.

-Greg