4#ifndef vtkWebGPUPointCloudMapperInternals_h
5#define vtkWebGPUPointCloudMapperInternals_h
8#include "vtkRenderingWebGPUModule.h"
21VTK_ABI_NAMESPACE_BEGIN
44 wgpu::BindGroup BindGroup =
nullptr;
45 wgpu::RenderPipeline Pipeline =
nullptr;
46 wgpu::Buffer FramebufferWidthUniformBuffer =
nullptr;
78 void UpdateRenderWindowDepthBuffer(
vtkRenderer* renderer);
114 void InitializeDepthCopyPass(
vtkRenderer* renderer);
119 void InitializePointRenderPass(
vtkRenderer* renderer);
127 void UploadPointsToGPU();
136 void UploadColorsToGPU();
145 bool Initialized =
false;
160 int PointBufferIndex = -1;
163 int PointColorBufferIndex = -1;
166 int PointDepthBufferIndex = -1;
168 int CameraVPBufferIndex = -1;
170 int FrameBufferRenderTextureIndex = -1;
a simple class to control print indentation
abstract base class for most VTK objects
concrete dataset represents vertices, lines, polygons, and triangle strips
abstract specification for renderers
Hold a reference to a vtkObjectBase instance.
Represents the set of parameters that will be used to create a compute shader buffer on the device wh...
A compute pass is an abstraction for offloading computation from the CPU onto the GPU using WebGPU co...
A compute pipeline is the orchestrator of a collection of compute passes.
The point cloud renderer uses WebGPU compute shaders to render the point cells of a polydata onto the...
Internal implementation details of vtkWebGPUPointCloudMapper.
~vtkWebGPUPointCloudMapperInternals() override
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
static vtkWebGPUPointCloudMapperInternals * New()
void SetMapper(vtkWebGPUComputePointCloudMapper *mapper)
vtkWebGPUPointCloudMapperInternals()
Structure that contains the wgpu objects necessary for the use of the render pipeline that copies the...
vtkTypeUInt32 vtkMTimeType