THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 27/06/2003 at 20:17, xxxxxxxx wrote:
Cinema 4D Version: 8.100
Platform: Windows ;
Language(s) : C.O.F.F.E.E ; C++ ;
I want my material plugin to act like the c4d standard material about UVW Coordinates,But there is a problem about a TexData.
TexData is not influenced by TextureTag, Even if I get it from vd->GetTexData().
Please tell me what I should do for this.
void CelMaterial::CalcSurface(PluginMaterial *mat, VolumeData *vd)
/* Although vd->tex->lenx and ox changes by TextureTag's Projection setting, It does not change by some TextureTag's Length and Offset value.*/
vd->ProjectPoint( vd->tex, vd->lhit, vd->p, vd->n, &uv) );
col = MyBaseChannel->Sample( vd, &vd->uvw, vd->delta, &vd->n,
vd->time, vd->tex->texflag, 0.0, 0.0 );
vd->col = col;
On 28/06/2003 at 02:05, xxxxxxxx wrote:
Confirmed, though there's a vague explanation at the top of TexData in the docs that might explain this as a "precalculated raytracer representation". I'll ask the programmers...
On 02/07/2003 at 12:35, xxxxxxxx wrote:
Materials (except for the C4D material) always get the projection P_VOLUMESHADER assigned. In that case the values for offset/length are not defined.
For C4D materials the ox/oy values and matrix are modified (precalculated values for the renderer). They do not represent the original offset/length values.
So this is not optimal right now, and will hopefully be changed in the future.
On 02/07/2003 at 17:31, xxxxxxxx wrote:
Thanks for your reply.
I will try another solution.
Some shader( for expamle, Earth or Marble ) does not work correctly in My Matrerial Plugin, Is it also same reason?