metal: partial implementation of pipeline states.

Add BGRA8 pixel format.
This commit is contained in:
Alex Szpakowski
2020-05-03 12:48:43 -03:00
parent 3a8f6a35a2
commit 9765485222
13 changed files with 318 additions and 144 deletions
-9
View File
@@ -155,14 +155,6 @@ private:
Shader *shader;
};
struct PipelineState
{
vertex::Attributes vertexAttributes;
BlendState blend;
ColorChannelMask colorChannelMask;
Shader *shader;
};
love::graphics::ShaderStage *newShaderStageInternal(ShaderStage::StageType stage, const std::string &cachekey, const std::string &source, bool gles) override;
love::graphics::Shader *newShaderInternal(love::graphics::ShaderStage *vertex, love::graphics::ShaderStage *pixel) override;
love::graphics::StreamBuffer *newStreamBuffer(BufferType type, size_t size) override;
@@ -172,7 +164,6 @@ private:
void endPass();
id<MTLRenderPipelineState> getCachedRenderPipelineState(const PipelineState &state);
id<MTLDepthStencilState> getCachedDepthStencilState(const DepthState &depth, const StencilState &stencil);
void applyRenderState(id<MTLRenderCommandEncoder> renderEncoder);