Your browser does not seem to support JavaScript. As a result, your viewing experience will be diminished, and you have been placed in read-only mode.
Please download a browser that supports JavaScript, or enable it if it's disabled (i.e. NoScript).
THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 07/03/2006 at 05:32, xxxxxxxx wrote:
User Information: Cinema 4D Version: 9.5 Platform: Windows ; Language(s) : C++ ;
--------- Hi,
I am using GetSurfaceData to extract the surface color, but it doesn´t seem to calculate MIP filtering (although the manual does state that only TraceGeometry doesn´t calculate MIP mapping).
What is required to let GetSurfaceData calculate MIP filtering?
Thanks iA Katachi
On 09/03/2006 at 15:36, xxxxxxxx wrote:
I assume you passed additional vectors for MIP-mapping in Ray::pp? If so, and no MIP-mapping was calculated, it could be that GetSurfaceData() does not calculate MIP-mapping. I can't find the reference to TraceGeometry()/MIP in the manual. Where did you find it? (I should correct it if it's wrong.)
On 10/03/2006 at 06:44, xxxxxxxx wrote:
Hi Mikael,
yes, I have passed them. The reference to TG/MIP in the manual is in the description of the routine VolumeData::GetRay().
It says that for TraceGeometry those vectors don´t need to be filled in as it´s the only routine NOT calculating MIP.
Here is the according text:
> Quote: void GetRay(Real x, Real y, Ray* ray) > > * * * > > Generate the view ray for a position. > > This function does not set pp[0..2], vv[0..2], transport and ior. Those have to be filled in if used subsequently by TraceColor(), TraceColorDirect() or GetSurfaceData(). It's not necessary for TraceGeometry() though (as there are no MIP mapping calculations). > > * * *
Seems plausible. Hope it´s my fault. Thanks in advance for letting me know!
Best Katachi
On 16/03/2006 at 07:14, xxxxxxxx wrote:
So, any info on that issue?
thx Katachi
On 25/03/2006 at 05:06, xxxxxxxx wrote:
Hmm, what has to be done to get a final word concerning this issue? I am stuck on my code and would eagerly like to know if it´s my fault or the application´s fault.
Thanks Katachi
On 31/03/2006 at 10:56, xxxxxxxx wrote:
Sorry for the delay. I'm afraid I can't confirm this. I used the following code:
Ray r; r.ior = 1.0; r.p = LVector(0,0,0); r.pp[0] = Vector(0,0,0); r.pp[1] = Vector(0,0,0); r.pp[2] = Vector(0,0,0); r.pp[3] = Vector(0,0,0); r.v = LVector(0,0,1); r.vv[0] = Vector(0.5,0,1); r.vv[1] = Vector(-0.1,0,1); r.vv[2] = Vector(0,0.1,1); r.vv[3] = Vector(0,-0.1,1); r.transport = 0.0; SurfaceIntersection si; vd->TraceGeometry(&r, 1000000.0, NOTOK, &si); SurfaceData cd; vd->GetSurfaceData(&cd, 0, 0, 0, 0, &r, si); GePrint(RealToString(cd.col.x));
When I change 0.5 to 0.1 I get a different reading, so MIP mapping does seem to be enabled. (The code is just looking at a texture plane with MIP enabled.)
On 13/04/2006 at 06:39, xxxxxxxx wrote:
hi,
thanks for the check. Hmm, I must recheck my code then and see if I am doing anyhting wrong there (although there´s not much to do wrong).
Why did you set transport to 0.0 btw? I never understood for what calculations transport is used for. Can you enlighten me on this one? I know it´s the ray intensity but what is this intensity used for?
Thanks for your efforts