mirror of
https://github.com/cemu-project/Cemu.git
synced 2026-04-26 13:05:34 -06:00
Revert "Remove LatteDraw header and deprecated shader compilation code"
This reverts commit 657d9f6f431c34ff905436c11817b76e97107a00. Revert "C++-ify GL default shader code" This reverts commit 81a6f92f8d43fdcc344346111fc1ccdf8a534d5d.
This commit is contained in:
parent
2e87847eeb
commit
eb48b871d8
@ -108,7 +108,8 @@ add_library(CemuCafe
|
||||
HW/Latte/Core/LatteConst.h
|
||||
HW/Latte/Core/LatteDefaultShaders.cpp
|
||||
HW/Latte/Core/LatteDefaultShaders.h
|
||||
HW/Latte/Core/LatteGSCopyShaderParser.cpp
|
||||
HW/Latte/Core/LatteDraw.h
|
||||
HW/Latte/Core/LatteGSCopyShaderParser.cpp
|
||||
HW/Latte/Core/Latte.h
|
||||
HW/Latte/Core/LatteIndices.cpp
|
||||
HW/Latte/Core/LatteIndices.h
|
||||
|
||||
@ -3,6 +3,7 @@
|
||||
#include "Cafe/HW/Latte/ISA/RegDefines.h"
|
||||
#include "Cafe/OS/libs/gx2/GX2.h"
|
||||
#include "Cafe/HW/Latte/Core/Latte.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDraw.h"
|
||||
#include "Cafe/HW/Latte/LegacyShaderDecompiler/LatteDecompiler.h"
|
||||
#include "Cafe/HW/Latte/LegacyShaderDecompiler/LatteDecompilerInstructions.h"
|
||||
#include "Cafe/HW/Latte/Core/FetchShader.h"
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
#include "Cafe/HW/Latte/ISA/RegDefines.h"
|
||||
#include "Cafe/HW/Latte/Renderer/Renderer.h"
|
||||
#include "Cafe/HW/Latte/Core/Latte.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDraw.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteShader.h"
|
||||
#include "Cafe/HW/Latte/LegacyShaderDecompiler/LatteDecompiler.h"
|
||||
#include "Cafe/HW/Latte/Core/FetchShader.h"
|
||||
|
||||
@ -4,6 +4,7 @@
|
||||
#include "Cafe/OS/libs/gx2/GX2_Event.h" // for notification callbacks
|
||||
#include "Cafe/HW/Latte/Renderer/Renderer.h"
|
||||
#include "Cafe/HW/Latte/Core/Latte.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDraw.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteShader.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteAsyncCommands.h"
|
||||
#include "Cafe/HW/Latte/Core/LattePerformanceMonitor.h"
|
||||
|
||||
@ -1,38 +1,54 @@
|
||||
#include "Cafe/HW/Latte/Core/Latte.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDraw.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteShader.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDefaultShaders.h"
|
||||
#include "Cafe/HW/Latte/Renderer/Renderer.h"
|
||||
#include "Cafe/HW/Latte/Renderer/OpenGL/RendererShaderGL.h"
|
||||
#include "util/helpers/StringBuf.h"
|
||||
|
||||
LatteDefaultShader_t* _copyShader_depthToColor;
|
||||
LatteDefaultShader_t* _copyShader_colorToDepth;
|
||||
|
||||
void LatteDefaultShader_pixelCopyShader_generateVSBody(StringBuf* vs)
|
||||
{
|
||||
vs->add("#version 420\r\n");
|
||||
vs->add("out vec2 passUV;\r\n");
|
||||
vs->add("uniform vec4 uf_vertexOffsets[4];\r\n");
|
||||
vs->add("\r\n");
|
||||
vs->add("void main(){\r\n");
|
||||
vs->add("int vID = gl_VertexID;\r\n");
|
||||
vs->add("passUV = uf_vertexOffsets[vID].zw;\r\n");
|
||||
vs->add("gl_Position = vec4(uf_vertexOffsets[vID].xy, 0.0, 1.0);\r\n");
|
||||
vs->add("}\r\n");
|
||||
}
|
||||
|
||||
GLuint gxShaderDepr_compileRaw(StringBuf* strSourceVS, StringBuf* strSourceFS);
|
||||
GLuint gxShaderDepr_compileRaw(const std::string& vertex_source, const std::string& fragment_source);
|
||||
|
||||
LatteDefaultShader_t* LatteDefaultShader_getPixelCopyShader_depthToColor()
|
||||
{
|
||||
if (_copyShader_depthToColor != 0)
|
||||
return _copyShader_depthToColor;
|
||||
catchOpenGLError();
|
||||
LatteDefaultShader_t* defaultShader = new LatteDefaultShader_t{};
|
||||
LatteDefaultShader_t* defaultShader = (LatteDefaultShader_t*)malloc(sizeof(LatteDefaultShader_t));
|
||||
memset(defaultShader, 0, sizeof(LatteDefaultShader_t));
|
||||
|
||||
std::string defaultFragmentShader =
|
||||
R"glsl(#version 420
|
||||
in vec2 passUV;
|
||||
uniform sampler2D textureSrc;
|
||||
layout(location = 0) out vec4 colorOut0;
|
||||
StringBuf fCStr_vertexShader(1024 * 16);
|
||||
LatteDefaultShader_pixelCopyShader_generateVSBody(&fCStr_vertexShader);
|
||||
|
||||
void main(){
|
||||
colorOut0 = vec4(texture(textureSrc, passUV).r,0.0,0.0,1.0);
|
||||
}
|
||||
)glsl";
|
||||
StringBuf fCStr_defaultFragShader(1024 * 16);
|
||||
fCStr_defaultFragShader.add("#version 420\r\n");
|
||||
fCStr_defaultFragShader.add("in vec2 passUV;\r\n");
|
||||
fCStr_defaultFragShader.add("uniform sampler2D textureSrc;\r\n");
|
||||
fCStr_defaultFragShader.add("layout(location = 0) out vec4 colorOut0;\r\n");
|
||||
fCStr_defaultFragShader.add("\r\n");
|
||||
fCStr_defaultFragShader.add("void main(){\r\n");
|
||||
fCStr_defaultFragShader.add("colorOut0 = vec4(texture(textureSrc, passUV).r,0.0,0.0,1.0);\r\n");
|
||||
fCStr_defaultFragShader.add("}\r\n");
|
||||
|
||||
RendererShaderGL* fragShader = static_cast<RendererShaderGL*>(g_renderer->shader_create(RendererShader::ShaderType::kFragment, 0, 0, std::move(defaultFragmentShader), false, false));
|
||||
fragShader->PreponeCompilation();
|
||||
|
||||
defaultShader->glProgamId = fragShader->GetProgram();
|
||||
defaultShader->glProgamId = gxShaderDepr_compileRaw(&fCStr_vertexShader, &fCStr_defaultFragShader);
|
||||
catchOpenGLError();
|
||||
|
||||
defaultShader->copyShaderUniforms.uniformLoc_textureSrc = fragShader->GetUniformLocation("textureSrc");
|
||||
defaultShader->copyShaderUniforms.uniformLoc_vertexOffsets = fragShader->GetUniformLocation("uf_vertexOffsets");
|
||||
defaultShader->copyShaderUniforms.uniformLoc_textureSrc = glGetUniformLocation(defaultShader->glProgamId, "textureSrc");
|
||||
defaultShader->copyShaderUniforms.uniformLoc_vertexOffsets = glGetUniformLocation(defaultShader->glProgamId, "uf_vertexOffsets");
|
||||
|
||||
_copyShader_depthToColor = defaultShader;
|
||||
catchOpenGLError();
|
||||
@ -44,23 +60,26 @@ LatteDefaultShader_t* LatteDefaultShader_getPixelCopyShader_colorToDepth()
|
||||
if (_copyShader_colorToDepth != 0)
|
||||
return _copyShader_colorToDepth;
|
||||
catchOpenGLError();
|
||||
LatteDefaultShader_t* defaultShader = new LatteDefaultShader_t{};
|
||||
LatteDefaultShader_t* defaultShader = (LatteDefaultShader_t*)malloc(sizeof(LatteDefaultShader_t));
|
||||
memset(defaultShader, 0, sizeof(LatteDefaultShader_t));
|
||||
|
||||
std::string defaultFragShader = R"glsl(#version 420
|
||||
in vec2 passUV;
|
||||
uniform sampler2D textureSrc;
|
||||
layout(location = 0) out vec4 colorOut0;
|
||||
StringBuf fCStr_vertexShader(1024 * 16);
|
||||
LatteDefaultShader_pixelCopyShader_generateVSBody(&fCStr_vertexShader);
|
||||
|
||||
void main() {
|
||||
gl_FragDepth = texture(textureSrc, passUV).r;
|
||||
}
|
||||
)glsl";
|
||||
StringBuf fCStr_defaultFragShader(1024 * 16);
|
||||
fCStr_defaultFragShader.add("#version 420\r\n");
|
||||
fCStr_defaultFragShader.add("in vec2 passUV;\r\n");
|
||||
fCStr_defaultFragShader.add("uniform sampler2D textureSrc;\r\n");
|
||||
fCStr_defaultFragShader.add("layout(location = 0) out vec4 colorOut0;\r\n");
|
||||
fCStr_defaultFragShader.add("\r\n");
|
||||
fCStr_defaultFragShader.add("void main(){\r\n");
|
||||
fCStr_defaultFragShader.add("gl_FragDepth = texture(textureSrc, passUV).r;\r\n");
|
||||
fCStr_defaultFragShader.add("}\r\n");
|
||||
|
||||
RendererShaderGL* fragShader = static_cast<RendererShaderGL*>(g_renderer->shader_create(RendererShader::ShaderType::kFragment, 0, 0, std::move(defaultFragShader), false, false));
|
||||
fragShader->PreponeCompilation();
|
||||
defaultShader->glProgamId = fragShader->GetProgram();
|
||||
defaultShader->copyShaderUniforms.uniformLoc_textureSrc = fragShader->GetUniformLocation("textureSrc");
|
||||
defaultShader->copyShaderUniforms.uniformLoc_vertexOffsets = fragShader->GetUniformLocation("uf_vertexOffsets");
|
||||
|
||||
defaultShader->glProgamId = gxShaderDepr_compileRaw(&fCStr_vertexShader, &fCStr_defaultFragShader);
|
||||
defaultShader->copyShaderUniforms.uniformLoc_textureSrc = glGetUniformLocation(defaultShader->glProgamId, "textureSrc");
|
||||
defaultShader->copyShaderUniforms.uniformLoc_vertexOffsets = glGetUniformLocation(defaultShader->glProgamId, "uf_vertexOffsets");
|
||||
|
||||
_copyShader_colorToDepth = defaultShader;
|
||||
catchOpenGLError();
|
||||
|
||||
@ -1,5 +1,4 @@
|
||||
|
||||
#include "Common/GLInclude/GLInclude.h"
|
||||
typedef struct
|
||||
{
|
||||
GLuint glProgamId;
|
||||
|
||||
4
src/Cafe/HW/Latte/Core/LatteDraw.h
Normal file
4
src/Cafe/HW/Latte/Core/LatteDraw.h
Normal file
@ -0,0 +1,4 @@
|
||||
#pragma once
|
||||
#include "Common/GLInclude/GLInclude.h"
|
||||
|
||||
void LatteDraw_cleanupAfterFrame();
|
||||
@ -1,5 +1,6 @@
|
||||
#include "Cafe/HW/Latte/ISA/RegDefines.h"
|
||||
#include "Cafe/HW/Latte/Core/Latte.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDraw.h"
|
||||
|
||||
#include "Cafe/HW/Latte/Core/LatteQueryObject.h"
|
||||
#include "Cafe/HW/Latte/Renderer/Renderer.h"
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
#include "Cafe/HW/Latte/ISA/RegDefines.h"
|
||||
|
||||
#include "Cafe/HW/Latte/Core/Latte.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDraw.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteShader.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteOverlay.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteBufferCache.h"
|
||||
@ -680,7 +681,6 @@ void LatteRenderTarget_trackUpdates()
|
||||
}
|
||||
}
|
||||
|
||||
void LatteDraw_cleanupAfterFrame();
|
||||
void LatteRenderTarget_itHLESwapScanBuffer()
|
||||
{
|
||||
performanceMonitor.cycle[performanceMonitor.cycleIndex].frameCounter++;
|
||||
|
||||
@ -1,9 +1,28 @@
|
||||
#include "Common/GLInclude/GLInclude.h"
|
||||
#include "Cafe/HW/Latte/Core/Latte.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDraw.h"
|
||||
#include "Cafe/HW/Latte/LegacyShaderDecompiler/LatteDecompiler.h"
|
||||
#include "Cafe/HW/Latte/Renderer/OpenGL/OpenGLRenderer.h"
|
||||
#include "Cafe/HW/Latte/Renderer/OpenGL/RendererShaderGL.h"
|
||||
#include "util/helpers/StringBuf.h"
|
||||
|
||||
bool gxShader_checkIfSuccessfullyLinked(GLuint glProgram)
|
||||
{
|
||||
int status = -1;
|
||||
glGetProgramiv(glProgram, GL_LINK_STATUS, &status);
|
||||
if( status == GL_TRUE )
|
||||
return true;
|
||||
// in debug mode, get and print shader error log
|
||||
char infoLog[48*1024];
|
||||
uint32 infoLogLength, tempLength;
|
||||
glGetProgramiv(glProgram, GL_INFO_LOG_LENGTH, (GLint *)&infoLogLength);
|
||||
tempLength = sizeof(infoLog)-1;
|
||||
glGetProgramInfoLog(glProgram, std::min(tempLength, infoLogLength), (GLsizei*)&tempLength, (GLcharARB*)infoLog);
|
||||
infoLog[tempLength] = '\0';
|
||||
cemuLog_log(LogType::Force, "Link error in raw shader");
|
||||
cemuLog_log(LogType::Force, infoLog);
|
||||
return false;
|
||||
}
|
||||
|
||||
void LatteShader_prepareSeparableUniforms(LatteDecompilerShader* shader)
|
||||
{
|
||||
@ -47,3 +66,103 @@ void LatteShader_prepareSeparableUniforms(LatteDecompilerShader* shader)
|
||||
}
|
||||
}
|
||||
}
|
||||
GLuint gpu7ShaderGLDepr_compileShader(const std::string& source, uint32_t type)
|
||||
{
|
||||
cemu_assert(type == GL_VERTEX_SHADER || type == GL_FRAGMENT_SHADER);
|
||||
const GLuint shader_object = glCreateShader(type);
|
||||
|
||||
const char *c_str = source.c_str();
|
||||
const GLint size = (GLint)source.size();
|
||||
glShaderSource(shader_object, 1, &c_str, &size);
|
||||
glCompileShader(shader_object);
|
||||
|
||||
GLint log_length;
|
||||
glGetShaderiv(shader_object, GL_INFO_LOG_LENGTH, &log_length);
|
||||
if (log_length > 0)
|
||||
{
|
||||
char log[2048]{};
|
||||
GLsizei log_size;
|
||||
glGetShaderInfoLog(shader_object, std::min(log_length, (GLint)sizeof(log) - 1), &log_size, log);
|
||||
cemuLog_log(LogType::Force, "Error/Warning in vertex shader:");
|
||||
cemuLog_log(LogType::Force, log);
|
||||
}
|
||||
|
||||
return shader_object;
|
||||
}
|
||||
GLuint gpu7ShaderGLDepr_compileVertexShader(const std::string& source)
|
||||
{
|
||||
return gpu7ShaderGLDepr_compileShader(source, GL_VERTEX_SHADER);
|
||||
}
|
||||
|
||||
GLuint gpu7ShaderGLDepr_compileFragmentShader(const std::string& source)
|
||||
{
|
||||
return gpu7ShaderGLDepr_compileShader(source, GL_FRAGMENT_SHADER);
|
||||
}
|
||||
|
||||
GLuint gpu7ShaderGLDepr_compileVertexShader(const char* shaderSource, sint32 shaderSourceLength)
|
||||
{
|
||||
uint32 shaderObject = glCreateShader(GL_VERTEX_SHADER);
|
||||
GLchar* srcPtr = (GLchar*)shaderSource;
|
||||
GLint srcLen = shaderSourceLength;
|
||||
glShaderSource(shaderObject, 1, &srcPtr, &srcLen);
|
||||
glCompileShader(shaderObject);
|
||||
uint32 shaderLogLengthInfo, shaderLogLen;
|
||||
glGetShaderiv(shaderObject, GL_INFO_LOG_LENGTH, (GLint *)&shaderLogLengthInfo);
|
||||
if (shaderLogLengthInfo > 0)
|
||||
{
|
||||
char messageLog[2048]{};
|
||||
glGetShaderInfoLog(shaderObject, std::min<uint32>(shaderLogLengthInfo, sizeof(messageLog) - 1), (GLsizei*)&shaderLogLen, (GLcharARB*)messageLog);
|
||||
cemuLog_log(LogType::Force, "Error/Warning in vertex shader:");
|
||||
cemuLog_log(LogType::Force, messageLog);
|
||||
}
|
||||
return shaderObject;
|
||||
}
|
||||
|
||||
GLuint gpu7ShaderGLDepr_compileFragmentShader(const char* shaderSource, sint32 shaderSourceLength)
|
||||
{
|
||||
uint32 shaderObject = glCreateShader(GL_FRAGMENT_SHADER);
|
||||
GLchar* srcPtr = (GLchar*)shaderSource;
|
||||
GLint srcLen = shaderSourceLength;
|
||||
glShaderSource(shaderObject, 1, &srcPtr, &srcLen);
|
||||
glCompileShader(shaderObject);
|
||||
uint32 shaderLogLengthInfo, shaderLogLen;
|
||||
char messageLog[2048];
|
||||
glGetShaderiv(shaderObject, GL_INFO_LOG_LENGTH, (GLint *)&shaderLogLengthInfo);
|
||||
if (shaderLogLengthInfo > 0)
|
||||
{
|
||||
memset(messageLog, 0, sizeof(messageLog));
|
||||
glGetShaderInfoLog(shaderObject, std::min<uint32>(shaderLogLengthInfo, sizeof(messageLog) - 1), (GLsizei*)&shaderLogLen, (GLcharARB*)messageLog);
|
||||
cemuLog_log(LogType::Force, "Error/Warning in fragment shader:");
|
||||
cemuLog_log(LogType::Force, messageLog);
|
||||
}
|
||||
return shaderObject;
|
||||
}
|
||||
|
||||
GLuint gxShaderDepr_compileRaw(StringBuf* strSourceVS, StringBuf* strSourceFS)
|
||||
{
|
||||
GLuint glShaderProgram = glCreateProgram();
|
||||
GLuint vertexShader = gpu7ShaderGLDepr_compileVertexShader(strSourceVS->c_str(), strSourceVS->getLen());
|
||||
glAttachShader(glShaderProgram, vertexShader);
|
||||
GLuint fragmentShader = gpu7ShaderGLDepr_compileFragmentShader(strSourceFS->c_str(), strSourceFS->getLen());
|
||||
glAttachShader(glShaderProgram, fragmentShader);
|
||||
glLinkProgram(glShaderProgram);
|
||||
if( gxShader_checkIfSuccessfullyLinked(glShaderProgram) == false )
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
return glShaderProgram;
|
||||
}
|
||||
|
||||
GLuint gxShaderDepr_compileRaw(const std::string& vertex_source, const std::string& fragment_source)
|
||||
{
|
||||
const GLuint programm = glCreateProgram();
|
||||
|
||||
auto vertex_shader = std::async(std::launch::deferred, gpu7ShaderGLDepr_compileShader, vertex_source, GL_VERTEX_SHADER);
|
||||
auto fragment_shader = std::async(std::launch::deferred, gpu7ShaderGLDepr_compileShader, fragment_source, GL_FRAGMENT_SHADER);
|
||||
|
||||
glAttachShader(programm, vertex_shader.get());
|
||||
glAttachShader(programm, fragment_shader.get());
|
||||
|
||||
glLinkProgram(programm);
|
||||
return gxShader_checkIfSuccessfullyLinked(programm) ? programm : 0;
|
||||
}
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
#include "Cafe/HW/Latte/Core/LatteConst.h"
|
||||
#include "Cafe/HW/Latte/ISA/RegDefines.h"
|
||||
#include "Cafe/HW/Latte/Core/Latte.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDraw.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteShader.h"
|
||||
#include "Cafe/GameProfile/GameProfile.h"
|
||||
#include "Cafe/HW/Latte/LegacyShaderDecompiler/LatteDecompiler.h"
|
||||
|
||||
@ -1,4 +1,5 @@
|
||||
#include "Cafe/HW/Latte/Core/Latte.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDraw.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteShader.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDefaultShaders.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteTexture.h"
|
||||
|
||||
@ -1,4 +1,5 @@
|
||||
#include "Cafe/HW/Latte/Core/Latte.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDraw.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteTexture.h"
|
||||
#include "Cafe/HW/Latte/Renderer/Renderer.h"
|
||||
#include "Common/cpu_features.h"
|
||||
|
||||
@ -1,4 +1,5 @@
|
||||
#include "Cafe/HW/Latte/Core/Latte.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDraw.h"
|
||||
#include "Cafe/HW/Latte/Core/LattePerformanceMonitor.h"
|
||||
|
||||
#include "Common/GLInclude/GLInclude.h"
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
#include "Cafe/HW/Latte/ISA/RegDefines.h"
|
||||
#include "Cafe/OS/libs/gx2/GX2.h" // todo - remove dependency
|
||||
#include "Cafe/HW/Latte/Core/Latte.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDraw.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteShader.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteAsyncCommands.h"
|
||||
#include "Cafe/GameProfile/GameProfile.h"
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
#include "Cafe/HW/Latte/Core/LatteShaderAssembly.h"
|
||||
#include "Cafe/HW/Latte/ISA/RegDefines.h"
|
||||
#include "Cafe/HW/Latte/Core/Latte.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDraw.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteShader.h"
|
||||
#include "Cafe/HW/Latte/LegacyShaderDecompiler/LatteDecompiler.h"
|
||||
#include "Cafe/HW/Latte/LegacyShaderDecompiler/LatteDecompilerInternal.h"
|
||||
|
||||
@ -3,6 +3,7 @@
|
||||
#include "Cafe/HW/Latte/ISA/RegDefines.h"
|
||||
#include "Cafe/OS/libs/gx2/GX2.h" // todo - remove dependency
|
||||
#include "Cafe/HW/Latte/Core/Latte.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDraw.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteShader.h"
|
||||
#include "Cafe/HW/Latte/LegacyShaderDecompiler/LatteDecompiler.h"
|
||||
#include "Cafe/HW/Latte/LegacyShaderDecompiler/LatteDecompilerInternal.h"
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
#include "Cafe/HW/Latte/Core/LatteShaderAssembly.h"
|
||||
#include "Cafe/HW/Latte/ISA/RegDefines.h"
|
||||
#include "Cafe/HW/Latte/Core/Latte.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDraw.h"
|
||||
#include "Cafe/HW/Latte/LegacyShaderDecompiler/LatteDecompiler.h"
|
||||
#include "Cafe/HW/Latte/Core/FetchShader.h"
|
||||
#include "Cafe/HW/Latte/Renderer/Renderer.h"
|
||||
|
||||
@ -3,6 +3,7 @@
|
||||
#include "Cafe/HW/Latte/ISA/RegDefines.h"
|
||||
#include "Cafe/OS/libs/gx2/GX2.h" // todo - remove dependency
|
||||
#include "Cafe/HW/Latte/Core/Latte.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDraw.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteShader.h"
|
||||
#include "Cafe/HW/Latte/LegacyShaderDecompiler/LatteDecompiler.h"
|
||||
#include "Cafe/HW/Latte/LegacyShaderDecompiler/LatteDecompilerInternal.h"
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
#include "Cafe/HW/Latte/Core/LatteShaderAssembly.h"
|
||||
#include "Cafe/HW/Latte/ISA/RegDefines.h"
|
||||
#include "Cafe/HW/Latte/Core/Latte.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDraw.h"
|
||||
#include "Cafe/HW/Latte/LegacyShaderDecompiler/LatteDecompiler.h"
|
||||
#include "Cafe/HW/Latte/Core/FetchShader.h"
|
||||
#include "Cafe/HW/Latte/Renderer/Renderer.h"
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
#include "WindowSystem.h"
|
||||
|
||||
#include "Cafe/HW/Latte/Core/LatteRingBuffer.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDraw.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteOverlay.h"
|
||||
|
||||
#include "Cafe/HW/Latte/Renderer/OpenGL/LatteTextureGL.h"
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
#include "Common/GLInclude/GLInclude.h"
|
||||
|
||||
#include "Cafe/HW/Latte/Core/LatteRingBuffer.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDraw.h"
|
||||
#include "Cafe/HW/Latte/Core/LattePerformanceMonitor.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteShader.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteSoftware.h"
|
||||
|
||||
@ -6,6 +6,7 @@
|
||||
#include "Cafe/HW/Latte/Renderer/OpenGL/LatteTextureViewGL.h"
|
||||
#include "Cafe/HW/Latte/Core/LattePerformanceMonitor.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteShader.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDraw.h"
|
||||
|
||||
#include "Cafe/HW/Latte/Core/LatteDefaultShaders.h"
|
||||
|
||||
|
||||
@ -1,4 +1,5 @@
|
||||
#include "Cafe/HW/Latte/Core/Latte.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDraw.h"
|
||||
#include "Cafe/OS/common/OSCommon.h"
|
||||
#include "Cafe/HW/Latte/Core/LattePM4.h"
|
||||
#include "Cafe/OS/libs/coreinit/coreinit.h"
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
#include "Cafe/HW/Latte/ISA/RegDefines.h"
|
||||
#include "GX2.h"
|
||||
#include "Cafe/HW/Latte/Core/Latte.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDraw.h"
|
||||
|
||||
#include "Cafe/HW/Latte/Core/LattePM4.h"
|
||||
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
#include "Cafe/HW/Latte/ISA/RegDefines.h"
|
||||
#include "GX2.h"
|
||||
#include "Cafe/HW/Latte/Core/Latte.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDraw.h"
|
||||
#include "Cafe/HW/Latte/ISA/LatteReg.h"
|
||||
#include "Cafe/HW/Latte/Core/LattePM4.h"
|
||||
|
||||
|
||||
@ -3,6 +3,7 @@
|
||||
#include "GX2.h"
|
||||
#include "GX2_Resource.h"
|
||||
#include "Cafe/HW/Latte/Core/Latte.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDraw.h"
|
||||
|
||||
// default GX2 allocator (not the same as the GX2R allocator, but GX2R uses this allocator by default)
|
||||
MPTR gx2Mem_defaultAlloc = MPTR_NULL;
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
#include "Cafe/OS/common/OSCommon.h"
|
||||
#include "GX2.h"
|
||||
#include "Cafe/HW/Latte/Core/Latte.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDraw.h"
|
||||
|
||||
#include "Cafe/HW/Latte/LatteAddrLib/LatteAddrLib.h"
|
||||
|
||||
|
||||
@ -3,6 +3,7 @@
|
||||
#include "GX2_Surface.h"
|
||||
#include "GX2_Resource.h"
|
||||
#include "Cafe/HW/Latte/Core/Latte.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDraw.h"
|
||||
#include "Cafe/HW/Latte/Core/LattePM4.h"
|
||||
#include "Cafe/HW/Latte/LatteAddrLib/LatteAddrLib.h"
|
||||
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
#include "Cafe/HW/Latte/ISA/RegDefines.h"
|
||||
#include "Cafe/HW/Latte/Core/LattePM4.h"
|
||||
#include "Cafe/HW/Latte/Core/Latte.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDraw.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteAsyncCommands.h"
|
||||
#include "Cafe/HW/Latte/LatteAddrLib/LatteAddrLib.h"
|
||||
#include "util/highresolutiontimer/HighResolutionTimer.h"
|
||||
|
||||
@ -4,6 +4,7 @@
|
||||
#include "GX2_Texture.h"
|
||||
|
||||
#include "Cafe/HW/Latte/Core/Latte.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDraw.h"
|
||||
#include "Cafe/HW/Latte/Core/LattePM4.h"
|
||||
#include "Cafe/HW/Latte/ISA/LatteReg.h"
|
||||
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
#include "Cafe/OS/common/OSCommon.h"
|
||||
#include "Cafe/HW/Latte/ISA/RegDefines.h"
|
||||
#include "Cafe/HW/Latte/Core/Latte.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDraw.h"
|
||||
#include "Cafe/HW/Latte/ISA/LatteReg.h"
|
||||
#include "Cafe/HW/Latte/Core/LattePM4.h"
|
||||
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
#include "Cafe/HW/Latte/ISA/RegDefines.h"
|
||||
#include "Cafe/OS/libs/gx2/GX2.h"
|
||||
#include "Cafe/HW/Latte/Core/Latte.h"
|
||||
#include "Cafe/HW/Latte/Core/LatteDraw.h"
|
||||
|
||||
#include "Cafe/HW/Latte/Renderer/Renderer.h"
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user