Triton
Visual simulation library for ocean rendering.
Static Public Member Functions | List of all members
Triton::Utils Class Reference

A collection of static utility methods used by Triton. More...

#include <TritonCommon.h>

Static Public Member Functions

static void TRITONAPI SetDebugMsgCB (void(*debug_msg_cb)(const char *))
 Allows the client to plug in a routine which will be called to print/log DebugMsg() calls when "enable-debug-messages" is set, instead of using the internal default logging behavior.
 
static void TRITONAPI DebugMsg (const char *debugMessage)
 Prints out an error message to the debugger's output window only if the setting enable-debug-messages is set to 'yes' in resources/Triton.config.
 
static void TRITONAPI ClearGLErrors (Stream *stream=0)
 Clears any existing OpenGL error codes so we may test for new ones.
 
static bool TRITONAPI PrintGLErrors (const char *file, int line, Stream *stream=0)
 Prints out (and clears) any existing GL errors using Utils::DebugMsg.
 
static TRITON_STRING TRITONAPI GetDLLPath ()
 Returns the resources subdirectory where our FFT implementation DLL's live for this specific build's compiler version and platform.
 
static TRITON_STRING TRITONAPI GetDLLSuffix ()
 Retrieves the suffix on the FFT implementation DLL's for this specific build flavor's runtime library.
 
static TRITON_STRING TRITONAPI GetDLLExtension ()
 Retrieves the DLL extension.
 
static struct _D3DXMACRO *TRITONAPI GetDX9Macros (IDirect3DDevice9 *device, bool hdr, bool breakingWaves)
 Returns HLSL preprocessor defines for DirectX9, indicating the shader models avaialble to our shaders.
 
static TRITON_STRING TRITONAPI GetWaterShaderFileName (const Environment *env, bool tessendorf, bool fragment, bool patch)
 Returns the filename for the main water shaders, which may be overridden via config.
 
static TRITON_STRING TRITONAPI GetParticleShaderFileName (const Environment *env, bool fragment)
 Returns the filename for the particle shaders, which may be overridden via config.
 
static TRITON_STRING TRITONAPI GetUserShaderFileName ()
 Returns the filename for the user-defined fragment shader functions (OpenGL only; see the Resources/user-functions.glsl file.)
 
static TRITON_STRING TRITONAPI GetUserVertShaderFileName ()
 Returns the filename for the user-defined vertex shader functions (OpenGL only; see the Resources/user-vert-functions.glsl file.)
 
static TRITON_STRING TRITONAPI GetDecalShaderFileName (const Environment *env, bool fragment)
 Returns the filename for the volumetric deferred decal shaders, which may be overridden via config.
 
static TRITON_STRING TRITONAPI GetGodRayShaderFileName (const Environment *env, bool fragment)
 Returns the filename for the god ray shaders, which may be overridden via config.
 

Detailed Description

A collection of static utility methods used by Triton.

Member Function Documentation

◆ GetDX9Macros()

static struct _D3DXMACRO *TRITONAPI Triton::Utils::GetDX9Macros ( IDirect3DDevice9 *  device,
bool  hdr,
bool  breakingWaves 
)
static

Returns HLSL preprocessor defines for DirectX9, indicating the shader models avaialble to our shaders.

Returns
NULL if minimum system requirements for DX9 are not present, a null-terminated D3DXMACRO array otherwise.

◆ PrintGLErrors()

static bool TRITONAPI Triton::Utils::PrintGLErrors ( const char *  file,
int  line,
Stream *  stream = 0 
)
static

Prints out (and clears) any existing GL errors using Utils::DebugMsg.

Returns
True if no error code was present.

The documentation for this class was generated from the following file: