Archived
1
Fork 0
This repository has been archived on 2025-04-12. You can view files and clone it, but cannot push or open issues or pull requests.
prism/engine/gfx/metal/src/gfx_metal_pipeline.hpp

33 lines
664 B
C++
Raw Normal View History

#pragma once
#include <Metal/Metal.hpp>
#include "gfx_pipeline.hpp"
class GFXMetalPipeline : public GFXPipeline {
public:
std::string label;
MTL::RenderPipelineState* handle = nullptr;
MTL::ComputePipelineState* compute_handle = nullptr;
MTL::Size threadGroupSize;
MTL::DepthStencilState* depthStencil = nullptr;
MTL::PrimitiveType primitiveType;
MTL::CullMode cullMode;
GFXWindingMode winding_mode;
struct VertexStride {
int location, stride;
};
std::vector<VertexStride> vertexStrides;
int pushConstantSize = 0;
int pushConstantIndex = 0;
bool renderWire = false;
};