Move the now-renamed fragment shader generator to GPU/Common.

This commit is contained in:
Henrik Rydgård committed 2020-10-31 19:03:14 +01:00
1 parent dd00672d88
commit 0b1b36921e
23 files changed
+57 -74

No files matched your search

+2 -2
View File
@@ -1235,8 +1235,6 @@ set(GPU_GLES
GPU/GLES/DepthBufferGLES.cpp
GPU/GLES/GPU_GLES.cpp
GPU/GLES/GPU_GLES.h
GPU/GLES/FragmentShaderGeneratorGLES.cpp
GPU/GLES/FragmentShaderGeneratorGLES.h
GPU/GLES/FragmentTestCacheGLES.cpp
GPU/GLES/FragmentTestCacheGLES.h
GPU/GLES/FramebufferManagerGLES.cpp
@@ -1340,6 +1338,8 @@ set(GPU_SOURCES
${GPU_NEON}
GPU/Common/DepalettizeShaderCommon.cpp
GPU/Common/DepalettizeShaderCommon.h
GPU/Common/FragmentShaderGenerator.cpp
GPU/Common/FragmentShaderGenerator.h
GPU/Common/FramebufferManagerCommon.cpp
GPU/Common/FramebufferManagerCommon.h
GPU/Common/GPUDebugInterface.cpp
@@ -26,9 +26,7 @@
#include "GPU/Common/GPUStateUtils.h"
#include "GPU/Common/ShaderId.h"
#include "GPU/Common/ShaderUniforms.h"
#include "GPU/GLES/FragmentShaderGeneratorGLES.h"
#include "GPU/GLES/FramebufferManagerGLES.h"
#include "GPU/GLES/ShaderManagerGLES.h"
#include "GPU/Common/FragmentShaderGenerator.h"
#include "GPU/ge_constants.h"
#include "GPU/GPUState.h"
@@ -65,7 +63,7 @@ const char *hlsl_d3d9_preamble_fs =
"#define DISCARD_BELOW(x) clip(x)\n";
bool GenerateFragmentShaderGLSL(const FShaderID &id, char *buffer, const GLSLShaderCompat &compat, uint64_t *uniformMask, std::string *errorString) {
bool GenerateFragmentShader(const FShaderID &id, char *buffer, const ShaderLanguageDesc &compat, uint64_t *uniformMask, std::string *errorString) {
*uniformMask = 0;
errorString->clear();
@@ -23,7 +23,6 @@ struct FShaderID;
// D3D9 constants
#define CONST_PS_TEXENV 0
#define CONST_PS_ALPHACOLORREF 1
#define CONST_PS_ALPHACOLORMASK 2
@@ -38,5 +37,4 @@ struct FShaderID;
// For stencil upload
#define CONST_PS_STENCILVALUE 10
bool GenerateFragmentShaderGLSL(const FShaderID &id, char *buffer, const GLSLShaderCompat &compat, uint64_t *uniformMask, std::string *errorString);
bool GenerateFragmentShader(const FShaderID &id, char *buffer, const ShaderLanguageDesc &compat, uint64_t *uniformMask, std::string *errorString);
+1 -1
View File
@@ -101,7 +101,7 @@ void init_resources(TBuiltInResource &Resources) {
Resources.limits.generalConstantMatrixVectorIndexing = 1;
}
GLSLShaderCompat::GLSLShaderCompat(ShaderLanguage lang) {
ShaderLanguageDesc::ShaderLanguageDesc(ShaderLanguage lang) {
shaderLanguage = lang;
switch (lang) {
case GLSL_140:
+2 -2
View File
@@ -142,8 +142,8 @@ enum DoLightComputation {
LIGHT_FULL,
};
struct GLSLShaderCompat {
explicit GLSLShaderCompat(ShaderLanguage lang);
struct ShaderLanguageDesc {
explicit ShaderLanguageDesc(ShaderLanguage lang);
int glslVersionNumber = 0;
ShaderLanguage shaderLanguage;
+1 -1
View File
@@ -222,7 +222,7 @@ void ShaderManagerD3D11::GetShaders(int prim, u32 vertType, D3D11VertexShader **
// Fragment shader not in cache. Let's compile it.
std::string genErrorString;
uint64_t uniformMask;
GenerateFragmentShaderGLSL(FSID, codeBuffer_, compat_, &uniformMask, &genErrorString);
GenerateFragmentShader(FSID, codeBuffer_, compat_, &uniformMask, &genErrorString);
fs = new D3D11FragmentShader(device_, featureLevel_, FSID, codeBuffer_, useHWTransform);
fsCache_[FSID] = fs;
} else {
+2 -2
View File
@@ -25,7 +25,7 @@
#include "GPU/Common/ShaderCommon.h"
#include "GPU/Common/ShaderId.h"
#include "GPU/Common/ShaderUniforms.h"
#include "GPU/GLES/FragmentShaderGeneratorGLES.h"
#include "GPU/Common/FragmentShaderGenerator.h"
class D3D11Context;
class D3D11PushBuffer;
@@ -110,7 +110,7 @@ private:
ID3D11Device *device_;
ID3D11DeviceContext *context_;
D3D_FEATURE_LEVEL featureLevel_;
GLSLShaderCompat compat_;
ShaderLanguageDesc compat_;
typedef std::map<FShaderID, D3D11FragmentShader *> FSCache;
FSCache fsCache_;
+2 -2
View File
@@ -41,7 +41,7 @@
#include "GPU/GPUState.h"
#include "GPU/ge_constants.h"
#include "GPU/Common/ShaderUniforms.h"
#include "GPU/GLES/FragmentShaderGeneratorGLES.h"
#include "GPU/Common/FragmentShaderGenerator.h"
#include "GPU/Directx9/ShaderManagerDX9.h"
#include "GPU/Directx9/DrawEngineDX9.h"
#include "GPU/Directx9/FramebufferManagerDX9.h"
@@ -629,7 +629,7 @@ VSShader *ShaderManagerDX9::ApplyShader(bool useHWTransform, bool useHWTessellat
// Fragment shader not in cache. Let's compile it.
std::string errorString;
uint64_t uniformMask;
bool success = GenerateFragmentShaderGLSL(FSID, codeBuffer_, compat_, &uniformMask, &errorString);
bool success = GenerateFragmentShader(FSID, codeBuffer_, compat_, &uniformMask, &errorString);
// We're supposed to handle all possible cases.
_assert_(success);
fs = new PSShader(device_, FSID, codeBuffer_);
+2 -2
View File
@@ -22,7 +22,7 @@
#include "Common/Common.h"
#include "GPU/Directx9/VertexShaderGeneratorHLSL.h"
#include "GPU/GLES/FragmentShaderGeneratorGLES.h"
#include "GPU/Common/FragmentShaderGenerator.h"
#include "GPU/Common/ShaderCommon.h"
#include "GPU/Common/ShaderId.h"
#include "Common/Math/lin/matrix4x4.h"
@@ -112,7 +112,7 @@ private:
void Clear();
LPDIRECT3DDEVICE9 device_;
GLSLShaderCompat compat_;
ShaderLanguageDesc compat_;
FShaderID lastFSID_;
VShaderID lastVSID_;
+1 -1
View File
@@ -27,7 +27,7 @@
#include "GPU/Common/VertexDecoderCommon.h"
#include "GPU/Common/DrawEngineCommon.h"
#include "GPU/Common/GPUStateUtils.h"
#include "GPU/GLES/FragmentShaderGeneratorGLES.h"
#include "GPU/Common/FragmentShaderGenerator.h"
class LinkedShader;
class ShaderManagerGLES;
+2 -2
View File
@@ -584,7 +584,7 @@ ShaderManagerGLES::~ShaderManagerGLES() {
}
void ShaderManagerGLES::DetectShaderLanguage() {
GLSLShaderCompat &compat = compat_;
ShaderLanguageDesc &compat = compat_;
compat.gles = gl_extensions.IsGLES;
@@ -708,7 +708,7 @@ void ShaderManagerGLES::DirtyLastShader() {
Shader *ShaderManagerGLES::CompileFragmentShader(FShaderID FSID) {
uint64_t uniformMask;
std::string errorString;
if (!GenerateFragmentShaderGLSL(FSID, codeBuffer_, compat_, &uniformMask, &errorString)) {
if (!GenerateFragmentShader(FSID, codeBuffer_, compat_, &uniformMask, &errorString)) {
ERROR_LOG(G3D, "Shader gen error: %s", errorString.c_str());
return nullptr;
}
+2 -2
View File
@@ -24,7 +24,7 @@
#include "GPU/Common/ShaderCommon.h"
#include "GPU/Common/ShaderId.h"
#include "GPU/GLES/VertexShaderGeneratorGLES.h"
#include "GPU/GLES/FragmentShaderGeneratorGLES.h"
#include "GPU/Common/FragmentShaderGenerator.h"
class Shader;
@@ -196,7 +196,7 @@ private:
typedef std::vector<LinkedShaderCacheEntry> LinkedShaderCache;
GLRenderManager *render_;
GLSLShaderCompat compat_;
ShaderLanguageDesc compat_;
LinkedShaderCache linkedShaderCache_;
bool lastVShaderSame_;
+1 -1
View File
@@ -35,7 +35,7 @@
#include "GPU/GLES/ShaderManagerGLES.h"
#include "GPU/GLES/TextureCacheGLES.h"
#include "GPU/GLES/FramebufferManagerGLES.h"
#include "GPU/GLES/FragmentShaderGeneratorGLES.h"
#include "GPU/Common/FragmentShaderGenerator.h"
static const GLushort glBlendFactorLookup[(size_t)BlendFactor::COUNT] = {
GL_ZERO,
+1 -1
View File
@@ -33,7 +33,7 @@
#include "GPU/GPUState.h"
#include "GPU/GLES/TextureCacheGLES.h"
#include "GPU/GLES/FramebufferManagerGLES.h"
#include "GPU/GLES/FragmentShaderGeneratorGLES.h"
#include "GPU/Common/FragmentShaderGenerator.h"
#include "GPU/GLES/DepalettizeShaderGLES.h"
#include "GPU/GLES/ShaderManagerGLES.h"
#include "GPU/GLES/DrawEngineGLES.h"
+1 -1
View File
@@ -105,7 +105,7 @@ const char *vulkan_glsl_preamble_vs =
"#extension GL_ARB_shading_language_420pack : enable\n"
"#define splat3(x) vec3(x)\n\n";
bool GenerateVertexShaderGLSL(const VShaderID &id, char *buffer, const GLSLShaderCompat &compat, uint32_t *attrMask, uint64_t *uniformMask, std::string *errorString) {
bool GenerateVertexShaderGLSL(const VShaderID &id, char *buffer, const ShaderLanguageDesc &compat, uint32_t *attrMask, uint64_t *uniformMask, std::string *errorString) {
*attrMask = 0;
*uniformMask = 0;
+1 -1
View File
@@ -21,4 +21,4 @@
struct VShaderID;
bool GenerateVertexShaderGLSL(const VShaderID &id, char *buffer, const GLSLShaderCompat &compat, uint32_t *attrMask, uint64_t *uniformMask, std::string *errorString);
bool GenerateVertexShaderGLSL(const VShaderID &id, char *buffer, const ShaderLanguageDesc &compat, uint32_t *attrMask, uint64_t *uniformMask, std::string *errorString);
+2 -12
View File
@@ -340,6 +340,7 @@
<ClInclude Include="..\ext\xbrz\xbrz.h" />
<ClInclude Include="Common\DepalettizeShaderCommon.h" />
<ClInclude Include="Common\DrawEngineCommon.h" />
<ClInclude Include="Common\FragmentShaderGenerator.h" />
<ClInclude Include="Common\FramebufferManagerCommon.h" />
<ClInclude Include="Common\GPUDebugInterface.h" />
<ClInclude Include="Common\GPUStateUtils.h" />
@@ -398,12 +399,6 @@
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</ExcludedFromBuild>
</ClInclude>
<ClInclude Include="GLES\FragmentShaderGeneratorGLES.h">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</ExcludedFromBuild>
</ClInclude>
<ClInclude Include="GLES\FragmentTestCacheGLES.h">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</ExcludedFromBuild>
@@ -488,6 +483,7 @@
<ClCompile Include="..\ext\xbrz\xbrz.cpp" />
<ClCompile Include="Common\DepalettizeShaderCommon.cpp" />
<ClCompile Include="Common\DrawEngineCommon.cpp" />
<ClCompile Include="Common\FragmentShaderGenerator.cpp" />
<ClCompile Include="Common\FramebufferManagerCommon.cpp" />
<ClCompile Include="Common\GPUDebugInterface.cpp" />
<ClCompile Include="Common\GPUStateUtils.cpp" />
@@ -580,12 +576,6 @@
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="GLES\FragmentShaderGeneratorGLES.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="GLES\FragmentTestCacheGLES.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</ExcludedFromBuild>
+6 -6
View File
@@ -186,9 +186,6 @@
<ClInclude Include="GLES\TextureScalerGLES.h">
<Filter>GLES</Filter>
</ClInclude>
<ClInclude Include="GLES\FragmentShaderGeneratorGLES.h">
<Filter>GLES</Filter>
</ClInclude>
<ClInclude Include="GLES\DepalettizeShaderGLES.h">
<Filter>GLES</Filter>
</ClInclude>
@@ -273,6 +270,9 @@
<ClInclude Include="Directx9\VertexShaderGeneratorHLSL.h">
<Filter>DirectX9</Filter>
</ClInclude>
<ClInclude Include="Common\FragmentShaderGenerator.h">
<Filter>Common</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="Math3D.cpp">
@@ -443,9 +443,6 @@
<ClCompile Include="GLES\StencilBufferGLES.cpp">
<Filter>GLES</Filter>
</ClCompile>
<ClCompile Include="GLES\FragmentShaderGeneratorGLES.cpp">
<Filter>GLES</Filter>
</ClCompile>
<ClCompile Include="GLES\DepalettizeShaderGLES.cpp">
<Filter>GLES</Filter>
</ClCompile>
@@ -545,5 +542,8 @@
<ClCompile Include="Directx9\VertexShaderGeneratorHLSL.cpp">
<Filter>DirectX9</Filter>
</ClCompile>
<ClCompile Include="Common\FragmentShaderGenerator.cpp">
<Filter>Common</Filter>
</ClCompile>
</ItemGroup>
</Project>
+3 -3
View File
@@ -39,7 +39,7 @@
#include "GPU/Vulkan/ShaderManagerVulkan.h"
#include "GPU/Vulkan/DrawEngineVulkan.h"
#include "GPU/Vulkan/FramebufferManagerVulkan.h"
#include "GPU/GLES/FragmentShaderGeneratorGLES.h"
#include "GPU/Common/FragmentShaderGenerator.h"
#include "GPU/GLES/VertexShaderGeneratorGLES.h"
VulkanFragmentShader::VulkanFragmentShader(VulkanContext *vulkan, FShaderID id, const char *code)
@@ -278,7 +278,7 @@ void ShaderManagerVulkan::GetShaders(int prim, u32 vertType, VulkanVertexShader
// Fragment shader not in cache. Let's compile it.
std::string genErrorString;
uint64_t uniformMask = 0; // Not used
bool success = GenerateFragmentShaderGLSL(FSID, codeBuffer_, compat_, &uniformMask, &genErrorString);
bool success = GenerateFragmentShader(FSID, codeBuffer_, compat_, &uniformMask, &genErrorString);
_assert_(success);
fs = new VulkanFragmentShader(vulkan_, FSID, codeBuffer_);
fsCache_.Insert(FSID, fs);
@@ -414,7 +414,7 @@ bool ShaderManagerVulkan::LoadCache(FILE *f) {
}
std::string genErrorString;
uint64_t uniformMask = 0;
if (!GenerateFragmentShaderGLSL(id, codeBuffer_, compat_, &uniformMask, &genErrorString)) {
if (!GenerateFragmentShader(id, codeBuffer_, compat_, &uniformMask, &genErrorString)) {
return false;
}
VulkanFragmentShader *fs = new VulkanFragmentShader(vulkan_, id, codeBuffer_);
+2 -2
View File
@@ -25,7 +25,7 @@
#include "GPU/Common/ShaderCommon.h"
#include "GPU/Common/ShaderId.h"
#include "GPU/GLES/VertexShaderGeneratorGLES.h"
#include "GPU/GLES/FragmentShaderGeneratorGLES.h"
#include "GPU/Common/FragmentShaderGenerator.h"
#include "GPU/Vulkan/VulkanUtil.h"
#include "Common/Math/lin/matrix4x4.h"
#include "GPU/Common/ShaderUniforms.h"
@@ -131,7 +131,7 @@ private:
void Clear();
VulkanContext *vulkan_;
GLSLShaderCompat compat_;
ShaderLanguageDesc compat_;
typedef DenseHashMap<FShaderID, VulkanFragmentShader *, nullptr> FSCache;
FSCache fsCache_;
+1 -1
View File
@@ -306,6 +306,7 @@ EXEC_AND_LIB_FILES := \
$(SRC)/GPU/GeConstants.cpp \
$(SRC)/GPU/GeDisasm.cpp \
$(SRC)/GPU/Common/DepalettizeShaderCommon.cpp \
$(SRC)/GPU/Common/FragmentShaderGenerator.cpp \
$(SRC)/GPU/Common/FramebufferManagerCommon.cpp \
$(SRC)/GPU/Common/PresentationCommon.cpp \
$(SRC)/GPU/Common/GPUDebugInterface.cpp \
@@ -340,7 +341,6 @@ EXEC_AND_LIB_FILES := \
$(SRC)/GPU/GLES/StateMappingGLES.cpp.arm \
$(SRC)/GPU/GLES/ShaderManagerGLES.cpp.arm \
$(SRC)/GPU/GLES/VertexShaderGeneratorGLES.cpp.arm \
$(SRC)/GPU/GLES/FragmentShaderGeneratorGLES.cpp.arm \
$(SRC)/GPU/GLES/FragmentTestCacheGLES.cpp.arm \
$(SRC)/GPU/GLES/TextureScalerGLES.cpp \
$(SRC)/GPU/Null/NullGpu.cpp \
+1 -1
View File
@@ -248,6 +248,7 @@ SOURCES_CXX += \
$(GPUDIR)/Debugger/Playback.cpp \
$(GPUDIR)/Debugger/Record.cpp \
$(GPUDIR)/Debugger/Stepping.cpp \
$(GPUDIR)/Common/FragmentShaderGenerator.cpp \
$(GPUDIR)/Common/TextureCacheCommon.cpp \
$(GPUDIR)/Common/TextureScalerCommon.cpp \
$(GPUDIR)/Common/SoftwareTransformCommon.cpp \
@@ -271,7 +272,6 @@ SOURCES_CXX += \
$(GPUDIR)/GLES/VertexShaderGeneratorGLES.cpp \
$(GPUDIR)/GLES/DrawEngineGLES.cpp \
$(GPUDIR)/GLES/GPU_GLES.cpp \
$(GPUDIR)/GLES/FragmentShaderGeneratorGLES.cpp \
$(GPUDIR)/GLES/FragmentTestCacheGLES.cpp \
$(GPUDIR)/GLES/FramebufferManagerGLES.cpp \
$(GPUDIR)/GLES/TextureCacheGLES.cpp \
+18 -21
View File
@@ -9,7 +9,7 @@
#include "GPU/Vulkan/VulkanContext.h"
#include "GPU/GLES/FragmentShaderGeneratorGLES.h"
#include "GPU/Common/FragmentShaderGenerator.h"
#include "GPU/Directx9/VertexShaderGeneratorHLSL.h"
#include "GPU/GLES/VertexShaderGeneratorGLES.h"
@@ -25,30 +25,28 @@ bool GenerateFShader(FShaderID id, char *buffer, ShaderLanguage lang, std::strin
switch (lang) {
case ShaderLanguage::GLSL_VULKAN:
{
GLSLShaderCompat compat(ShaderLanguage::GLSL_VULKAN);
return GenerateFragmentShaderGLSL(id, buffer, compat, &uniformMask, errorString);
ShaderLanguageDesc compat(ShaderLanguage::GLSL_VULKAN);
return GenerateFragmentShader(id, buffer, compat, &uniformMask, errorString);
}
case ShaderLanguage::GLSL_140:
{
GLSLShaderCompat compat(ShaderLanguage::GLSL_140);
return GenerateFragmentShaderGLSL(id, buffer, compat, &uniformMask, errorString);
ShaderLanguageDesc compat(ShaderLanguage::GLSL_140);
return GenerateFragmentShader(id, buffer, compat, &uniformMask, errorString);
}
case ShaderLanguage::GLSL_300:
{
GLSLShaderCompat compat(ShaderLanguage::GLSL_140);
return GenerateFragmentShaderGLSL(id, buffer, compat, &uniformMask, errorString);
ShaderLanguageDesc compat(ShaderLanguage::GLSL_140);
return GenerateFragmentShader(id, buffer, compat, &uniformMask, errorString);
}
case ShaderLanguage::HLSL_D3D9:
{
GLSLShaderCompat compat(ShaderLanguage::HLSL_D3D9);
return GenerateFragmentShaderGLSL(id, buffer, compat, &uniformMask, errorString);
ShaderLanguageDesc compat(ShaderLanguage::HLSL_D3D9);
return GenerateFragmentShader(id, buffer, compat, &uniformMask, errorString);
}
case ShaderLanguage::HLSL_D3D11:
{
GLSLShaderCompat compat(ShaderLanguage::HLSL_D3D11);
return GenerateFragmentShaderGLSL(id, buffer, compat, &uniformMask, errorString);
ShaderLanguageDesc compat(ShaderLanguage::HLSL_D3D11);
return GenerateFragmentShader(id, buffer, compat, &uniformMask, errorString);
}
default:
return false;
@@ -61,29 +59,28 @@ bool GenerateVShader(VShaderID id, char *buffer, ShaderLanguage lang, std::strin
switch (lang) {
case ShaderLanguage::GLSL_VULKAN:
{
GLSLShaderCompat compat(ShaderLanguage::GLSL_VULKAN);
ShaderLanguageDesc compat(ShaderLanguage::GLSL_VULKAN);
return GenerateVertexShaderGLSL(id, buffer, compat, &attrMask, &uniformMask, errorString);
}
case ShaderLanguage::GLSL_140:
{
GLSLShaderCompat compat(ShaderLanguage::GLSL_140);
ShaderLanguageDesc compat(ShaderLanguage::GLSL_140);
return GenerateVertexShaderGLSL(id, buffer, compat, &attrMask, &uniformMask, errorString);
}
case ShaderLanguage::GLSL_300:
{
GLSLShaderCompat compat(ShaderLanguage::GLSL_140);
ShaderLanguageDesc compat(ShaderLanguage::GLSL_140);
return GenerateVertexShaderGLSL(id, buffer, compat, &attrMask, &uniformMask, errorString);
}
case ShaderLanguage::HLSL_D3D9:
{
GLSLShaderCompat compat(ShaderLanguage::HLSL_D3D9);
return GenerateVertexShaderGLSL(id, buffer, compat, &attrMask, &uniformMask, errorString);
//ShaderLanguageDesc compat(ShaderLanguage::HLSL_D3D9);
return GenerateVertexShaderHLSL(id, buffer, ShaderLanguage::HLSL_D3D9, errorString);
}
case ShaderLanguage::HLSL_D3D11:
{
GLSLShaderCompat compat(ShaderLanguage::HLSL_D3D11);
return GenerateVertexShaderGLSL(id, buffer, compat, &attrMask, &uniformMask, errorString);
//ShaderLanguageDesc compat(ShaderLanguage::HLSL_D3D11);
return GenerateVertexShaderHLSL(id, buffer, ShaderLanguage::HLSL_D3D11, errorString);
}
default:
return false;