r3raytr

r3raytr

Class

real/raytr/r3raytr.h

Library

r3raytr

Description:

Ray Tracer

See Also

real/raytr/r3rensys.h

See Also

oops/r3vect.h oops/r3color.h

Super Class

r3Rensys

R3CLID_RENSYS

JavaScript

r3Raytracer

Class Identifier

R3CLID_RAYTRACER - 147

Methods

EVALHIT, EVALPARAMCALLBACK, TRACELIGHT, EVALHITGEOMETRY, EVALUATEBYNAME, FINDCAMERAHIT, ILLUMOPTCALLBACK, MATCALLBACK, CHANNELCALLBACK, EVALHITALL, MATOPTCALLBACK, TRANSPCHANNELSEARCH, PREPAREQUICKEVAL, QUICKEVAL, ENDQUICKEVAL, EVALHITILLUMINATION, EVALHITINDIRECTILLUMIN, PREPARERENDER, RENDERCAUSTICS, GETVISIBLECOGRAD, GETCAUSTICSCOGRAD, TRACINGOPTCALLBACK, EVALHITBYNAME, REGISTEROUTPUTCALLBACK, UNREGISTEROUTPUTCALLBA, RAYHITCALLBACK,

Attributes

EvalObj, CopyChannels, TracedChannels, OutLine, OutLineFill, OutLineColor, OutLineFillColor, OutLineChannelName, InfinityDistance, DitherScale, TraceCallBack, TraceContext, RenderMode, DeriveChannelsCallBack, TracedChannelData, DistanceTraceCallBack,

R3RTM_EVALHIT

Method

EVALHIT

Identifier

R3RTM_EVALHIT

JavaScript

obj.EVALHIT();

Description

R3RTM_EVALPARAMCALLBACK

Method

EVALPARAMCALLBACK

Identifier

R3RTM_EVALPARAMCALLBACK

JavaScript

obj.EVALPARAMCALLBACK();

Description

Evaluates material system similar to EVALUATE method, except that channels are not * initalized. Used internally.

R3RTM_TRACELIGHT

Method

TRACELIGHT

Identifier

R3RTM_TRACELIGHT

Param 1:

R3VECTOR, source point

Param 2:

R3VECTOR, destination point

Param 3:

R3FLOATCOLOR3, amount of light from source point. Result will be returned in the same * color parameter.

JavaScript

obj.TRACELIGHT(p1, p2, p3);

Description

Computes how light changes when travelling between two points. * Current render settings define which effects are taken into account. *

R3RTM_EVALHITGEOMETRY

Method

EVALHITGEOMETRY

Identifier

R3RTM_EVALHITGEOMETRY

JavaScript

obj.EVALHITGEOMETRY();

Description

R3RTM_EVALUATEBYNAME

Method

EVALUATEBYNAME

Identifier

R3RTM_EVALUATEBYNAME

JavaScript

obj.EVALUATEBYNAME();

Description

R3RTM_FINDCAMERAHIT

Method

FINDCAMERAHIT

Identifier

R3RTM_FINDCAMERAHIT

JavaScript

obj.FINDCAMERAHIT();

Description

R3RTM_ILLUMOPTCALLBACK

Method

ILLUMOPTCALLBACK

Identifier

R3RTM_ILLUMOPTCALLBACK

JavaScript

obj.ILLUMOPTCALLBACK();

Description

R3RTM_MATCALLBACK

Method

MATCALLBACK

Identifier

R3RTM_MATCALLBACK

JavaScript

obj.MATCALLBACK();

Description

R3RTM_CHANNELCALLBACK

Method

CHANNELCALLBACK

Identifier

R3RTM_CHANNELCALLBACK

JavaScript

obj.CHANNELCALLBACK();

Description

R3RTM_EVALHITALL

Method

EVALHITALL

Identifier

R3RTM_EVALHITALL

JavaScript

obj.EVALHITALL();

Description

R3RTM_MATOPTCALLBACK

Method

MATOPTCALLBACK

Identifier

R3RTM_MATOPTCALLBACK

JavaScript

obj.MATOPTCALLBACK();

Description

R3RTM_TRANSPCHANNELSEARCH

Method

TRANSPCHANNELSEARCH

Identifier

R3RTM_TRANSPCHANNELSEARCH

JavaScript

obj.TRANSPCHANNELSEARCH();

Description

R3RTM_PREPAREQUICKEVAL

Method

PREPAREQUICKEVAL

Identifier

R3RTM_PREPAREQUICKEVAL

Return

void*, quickeval handle

Param 1:

char**, NULL terminated array of names of input channels

Param 2:

int, clid of phase to be evaluated (only one raysample phases supported)

Param 3:

char**, NULL terminated array of names of output channels

JavaScript

rc = obj.PREPAREQUICKEVAL(p1, p2, p3);

Description

Prepares and optim. handle for repeated channel evaluation

R3RTM_QUICKEVAL

Method

QUICKEVAL

Identifier

R3RTM_QUICKEVAL

Param 3:

void*, quikeval handle from R3RTM_PREPAREQUICKEVAL

JavaScript

obj.QUICKEVAL(p3);

Description

Evaluates channels specified in R3RTM_PREPAREQUICKEVAL

R3RTM_ENDQUICKEVAL

Method

ENDQUICKEVAL

Identifier

R3RTM_ENDQUICKEVAL

Param 3:

void*, quikeval handle from R3RTM_PREPAREQUICKEVAL

JavaScript

obj.ENDQUICKEVAL(p3);

Description

Deallocates quickeval handle

R3RTM_EVALHITILLUMINATION

Method

EVALHITILLUMINATION

Identifier

R3RTM_EVALHITILLUMINATION

JavaScript

obj.EVALHITILLUMINATION();

Description

R3RTM_EVALHITINDIRECTILLUMIN

Method

EVALHITINDIRECTILLUMIN

Identifier

R3RTM_EVALHITINDIRECTILLUMIN

JavaScript

obj.EVALHITINDIRECTILLUMIN();

Description

R3RTM_PREPARERENDER

Method

PREPARERENDER

Identifier

R3RTM_PREPARERENDER

JavaScript

obj.PREPARERENDER();

Description

R3RTM_RENDERCAUSTICS

Method

RENDERCAUSTICS

Identifier

R3RTM_RENDERCAUSTICS

JavaScript

obj.RENDERCAUSTICS();

Description

R3RTM_GETVISIBLECOGRAD

Method

GETVISIBLECOGRAD

Identifier

R3RTM_GETVISIBLECOGRAD

JavaScript

obj.GETVISIBLECOGRAD();

Description

R3RTM_GETCAUSTICSCOGRAD

Method

GETCAUSTICSCOGRAD

Identifier

R3RTM_GETCAUSTICSCOGRAD

JavaScript

obj.GETCAUSTICSCOGRAD();

Description

R3RTM_TRACINGOPTCALLBACK

Method

TRACINGOPTCALLBACK

Identifier

R3RTM_TRACINGOPTCALLBACK

JavaScript

obj.TRACINGOPTCALLBACK();

Description

R3RTM_EVALHITBYNAME

Method

EVALHITBYNAME

Identifier

R3RTM_EVALHITBYNAME

JavaScript

obj.EVALHITBYNAME();

Description

R3RTM_REGISTEROUTPUTCALLBACK

Method

REGISTEROUTPUTCALLBACK

Identifier

R3RTM_REGISTEROUTPUTCALLBACK

Return

R3BOOL, true if succeeded

Param 2:

int, callbackj method

Param 3:

void*, optional context that is passed as p3 in the callback

JavaScript

rc = obj.REGISTEROUTPUTCALLBACK(0, p2, p3);

Description

registers a callback hook which is called frequently during rendering.

R3RTM_UNREGISTEROUTPUTCALLBA

Method

UNREGISTEROUTPUTCALLBA

Identifier

R3RTM_UNREGISTEROUTPUTCALLBA

Return

R3BOOL, true if found

Param 2:

int, callbackj method

Param 3:

void*, optional context that is passed as p3 in the callback

JavaScript

rc = obj.UNREGISTEROUTPUTCALLBA(0, p2, p3);

Description

unregisters a callback hook

R3RTM_RAYHITCALLBACK

Method

RAYHITCALLBACK

Identifier

R3RTM_RAYHITCALLBACK

Param 1:

R3INT, surface hit method (R3SURFM_RAYHIT)

Param 3:

R3TAG*, tag list. See R3RTA_RayhitCallback etc. tags below.

JavaScript

obj.RAYHITCALLBACK(p1, p3);

Description

Rayhit search using callback. The callback is called whenever surface hit test returns TRUE. Hit search continues until callback returns NULL.

EvalObj

Attribute

EvalObj

Identifier

R3RTA_EvalObj

JavaScript type

String

C type

void*

Description

'R3RTA_EvalObj' not documented

Syntax


jsobj.SetEvalObj(value);
value = jsobj.GetEvalObj();


void* value = ...;
R3SetAttrs(r3obj, R3RTA_EvalObj, value, R3TAG_END);
void* value;
R3GetAttrs(r3obj, R3RTA_EvalObj, &value, R3TAG_END);

CopyChannels

Attribute

CopyChannels

Identifier

R3RTA_CopyChannels

JavaScript type

r3List

C type

R3LIST*

Description

read-only list of channel names that will be outputted in current config.

Syntax


value = jsobj.GetCopyChannels();


R3LIST* value;
R3GetAttrs(r3obj, R3RTA_CopyChannels, &value, R3TAG_END);

TracedChannels

Attribute

TracedChannels

Identifier

R3RTA_TracedChannels

JavaScript type

String

C type

char**

Description

a pointer to a zero terminated array of raychannelname, signalchannelname pairs. Redefines the channels to be ray traced. For example: char *tracedchannelarray[] = { "Reflection", "Reflected ray", "Transparency", "Refracted ray", NULL}; R3SetAttrs(rt, R3RTA_TracedChannels, tracedchannelarray, R3TAG_END);

Syntax


jsobj.SetTracedChannels(value);


char** value = ...;
R3SetAttrs(r3obj, R3RTA_TracedChannels, value, R3TAG_END);

OutLine

Attribute

OutLine

Identifier

R3RTA_OutLine

JavaScript type

Boolean

C type

R3BOOL

Description

if true outline drawing is used

Syntax


jsobj.SetOutLine(value);


R3BOOL value = ...;
R3SetAttrs(r3obj, R3RTA_OutLine, value, R3TAG_END);

OutLineFill

Attribute

OutLineFill

Identifier

R3RTA_OutLineFill

JavaScript type

Boolean

C type

R3BOOL

Description

if true outline filling is used

Syntax


jsobj.SetOutLineFill(value);


R3BOOL value = ...;
R3SetAttrs(r3obj, R3RTA_OutLineFill, value, R3TAG_END);

OutLineColor

Attribute

OutLineColor

Identifier

R3RTA_OutLineColor

Type

r3Vect

Description

color used in drawing outlines

Syntax


jsobj.SetOutLineColor(value);


R3FLOATCOLOR3 value = ...;
R3SetAttrs(r3obj, R3RTA_OutLineColor, value, R3TAG_END);

OutLineFillColor

Attribute

OutLineFillColor

Identifier

R3RTA_OutLineFillColor

Type

r3Vect

Description

color used in filling outlines

Syntax


jsobj.SetOutLineFillColor(value);


R3FLOATCOLOR3 value = ...;
R3SetAttrs(r3obj, R3RTA_OutLineFillColor, value, R3TAG_END);

OutLineChannelName

Attribute

OutLineChannelName

Identifier

R3RTA_OutLineChannelName

JavaScript type

String

C type

char*

Description

name of channel to which outlines are drawn.

Syntax


jsobj.SetOutLineChannelName(value);


char* value = ...;
R3SetAttrs(r3obj, R3RTA_OutLineChannelName, value, R3TAG_END);

InfinityDistance

Attribute

InfinityDistance

Identifier

R3RTA_InfinityDistance

JavaScript type

Number

C type

R3FLOAT

Description

distance rendered to z channel from infinity

Syntax


jsobj.SetInfinityDistance(value);


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3RTA_InfinityDistance, value, R3TAG_END);

DitherScale

Attribute

DitherScale

Identifier

R3RTA_DitherScale

JavaScript type

Number

C type

R3FLOAT

Description

defines amount of color dithering

Syntax


jsobj.SetDitherScale(value);


R3FLOAT value = ...;
R3SetAttrs(r3obj, R3RTA_DitherScale, value, R3TAG_END);

TraceCallBack

Attribute

TraceCallBack

Identifier

R3RTA_TraceCallBack

JavaScript type

String

C type

void*

Description

read only addr of function int R3TraceHook(void *context, R3VECTOR *result, R3VECTOR *hitp, R3VECTOR *tray, R3FLOATCOLOR3 *signal, R3FLOAT maxdist)

Syntax


value = jsobj.GetTraceCallBack();


void* value;
R3GetAttrs(r3obj, R3RTA_TraceCallBack, &value, R3TAG_END);

TraceContext

Attribute

TraceContext

Identifier

R3RTA_TraceContext

JavaScript type

String

C type

void*

Description

Read only, context for the callback above

Syntax


value = jsobj.GetTraceContext();


void* value;
R3GetAttrs(r3obj, R3RTA_TraceContext, &value, R3TAG_END);

RenderMode

Attribute

RenderMode

Identifier

R3RTA_RenderMode

JavaScript type

Integer

C type

R3INT

Description

see modes below

Syntax


jsobj.SetRenderMode(value);


R3INT value = ...;
R3SetAttrs(r3obj, R3RTA_RenderMode, value, R3TAG_END);

DeriveChannelsCallBack

Attribute

DeriveChannelsCallBack

Identifier

R3RTA_DeriveChannelsCallBack

JavaScript type

String

C type

void*

Description

read only addr of function void R3DeriveChannels(void *context, int phase)

Syntax


value = jsobj.GetDeriveChannelsCallBack();


void* value;
R3GetAttrs(r3obj, R3RTA_DeriveChannelsCallBack, &value, R3TAG_END);

TracedChannelData

Attribute

TracedChannelData

Identifier

R3RTA_TracedChannelData

JavaScript type

r3List

C type

R3LIST*

Description

read only list describing ray traced channels. See R3TRACEITEM below

Syntax


value = jsobj.GetTracedChannelData();


R3LIST* value;
R3GetAttrs(r3obj, R3RTA_TracedChannelData, &value, R3TAG_END);

DistanceTraceCallBack

Attribute

DistanceTraceCallBack

Identifier

R3RTA_DistanceTraceCallBack

JavaScript type

String

C type

void*

Description

same as tracecallback but computes only hit distance

Syntax


value = jsobj.GetDistanceTraceCallBack();


void* value;
R3GetAttrs(r3obj, R3RTA_DistanceTraceCallBack, &value, R3TAG_END);

R3RTMODE_NORMAL
R3RTMODE_LIGHTING
R3RTMODE_CAUSTICS
R3RTMODE_GEOMETRYTESTS

Antialiasing operations

R3RTAAOP_AVERAGE
R3RTAAOP_MIN
R3RTAAOP_MAX

Antialiasing flags

R3RTAAF_TRIGGERAA

Tags

Tags

R3RTA_SurfaceSystem
R3RTA_RayhitContext