FFL
Loading...
Searching...
No Matches
FFLiCompressShader.h
Go to the documentation of this file.
1#ifndef FFLI_COMPRESS_SHADER_H_
2#define FFLI_COMPRESS_SHADER_H_
3
4#include <nn/ffl/FFLiUtilShader.h>
5
6#include <cafe/gx2.h>
7
10
12{
13public:
15 ~FFLiCompressShader(); // Deleted in NSMBU
16
17 bool UseUB() const;
18
19 bool SetupLocation();
20 bool SetupLocationForUR();
21 bool SetupLocationForUB();
22
23 bool SetupCPU(const void* pShaderData, u32 shaderIndex, FFLiBufferAllocator* pAllocator);
24 void SetupGPU();
25
26 void Bind() const;
27
28 void SetTexture(const GX2Texture* pGX2Texture) const;
29
30 void SetUniform(const FFLiCompressUniform* pUniform) const;
31 void SetUniformUR(const FFLiCompressUniform* pUniform) const;
32 void SetUniformUB(const FFLiCompressUniform* pUniform) const;
33
34 static u32 GetBufferSize(const void* pShaderData, u32 shaderIndex);
35
36private:
44};
46
47#endif // FFLI_COMPRESS_SHADER_H_
NN_STATIC_ASSERT(sizeof(FFLiAllocator)==4)
Definition FFLiBufferAllocator.h:16
Definition FFLiCompressShader.h:12
bool SetupLocation()
Definition FFLiCompressShader.cpp:68
bool SetupCPU(const void *pShaderData, u32 shaderIndex, FFLiBufferAllocator *pAllocator)
Definition FFLiCompressShader.cpp:99
FFLiUtilShader::FetchShader m_FetchShader
Definition FFLiCompressShader.h:37
bool UseUB() const
Definition FFLiCompressShader.cpp:34
void Bind() const
Definition FFLiCompressShader.cpp:127
bool SetupLocationForUR()
Definition FFLiCompressShader.cpp:79
u32 m_PixelUniformLocation
Definition FFLiCompressShader.h:42
u32 m_VertexUniformLocation
Definition FFLiCompressShader.h:41
GX2Sampler m_Sampler
Definition FFLiCompressShader.h:40
void SetupGPU()
Definition FFLiCompressShader.cpp:120
static u32 GetBufferSize(const void *pShaderData, u32 shaderIndex)
Definition FFLiCompressShader.cpp:167
FFLiCompressShader()
Definition FFLiCompressShader.cpp:22
void SetUniform(const FFLiCompressUniform *pUniform) const
Definition FFLiCompressShader.cpp:140
GX2VertexShader * m_pVertexShader
Definition FFLiCompressShader.h:38
void SetTexture(const GX2Texture *pGX2Texture) const
Definition FFLiCompressShader.cpp:134
void SetUniformUB(const FFLiCompressUniform *pUniform) const
Definition FFLiCompressShader.cpp:158
~FFLiCompressShader()
Definition FFLiCompressShader.cpp:30
GX2PixelShader * m_pPixelShader
Definition FFLiCompressShader.h:39
bool SetupLocationForUB()
Definition FFLiCompressShader.cpp:88
u32 m_SamplerLocation
Definition FFLiCompressShader.h:43
void SetUniformUR(const FFLiCompressUniform *pUniform) const
Definition FFLiCompressShader.cpp:149
Definition FFLiCompressUniform.h:11
Definition FFLiUtilShader.h:11
Definition FFLiUtilShader.h:14