typedef void(SL_STDCALL *cbOnImGuiBuild)(SLScene *s
Callback function typedef for ImGui build function.
vector< SLRTAAPixel > SLVPixel
SLRTState
Ray tracing state.
Active or visible camera node class.
Virtual Eventhandler class.
Texture object for OpenGL texturing.
Defines a standard CG material with textures and a shader program.
Ray class with ray and intersection properties.
SLRaytracer hold all the methods for Whitted style Ray Tracing.
SLint resolutionFactorPC() const
SLfloat _oneOverGamma
one over gamma correction value
virtual void prepareImage()
SLVPixel _aaPixels
Vector for antialiasing pixels.
SLbool _doDistributed
Flag for parallel distributed RT.
SLbool renderClassic(SLSceneView *sv)
SLfloat renderSec() const
SLCol4f trace(SLRay *ray)
SLSceneView * _sv
Parent sceneview.
void doContinuous(SLbool cont)
function< void(bool, SLuint)> renderSlicesAsync
SLVec3f _eye
Camera position.
void renderSlices(bool isMainThread, SLuint threadNum)
SLCol4f fogBlend(SLfloat z, SLCol4f color)
virtual void printStats(SLfloat sec)
SLint _nextLine
next line index to render RT in a thread
void state(SLRTState state)
void renderSlicesMS(bool isMainThread, SLuint threadNum)
SLRTState _state
RT state;.
SLCol4f shade(SLRay *ray)
SLfloat _resolutionFactor
screen to RT image size factor (default 1.0)
SLfloat _renderSec
Rendering time in seconds.
static SLuint numThreads()
SLfloat _gamma
gamma correction value
SLint _aaSamples
SQRT of uneven num. of AA samples.
SLfloat oneOverGamma() const
SLbool renderDistrib(SLSceneView *sv)
SLbool _doFresnel
Flag for Fresnel reflection.
void doFresnel(SLbool fresnel)
SLint _maxDepth
Max. allowed recursion depth.
function< void(bool, SLuint)> sampleAAPixelsAsync
virtual void renderImage(bool updateTextureGL)
SLbool doDistributed() const
void renderUIBeforeUpdate()
Must be called before an inbetween frame updateRec.
SLbool doContinuous() const
void maxDepth(SLint depth)
void setPrimaryRay(SLfloat x, SLfloat y, SLRay *primaryRay)
Set the parameters of a primary ray for a pixel position at x, y.
SLVec3f _lr
Camera lookat, lookup, lookright.
SLfloat aaThreshold() const
SLfloat _aaThreshold
threshold for anti aliasing
void resolutionFactor(SLfloat rf)
void aaSamples(SLint samples)
SLCamera * _cam
shortcut to the camera
virtual void initStats(SLint depth)
SLbool _doContinuous
if true state goes into ready again
void sampleAAPixels(bool isMainThread, SLuint threadNum)
SLfloat _pxSize
Pixel size.
SLint _progressPC
progress in %
AvgFloat _raysPerMS
Averaged rays per ms.
SLfloat resolutionFactor() const
virtual void saveImage()
Saves the current RT image as PNG image.
void doDistributed(SLbool distrib)
SLVec3f _bl
Bottom left vector.
The SLScene class represents the top level instance holding the scene structure.
SceneView class represents a dynamic real time 3D view onto the scene.
unsigned int maxThreads()
Returns in release config the max. NO. of threads otherwise 1.
Pixel index struct used in anti aliasing in ray tracing.
SLushort y
Unsigned short x-pixel index.
SLRTAAPixel(SLushort X=0, SLushort Y=0)
SLushort x
Unsigned short x-pixel index.