109 const std::vector<float>& isovalues,
110 const std::vector<bool>& flipNormals = {});
113 [[nodiscard]]
bool isReady()
const {
return resourcesReady_; }
116 void ensureResources();
120 MTL::Buffer* allocateVertexBuffer(uint32_t vertexCount);
125 MTL::ComputePipelineState* classifyPipeline_ =
nullptr;
126 MTL::ComputePipelineState* generatePipeline_ =
nullptr;
129 MTL::Buffer* edgeTableBuffer_ =
nullptr;
130 MTL::Buffer* triTableBuffer_ =
nullptr;
133 MTL::Buffer* counterBuffer_ =
nullptr;
134 MTL::Buffer* uniformBuffer_ =
nullptr;
137 MTL::SamplerState* fieldSampler_ =
nullptr;
139 bool resourcesReady_ =
false;
GPU texture resource supporting 2D, cubemap, volume, and array formats with mipmap management.