40 const std::vector<std::shared_ptr<MetalBindGroupFormat>>& bindGroupFormats,
41 MTL::SamplerState* defaultSampler);
44 [[nodiscard]] std::shared_ptr<VertexFormat>
vertexFormat()
const {
return _vertexFormat; }
47 [[nodiscard]] std::shared_ptr<VertexBuffer>
vertexBuffer()
const {
return _vertexBuffer; }
57 std::shared_ptr<Shader> _shader;
58 std::shared_ptr<VertexFormat> _vertexFormat;
59 std::shared_ptr<VertexBuffer> _vertexBuffer;
60 std::shared_ptr<BlendState> _blendState;
61 std::shared_ptr<DepthState> _depthState;
62 MTL::DepthStencilState* _depthStencilState =
nullptr;