38 void execute(MTL::RenderCommandEncoder* encoder,
40 const Matrix4& viewProjectionPrevious,
const Matrix4& viewProjectionInverse,
41 const std::array<float, 4>& jitters,
const std::array<float, 4>& cameraParams,
42 bool highQuality,
bool historyValid,
44 const std::vector<std::shared_ptr<MetalBindGroupFormat>>& bindGroupFormats,
45 MTL::SamplerState* defaultSampler, MTL::DepthStencilState* defaultDepthStencilState);
48 void ensureResources();
53 std::shared_ptr<Shader> _shader;
54 std::shared_ptr<BlendState> _blendState;
55 std::shared_ptr<DepthState> _depthState;
56 MTL::DepthStencilState* _depthStencilState =
nullptr;
GPU texture resource supporting 2D, cubemap, volume, and array formats with mipmap management.