diff --git a/Makefile.common b/Makefile.common index d240c8f1a31..bca64b067eb 100644 --- a/Makefile.common +++ b/Makefile.common @@ -513,6 +513,9 @@ endif ifdef ENABLE_HPL1 DIST_FILES_SHADERS+=$(wildcard $(srcdir)/engines/hpl1/engine/impl/shaders/*) endif +ifdef ENABLE_FREESCAPE +DIST_FILES_SHADERS+=$(wildcard $(srcdir)/engines/freescape/shaders/*) +endif endif .PHONY: all clean distclean plugins dist-src clean-toplevel manual diff --git a/devtools/create_project/xcode.cpp b/devtools/create_project/xcode.cpp index 82a99370d1f..63cf09da57e 100644 --- a/devtools/create_project/xcode.cpp +++ b/devtools/create_project/xcode.cpp @@ -1105,6 +1105,12 @@ XcodeProvider::ValueList& XcodeProvider::getResourceFiles(const BuildSetup &setu files.push_back("engines/wintermute/base/gfx/opengl/shaders/wme_sprite.fragment"); files.push_back("engines/wintermute/base/gfx/opengl/shaders/wme_sprite.vertex"); } + if (CONTAINS_DEFINE(setup.defines, "ENABLE_FREESCAPE")) { + files.push_back("engines/freescape/shaders/freescape_bitmap.fragment"); + files.push_back("engines/freescape/shaders/freescape_bitmap.vertex"); + files.push_back("engines/freescape/shaders/freescape_triangle.fragment"); + files.push_back("engines/freescape/shaders/freescape_triange.vertex"); + } files.push_back("icons/scummvm.icns"); files.push_back("AUTHORS"); files.push_back("COPYING"); diff --git a/dists/scummvm.rc b/dists/scummvm.rc index 9f3f801d0fe..047a37e990d 100644 --- a/dists/scummvm.rc +++ b/dists/scummvm.rc @@ -273,6 +273,12 @@ shaders/hpl1_refract_special.fragment FILE "engines/hpl1/engi shaders/hpl1_refract_water.fragment FILE "engines/hpl1/engine/impl/shaders/hpl1_refract_water.fragment" shaders/hpl1_refract_water.vertex FILE "engines/hpl1/engine/impl/shaders/hpl1_refract_water.vertex" #endif +#if PLUGIN_ENABLED_STATIC(FREESCAPE) +shaders/freescape_bitmap.fragment FILE "engines/freescape/shaders/freescape_bitmap.fragment" +shaders/freescape_bitmap.vertex FILE "engines/freescape/shaders/freescape_bitmap.vertex" +shaders/freescape_triangle.fragment FILE "engines/freescape/shaders/freescape_cube.fragment" +shaders/freescape_triangle.vertex FILE "engines/freescape/shaders/freescape_cube.vertex" +#endif #endif #endif diff --git a/engines/freescape/gfx_opengl_shaders.cpp b/engines/freescape/gfx_opengl_shaders.cpp index a30c22935db..b6799bbfcfa 100644 --- a/engines/freescape/gfx_opengl_shaders.cpp +++ b/engines/freescape/gfx_opengl_shaders.cpp @@ -75,13 +75,13 @@ void OpenGLShaderRenderer::init() { _verts = (Vertex *)malloc(sizeof(Vertex) * kVertexArraySize); static const char *triangleAttributes[] = { "position", nullptr }; - _triangleShader = OpenGL::Shader::fromFiles("triangle", triangleAttributes); + _triangleShader = OpenGL::Shader::fromFiles("freescape_triangle", triangleAttributes); _triangleVBO = OpenGL::Shader::createBuffer(GL_ARRAY_BUFFER, sizeof(Vertex) * kVertexArraySize, _verts, GL_DYNAMIC_DRAW); // TODO: Check if 3 * sizeof(float) == sizeof(Vertex) _triangleShader->enableVertexAttribute("position", _triangleVBO, 3, GL_FLOAT, GL_FALSE, 3 * sizeof(float), 0); static const char *bitmapAttributes[] = { "position", "texcoord", nullptr }; - _bitmapShader = OpenGL::Shader::fromFiles("bitmap", bitmapAttributes); + _bitmapShader = OpenGL::Shader::fromFiles("freescape_bitmap", bitmapAttributes); _bitmapVBO = OpenGL::Shader::createBuffer(GL_ARRAY_BUFFER, sizeof(bitmapVertices), bitmapVertices); _bitmapShader->enableVertexAttribute("position", _bitmapVBO, 2, GL_FLOAT, GL_TRUE, 2 * sizeof(float), 0); _bitmapShader->enableVertexAttribute("texcoord", _bitmapVBO, 2, GL_FLOAT, GL_TRUE, 2 * sizeof(float), 0); diff --git a/engines/freescape/shaders/bitmap.fragment b/engines/freescape/shaders/freescape_bitmap.fragment similarity index 100% rename from engines/freescape/shaders/bitmap.fragment rename to engines/freescape/shaders/freescape_bitmap.fragment diff --git a/engines/freescape/shaders/bitmap.vertex b/engines/freescape/shaders/freescape_bitmap.vertex similarity index 100% rename from engines/freescape/shaders/bitmap.vertex rename to engines/freescape/shaders/freescape_bitmap.vertex diff --git a/engines/freescape/shaders/triangle.fragment b/engines/freescape/shaders/freescape_triangle.fragment similarity index 100% rename from engines/freescape/shaders/triangle.fragment rename to engines/freescape/shaders/freescape_triangle.fragment diff --git a/engines/freescape/shaders/triangle.vertex b/engines/freescape/shaders/freescape_triangle.vertex similarity index 100% rename from engines/freescape/shaders/triangle.vertex rename to engines/freescape/shaders/freescape_triangle.vertex