|
VisuTwin Canvas
C++ 3D Engine — Metal Backend
|
Abstract GPU interface for resource creation, state management, and draw submission. More...
#include <platform/graphics/graphicsDevice.h>
Public Member Functions | |
| void | addTexture (const std::shared_ptr< Texture > &texture) |
| bool | atmosphereEnabled () const |
| std::shared_ptr< RenderTarget > | backBuffer () const |
| void | clearQuadTextureBindings () |
| virtual void | computeDispatch (const std::vector< Compute * > &computes, const std::string &label="") |
| bool | contextLost () const |
| virtual std::unique_ptr< gpu::HardwareTexture > | createGPUTexture (Texture *texture)=0 |
| virtual std::shared_ptr< IndexBuffer > | createIndexBuffer (IndexFormat format, int numIndices, const std::vector< uint8_t > &data={})=0 |
| virtual std::shared_ptr< RenderTarget > | createRenderTarget (const RenderTargetOptions &options)=0 |
| virtual std::shared_ptr< Shader > | createShader (const ShaderDefinition &definition, const std::string &sourceCode="") |
| virtual std::shared_ptr< VertexBuffer > | createVertexBuffer (const std::shared_ptr< VertexFormat > &format, int numVertices, const VertexBufferOptions &options=VertexBufferOptions{})=0 |
| virtual std::shared_ptr< VertexBuffer > | createVertexBufferFromNativeBuffer (const std::shared_ptr< VertexFormat > &format, int numVertices, void *nativeBuffer) |
| CullMode | cullMode () const |
| virtual void | draw (const Primitive &primitive, const std::shared_ptr< IndexBuffer > &indexBuffer=nullptr, int numInstances=1, int indirectSlot=-1, bool first=true, bool last=true)=0 |
| int | drawCallsPerFrame () const |
| virtual void | endRenderPass (RenderPass *renderPass)=0 |
| virtual void | executeCoCPass (const CoCPassParams ¶ms) |
| virtual void | executeComposePass (const ComposePassParams ¶ms) |
| virtual void | executeDepthAwareBlurPass (const DepthAwareBlurPassParams ¶ms, bool horizontal) |
| virtual void | executeDofBlurPass (const DofBlurPassParams ¶ms) |
| virtual void | executeSsaoPass (const SsaoPassParams ¶ms) |
| virtual void | executeTAAPass (Texture *sourceTexture, Texture *historyTexture, Texture *depthTexture, const Matrix4 &viewProjectionPrevious, const Matrix4 &viewProjectionInverse, const std::array< float, 4 > &jitters, const std::array< float, 4 > &cameraParams, bool highQuality, bool historyValid) |
| void | frameEnd () |
| void | frameStart () |
| std::shared_ptr< Shader > | getCachedShader (const std::string &name) const |
| bool | hdrPass () const |
| bool | insideRenderPass () const |
| const Material * | material () const |
| int | maxSamples () const |
| bool | quadRenderActive () const |
| Texture * | quadTextureBinding (const size_t slot) const |
| const std::array< Texture *, 8 > & | quadTextureBindings () const |
| std::shared_ptr< VertexBuffer > | quadVertexBuffer () |
| const ReflectionBlurParams & | reflectionBlurParams () const |
| Texture * | reflectionDepthMap () const |
| Texture * | reflectionMap () const |
| void | removeTarget (RenderTarget *target) |
| std::shared_ptr< RenderTarget > | renderTarget () const |
| int | renderVersion () const |
| void | resetDrawCallsPerFrame () |
| void | resizeCanvas (int width, int height) |
| int | samples () const |
| Texture * | sceneDepthMap () const |
| void | setAtmosphereEnabled (bool value) |
| Enable/disable atmosphere scattering for the current frame. | |
| virtual void | setAtmosphereUniforms (const void *data, size_t size) |
| void | setBlendState (const std::shared_ptr< BlendState > &blendState) |
| void | setCachedShader (const std::string &name, const std::shared_ptr< Shader > &shader) |
| virtual void | setClusterBuffers (const void *lightData, size_t lightSize, const void *cellData, size_t cellSize) |
| virtual void | setClusterGridParams (const float *boundsMin, const float *boundsRange, const float *cellsCountByBoundsSize, int cellsX, int cellsY, int cellsZ, int maxLightsPerCell, int numClusteredLights) |
| void | setCullMode (const CullMode cullMode) |
| virtual void | setDepthBias (float depthBias, float slopeScale, float clamp) |
| void | setDepthState (const std::shared_ptr< DepthState > &depthState) |
| virtual void | setDynamicBatchPalette (const void *data, size_t size) |
| virtual void | setEnvironmentUniforms (Texture *envAtlas, float skyboxIntensity, float skyboxMip, const Vector3 &skyDomeCenter=Vector3(0, 0, 0), bool isDome=false, Texture *skyboxCubeMap=nullptr) |
| void | setHdrPass (bool hdr) |
| virtual void | setIndirectDrawBuffer (void *nativeBuffer) |
| virtual void | setLightingUniforms (const Color &ambientColor, const std::vector< GpuLightData > &lights, const Vector3 &cameraPosition, bool enableNormalMaps, float exposure, const FogParams &fogParams=FogParams{}, const ShadowParams &shadowParams=ShadowParams{}, int toneMapping=0) |
| void | setMaterial (const Material *material) |
| void | setQuadRenderActive (const bool active) |
| void | setQuadTextureBinding (const size_t slot, Texture *texture) |
| void | setReflectionBlurParams (const ReflectionBlurParams ¶ms) |
| void | setReflectionDepthMap (Texture *tex) |
| void | setReflectionMap (Texture *tex) |
| void | setRenderTarget (const std::shared_ptr< RenderTarget > &target) |
| virtual void | setResolution (int width, int height)=0 |
| void | setSceneDepthMap (Texture *depthMap) |
| virtual void | setScissor (int x, int y, int w, int h) |
| void | setShader (const std::shared_ptr< Shader > &shader) |
| void | setSsaoForwardTexture (Texture *tex) |
| void | setStencilState (const std::shared_ptr< StencilParameters > &stencilFront=nullptr, const std::shared_ptr< StencilParameters > &stencilBack=nullptr) |
| virtual void | setTransformUniforms (const Matrix4 &viewProjection, const Matrix4 &model) |
| void | setVertexBuffer (const std::shared_ptr< VertexBuffer > &vertexBuffer, const size_t slot=0) |
| virtual void | setViewport (float x, float y, float w, float h) |
| int | sh () const |
| virtual std::pair< int, int > | size () const =0 |
| Texture * | ssaoForwardTexture () const |
| virtual void | startRenderPass (RenderPass *renderPass)=0 |
| virtual bool | supportsCompute () const |
| int | sw () const |
| int | sx () const |
| int | sy () const |
| virtual void | update () |
| void | updateClientRect () |
| float | vh () const |
| float | vw () const |
| float | vx () const |
| float | vy () const |
| virtual | ~GraphicsDevice () |
| Public Member Functions inherited from visutwin::canvas::EventHandler | |
| template<typename... Args> | |
| EventHandler * | fire (const std::string &name, Args &&... args) |
| bool | hasEvent (const std::string &name) const |
| void | initEventHandler () |
| template<typename Callback> requires (!std::is_same_v<std::decay_t<Callback>, HandleEventCallback>) | |
| EventHandler * | off (const std::string &name, Callback &&callback, void *scope=nullptr) |
| EventHandler * | off (const std::string &name="", const HandleEventCallback &callback=HandleEventCallback(), void *scope=nullptr) |
| EventHandler * | offByHandle (EventHandle *handle) |
| template<typename Callback> requires (!std::is_same_v<std::decay_t<Callback>, HandleEventCallback>) | |
| EventHandle * | on (const std::string &name, Callback &&callback, void *scope=nullptr) |
| EventHandle * | on (const std::string &name, HandleEventCallback callback, void *scope=nullptr) |
| template<typename Callback> requires (!std::is_same_v<std::decay_t<Callback>, HandleEventCallback>) | |
| EventHandle * | once (const std::string &name, Callback &&callback, void *scope=nullptr) |
| EventHandle * | once (const std::string &name, HandleEventCallback callback, void *scope=nullptr) |
| virtual | ~EventHandler ()=default |
Protected Member Functions | |
| void | clearVertexBuffer () |
| virtual void | onFrameEnd () |
| virtual void | onFrameStart () |
| void | recordDrawCall (int count=1) |
| void | setBackBuffer (const std::shared_ptr< RenderTarget > &target) |
| Protected Member Functions inherited from visutwin::canvas::EventHandler | |
| EventHandle * | addCallback (const std::string &name, HandleEventCallback callback, void *scope=nullptr, bool once=false) |
Protected Attributes | |
| std::shared_ptr< BlendState > | _blendState |
| CullMode | _cullMode = CullMode::CULLFACE_BACK |
| std::shared_ptr< DepthState > | _depthState |
| bool | _insideRenderPass = false |
| const Material * | _material = nullptr |
| std::shared_ptr< RenderTarget > | _renderTarget |
| std::shared_ptr< Shader > | _shader |
| std::shared_ptr< StencilParameters > | _stencilBack |
| bool | _stencilEnabled = false |
| std::shared_ptr< StencilParameters > | _stencilFront |
| std::vector< std::shared_ptr< VertexBuffer > > | _vertexBuffers |
Friends | |
| class | Engine |
| class | RenderPass |
| class | Texture |
| class | VertexBuffer |
Abstract GPU interface for resource creation, state management, and draw submission.
GraphicsDevice is the platform-independent abstraction over the GPU. The concrete implementation (MetalGraphicsDevice) manages triple-buffered ring buffers for uniforms, pipeline state caching, and per-pass texture/uniform binding deduplication. Uses reverse-Z depth.
Definition at line 238 of file graphicsDevice.h.
|
virtual |
Definition at line 25 of file graphicsDevice.cpp.
|
inline |
Definition at line 479 of file graphicsDevice.h.
|
inline |
Definition at line 269 of file graphicsDevice.h.
Referenced by visutwin::canvas::MetalGraphicsDevice::draw().
|
inline |
Definition at line 249 of file graphicsDevice.h.
Referenced by visutwin::canvas::MetalGraphicsDevice::startRenderPass().
|
inline |
Definition at line 378 of file graphicsDevice.h.
|
protected |
Definition at line 64 of file graphicsDevice.cpp.
References _vertexBuffers.
Referenced by visutwin::canvas::MetalGraphicsDevice::draw().
|
inlinevirtual |
Reimplemented in visutwin::canvas::MetalGraphicsDevice.
Definition at line 477 of file graphicsDevice.h.
|
inline |
Definition at line 421 of file graphicsDevice.h.
|
pure virtual |
Implemented in visutwin::canvas::MetalGraphicsDevice.
References Texture.
|
pure virtual |
Implemented in visutwin::canvas::MetalGraphicsDevice.
|
pure virtual |
Implemented in visutwin::canvas::MetalGraphicsDevice.
Referenced by visutwin::canvas::ShadowMap::create().
|
virtual |
Create a backend-specific shader from a definition and optional source code. Backends override this to return their own Shader subclass (e.g., MetalShader).
Reimplemented in visutwin::canvas::MetalGraphicsDevice.
Definition at line 57 of file graphicsDevice.cpp.
Referenced by visutwin::canvas::createShader().
|
pure virtual |
Implemented in visutwin::canvas::MetalGraphicsDevice.
Referenced by quadVertexBuffer().
|
inlinevirtual |
Create a VertexBuffer that adopts a pre-existing GPU buffer (zero-copy). The nativeBuffer pointer is backend-specific (MTL::Buffer*, VkBuffer, etc.). Used for GPU compute output paths where the buffer is already filled.
Reimplemented in visutwin::canvas::MetalGraphicsDevice.
Definition at line 462 of file graphicsDevice.h.
|
inline |
|
pure virtual |
Implemented in visutwin::canvas::MetalGraphicsDevice.
|
inline |
Definition at line 418 of file graphicsDevice.h.
|
pure virtual |
Implemented in visutwin::canvas::MetalGraphicsDevice.
References RenderPass.
|
inlinevirtual |
Reimplemented in visutwin::canvas::MetalGraphicsDevice.
Definition at line 473 of file graphicsDevice.h.
|
inlinevirtual |
Reimplemented in visutwin::canvas::MetalGraphicsDevice.
Definition at line 467 of file graphicsDevice.h.
|
inlinevirtual |
Reimplemented in visutwin::canvas::MetalGraphicsDevice.
Definition at line 475 of file graphicsDevice.h.
|
inlinevirtual |
Reimplemented in visutwin::canvas::MetalGraphicsDevice.
Definition at line 474 of file graphicsDevice.h.
|
inlinevirtual |
Reimplemented in visutwin::canvas::MetalGraphicsDevice.
Definition at line 472 of file graphicsDevice.h.
|
inlinevirtual |
Reimplemented in visutwin::canvas::MetalGraphicsDevice.
Definition at line 468 of file graphicsDevice.h.
References Texture.
| void visutwin::canvas::GraphicsDevice::frameEnd | ( | ) |
Definition at line 47 of file graphicsDevice.cpp.
References onFrameEnd().
| void visutwin::canvas::GraphicsDevice::frameStart | ( | ) |
Definition at line 40 of file graphicsDevice.cpp.
References onFrameStart().
|
inline |
Definition at line 488 of file graphicsDevice.h.
|
inline |
Definition at line 397 of file graphicsDevice.h.
Referenced by visutwin::canvas::MetalGraphicsDevice::draw().
|
inline |
Definition at line 434 of file graphicsDevice.h.
References _insideRenderPass.
|
inline |
Definition at line 391 of file graphicsDevice.h.
References _material.
Referenced by visutwin::canvas::MetalGraphicsDevice::draw(), and setMaterial().
|
inline |
Definition at line 428 of file graphicsDevice.h.
|
inlineprotectedvirtual |
Definition at line 500 of file graphicsDevice.h.
Referenced by frameEnd().
|
inlineprotectedvirtual |
Definition at line 499 of file graphicsDevice.h.
Referenced by frameStart().
|
inline |
Definition at line 383 of file graphicsDevice.h.
Referenced by visutwin::canvas::MetalGraphicsDevice::draw().
|
inline |
Definition at line 384 of file graphicsDevice.h.
References Texture.
|
inline |
Definition at line 388 of file graphicsDevice.h.
Referenced by visutwin::canvas::MetalGraphicsDevice::draw().
| std::shared_ptr< VertexBuffer > visutwin::canvas::GraphicsDevice::quadVertexBuffer | ( | ) |
Definition at line 96 of file graphicsDevice.cpp.
References visutwin::canvas::BUFFER_STATIC, createVertexBuffer(), visutwin::canvas::VertexBufferOptions::data, and visutwin::canvas::VertexBufferOptions::usage.
|
inlineprotected |
Definition at line 502 of file graphicsDevice.h.
Referenced by visutwin::canvas::MetalGraphicsDevice::draw().
|
inline |
Definition at line 445 of file graphicsDevice.h.
Referenced by visutwin::canvas::MetalGraphicsDevice::draw().
|
inline |
Definition at line 450 of file graphicsDevice.h.
References Texture.
Referenced by visutwin::canvas::MetalGraphicsDevice::draw().
|
inline |
Definition at line 441 of file graphicsDevice.h.
References Texture.
Referenced by visutwin::canvas::MetalGraphicsDevice::draw().
| void visutwin::canvas::GraphicsDevice::removeTarget | ( | RenderTarget * | target | ) |
Definition at line 91 of file graphicsDevice.cpp.
|
inline |
Definition at line 432 of file graphicsDevice.h.
References _renderTarget.
Referenced by visutwin::canvas::MetalGraphicsDevice::endRenderPass(), visutwin::canvas::MetalGraphicsDevice::executeCoCPass(), visutwin::canvas::MetalGraphicsDevice::executeComposePass(), visutwin::canvas::MetalGraphicsDevice::executeDepthAwareBlurPass(), visutwin::canvas::MetalGraphicsDevice::executeDofBlurPass(), visutwin::canvas::MetalGraphicsDevice::executeSsaoPass(), and visutwin::canvas::MetalGraphicsDevice::executeTAAPass().
|
inline |
Definition at line 484 of file graphicsDevice.h.
|
inline |
Definition at line 419 of file graphicsDevice.h.
| void visutwin::canvas::GraphicsDevice::resizeCanvas | ( | int | width, |
| int | height ) |
Definition at line 69 of file graphicsDevice.cpp.
References setResolution(), and size().
|
inline |
Definition at line 411 of file graphicsDevice.h.
|
inline |
Definition at line 435 of file graphicsDevice.h.
References Texture.
Referenced by visutwin::canvas::MetalGraphicsDevice::draw().
|
inline |
Enable/disable atmosphere scattering for the current frame.
Definition at line 268 of file graphicsDevice.h.
|
inlinevirtual |
Set atmosphere uniforms for Nishita sky scattering. data must point to an AtmosphereUniforms-compatible struct (96 bytes).
Reimplemented in visutwin::canvas::MetalGraphicsDevice.
Definition at line 265 of file graphicsDevice.h.
References size().
|
inlineprotected |
Definition at line 501 of file graphicsDevice.h.
Referenced by visutwin::canvas::MetalGraphicsDevice::MetalGraphicsDevice().
|
inline |
Definition at line 286 of file graphicsDevice.h.
References _blendState.
|
inline |
Definition at line 493 of file graphicsDevice.h.
|
inlinevirtual |
Bind clustered lighting data for the current frame. lightData: packed GpuClusteredLight array, lightSize: byte count. cellData: uint8 cell→light index mapping, cellSize: byte count.
Reimplemented in visutwin::canvas::MetalGraphicsDevice.
Definition at line 311 of file graphicsDevice.h.
|
inlinevirtual |
Set clustered lighting grid parameters into LightingUniforms. Called by the renderer after WorldClusters::update().
Reimplemented in visutwin::canvas::MetalGraphicsDevice.
Definition at line 322 of file graphicsDevice.h.
|
inline |
Definition at line 337 of file graphicsDevice.h.
References _cullMode, and cullMode().
|
inlinevirtual |
Reimplemented in visutwin::canvas::MetalGraphicsDevice.
Definition at line 293 of file graphicsDevice.h.
|
inline |
Definition at line 288 of file graphicsDevice.h.
References _depthState.
|
inlinevirtual |
Bind the dynamic batch matrix palette for the next draw call. data: float4x4 array (16 floats per bone), size: byte count.
Reimplemented in visutwin::canvas::MetalGraphicsDevice.
Definition at line 302 of file graphicsDevice.h.
References size().
|
inlinevirtual |
Reimplemented in visutwin::canvas::MetalGraphicsDevice.
Definition at line 259 of file graphicsDevice.h.
References Texture.
|
inline |
Definition at line 396 of file graphicsDevice.h.
|
inlinevirtual |
Set the indirect draw buffer for the next draw call (GPU-driven instancing). The buffer is consumed (reset to nullptr) after one indirect draw. nativeBuffer is a backend-specific GPU buffer handle.
Reimplemented in visutwin::canvas::MetalGraphicsDevice.
Definition at line 298 of file graphicsDevice.h.
|
inlinevirtual |
Reimplemented in visutwin::canvas::MetalGraphicsDevice.
Definition at line 255 of file graphicsDevice.h.
|
inline |
Definition at line 390 of file graphicsDevice.h.
References _material, and material().
|
inline |
Definition at line 382 of file graphicsDevice.h.
|
inline |
Definition at line 372 of file graphicsDevice.h.
References Texture.
|
inline |
Definition at line 446 of file graphicsDevice.h.
|
inline |
Definition at line 451 of file graphicsDevice.h.
References Texture.
|
inline |
Definition at line 442 of file graphicsDevice.h.
References Texture.
|
inline |
Definition at line 433 of file graphicsDevice.h.
References _renderTarget.
Referenced by visutwin::canvas::MetalGraphicsDevice::startRenderPass().
|
pure virtual |
Implemented in visutwin::canvas::MetalGraphicsDevice.
Referenced by resizeCanvas().
|
inline |
Definition at line 436 of file graphicsDevice.h.
References Texture.
|
inlinevirtual |
Reimplemented in visutwin::canvas::MetalGraphicsDevice.
Definition at line 355 of file graphicsDevice.h.
Referenced by visutwin::canvas::MetalGraphicsDevice::setScissor().
|
inline |
Definition at line 276 of file graphicsDevice.h.
References _shader.
|
inline |
Definition at line 457 of file graphicsDevice.h.
References Texture.
|
inline |
Definition at line 339 of file graphicsDevice.h.
References _stencilBack, _stencilEnabled, and _stencilFront.
|
inlinevirtual |
Reimplemented in visutwin::canvas::MetalGraphicsDevice.
Definition at line 254 of file graphicsDevice.h.
|
inline |
Definition at line 278 of file graphicsDevice.h.
References _vertexBuffers.
|
inlinevirtual |
Reimplemented in visutwin::canvas::MetalGraphicsDevice.
Definition at line 347 of file graphicsDevice.h.
Referenced by visutwin::canvas::MetalGraphicsDevice::setViewport().
|
inline |
Definition at line 370 of file graphicsDevice.h.
|
pure virtual |
Implemented in visutwin::canvas::MetalGraphicsDevice.
Referenced by resizeCanvas(), setAtmosphereUniforms(), setDynamicBatchPalette(), and updateClientRect().
|
inline |
Definition at line 456 of file graphicsDevice.h.
References Texture.
Referenced by visutwin::canvas::MetalGraphicsDevice::draw().
|
pure virtual |
Implemented in visutwin::canvas::MetalGraphicsDevice.
References RenderPass.
|
inlinevirtual |
Reimplemented in visutwin::canvas::MetalGraphicsDevice.
Definition at line 476 of file graphicsDevice.h.
|
inline |
Definition at line 369 of file graphicsDevice.h.
|
inline |
Definition at line 367 of file graphicsDevice.h.
|
inline |
Definition at line 368 of file graphicsDevice.h.
|
virtual |
Definition at line 80 of file graphicsDevice.cpp.
References updateClientRect().
| void visutwin::canvas::GraphicsDevice::updateClientRect | ( | ) |
|
inline |
Definition at line 366 of file graphicsDevice.h.
Referenced by visutwin::canvas::MetalGraphicsDevice::draw().
|
inline |
Definition at line 365 of file graphicsDevice.h.
Referenced by visutwin::canvas::MetalGraphicsDevice::draw().
|
inline |
Definition at line 363 of file graphicsDevice.h.
|
inline |
Definition at line 364 of file graphicsDevice.h.
|
friend |
|
friend |
Definition at line 526 of file graphicsDevice.h.
References RenderPass.
Referenced by endRenderPass(), visutwin::canvas::MetalGraphicsDevice::endRenderPass(), RenderPass, startRenderPass(), and visutwin::canvas::MetalGraphicsDevice::startRenderPass().
|
friend |
Definition at line 528 of file graphicsDevice.h.
References Texture.
Referenced by createGPUTexture(), visutwin::canvas::MetalGraphicsDevice::createGPUTexture(), executeTAAPass(), visutwin::canvas::MetalGraphicsDevice::executeTAAPass(), quadTextureBinding(), reflectionDepthMap(), reflectionMap(), sceneDepthMap(), setEnvironmentUniforms(), visutwin::canvas::MetalGraphicsDevice::setEnvironmentUniforms(), setQuadTextureBinding(), setReflectionDepthMap(), setReflectionMap(), setSceneDepthMap(), setSsaoForwardTexture(), ssaoForwardTexture(), and Texture.
|
friend |
Definition at line 527 of file graphicsDevice.h.
References VertexBuffer.
Referenced by VertexBuffer.
|
protected |
Definition at line 512 of file graphicsDevice.h.
Referenced by visutwin::canvas::MetalGraphicsDevice::draw(), and setBlendState().
|
protected |
Definition at line 515 of file graphicsDevice.h.
Referenced by cullMode(), visutwin::canvas::MetalGraphicsDevice::draw(), and setCullMode().
|
protected |
Definition at line 513 of file graphicsDevice.h.
Referenced by visutwin::canvas::MetalGraphicsDevice::draw(), and setDepthState().
|
protected |
Definition at line 516 of file graphicsDevice.h.
Referenced by visutwin::canvas::MetalGraphicsDevice::computeDispatch(), visutwin::canvas::MetalGraphicsDevice::endRenderPass(), insideRenderPass(), and visutwin::canvas::MetalGraphicsDevice::startRenderPass().
|
protected |
Definition at line 522 of file graphicsDevice.h.
Referenced by material(), and setMaterial().
|
protected |
Definition at line 510 of file graphicsDevice.h.
Referenced by visutwin::canvas::MetalGraphicsDevice::draw(), renderTarget(), and setRenderTarget().
|
protected |
Definition at line 506 of file graphicsDevice.h.
Referenced by visutwin::canvas::MetalGraphicsDevice::draw(), and setShader().
|
protected |
Definition at line 521 of file graphicsDevice.h.
Referenced by visutwin::canvas::MetalGraphicsDevice::draw(), and setStencilState().
|
protected |
Definition at line 518 of file graphicsDevice.h.
Referenced by visutwin::canvas::MetalGraphicsDevice::draw(), and setStencilState().
|
protected |
Definition at line 520 of file graphicsDevice.h.
Referenced by visutwin::canvas::MetalGraphicsDevice::draw(), and setStencilState().
|
protected |
Definition at line 508 of file graphicsDevice.h.
Referenced by clearVertexBuffer(), visutwin::canvas::MetalGraphicsDevice::draw(), and setVertexBuffer().