Rendu
A lightweight rendering engine for experimentations
Loading...
Searching...
No Matches
Class List
Here are the classes, structs, unions and interfaces with brief descriptions:
[detail level 1234]
 NCompositeObjCommposite OBJ files loading
 NGPUShadersContains all shaders
 NSceneExportHelpers to export a Rendu scene
 CAnimatedWraps an animated property so that the initial value is preserved
 CAnimationAn animation is a transformation evaluated at each frame and applied to an object
 CApplicationBase structure of an application
 CAsyncTextureTaskRequest for an asynchronous texture download. Data has been copied from the source texture to a buffer during the frame. The readback of the buffer to the CPU has to be performed once the frame is complete
 CAtmosphereAppDemo application for the atmospheric scattering shader. Demonstrate real-time approximate atmospheric scattering simulation. Based on Precomputed Atmospheric Scattering, E. Bruneton, F. Neyret, EGSR 2008
 CAtmosphereConfigAtmospheric scattering configuration. Parameters for precomputation
 CBackAndForthTranslate an object back and forth along a direction
 CBasicShadowMap2DArrayA 2D shadow map array, can be used for directional and spot lights. The shadow map will register itself with the associated lights
 CBasicShadowMapCubeArrayA cube shadow map array, can be used for point lights. Each face of the map is updated sequentially. The shadow map will register itself with the associated lights
 CBilateralBlurApply an approximate bilateral blur to a texture. This can be used to blur while preserving edges, or even to upscale and blur a small texture. The approximate implementation in Rendu is based on the one demonstrated in G3D (McGuire M., Mara M., Majercik Z., http://casual-effects.com/g3d, 2017), and relies on a separable Gaussian blur with adjusted weights and an extra step distance
 CBoundingBoxRepresent the smallest axis-aligne box containing a given object or region of space
 CBoundingSphereRepresent the sphere of smallest radius containing a given object or region of space
 CBoxBlurApplies a box blur of fixed radius 2. Correspond to uniformly averaging values over a 5x5 square window
 CBufferGeneral purpose GPU buffer, with different use types determining its memory type, visibility and access pattern
 CBVHRendererRenderer coupled with a basic diffuse path tracer. The user can move the camera anywhere and trigger a path-traced rendering. Can also display the raycaster acceleration structure
 CCameraThis class represents a camera as used in real-time rendering APIs. It provides a view and projection matrices, and handles their proper update
 CCameraAppApplication with an interactive camera
 CCodableProvides helpers for serialization/deserialization of basic types
 CConfigContains configurable elements as attributes, populated from the command line, a configuration file or default values
 CControllableCameraThis camera can be controlled through the inputs received from the user
 CControllerRepresents a joystick or any additional controller
 CConvolutionPyramidImplements a multiscale scheme for approximating convolution with large filters. This is the basis of the technique described in Convolution Pyramids, Farbman et al., 2011. A set of filter parameters can be estimated through an offline optimization for each desired task: gradient field integration, seamless image cloning, background filling, or scattered data interpolation
 CCullerSelect and sort objects based on visibility and distance criteria
 CDebugLightRendererVisualize lights as colored wireframe objects
 CDebugRendererProvide debuggging visualization for most scene elements
 CDebugViewerProvide helper GUI to display the content of textures and mesh infos. This can be useful to validate the content rendered to a specific texture when debugging
 CDeferredLightApply a light onto the lighting buffer using a geometric proxy (cone, sphere, screenquad). By processing all lights, the final lighting is accumulated in the buffer
 CDeferredProbeApply a probe onto the lighting buffer by rendering a box. The probe contribution weight is accumulated in the alpha channel
 CDeferredRendererPerforms deferred rendering of a scene
 CDescriptorAllocatorManage descriptor set allocations by creating and reusing internal descriptor pools
 CDescriptorSetDescriptor set allocation
 CDirectionalLightA directional light, where all light rays have the same direction
 CEditorRendererRender the scene in the editor
 CEmptyShadowMap2DArrayA dummy shadow map array, can be used for directional and spot lights. The shadow map will register itself with the associated lights
 CEmptyShadowMapCubeArrayA dummy cube shadow map array, can be used for point lights. The shadow map will register itself with the associated lights
 CFilteringAppApply multiple image filters on an interactive rendering of a scene
 CFloodFillerPerform an approximate flood fill on the GPU, outputing a color filled image or a distance map. Implement the method described in Jump Flooding in GPU with Applications to Voronoi Diagram and Distance Transform, Rong et al., 2006
 CFontFont loading and storage: texture atlas, codepoints supported, dimensions of each glyph
 CForwardLightStore lights data for forward rendering in a GPU buffer
 CForwardProbeStore environment probes data for forward rendering in a GPU buffer
 CForwardRendererA renderer that shade each object as it is drawn in the scene directly
 CFrustumRepresent a 3D frustum, volume defined by the intersection of six planes
 CGameHandles communication between the different game components (renderers, player, menus) and the player actions
 CGameConfigGame common configuration
 CGameMenuA game menu containing buttons, toggles and images
 CGameMenuRendererRenders a game menu
 CGamepadControllerRepresents a controller with a predefined mapping provided by GLFW/SDL
 CGameRendererRenders the main game scene
 CGaussianBlurApplies an approximate gaussian blur using a dual filtering approach
 CGPUProvide utility functions to communicate with the driver and GPU
 CGPUBufferStore data in a GPU buffer
 CGPUContextGlobal GPU context, storing all structures used for resource allocation and tracking, operations recording and rendering
 CGPUMarkerInserted a marker on the current render or upload command buffer. These markers are visible in profling and debugging tools such as Renderdoc, as are object debug labels
 CGPUMeshStore vertices and triangles data on the GPU, linked by an array object
 CGPUQueryRepresent a GPU query, automatically buffered and retrieved
 CGPUStateInternal GPU state ; not all API options are exposed, only these that can be toggled in Rendu
 CGPUTextureStore a texture data on the GPU
 CImageRepresents an image composed of pixels with values in [0,1]. Provide image loading/saving utilities, for both LDR and HDR images
 CInputThe input manager is responsible for updating the internal input states (keyboard, mouse, window size). It can also be use to query back these states
 CIntersectionProvide helpers for basic analytic intersections
 CIslandAppRealistic rendering of a sandy island in the ocean
 CKeyValuesRepresent a key-values tuple
 CLaplacianIntegratorCompute the laplacian field of a RGB image before reconstructing the initial image through integration, using a filter as described in Convolution Pyramids, Farbman et al., 2011
 CLibraryThe library provides a few commonly-used resources without having to set them up or query them from the resources manager
 CLightA general light with adjustable color intensity, that can cast shadows
 CLightProbeStore environment lighting for reflections
 CLightRendererBase structure of a per-light specialized renderer
 CLoadDetailed operation to perform when binding a texture (starting a renderpass)
 CLogProvides logging utilities, either to the standard/error output or to a file, with multiple criticality levels
 CMaterialRepresent a surface material, including textures describing the surface parameters
 CMaterialGGXCPU methods for evaluating the Cook-Torrance BRDF (Lambert+GGX/Towbridge-Reitz) for a given set of parameters, and sample a ray following the distribution of normals
 CMaterialSkyCPU methods for evaluating the atmospheric scattering model used by the sky background
 CMenuButtonRepresents a button in a menu
 CMenuImageRepresents a fixed image displayed in a menu
 CMenuLabelA dynamic text label
 CMenuToggleRepresents a toggle in a menu
 CMeshRepresents a geometric mesh composed of vertices, other attributes and triangles
 CMikktspaceWrapper
 CObjectRepresent a 3D textured object
 CObjToSceneConfigConfiguration for the OBJ to scene converter
 CPaintingToolUtility presenting a canvas to the user, along with a brush tool to paint on it using different shapes
 CPathTracerUnidirectional path tracer. Generates renderings of a scene by emitting rays from the user viewpoint and letting them bounce in the scene, forming paths. Lighting and materials contributions are accumulated along each path to compute the color of the associated sample
 CPathTracerAppViewer coupled with a basic diffuse path tracer. The user can move the camera anywhere and trigger a path-traced rendering. Can also display the raycaster acceleration structure
 CPathTracerConfigPath tracer demo configuration. Parameters for offline rendering
 CPBRDemoPBR rendering demonstration and interactions
 CPerlinNoiseGenerate 3D perlin noise and multi-layered noise
 CPipelineCacheCreate and reuse GPU pipelines based on a given state. This supports both graphics and compute pipelines
 CPlayerPlayer state and animations
 CPointLightAn omnidirectional punctual light, where light is radiating in all directions from a single point in space. Implements distance attenuation
 CPoissonFillerSolve a membrane interpolation ("Poisson filling") problem, using a filter as described in Convolution Pyramids, Farbman et al., 2011
 CPostProcessStackApply post process effects to a HDR rendering of a scene
 CProbeA probe can be used to capture the appareance of a scene at a given location as a 360° cubemap
 CProgramRepresents a group of shaders used for rendering
 CQueryPerform CPU duration measurement between two time points
 CQueryAllocatorManages GPU queries allocation in a set of pools. Pools need to be buffered per frame so that we can retrieve the previous frame queries while the current queries are running
 CRandomGenerate seedable random numbers of various types and in multiple intervals. Handles per-thread random number generators
 CRawControllerRepresents a controller used for debug, where all raw buttons are shown
 CRayRepresent a ray, shot from a given position in a specific direction
 CRaycasterAllows to cast rays against a polygonal mesh, on the CPU. Relies on an internal acceleration structure to speed up intersection queries
 CRaycasterVisualisationHelper that can generate information on a raycaster internal data: BVH visualisation, etc
 CRendererBase structure of a renderer
 CRenderingConfigConfiguration containing parameters for windows and renderers
 CResourcesThe Resources manager is responsible for all resources loading and setup
 CResourceToDeleteRequest for the buffered deletion of a resource. Any of the handles stored below is optional, depending on the kind of resource being deleted
 CRotationRotate an object around an axis
 CSamplerLibraryManage all samplers for GPU textures. Samplers are shared between all shader programs, and directly specified in the shaders based on use. All samplers are stored in a unique, shared descriptor set appended to all other sets (set #3)
 CSceneRepresents a 3D environment composed of objects, a background and additional environment lighting informations, along with serialization support
 CSceneEditorScene editor interface
 CShaderCompilerRelies on glslang to compile GLSL shaders to SPIR-V and SPIRV-Cross to generate reflection data
 CShaderEditorShader editor that can be used to tweak shaders on the fly, reloading them and exposing parameters for adjustements
 CShaderEditorConfigShader editor configuration
 CShadowMapStore shadowing information as a map generated from the light viewpoint
 CSkyRepresent a background environment with atmospheric scattering. The sun direction can be animated
 CSpotLightA spotlight, where light rays in a given cone are radiating from a single point in space. Implements distance attenuation and cone soft transition
 CSSAOComputes screen space ambient occlusion from a depth and view-space normal buffer (brought to [0,1])
 CStenciledAppApplication for the stencil demo
 CStenciledRendererRenders a scene with an alternating black and white region style, using the stencil buffer to count primitives covering each pixel
 CSwapchainA swapchain handles the creation and presentation of the backbuffer, along with GPU work submission and synchronization
 CSystemPerforms system basic operations such as directory creation, timing, threading, file picking
 CTerrainGenerate a terrain with Perlin noise and erosion. Represent the terrain, regrouping elevation and shadow data and the underlying GPU representation to render it
 CTextureRepresents a texture containing one or more images, stored on the CPU and/or GPU
 CTextUtilitiesProvides utilities process strings
 CUniformBufferRepresents a buffer containing uniform data, stored on the CPU and GPU. Depending on the update frequency of the CPU data, the buffer will maintain one or multiple copies of the data on the GPU
 CUniformBufferBaseUniform buffer exposed to all shader stages, that can be updated at varying frequencies. Multiple instances of the GPU data will be maintained internally
 CVarianceShadowMap2DArrayA 2D variance shadow map array, can be used for directional and spot lights. The shadow map will register itself with the associated lights. Implement variance shadow mapping to filter the shadows and get correct smoother edges
 CVarianceShadowMapCubeArrayA cube variance shadow map array, can be used for point lights. Each face of the map is updated sequentially. The shadow map will register itself with the associated lights. Implement variance shadow mapping to filter the shadows and get correct smoother edges
 CWindowRepresent an OS window and its associated rendering context