SO3Engine
Functions
Rendering and Buffer

Functions

int SO3ViewportWriteContent (mmachine m)
 SO3ViewportWriteContent : function to write the content of a SO3_VIEWPORT into a file the size can be larger than the current viewport pixel size overlays can be shown only the current viewport size is used.
 
int SO3BufferCreate (mmachine m)
 SO3BufferCreate : This function create a new SO3_BUFFER Object.
 
int SO3BufferSetProperties (mmachine m)
 SO3BufferSetProperties : This function defines properties of a SO3_BUFFER Object.
 
int SO3BufferSetStereoVision (mmachine m)
 SO3BufferSetStereoVision : This function defines stereo vision mode on a SO3_BUFFER Object DEPRECATED
 
int SO3BufferGetStereoVisionProperties (mmachine m)
 SO3BufferGetStereoVisionProperties : Get stereo vision properties DEPRECATED
 
int SO3BufferGetStereoMode (mmachine m)
 SO3BufferGetStereoMode : This function retrieves the stereo vision mode on a SO3_BUFFER Object.
 
int SO3BufferSetStereoMode (mmachine m)
 SO3BufferSetStereoMode : This function set the stereo vision mode on a SO3_BUFFER Object.
 
int SO3BufferGetStereoEyeSpacing (mmachine m)
 SO3BufferGetStereoEyeSpacing : This function retrieves the eye spacing that is in use for the stereo vision mode.
 
int SO3BufferSetStereoEyeSpacing (mmachine m)
 SO3BufferSetStereoEyeSpacing : This function set the eye spacing for the stereo vision mode.
 
int SO3BufferSetStereoRotateView (mmachine m)
 SO3BufferSetStereoRotateView : This function enable or disable the rotated view for stereo mode (-90°)
 
int SO3BufferGetStereoRotateView (mmachine m)
 SO3BufferGetStereoRotateView : This function get the rotated view for stereo mode.
 
int SO3BufferSetStereoProjectionCenterOffset (mmachine m)
 SO3BufferSetStereoProjectionCenterOffset : This function set the projection center offset.
 
int SO3BufferSetStereoAspectRatio (mmachine m)
 SO3BufferSetStereoAspectRatio : This function set the camera aspect ratio for stereo modes.
 
int SO3BufferSetStereoFOVy (mmachine m)
 SO3BufferSetStereoFOVy : This function set the camera FOV for stereo modes.
 
int SO3BufferSetStereoDistortion (mmachine m)
 SO3BufferSetStereoDistortion : This function set the distortion parameters for Oculus stereo.
 
int SO3BufferSetStereoChromAbCorrection (mmachine m)
 SO3BufferSetStereoChromAbCorrection : This function set the chromatic correction parameters for Oculus stereo.
 
int SO3BufferSetStereoProjectionMatrix (mmachine m)
 SO3BufferSetStereoProjectionMatrix : This function set the stereo custom projection matrix.
 
int SO3BufferGetStereoCustomProjection (mmachine m)
 SO3BufferGetStereoCustomProjection : This function set the stereo custom projection matrix.
 
int SO3BufferGetStereoProjectionMatrix (mmachine m)
 SO3BufferGetStereoProjectionMatrix : This function set the stereo custom projection matrix.
 
int SO3BufferSetStereoTimeWarpMatrix (mmachine m)
 SO3BufferSetStereoTimeWarpMatrix : This function set the stereo custom projection matrix.
 
int SO3BufferSetStereoMeshUvParams (mmachine m)
 SO3BufferSetStereoMeshUvParams : This function set the stereo mesh uv parameters.
 
int SO3BufferSetStereoMeshTextureSize (mmachine m)
 SO3BufferSetStereoMeshTextureSize : This function set the stereo mesh RTT size.
 
int SO3BufferSetStereoWindow (mmachine m)
 SO3BufferSetStereoWindow : This function set the stereo window parameters.
 
int SO3BufferSetStereoMeshes (mmachine m)
 SO3BufferSetStereoMeshes : This function set the stereo meshes.
 
int SO3BufferGetStereoTextures (mmachine m)
 SO3BufferGetStereoTextures : Get the stereo texture pointers for the HMD plugin.
 
int SO3BufferGetStereoViewportSize (mmachine m)
 SO3BufferGetStereoViewportSize : Get the stereo viewports size Prototype: fun [SO3_BUFFER] [[I I] [I I]].
 
int SO3GetAPIVersion (mmachine m)
 SO3GetAPIVersion : Get the SO3 plugin API version.
 
int SO3GetGeneralInfo (mmachine m)
 SO3GetGeneralInfo : Get general informations about the user system.
 
int SO3GetRenderInfo (mmachine m)
 SO3GetRenderInfo : Get render informations about the user system.
 
int SO3GetQuadBufferEnable (mmachine m)
 SO3GetQuadBufferEnable : Retrieve if the graphic card have quad-buffering enabled.
 
int SO3IsShaderProfileSupported (mmachine m)
 SO3IsShaderProfileSupported : return 1 if the shader profile is supported.
 
int SO3GetFullscreenVideoMode (mmachine m)
 SO3GetFullscreenVideoMode : Get fullscreen video mode supported by user.
 
int SO3GetMultisamplingMode (mmachine m)
 SO3GetMultisamplingMode : Get multi sampling mode supported by user.
 
int SO3BufferGetFSAA (mmachine m)
 SO3BufferGetFSAA : Get multi sampling mode setted.
 
int SO3GetRendererInfo (mmachine m)
 SO3GetRendererInfo : get rendering informations DEPRECATED FUNCTION Prototype: fun [] [S S].
 
int SO3GetRendererList (mmachine m)
 SO3GetRendererList : get renderers list DEPRECATED FUNCTION Prototype: fun [] [S r1].
 
int SO3GetActiveRenderer (mmachine m)
 SO3GetActiveRenderer : get active renderer system Prototype: fun [] I.
 
int SO3BufferGetAverageFPS (mmachine m)
 SO3BufferGetAverageFPS : get the average FPS.
 
int SO3BufferGetBestFPS (mmachine m)
 SO3BufferGetBestFPS : get the best FPS.
 
int SO3BufferGetWorstFPS (mmachine m)
 SO3BufferGetWorstFPS : get the worst FPS.
 
int SO3BufferGetBestFrametime (mmachine m)
 SO3BufferGetBestFrametime : get the best frametime.
 
int SO3BufferGetWorstFrametime (mmachine m)
 SO3BufferGetWorstFrametime : get the worst frametime.
 
int SO3BufferGetTriangleCount (mmachine m)
 SO3BufferGetTriangleCount : get the number of triangle displayed in a SO3_BUFFER.
 
int SO3BufferGetBatchCount (mmachine m)
 SO3BufferGetBatchCount : get the batch count displayed in a SO3_BUFFER.
 
int SO3OverlayCreate (mmachine m)
 SO3OverlayCreate : Create an SO3_OVERLAY DEPRECATED Prototype: fun [Chn S] SO3_OVERLAY.
 
int SO3DebugDisplayProperties (mmachine m)
 SO3DebugDisplayProperties : Create an overlay to print debug text.
 
int SO3DebugSetText (mmachine m)
 SO3DebugSetText : Set Debug Text on a Viewport.
 
int SO3DebugSetEnable (mmachine m)
 SO3DebugSetEnable : Set Debug Text enable/disable on a Viewport.
 
int SO3DebugGetEnable (mmachine m)
 SO3DebugGetEnable : Get the debug overlay state on a buffer.
 
int SO3DestroyBuffer (mmachine m)
 SO3DestroyBuffer : Scol function to destroy a SO3_BUFFER.
 
int SO3BufferUpdate (mmachine m)
 SO3BufferUpdate : function to update a SO3_BUFFER.
 
int SO3BufferWriteContent (mmachine m)
 SO3BufferWriteContent : function to write the content of a SO3_BUFFER into a file.
 
int SO3BufferInjectMouseMove (mmachine m)
 SO3BufferInjectMouseMove : function to inject mouse move.
 
int SO3BufferInjectMouseClick (mmachine m)
 SO3BufferInjectMouseClick : function to inject mouse click.
 
int SO3BufferInjectMouseUnClick (mmachine m)
 SO3BufferInjectMouseUnClick : function to inject mouse unclick.
 
int SO3BufferInjectMouseWheel (mmachine m)
 SO3BufferInjectMouseWheel : function to inject mouse wheel.
 
int SO3BufferInjectTouchAdd (mmachine m)
 SO3BufferInjectTouchAdd : function to inject touch added.
 
int SO3BufferInjectTouchRemove (mmachine m)
 SO3BufferInjectTouchRemove : function to inject touch removed.
 
int SO3BufferInjectTouchUpdate (mmachine m)
 SO3BufferInjectTouchUpdate : function to inject touch updated Only for Android, IOS and LINUX.
 
int SO3BufferEnableAdvancedRayCast (mmachine m)
 SO3BufferEnableAdvancedRayCast : function to enable or disable advanced mouse raycast to polygon level.
 
int SO3BufferSetAdvancedRayCastMode (mmachine m)
 SO3BufferSetAdvancedRayCastMode : function to choose between fast or precise 3D position mode.
 
int SO3EnableSlicePlane (mmachine m)
 SO3EnableSlicePlane : Enable or disable the global slice plane on all generated materials shaders.
 
int SO3SetSlicePlane (mmachine m)
 SO3SetSlicePlane : set the global slice plane on all generated materials shaders.
 
int SO3ResetEngine (mmachine m)
 SO3ResetEngine : Destroy and reload the SO3engine; Use with caution, everything must be destroyed before.
 
int SO3CbBufferPreRender (mmachine m)
 SO3CbBufferPreRender : defines callback for pre render event.
 
int SO3CbBufferPostRender (mmachine m)
 SO3CbBufferPostRender : defines callback for post render event.
 
int SO3CbStereoBeforeUpdate (mmachine m)
 SO3CbStereoBeforeUpdate : defines callback for stereo pre render event.
 
int SO3CbStereoUpdateParameters (mmachine m)
 SO3CbStereoUpdateParameters : defines callback for Stereo mode parameters update (shader timewarp)
 
int SO3CbStereoUpdated (mmachine m)
 SO3CbStereoUpdated : defines callback for stereo post render event.
 

Detailed Description

Scol functions definition

Function Documentation

◆ SO3BufferCreate()

int SO3BufferCreate ( mmachine  m)

SO3BufferCreate : This function create a new SO3_BUFFER Object.

Prototype: fun [Chn ObjWin I I I I] SO3_BUFFER

Parameters
Chn: the current channel
ObjWin: the current parent window
I: x position (Deprecated not used)
I: y position (Deprecated not used)
I: w size
I: h size
Returns
SO3_BUFFER : The Buffer Object

Definition at line 1184 of file SO3SCOL.cpp.

◆ SO3BufferEnableAdvancedRayCast()

int SO3BufferEnableAdvancedRayCast ( mmachine  m)

SO3BufferEnableAdvancedRayCast : function to enable or disable advanced mouse raycast to polygon level.

Prototype: fun [SO3_BUFFER I] SO3_BUFFER

Parameters
SO3_BUFFER: given buffer object
I: 0 to disable and 1 to enable
Returns
SO3_BUFFER : same buffer if success, NIL otherwise

Definition at line 4368 of file SO3SCOL.cpp.

◆ SO3BufferGetAverageFPS()

int SO3BufferGetAverageFPS ( mmachine  m)

SO3BufferGetAverageFPS : get the average FPS.

Prototype: fun [SO3_BUFFER] F

Parameters
SO3_BUFFER: current SO3_BUFFER
Returns
F : average FPS if success, NIL otherwise

Definition at line 3195 of file SO3SCOL.cpp.

◆ SO3BufferGetBatchCount()

int SO3BufferGetBatchCount ( mmachine  m)

SO3BufferGetBatchCount : get the batch count displayed in a SO3_BUFFER.

Prototype: fun [SO3_BUFFER] I

Parameters
SO3_BUFFER: current SO3_BUFFER
Returns
I : batch count if success, NIL otherwise

Definition at line 3393 of file SO3SCOL.cpp.

◆ SO3BufferGetBestFPS()

int SO3BufferGetBestFPS ( mmachine  m)

SO3BufferGetBestFPS : get the best FPS.

Prototype: fun [SO3_BUFFER] F

Parameters
SO3_BUFFER: current SO3_BUFFER
Returns
F : Best FPS if success, NIL otherwise

Definition at line 3228 of file SO3SCOL.cpp.

◆ SO3BufferGetBestFrametime()

int SO3BufferGetBestFrametime ( mmachine  m)

SO3BufferGetBestFrametime : get the best frametime.

Prototype: fun [SO3_BUFFER] F

Parameters
SO3_BUFFER: current SO3_BUFFER
Returns
F : Best FrameTime if success, NIL otherwise

Definition at line 3294 of file SO3SCOL.cpp.

◆ SO3BufferGetFSAA()

int SO3BufferGetFSAA ( mmachine  m)

SO3BufferGetFSAA : Get multi sampling mode setted.

Prototype: fun [SO3_BUFFER] I

Parameters
SO3_BUFFER: current SO3_BUFFER
Returns
I : multisampling mode if success , NIL otherwise

Definition at line 3096 of file SO3SCOL.cpp.

◆ SO3BufferGetStereoCustomProjection()

int SO3BufferGetStereoCustomProjection ( mmachine  m)

SO3BufferGetStereoCustomProjection : This function set the stereo custom projection matrix.

Prototype: fun [SO3_BUFFER] I

Parameters
SO3_BUFFER: the target buffer
Returns
I : 1 if projection matrix is enable or 0 if not, NIL on error

Definition at line 2021 of file SO3SCOL.cpp.

◆ SO3BufferGetStereoEyeSpacing()

int SO3BufferGetStereoEyeSpacing ( mmachine  m)

SO3BufferGetStereoEyeSpacing : This function retrieves the eye spacing that is in use for the stereo vision mode.

Prototype: fun [SO3_BUFFER] F

Parameters
SO3_BUFFER: the target buffer
Returns
F : The eye spacing value currently in use if success, NIL otherwise

Definition at line 1535 of file SO3SCOL.cpp.

◆ SO3BufferGetStereoMode()

int SO3BufferGetStereoMode ( mmachine  m)

SO3BufferGetStereoMode : This function retrieves the stereo vision mode on a SO3_BUFFER Object.

Prototype: fun [SO3_BUFFER] I

Parameters
SO3_BUFFER: the target buffer
Returns
I : The stereo mode currently in use if success, NIL otherwise

For stereoscopic mode, values are :

  • SO3_SM_ANAGLYPH_RC
  • SO3_SM_ANAGLYPH_YB
  • SO3_SM_INTERLACED_V
  • SO3_SM_INTERLACED_H
  • SO3_SM_INTERLACED_CB
  • SO3_SM_SIDE_BY_SIDE
  • SO3_SM_UP_DOWN
  • SO3_SM_QUAD_BUFFER
  • SO3_SM_OCULUS
  • SO3_SM_OCULUS2
  • SO3_SM_CARDBOARD
  • SO3_SM_OPENVR
  • SO3_SM_OCULUSM
  • SO3_SM_MONO
  • SO3_SM_NONE

Definition at line 1423 of file SO3SCOL.cpp.

◆ SO3BufferGetStereoProjectionMatrix()

int SO3BufferGetStereoProjectionMatrix ( mmachine  m)

SO3BufferGetStereoProjectionMatrix : This function set the stereo custom projection matrix.

Prototype: fun [SO3_BUFFER] [[F F F F] [F F F F] [F F F F] [F F F F]] [[F F F F] [F F F F] [F F F F] [F F F F]]

Parameters
SO3_BUFFER: the target buffer
Returns
[[F F F F] [F F F F] [F F F F] [F F F F]] [[F F F F] [F F F F] [F F F F] [F F F F]] : left and right projection matrix if success, NIL otherwise

Definition at line 2059 of file SO3SCOL.cpp.

◆ SO3BufferGetStereoRotateView()

int SO3BufferGetStereoRotateView ( mmachine  m)

SO3BufferGetStereoRotateView : This function get the rotated view for stereo mode.

Prototype: fun [SO3_BUFFER] I

Parameters
SO3_BUFFER: the target buffer
I: rotate view state, 0 to disable, 1 to enable
Returns
I : rotate view state, 0 disable, 1 enable if success, NIL otherwise

Definition at line 1656 of file SO3SCOL.cpp.

◆ SO3BufferGetStereoTextures()

int SO3BufferGetStereoTextures ( mmachine  m)

SO3BufferGetStereoTextures : Get the stereo texture pointers for the HMD plugin.

Prototype: fun [SO3_BUFFER] [ObjPtr ObjPtr I]

Parameters
SO3_BUFFER: the target buffer
Returns
[ObjPtr ObjPtr I] : left and right texture pointer with texture type on success, NIL otherwise

Definition at line 2617 of file SO3SCOL.cpp.

◆ SO3BufferGetStereoViewportSize()

int SO3BufferGetStereoViewportSize ( mmachine  m)

SO3BufferGetStereoViewportSize : Get the stereo viewports size Prototype: fun [SO3_BUFFER] [[I I] [I I]].

Parameters
SO3_BUFFER: the target buffer
Returns
[[I I] [I I]] : left and right viewports size on success, NIL otherwise

Definition at line 2688 of file SO3SCOL.cpp.

◆ SO3BufferGetStereoVisionProperties()

int SO3BufferGetStereoVisionProperties ( mmachine  m)

SO3BufferGetStereoVisionProperties : Get stereo vision properties DEPRECATED

Prototype: fun [SO3_BUFFER] [I F F]

Parameters
SO3_BUFFER: Current Buffer
Returns
[I F F] : mode, eyes spacing and focal length if success, NIL otherwise

Definition at line 1388 of file SO3SCOL.cpp.

◆ SO3BufferGetTriangleCount()

int SO3BufferGetTriangleCount ( mmachine  m)

SO3BufferGetTriangleCount : get the number of triangle displayed in a SO3_BUFFER.

Prototype: fun [SO3_BUFFER] I

Parameters
SO3_BUFFER: current SO3_BUFFER
Returns
I : Number of triangle if success, NIL otherwise

Definition at line 3360 of file SO3SCOL.cpp.

◆ SO3BufferGetWorstFPS()

int SO3BufferGetWorstFPS ( mmachine  m)

SO3BufferGetWorstFPS : get the worst FPS.

Prototype: fun [SO3_BUFFER] F

Parameters
SO3_BUFFER: current SO3_BUFFER
Returns
F : Worst FPS if success, NIL otherwise

Definition at line 3261 of file SO3SCOL.cpp.

◆ SO3BufferGetWorstFrametime()

int SO3BufferGetWorstFrametime ( mmachine  m)

SO3BufferGetWorstFrametime : get the worst frametime.

Prototype: fun [SO3_BUFFER] F

Parameters
SO3_BUFFER: current SO3_BUFFER
Returns
F : Worst FrameTime if success, NIL otherwise

Definition at line 3327 of file SO3SCOL.cpp.

◆ SO3BufferInjectMouseClick()

int SO3BufferInjectMouseClick ( mmachine  m)

SO3BufferInjectMouseClick : function to inject mouse click.

Prototype: fun [SO3_BUFFER I I I] SO3_BUFFER

Parameters
SO3_BUFFER: given buffer object
I: X Position
I: Y position
I: buttons
Returns
SO3_BUFFER : same buffer if success, NIL otherwise

Definition at line 4060 of file SO3SCOL.cpp.

◆ SO3BufferInjectMouseMove()

int SO3BufferInjectMouseMove ( mmachine  m)

SO3BufferInjectMouseMove : function to inject mouse move.

Prototype: fun [SO3_BUFFER I I I] SO3_BUFFER

Parameters
SO3_BUFFER: given buffer object
I: X Position
I: Y position
I: buttons
Returns
SO3_BUFFER : same buffer if success, NIL otherwise

Definition at line 4014 of file SO3SCOL.cpp.

◆ SO3BufferInjectMouseUnClick()

int SO3BufferInjectMouseUnClick ( mmachine  m)

SO3BufferInjectMouseUnClick : function to inject mouse unclick.

Prototype: fun [SO3_BUFFER I I I] SO3_BUFFER

Parameters
SO3_BUFFER: given buffer object
I: X Position
I: Y position
I: buttons
Returns
SO3_BUFFER : same buffer if success, NIL otherwise

Definition at line 4138 of file SO3SCOL.cpp.

◆ SO3BufferInjectMouseWheel()

int SO3BufferInjectMouseWheel ( mmachine  m)

SO3BufferInjectMouseWheel : function to inject mouse wheel.

Prototype: fun [SO3_BUFFER I I I] SO3_BUFFER

Parameters
SO3_BUFFER: given buffer object
I: X Position
I: Y position
I: delta
Returns
SO3_BUFFER : same buffer if success, NIL otherwise

Definition at line 4194 of file SO3SCOL.cpp.

◆ SO3BufferInjectTouchAdd()

int SO3BufferInjectTouchAdd ( mmachine  m)

SO3BufferInjectTouchAdd : function to inject touch added.

Prototype: fun [SO3_BUFFER I I I] SO3_BUFFER

Parameters
SO3_BUFFER: given buffer object
I: touch id
I: X Position
I: Y position
Returns
SO3_BUFFER : same buffer if success, NIL otherwise

Definition at line 4249 of file SO3SCOL.cpp.

◆ SO3BufferInjectTouchRemove()

int SO3BufferInjectTouchRemove ( mmachine  m)

SO3BufferInjectTouchRemove : function to inject touch removed.

Prototype: fun [SO3_BUFFER I] SO3_BUFFER

Parameters
SO3_BUFFER: given buffer object
I: touch id
Returns
SO3_BUFFER : same buffer if success, NIL otherwise

Definition at line 4287 of file SO3SCOL.cpp.

◆ SO3BufferInjectTouchUpdate()

int SO3BufferInjectTouchUpdate ( mmachine  m)

SO3BufferInjectTouchUpdate : function to inject touch updated Only for Android, IOS and LINUX.

Prototype: fun [SO3_BUFFER I I I I I] SO3_BUFFER

Parameters
SO3_BUFFER: given buffer object
I: touch id
I: X Position
I: Y position
I: VX
I: VY
Returns
SO3_BUFFER : same buffer if success, NIL otherwise

Definition at line 4328 of file SO3SCOL.cpp.

◆ SO3BufferSetAdvancedRayCastMode()

int SO3BufferSetAdvancedRayCastMode ( mmachine  m)

SO3BufferSetAdvancedRayCastMode : function to choose between fast or precise 3D position mode.

Prototype: fun [SO3_BUFFER I] SO3_BUFFER

Parameters
SO3_BUFFER: given buffer object
I: 0 for fast mode (default) and 1 for limited mode (position is only retrieved on widgets textures), 2 for precise mode
Returns
SO3_BUFFER : same buffer if success, NIL otherwise

Definition at line 4407 of file SO3SCOL.cpp.

◆ SO3BufferSetProperties()

int SO3BufferSetProperties ( mmachine  m)

SO3BufferSetProperties : This function defines properties of a SO3_BUFFER Object.

Prototype: fun [SO3_BUFFER I I I] I

Parameters
SO3_BUFFER: the current buffer
I: boolean for fullsceen mode
I: w size
I: h size
Returns
1 if success , NIL otherwise

Definition at line 1297 of file SO3SCOL.cpp.

◆ SO3BufferSetStereoAspectRatio()

int SO3BufferSetStereoAspectRatio ( mmachine  m)

SO3BufferSetStereoAspectRatio : This function set the camera aspect ratio for stereo modes.

Prototype: fun [SO3_BUFFER F] I

Parameters
SO3_BUFFER: the target buffer
F: The camera spect ratio, 0.0 to use the default
Returns
I : 1 if success, NIL otherwise

Definition at line 1735 of file SO3SCOL.cpp.

◆ SO3BufferSetStereoChromAbCorrection()

int SO3BufferSetStereoChromAbCorrection ( mmachine  m)

SO3BufferSetStereoChromAbCorrection : This function set the chromatic correction parameters for Oculus stereo.

Prototype: fun [SO3_BUFFER [F F F F]] I

Parameters
SO3_BUFFER: the target buffer
[FF F F] : The chromatic correction values
Returns
I : 1 if success, NIL otherwise

Definition at line 1883 of file SO3SCOL.cpp.

◆ SO3BufferSetStereoDistortion()

int SO3BufferSetStereoDistortion ( mmachine  m)

SO3BufferSetStereoDistortion : This function set the distortion parameters for Oculus stereo.

Prototype: fun [SO3_BUFFER [F F F F]] I

Parameters
SO3_BUFFER: the target buffer
[FF F F] : The distortion values
Returns
I : 1 if success, NIL otherwise

Definition at line 1827 of file SO3SCOL.cpp.

◆ SO3BufferSetStereoEyeSpacing()

int SO3BufferSetStereoEyeSpacing ( mmachine  m)

SO3BufferSetStereoEyeSpacing : This function set the eye spacing for the stereo vision mode.

Prototype: fun [SO3_BUFFER F] I

Parameters
SO3_BUFFER: the target buffer
F: The new value for eye spacing
Returns
I : 1 if success, NIL otherwise

Definition at line 1569 of file SO3SCOL.cpp.

◆ SO3BufferSetStereoFOVy()

int SO3BufferSetStereoFOVy ( mmachine  m)

SO3BufferSetStereoFOVy : This function set the camera FOV for stereo modes.

Prototype: fun [SO3_BUFFER F] I

Parameters
SO3_BUFFER: the target buffer
F: The camera FOV, 0.0 to use the default
Returns
I : 1 if success, NIL otherwise

Definition at line 1781 of file SO3SCOL.cpp.

◆ SO3BufferSetStereoMeshes()

int SO3BufferSetStereoMeshes ( mmachine  m)

SO3BufferSetStereoMeshes : This function set the stereo meshes.

Prototype: fun [SO3_BUFFER [[[[F F F] [[F F] r1] F F] r1] [I r1]] [[[[F F F] [[F F] r1] F F] r1] [I r1]]] I

Parameters
SO3_BUFFER: the target buffer
[[[[FF F] [[F F] r1] F F] r1] [I r1]] : list of vertices with list of uv coords and vignette color and warp, followed by index list for left mesh
[[[[FF F] [[F F] r1] F F] r1] [I r1]] : list of vertices with list of uv coords and vignette color and warp, followed by index list for right mesh
Returns
I : 1 if success, NIL otherwise

Definition at line 2444 of file SO3SCOL.cpp.

◆ SO3BufferSetStereoMeshTextureSize()

int SO3BufferSetStereoMeshTextureSize ( mmachine  m)

SO3BufferSetStereoMeshTextureSize : This function set the stereo mesh RTT size.

Prototype: fun [SO3_BUFFER [I I] [I I]] I

Parameters
SO3_BUFFER: the target buffer
[II] : left texture size
[II] : right texture size
Returns
I : 1 if success, NIL otherwise

Definition at line 2311 of file SO3SCOL.cpp.

◆ SO3BufferSetStereoMeshUvParams()

int SO3BufferSetStereoMeshUvParams ( mmachine  m)

SO3BufferSetStereoMeshUvParams : This function set the stereo mesh uv parameters.

Prototype: fun [SO3_BUFFER [F F] [F F] [F F] [F F]] I

Parameters
SO3_BUFFER: the target buffer
[FF] : left uv scale
[FF] : left uv offset
[FF] : right uv scale
[FF] : right uv offset
Returns
I : 1 if success, NIL otherwise

Definition at line 2258 of file SO3SCOL.cpp.

◆ SO3BufferSetStereoMode()

int SO3BufferSetStereoMode ( mmachine  m)

SO3BufferSetStereoMode : This function set the stereo vision mode on a SO3_BUFFER Object.

Prototype: fun [SO3_BUFFER I] I

Parameters
SO3_BUFFER: the target buffer
I: The stereo mode to set
Returns
I : 1 if success, NIL otherwise

For stereoscopic mode, values are :

  • SO3_SM_ANAGLYPH_RC
  • SO3_SM_ANAGLYPH_YB
  • SO3_SM_INTERLACED_V
  • SO3_SM_INTERLACED_H
  • SO3_SM_INTERLACED_CB
  • SO3_SM_SIDE_BY_SIDE
  • SO3_SM_UP_DOWN
  • SO3_SM_QUAD_BUFFER
  • SO3_SM_OCULUS
  • SO3_SM_OCULUS2
  • SO3_SM_CARDBOARD
  • SO3_SM_OPENVR
  • SO3_SM_OCULUSM
  • SO3_SM_MONO
  • SO3_SM_NONE

Definition at line 1474 of file SO3SCOL.cpp.

◆ SO3BufferSetStereoProjectionCenterOffset()

int SO3BufferSetStereoProjectionCenterOffset ( mmachine  m)

SO3BufferSetStereoProjectionCenterOffset : This function set the projection center offset.

Prototype: fun [SO3_BUFFER F] I

Parameters
SO3_BUFFER: the target buffer
F: The offset value
Returns
I : 1 if success, NIL otherwise

Definition at line 1689 of file SO3SCOL.cpp.

◆ SO3BufferSetStereoProjectionMatrix()

int SO3BufferSetStereoProjectionMatrix ( mmachine  m)

SO3BufferSetStereoProjectionMatrix : This function set the stereo custom projection matrix.

Prototype: fun [SO3_BUFFER [[F F F F] [F F F F] [F F F F] [F F F F]] [[F F F F] [F F F F] [F F F F] [F F F F]] I] I

Parameters
SO3_BUFFER: the target buffer
[[FF F F] [F F F F] [F F F F] [F F F F]] : Left projection matrix
[[FF F F] [F F F F] [F F F F] [F F F F]] : Right projection matrix
I: state 0 or 1 to enable or disable the projection matrix
Returns
I : 1 if success, NIL otherwise

Definition at line 1941 of file SO3SCOL.cpp.

◆ SO3BufferSetStereoRotateView()

int SO3BufferSetStereoRotateView ( mmachine  m)

SO3BufferSetStereoRotateView : This function enable or disable the rotated view for stereo mode (-90°)

Prototype: fun [SO3_BUFFER I] I

Parameters
SO3_BUFFER: the target buffer
I: rotate view state, 0 to disable, 1 to enable
Returns
I : 1 if success, NIL otherwise

Definition at line 1609 of file SO3SCOL.cpp.

◆ SO3BufferSetStereoTimeWarpMatrix()

int SO3BufferSetStereoTimeWarpMatrix ( mmachine  m)

SO3BufferSetStereoTimeWarpMatrix : This function set the stereo custom projection matrix.

Prototype: fun [SO3_BUFFER [[F F F F] [F F F F] [F F F F] [F F F F]] [[F F F F] [F F F F] [F F F F] [F F F F]] [[F F F F] [F F F F] [F F F F] [F F F F]] [[F F F F] [F F F F] [F F F F] [F F F F]]] I

Parameters
SO3_BUFFER: the target buffer
[[FF F F] [F F F F] [F F F F] [F F F F]] : Left start rotation matrix
[[FF F F] [F F F F] [F F F F] [F F F F]] : Left end rotation matrix
[[FF F F] [F F F F] [F F F F] [F F F F]] : Right start rotation matrix
[[FF F F] [F F F F] [F F F F] [F F F F]] : Right end rotation matrix
Returns
I : 1 if success, NIL otherwise

Definition at line 2174 of file SO3SCOL.cpp.

◆ SO3BufferSetStereoVision()

int SO3BufferSetStereoVision ( mmachine  m)

SO3BufferSetStereoVision : This function defines stereo vision mode on a SO3_BUFFER Object DEPRECATED

Prototype: fun [SO3_BUFFER I F F] I

Parameters
SO3_BUFFER: the current buffer
I: the current mode
F: the current eyes spacing
F: the current focal length
Returns
I : 1 if success, NIL otherwise

Definition at line 1366 of file SO3SCOL.cpp.

◆ SO3BufferSetStereoWindow()

int SO3BufferSetStereoWindow ( mmachine  m)

SO3BufferSetStereoWindow : This function set the stereo window parameters.

Prototype: fun [SO3_BUFFER [I I] [I I] I I] I

Parameters
SO3_BUFFER: the target buffer
[II] : window position
[II] : window size
I: monitor index
I: state 0 to disable, 1 to enable external window
Returns
I : 1 if success, NIL otherwise

Definition at line 2374 of file SO3SCOL.cpp.

◆ SO3BufferUpdate()

int SO3BufferUpdate ( mmachine  m)

SO3BufferUpdate : function to update a SO3_BUFFER.

Prototype: fun [SO3_BUFFER] I

Parameters
SO3_BUFFER: given buffer object
Returns
I : 1 if success, NIL otherwise

Definition at line 3681 of file SO3SCOL.cpp.

◆ SO3BufferWriteContent()

int SO3BufferWriteContent ( mmachine  m)

SO3BufferWriteContent : function to write the content of a SO3_BUFFER into a file.

Prototype: fun [SO3_BUFFER W] I

Parameters
SO3_BUFFER: given buffer object
W: the file to write (for example with _getmodifypack)
Returns
I : 1 if success, NIL otherwise

Definition at line 3717 of file SO3SCOL.cpp.

◆ SO3CbBufferPostRender()

int SO3CbBufferPostRender ( mmachine  m)

SO3CbBufferPostRender : defines callback for post render event.

Prototype: fun [SO3_BUFFER fun [SO3_BUFFER u0] u1 u0] SO3_BUFFER

Parameters
SO3_BUFFER: given buffer object
fun[SO3_BUFFER u0] u1 : function scol to call
u0: user parameter
Returns
SO3_BUFFER : buffer object if success

Definition at line 4558 of file SO3SCOL.cpp.

◆ SO3CbBufferPreRender()

int SO3CbBufferPreRender ( mmachine  m)

SO3CbBufferPreRender : defines callback for pre render event.

Prototype: fun [SO3_BUFFER fun [SO3_BUFFER u0] u1 u0] SO3_BUFFER

Parameters
SO3_BUFFER: given buffer object
fun[SO3_BUFFER u0] u1 : function scol to call
u0: user parameter
Returns
SO3_BUFFER : buffer object if success

Definition at line 4538 of file SO3SCOL.cpp.

◆ SO3CbStereoBeforeUpdate()

int SO3CbStereoBeforeUpdate ( mmachine  m)

SO3CbStereoBeforeUpdate : defines callback for stereo pre render event.

Prototype: fun [SO3_BUFFER fun [SO3_BUFFER u0] u1 u0] SO3_BUFFER

Parameters
SO3_BUFFER: given buffer object
fun[SO3_BUFFER u0] u1 : function scol to call
u0: user parameter
Returns
SO3_BUFFER : buffer object if success

Definition at line 4607 of file SO3SCOL.cpp.

◆ SO3CbStereoUpdated()

int SO3CbStereoUpdated ( mmachine  m)

SO3CbStereoUpdated : defines callback for stereo post render event.

Prototype: fun [SO3_BUFFER fun [SO3_BUFFER u0] u1 u0] SO3_BUFFER

Parameters
SO3_BUFFER: given buffer object
fun[SO3_BUFFER u0] u1 : function scol to call
u0: user parameter
Returns
SO3_BUFFER : buffer object if success

Definition at line 4645 of file SO3SCOL.cpp.

◆ SO3CbStereoUpdateParameters()

int SO3CbStereoUpdateParameters ( mmachine  m)

SO3CbStereoUpdateParameters : defines callback for Stereo mode parameters update (shader timewarp)

Prototype: fun [SO3_BUFFER fun [SO3_BUFFER u0] u1 u0] SO3_BUFFER

Parameters
SO3_BUFFER: given buffer object
fun[SO3_BUFFER u0] u1 : function scol to call
u0: user parameter
Returns
SO3_BUFFER : buffer object if success

Definition at line 4626 of file SO3SCOL.cpp.

◆ SO3DebugDisplayProperties()

int SO3DebugDisplayProperties ( mmachine  m)

SO3DebugDisplayProperties : Create an overlay to print debug text.

Prototype: fun [SO3_SCENE SO3_VIEWPORT SO3_MATERIAL I [I I] [I I] I] I

Parameters
SO3_SCENE: current scene // deprecated set nil
SO3_VIEWPORT: current viewport // deprecated set nil
SO3_MATERIAL: material for font display // deprecated set nil
I: given color
[II] : given positions
[II] : given dimensions
I: given char Height
Returns
I : 1 if success, NIL otherwise

Definition at line 3466 of file SO3SCOL.cpp.

◆ SO3DebugGetEnable()

int SO3DebugGetEnable ( mmachine  m)

SO3DebugGetEnable : Get the debug overlay state on a buffer.

Prototype: fun [SO3_VIEWPORT] I

Parameters
SO3_VIEWPORT: viewport
Returns
I : 1 if success, NIL otherwise

Definition at line 3616 of file SO3SCOL.cpp.

◆ SO3DebugSetEnable()

int SO3DebugSetEnable ( mmachine  m)

SO3DebugSetEnable : Set Debug Text enable/disable on a Viewport.

Prototype: fun [SO3_VIEWPORT I] I

Parameters
SO3_VIEWPORT: current viewport
I: boolean for enable/disable
Returns
I : 1 if success, NIL otherwise

Definition at line 3568 of file SO3SCOL.cpp.

◆ SO3DebugSetText()

int SO3DebugSetText ( mmachine  m)

SO3DebugSetText : Set Debug Text on a Viewport.

Prototype: fun [SO3_VIEWPORT S] I

Parameters
SO3_VIEWPORT: current viewport
S: Text to set
Returns
I : 1 if success, NIL otherwise

Definition at line 3523 of file SO3SCOL.cpp.

◆ SO3DestroyBuffer()

int SO3DestroyBuffer ( mmachine  m)

SO3DestroyBuffer : Scol function to destroy a SO3_BUFFER.

Prototype: fun [SO3_BUFFER] I

Parameters
SO3_BUFFER: current buffer window
Returns
I : 1 if success, NIL otherwise

Definition at line 3653 of file SO3SCOL.cpp.

◆ SO3EnableSlicePlane()

int SO3EnableSlicePlane ( mmachine  m)

SO3EnableSlicePlane : Enable or disable the global slice plane on all generated materials shaders.

Prototype: fun [I] I

Parameters
I: 0 to disable, 1 to enable
Returns
I : 1 if success, NIL otherwise

Definition at line 4444 of file SO3SCOL.cpp.

◆ SO3GetActiveRenderer()

int SO3GetActiveRenderer ( mmachine  m)

SO3GetActiveRenderer : get active renderer system Prototype: fun [] I.

Returns
I : Active renderder if success (SO3_DIRECTX9_RENDERER, SO3_DIRECTX11_RENDERER, SO3_VULKAN_RENDERER, SO3_TINY_RENDERER, SO3_METAL_RENDERER or SO3_OPENGL_RENDERER), NIL otherwise

Definition at line 3177 of file SO3SCOL.cpp.

◆ SO3GetAPIVersion()

int SO3GetAPIVersion ( mmachine  m)

SO3GetAPIVersion : Get the SO3 plugin API version.

Prototype: fun [] [S S]

Returns
[S S] : SO3 engine version and Ogre3d version if success, NIL otherwise

Definition at line 2758 of file SO3SCOL.cpp.

◆ SO3GetFullscreenVideoMode()

int SO3GetFullscreenVideoMode ( mmachine  m)

SO3GetFullscreenVideoMode : Get fullscreen video mode supported by user.

Prototype: fun [] [S r1]

Returns
[S r1] : video mode

Definition at line 2994 of file SO3SCOL.cpp.

◆ SO3GetGeneralInfo()

int SO3GetGeneralInfo ( mmachine  m)

SO3GetGeneralInfo : Get general informations about the user system.

Prototype: fun [] [S S S S S S S S]

Returns
[S S S S S S S S] : Genral Informations
  • Vendor CPU Name;
  • CPU Name;
  • Number of processors;
  • RAM;
  • OS version;
  • Graphic device;
  • Graphic driver;
  • DirectX version;

Definition at line 2797 of file SO3SCOL.cpp.

◆ SO3GetMultisamplingMode()

int SO3GetMultisamplingMode ( mmachine  m)

SO3GetMultisamplingMode : Get multi sampling mode supported by user.

Prototype: fun [I] [S r1]

Parameters
I: SO3_DIRECTX9_RENDERER, SO3_DIRECTX11_RENDERER, SO3_VULKAN_RENDERER, SO3_TINY_RENDERER, SO3_METAL_RENDERER or SO3_OPENGL_RENDERER
Returns
[S r1] : multisampling mode

Definition at line 3044 of file SO3SCOL.cpp.

◆ SO3GetQuadBufferEnable()

int SO3GetQuadBufferEnable ( mmachine  m)

SO3GetQuadBufferEnable : Retrieve if the graphic card have quad-buffering enabled.

You must create an SO3Buffer before calling this function

Prototype: fun [] I

Returns
I : 1 if the graphic card have Quad buffer enable, 0 if not.

Definition at line 2946 of file SO3SCOL.cpp.

◆ SO3GetRendererInfo()

int SO3GetRendererInfo ( mmachine  m)

SO3GetRendererInfo : get rendering informations DEPRECATED FUNCTION Prototype: fun [] [S S].

Returns
[S S] : Rendering Informations

Definition at line 3130 of file SO3SCOL.cpp.

◆ SO3GetRendererList()

int SO3GetRendererList ( mmachine  m)

SO3GetRendererList : get renderers list DEPRECATED FUNCTION Prototype: fun [] [S r1].

Returns
[S r1] : Renderer list

Definition at line 3149 of file SO3SCOL.cpp.

◆ SO3GetRenderInfo()

int SO3GetRenderInfo ( mmachine  m)

SO3GetRenderInfo : Get render informations about the user system.

You must create an SO3Buffer in DirectX mode before to call this function

Prototype: fun [] [I I I I I I I I I I]

Returns
[I I I I I I I I I I] : Graphic Informations
  • number of simultaneous textures units
  • is non power of two texture supported
  • is non power of two texture support limited
  • is auto mipmap supported
  • is cube mapping supported
  • is geometry programs supported
  • is vertex programs supported
  • is fragment programs supported
  • is texture compression supported
  • is fixed functions supported

Definition at line 2903 of file SO3SCOL.cpp.

◆ SO3IsShaderProfileSupported()

int SO3IsShaderProfileSupported ( mmachine  m)

SO3IsShaderProfileSupported : return 1 if the shader profile is supported.

Prototype: fun [S] I

Parameters
S: Shader profile name
Returns
I : 1 if supported, 0 if not, nil otherwise

Definition at line 2961 of file SO3SCOL.cpp.

◆ SO3OverlayCreate()

int SO3OverlayCreate ( mmachine  m)

SO3OverlayCreate : Create an SO3_OVERLAY DEPRECATED Prototype: fun [Chn S] SO3_OVERLAY.

Parameters
Chn: current channel
S: given name
Returns
SO3_OVERLAY : the overlay object if success, NIL otherwise

Definition at line 3427 of file SO3SCOL.cpp.

◆ SO3ResetEngine()

int SO3ResetEngine ( mmachine  m)

SO3ResetEngine : Destroy and reload the SO3engine; Use with caution, everything must be destroyed before.

Prototype: fun [] I

Returns
I : 1 if success, NIL otherwise

Definition at line 4508 of file SO3SCOL.cpp.

◆ SO3SetSlicePlane()

int SO3SetSlicePlane ( mmachine  m)

SO3SetSlicePlane : set the global slice plane on all generated materials shaders.

Prototype: fun [[F F F] F] I

Parameters
[FF F] : Direction vector
F: Distance
Returns
I : 1 if success, NIL otherwise

Definition at line 4469 of file SO3SCOL.cpp.

◆ SO3ViewportWriteContent()

int SO3ViewportWriteContent ( mmachine  m)

SO3ViewportWriteContent : function to write the content of a SO3_VIEWPORT into a file the size can be larger than the current viewport pixel size overlays can be shown only the current viewport size is used.

Prototype: fun [SO3_VIEWPORT W I I I I] I

Parameters
SO3_VIEWPORT: given buffer object
W: the file to write (for example with _getmodifypack)
I: width in pixels
I: height in pixels
I: 1 to show overlays, 0 otherwise
I: 1 to use transparent background, 0 otherwise
Returns
I : 1 if success, NIL otherwise

Definition at line 3146 of file SCOLViewport.cpp.