|
|
@ -45,7 +45,6 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com |
|
|
|
|
|
|
|
|
|
|
|
#include <bmmlib.h> |
|
|
|
#include <bmmlib.h> |
|
|
|
#include <max.h> |
|
|
|
#include <max.h> |
|
|
|
#include <texutil.h> |
|
|
|
|
|
|
|
#include <iparamb2.h> |
|
|
|
#include <iparamb2.h> |
|
|
|
#pragma hdrstop |
|
|
|
#pragma hdrstop |
|
|
|
|
|
|
|
|
|
|
@ -105,9 +104,9 @@ AColor plBMSampler::Sample(ShadeContext& sc, float u,float v) |
|
|
|
|
|
|
|
|
|
|
|
BMM_Color_64 c; |
|
|
|
BMM_Color_64 c; |
|
|
|
int x,y; |
|
|
|
int x,y; |
|
|
|
float fu,fv; |
|
|
|
float fu,fv, intpart; |
|
|
|
fu = frac(u); |
|
|
|
fu = modf(u, &intpart); |
|
|
|
fv = 1.0f-frac(v); |
|
|
|
fv = 1.0f - modf(v, &intpart); |
|
|
|
if (fData.fEnableCrop) |
|
|
|
if (fData.fEnableCrop) |
|
|
|
{ |
|
|
|
{ |
|
|
|
if (fData.fCropPlacement) |
|
|
|
if (fData.fCropPlacement) |
|
|
@ -119,8 +118,8 @@ AColor plBMSampler::Sample(ShadeContext& sc, float u,float v) |
|
|
|
} |
|
|
|
} |
|
|
|
else |
|
|
|
else |
|
|
|
{ |
|
|
|
{ |
|
|
|
x = mod(clipx + (int)(fu*fclipw+0.5f),bmw); |
|
|
|
x = clipx + static_cast<int>(fu * fclipw + 0.5f) % bmw; |
|
|
|
y = mod(clipy + (int)(fv*fcliph+0.5f),bmh); |
|
|
|
y = clipy + static_cast<int>(fv * fcliph + 0.5f) % bmh; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
else |
|
|
|
else |
|
|
@ -156,9 +155,9 @@ AColor plBMSampler::SampleFilter(ShadeContext& sc, float u,float v, float du, fl |
|
|
|
fBM->SetFilter(BMM_FILTER_PYRAMID); |
|
|
|
fBM->SetFilter(BMM_FILTER_PYRAMID); |
|
|
|
|
|
|
|
|
|
|
|
BMM_Color_64 c; |
|
|
|
BMM_Color_64 c; |
|
|
|
float fu,fv; |
|
|
|
float fu, fv, intpart; |
|
|
|
fu = frac(u); |
|
|
|
fu = modf(u, &intpart); |
|
|
|
fv = 1.0f-frac(v); |
|
|
|
fv = 1.0f - modf(v, &intpart); |
|
|
|
if (fData.fEnableCrop) |
|
|
|
if (fData.fEnableCrop) |
|
|
|
{ |
|
|
|
{ |
|
|
|
if (fData.fCropPlacement) |
|
|
|
if (fData.fCropPlacement) |
|
|
|