r3mpray
real/code/r3mpray.h
r3code
Ray tracer VSL object
r3Mplevel
R3CLID_MPLEVEL
r3Mpraytracer
R3CLID_MPRAYTRACER - 1549
int R3RegisterMatPropRayTracerClass(R3APP *app);
Randomness
Randomness
R3MPRAYA_Randomness
Number
R3FLOAT
random amplitude
jsobj.SetRandomness(value);
value = jsobj.GetRandomness();
R3FLOAT value = ...;
R3SetAttrs(r3obj, R3MPRAYA_Randomness, value, R3TAG_END);
R3FLOAT value;
R3GetAttrs(r3obj, R3MPRAYA_Randomness, &value, R3TAG_END);
RayCount
RayCount
R3MPRAYA_RayCount
Integer
R3INT
amount of sampled rays
jsobj.SetRayCount(value);
value = jsobj.GetRayCount();
R3INT value = ...;
R3SetAttrs(r3obj, R3MPRAYA_RayCount, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3MPRAYA_RayCount, &value, R3TAG_END);
NormalSide
NormalSide
R3MPRAYA_NormalSide
Boolean
R3BOOL
if true randomized rays are forced to same side of normal as the ray
jsobj.SetNormalSide(value);
value = jsobj.GetNormalSide();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3MPRAYA_NormalSide, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3MPRAYA_NormalSide, &value, R3TAG_END);
WeightByAngle
WeightByAngle
R3MPRAYA_WeightByAngle
Boolean
R3BOOL
if true traced ray color is weighted by dot product ray*normal
jsobj.SetWeightByAngle(value);
value = jsobj.GetWeightByAngle();
R3BOOL value = ...;
R3SetAttrs(r3obj, R3MPRAYA_WeightByAngle, value, R3TAG_END);
R3BOOL value;
R3GetAttrs(r3obj, R3MPRAYA_WeightByAngle, &value, R3TAG_END);
TraceMode
TraceMode
R3MPRAYA_TraceMode
Integer
R3INT
jsobj.SetTraceMode(value);
value = jsobj.GetTraceMode();
R3INT value = ...;
R3SetAttrs(r3obj, R3MPRAYA_TraceMode, value, R3TAG_END);
R3INT value;
R3GetAttrs(r3obj, R3MPRAYA_TraceMode, &value, R3TAG_END);