DriveWorks SDK Reference

| 0.6.67 Release

Renderer.h File Reference

Detailed Description

NVIDIA DriveWorks API: Renderer

Description: This file defines the C-style interface for Renderer.

Definition in file Renderer.h.

Go to the source code of this file.

Data Structures

struct  dwRenderBufferVertexLayout
 Vertex layout describing format and semantics for position, color, and texture. More...
 

Typedefs

typedef const struct dwRenderBufferObject * dwConstRenderBufferHandle_t
 Const handle representing vertex data for rendering. More...
 
typedef const struct dwRendererObject * dwConstRendererHandle_t
 Const handle for the renderer. More...
 
typedef struct dwRenderBufferObject * dwRenderBufferHandle_t
 Handle representing vertex data for rendering. More...
 
typedef struct dwRendererObject * dwRendererHandle_t
 Handle for the renderer. More...
 

Enumerations

enum  dwRenderBufferColorSemantic {
  DW_RENDER_SEMANTIC_COL_NULL = 0,
  DW_RENDER_SEMANTIC_COL_R = 1,
  DW_RENDER_SEMANTIC_COL_A = 2,
  DW_RENDER_SEMANTIC_COL_RGB = 3,
  DW_RENDER_SEMANTIC_COL_RGBA = 4,
  DW_RENDER_SEMANTIC_COL_LUT = 5,
  DW_RENDER_SEMANTIC_COL_HUE = 6
}
 Vertex component semantics. More...
 
enum  dwRenderBufferFormat {
  DW_RENDER_FORMAT_NULL = 0,
  DW_RENDER_FORMAT_R32G32B32A32_FLOAT = 1,
  DW_RENDER_FORMAT_R32G32B32_FLOAT = 2,
  DW_RENDER_FORMAT_R32G32_FLOAT = 3,
  DW_RENDER_FORMAT_R32_FLOAT = 4
}
 Vertex component channel count and format. More...
 
enum  dwRenderBufferPositionSemantic {
  DW_RENDER_SEMANTIC_POS_NULL = 0,
  DW_RENDER_SEMANTIC_POS_XY = 1,
  DW_RENDER_SEMANTIC_POS_XYZ = 2
}
 Vertex component semantics. More...
 
enum  dwRenderBufferPrimitiveType {
  DW_RENDER_PRIM_POINTLIST = 0,
  DW_RENDER_PRIM_LINELIST = 1,
  DW_RENDER_PRIM_TRIANGLELIST = 2,
  DW_RENDER_PRIM_LINESTRIP = 3,
  DW_RENDER_PRIM_LINELOOP = 4
}
 Render primitives supported by the renderer. More...
 
enum  dwRenderBufferTexSemantic {
  DW_RENDER_SEMANTIC_TEX_NULL = 0,
  DW_RENDER_SEMANTIC_TEX_S = 1,
  DW_RENDER_SEMANTIC_TEX_ST = 2
}
 Vertex component semantics. More...
 
enum  dwRendererFonts {
  DW_RENDER_FONT_VERDANA_8 = 0,
  DW_RENDER_FONT_VERDANA_12 = 1,
  DW_RENDER_FONT_VERDANA_16 = 2,
  DW_RENDER_FONT_VERDANA_20 = 3,
  DW_RENDER_FONT_VERDANA_24 = 4,
  DW_RENDER_FONT_VERDANA_32 = 5,
  DW_RENDER_FONT_VERDANA_48 = 6,
  DW_RENDER_FONT_VERDANA_64 = 7,
  DW_RENDER_FONT_COUNT
}
 Font types and sizes supported by the renderer. More...
 

Functions

DW_API_PUBLIC dwStatus dwRenderBuffer_createView (uint32_t *slot, dwRenderBufferHandle_t renderbuffer, const dwRenderBufferVertexLayout newLayout, const dwRenderBufferPrimitiveType newPrimType, dwContextHandle_t context)
 Creates an additional view for a render buffer, allowing you to change layout and primitive type, but not vertex stride. More...
 
DW_API_PUBLIC dwStatus dwRenderBuffer_initialize (dwRenderBufferHandle_t *renderbuffer, const dwRenderBufferVertexLayout layout, const dwRenderBufferPrimitiveType primType, const uint32_t primCount, dwContextHandle_t context)
 Initializes a RenderBuffer structure for rendering. More...
 
DW_API_PUBLIC dwStatus dwRenderBuffer_map (float32_t **map, uint32_t *maxVertices, uint32_t *vertexStride, dwRenderBufferHandle_t renderbuffer)
 Maps the CPU copy of a RenderBuffer to the application for updating. More...
 
DW_API_PUBLIC dwStatus dwRenderBuffer_mapRange (float32_t **map, uint32_t *maxVertices, uint32_t *vertexStride, const uint32_t startVertex, dwRenderBufferHandle_t renderbuffer)
 Maps a contiguous range of the CPU copy of a RenderBuffer to the application for updating. More...
 
DW_API_PUBLIC dwStatus dwRenderBuffer_release (dwRenderBufferHandle_t *renderbuffer)
 Releases the RenderBuffer data structure. More...
 
DW_API_PUBLIC dwStatus dwRenderBuffer_set2DCoordNormalizationFactors (const float32_t width, const float32_t height, dwRenderBufferHandle_t renderbuffer)
 Sets 2D normalization values when 2D coordinates are specified in pixel values and not in 0..1 range. More...
 
DW_API_PUBLIC dwStatus dwRenderBuffer_unmap (uint32_t nVerts, dwRenderBufferHandle_t renderbuffer)
 After a map/mapRange, returns the updated buffer to the RenderBuffer structure and updates the GPU portion. More...
 
DW_API_PUBLIC dwStatus dwRenderer_get2DTransform (float32_t matrix[9], dwConstRendererHandle_t obj)
 Gets current 2D transformation applied when rendering to the screen. More...
 
DW_API_PUBLIC dwStatus dwRenderer_getColor (float32_t color[4], dwConstRendererHandle_t obj)
 Gets current rendering color. More...
 
DW_API_PUBLIC dwStatus dwRenderer_getColorMapScale (float32_t colorMapScale[3], dwConstRendererHandle_t obj)
 Gets current rendering color map scale. More...
 
DW_API_PUBLIC dwStatus dwRenderer_getFont (dwRendererFonts *value, dwConstRendererHandle_t obj)
 Gets current font. More...
 
DW_API_PUBLIC dwStatus dwRenderer_getLineWidth (float32_t *value, dwConstRendererHandle_t obj)
 Gets current line width, in pixels. More...
 
DW_API_PUBLIC dwStatus dwRenderer_getModelView (float32_t matrix[16], dwConstRendererHandle_t obj)
 Gets current ModelView matrix. More...
 
DW_API_PUBLIC dwStatus dwRenderer_getPointSize (float32_t *value, dwConstRendererHandle_t obj)
 Gets current point size. More...
 
DW_API_PUBLIC dwStatus dwRenderer_getProjection (float32_t matrix[16], dwConstRendererHandle_t obj)
 Gets current projection matrix. More...
 
DW_API_PUBLIC dwStatus dwRenderer_getRect (dwRect *rect, dwConstRendererHandle_t obj)
 Gets current rendering screen area expressed in pixel values. More...
 
DW_API_PUBLIC dwStatus dwRenderer_initialize (dwRendererHandle_t *renderer, dwContextHandle_t context)
 Initializes a Renderer. More...
 
DW_API_PUBLIC dwStatus dwRenderer_release (dwRendererHandle_t *renderer)
 Released the renderer. More...
 
DW_API_PUBLIC dwStatus dwRenderer_renderBuffer (dwConstRenderBufferHandle_t buffer, dwRendererHandle_t obj)
 Renders a RenderBuffer. More...
 
DW_API_PUBLIC dwStatus dwRenderer_renderCircle (dwVector2f center, float32_t radius, dwRendererHandle_t obj)
 Renders a 2D circle. More...
 
DW_API_PUBLIC dwStatus dwRenderer_renderData2D (const dwVector2f *buffer, size_t count, dwRenderBufferPrimitiveType primitiveType, dwRendererHandle_t obj)
 Renders a set of 2D vertices. More...
 
DW_API_PUBLIC dwStatus dwRenderer_renderData3D (const dwVector3f *buffer, size_t count, dwRenderBufferPrimitiveType primitiveType, dwRendererHandle_t obj)
 Renders a set of 3D vertices. More...
 
DW_API_PUBLIC dwStatus dwRenderer_renderSubTexture (const GLuint inputTexture, const GLenum textureTarget, const float32_t minx, const float32_t miny, const float32_t maxx, const float32_t maxy, dwRendererHandle_t obj)
 Renders a subrect of a textured quad on the screen. More...
 
DW_API_PUBLIC dwStatus dwRenderer_renderText (const int32_t x, const int32_t y, const char *text, dwRendererHandle_t obj)
 Renders a text line on the screen. More...
 
DW_API_PUBLIC dwStatus dwRenderer_renderTextNorm (const float32_t normX, const float32_t normY, const char *text, dwRendererHandle_t obj)
 Renders a text line on the screen. More...
 
DW_API_PUBLIC dwStatus dwRenderer_renderTexture (const GLuint inputTexture, const GLenum textureTarget, dwRendererHandle_t obj)
 Renders a textured quad on the screen. More...
 
DW_API_PUBLIC dwStatus dwRenderer_reset (dwRendererHandle_t renderer)
 Resets renderer state. More...
 
DW_API_PUBLIC dwStatus dwRenderer_set2DTransform (const float32_t matrix[9], dwRendererHandle_t obj)
 Sets current 2D transformation applied when rendering to the screen. More...
 
DW_API_PUBLIC dwStatus dwRenderer_setColor (const float32_t color[4], dwRendererHandle_t obj)
 Sets current rendering color. More...
 
DW_API_PUBLIC dwStatus dwRenderer_setColorMapScale (const float32_t colorMapScale[3], dwRendererHandle_t obj)
 Sets current rendering color mapping scale. More...
 
DW_API_PUBLIC dwStatus dwRenderer_setFont (const dwRendererFonts value, dwRendererHandle_t obj)
 Sets current font. More...
 
DW_API_PUBLIC dwStatus dwRenderer_setLineWidth (const float32_t value, dwRendererHandle_t obj)
 Sets current line width, in pixels. More...
 
DW_API_PUBLIC dwStatus dwRenderer_setModelView (const float32_t matrix[16], dwRendererHandle_t obj)
 Sets current ModelView matrix. More...
 
DW_API_PUBLIC dwStatus dwRenderer_setPointSize (const float32_t value, dwRendererHandle_t obj)
 Sets current point size. More...
 
DW_API_PUBLIC dwStatus dwRenderer_setProjection (const float32_t matrix[16], dwRendererHandle_t obj)
 Sets current projection matrix. More...
 
DW_API_PUBLIC dwStatus dwRenderer_setRect (const dwRect rect, dwRendererHandle_t obj)
 Sets current rendering screen area expressed in pixel values. More...
 

Variables

const float32_t DW_RENDER_COLORMAPSCALE_100M [3] = { 100.0f, 100.0f, 100.0f}
 
const float32_t DW_RENDER_COLORMAPSCALE_130M [3] = { 130.0f, 130.0f, 130.0f}
 
const float32_t DW_RENDER_COLORMAPSCALE_150M [3] = { 150.0f, 150.0f, 150.0f}
 
const float32_t DW_RENDER_COLORMAPSCALE_75M [3] = { 75.0f, 75.0f, 75.0f}
 Color map scales - determine the bandwidth of the color spectum. More...
 
static const uint32_t DW_RENDERBUFFER_MAX_VIEWS = 10
 The maximal number of views that can be created in with. More...
 
const float32_t DW_RENDERER_COLOR_BLACK [4] = { 0.0f/255.0f, 0.0f/255.0f, 0.0f/255.0f, 1.0f}
 
const float32_t DW_RENDERER_COLOR_BLUE [4] = { 32.0f/255.0f, 72.0f/255.0f, 230.0f/255.0f, 1.0f}
 
const float32_t DW_RENDERER_COLOR_DARKBLUE [4] = { 45.0f/255.0f, 44.0f/255.0f, 100.0f/255.0f, 0.6f}
 
const float32_t DW_RENDERER_COLOR_DARKGREEN [4] = { 45.0f/255.0f, 100.0f/255.0f, 44.0f/255.0f, 1.0f}
 
const float32_t DW_RENDERER_COLOR_DARKGREY [4] = { 72.0f/255.0f, 72.0f/255.0f, 72.0f/255.0f, 1.0f}
 
const float32_t DW_RENDERER_COLOR_DARKRED [4] = { 180.0f/255.0f, 5.0f/255.0f, 0.0f/255.0f, 1.0f}
 
const float32_t DW_RENDERER_COLOR_GREEN [4] = { 32.0f/255.0f, 230.0f/255.0f, 32.0f/255.0f, 1.0f}
 
const float32_t DW_RENDERER_COLOR_LIGHTBLUE [4] = { 51.0f/255.0f, 153.0f/255.0f, 255.0f/255.0f, 0.6f}
 
const float32_t DW_RENDERER_COLOR_LIGHTGREEN [4] = { 118.0f/255.0f, 185.0f/255.0f, 0.0f/255.0f, 1.0f}
 
const float32_t DW_RENDERER_COLOR_ORANGE [4] = { 230.0f/255.0f, 100.0f/255.0f, 10.0f/255.0f, 1.0f}
 
const float32_t DW_RENDERER_COLOR_RED [4] = { 230.0f/255.0f, 72.0f/255.0f, 32.0f/255.0f, 1.0f}
 
const float32_t DW_RENDERER_COLOR_WHITE [4] = { 230.0f/255.0f, 230.0f/255.0f, 230.0f/255.0f, 1.0f}
 
const float32_t DW_RENDERER_COLOR_YELLOW [4] = { 230.0f/255.0f, 230.0f/255.0f, 10.0f/255.0f, 1.0f}
 
static const uint32_t DW_RENDERER_DEFAULT_BUFFER_SIZE = 10000
 The maximum number of vertices that can be passed to a call dwRenderer_renderData3D() or dwRenderer_renderData2D() More...