diff --git a/cmake/macros/AutoScribeShader.cmake b/cmake/macros/AutoScribeShader.cmake index 1919ecf00a..d25e0e553f 100755 --- a/cmake/macros/AutoScribeShader.cmake +++ b/cmake/macros/AutoScribeShader.cmake @@ -39,11 +39,11 @@ function(AUTOSCRIBE_SHADER SHADER_FILE) get_filename_component(SHADER_TARGET ${SHADER_FILE} NAME_WE) get_filename_component(SHADER_EXT ${SHADER_FILE} EXT) if(SHADER_EXT STREQUAL .slv) - set(SHADER_TARGET ${SHADER_TARGET}_vert.h) + set(SHADER_TARGET ${SHADER_TARGET}_vert.cpp) elseif(${SHADER_EXT} STREQUAL .slf) - set(SHADER_TARGET ${SHADER_TARGET}_frag.h) + set(SHADER_TARGET ${SHADER_TARGET}_frag.cpp) elseif(${SHADER_EXT} STREQUAL .slg) - set(SHADER_TARGET ${SHADER_TARGET}_geom.h) + set(SHADER_TARGET ${SHADER_TARGET}_geom.cpp) endif() set(SHADER_TARGET "${SHADERS_DIR}/${SHADER_TARGET}") @@ -134,6 +134,6 @@ macro(AUTOSCRIBE_SHADER_LIB) list(APPEND AUTOSCRIBE_SHADER_LIB_SRC ${AUTOSCRIBE_SHADER_SRC}) # Link library shaders, if they exist - include_directories("${SHADERS_DIR}") + #include_directories("${SHADERS_DIR}") endmacro() diff --git a/libraries/display-plugins/src/display-plugins/hmd/HmdDisplayPlugin.cpp b/libraries/display-plugins/src/display-plugins/hmd/HmdDisplayPlugin.cpp index 1d7fee38eb..4f50b5ecd9 100644 --- a/libraries/display-plugins/src/display-plugins/hmd/HmdDisplayPlugin.cpp +++ b/libraries/display-plugins/src/display-plugins/hmd/HmdDisplayPlugin.cpp @@ -33,8 +33,8 @@ #include "../Logging.h" #include "../CompositorHelper.h" -#include "render-utils/hmd_ui_vert.h" -#include "render-utils/hmd_ui_frag.h" +INCLUDE_SHADER(hmd_ui_vert) +INCLUDE_SHADER(hmd_ui_frag) static const QString MONO_PREVIEW = "Mono Preview"; static const QString DISABLE_PREVIEW = "Disable Preview"; diff --git a/libraries/entities-renderer/src/RenderableParticleEffectEntityItem.cpp b/libraries/entities-renderer/src/RenderableParticleEffectEntityItem.cpp index a3e6cd4341..b8f979b7fd 100644 --- a/libraries/entities-renderer/src/RenderableParticleEffectEntityItem.cpp +++ b/libraries/entities-renderer/src/RenderableParticleEffectEntityItem.cpp @@ -14,8 +14,8 @@ #include -#include "textured_particle_vert.h" -#include "textured_particle_frag.h" +INCLUDE_SHADER(textured_particle_vert) +INCLUDE_SHADER(textured_particle_frag) using namespace render; using namespace render::entities; diff --git a/libraries/entities-renderer/src/RenderablePolyLineEntityItem.cpp b/libraries/entities-renderer/src/RenderablePolyLineEntityItem.cpp index b362721cde..b85771f5b6 100644 --- a/libraries/entities-renderer/src/RenderablePolyLineEntityItem.cpp +++ b/libraries/entities-renderer/src/RenderablePolyLineEntityItem.cpp @@ -23,11 +23,11 @@ # include #endif -#include "paintStroke_vert.h" -#include "paintStroke_frag.h" +INCLUDE_SHADER(paintStroke_vert) +INCLUDE_SHADER(paintStroke_frag) -#include "paintStroke_fade_vert.h" -#include "paintStroke_fade_frag.h" +INCLUDE_SHADER(paintStroke_fade_vert) +INCLUDE_SHADER(paintStroke_fade_frag) using namespace render; using namespace render::entities; diff --git a/libraries/entities-renderer/src/RenderablePolyVoxEntityItem.cpp b/libraries/entities-renderer/src/RenderablePolyVoxEntityItem.cpp index ad0202457e..b245ed7cda 100644 --- a/libraries/entities-renderer/src/RenderablePolyVoxEntityItem.cpp +++ b/libraries/entities-renderer/src/RenderablePolyVoxEntityItem.cpp @@ -27,10 +27,11 @@ #include #include "EntityTreeRenderer.h" -#include "polyvox_vert.h" -#include "polyvox_frag.h" -#include "polyvox_fade_vert.h" -#include "polyvox_fade_frag.h" + +INCLUDE_SHADER(polyvox_vert) +INCLUDE_SHADER(polyvox_frag) +INCLUDE_SHADER(polyvox_fade_vert) +INCLUDE_SHADER(polyvox_fade_frag) #ifdef POLYVOX_ENTITY_USE_FADE_EFFECT # include @@ -70,10 +71,11 @@ #include "StencilMaskPass.h" #include "EntityTreeRenderer.h" -#include "polyvox_vert.h" -#include "polyvox_frag.h" -#include "polyvox_fade_vert.h" -#include "polyvox_fade_frag.h" + +INCLUDE_SHADER(polyvox_vert) +INCLUDE_SHADER(polyvox_frag) +INCLUDE_SHADER(polyvox_fade_vert) +INCLUDE_SHADER(polyvox_fade_frag) #include "RenderablePolyVoxEntityItem.h" #include "EntityEditPacketSender.h" diff --git a/libraries/entities-renderer/src/RenderableShapeEntityItem.cpp b/libraries/entities-renderer/src/RenderableShapeEntityItem.cpp index cdee2c5ec9..cd02186440 100644 --- a/libraries/entities-renderer/src/RenderableShapeEntityItem.cpp +++ b/libraries/entities-renderer/src/RenderableShapeEntityItem.cpp @@ -16,8 +16,8 @@ #include #include -#include -#include +INCLUDE_SHADER(simple_vert) +INCLUDE_SHADER(simple_frag) //#define SHAPE_ENTITY_USE_FADE_EFFECT #ifdef SHAPE_ENTITY_USE_FADE_EFFECT diff --git a/libraries/gpu/src/gpu/Shader.h b/libraries/gpu/src/gpu/Shader.h index 181c9b5e78..5cfdbc8bf4 100755 --- a/libraries/gpu/src/gpu/Shader.h +++ b/libraries/gpu/src/gpu/Shader.h @@ -17,6 +17,8 @@ #include #include + +#define INCLUDE_SHADER(source) extern const char source[]; namespace gpu { diff --git a/libraries/gpu/src/gpu/StandardShaderLib.cpp b/libraries/gpu/src/gpu/StandardShaderLib.cpp index 0d8d131e0b..93c2228de6 100755 --- a/libraries/gpu/src/gpu/StandardShaderLib.cpp +++ b/libraries/gpu/src/gpu/StandardShaderLib.cpp @@ -12,21 +12,21 @@ // #include "StandardShaderLib.h" -#include "DrawUnitQuadTexcoord_vert.h" -#include "DrawTransformUnitQuad_vert.h" -#include "DrawTexcoordRectTransformUnitQuad_vert.h" -#include "DrawViewportQuadTransformTexcoord_vert.h" -#include "DrawVertexPosition_vert.h" -#include "DrawTransformVertexPosition_vert.h" +INCLUDE_SHADER(DrawUnitQuadTexcoord_vert) +INCLUDE_SHADER(DrawTransformUnitQuad_vert) +INCLUDE_SHADER(DrawTexcoordRectTransformUnitQuad_vert) +INCLUDE_SHADER(DrawViewportQuadTransformTexcoord_vert) +INCLUDE_SHADER(DrawVertexPosition_vert) +INCLUDE_SHADER(DrawTransformVertexPosition_vert) const char DrawNada_frag[] = "void main(void) {}"; // DrawNada is really simple... -#include "DrawWhite_frag.h" -#include "DrawColor_frag.h" -#include "DrawTexture_frag.h" -#include "DrawTextureMirroredX_frag.h" -#include "DrawTextureOpaque_frag.h" -#include "DrawColoredTexture_frag.h" +INCLUDE_SHADER(DrawWhite_frag) +INCLUDE_SHADER(DrawColor_frag) +INCLUDE_SHADER(DrawTexture_frag) +INCLUDE_SHADER(DrawTextureMirroredX_frag) +INCLUDE_SHADER(DrawTextureOpaque_frag) +INCLUDE_SHADER(DrawColoredTexture_frag) using namespace gpu; diff --git a/libraries/model/src/model/Skybox.cpp b/libraries/model/src/model/Skybox.cpp index fd3061afa5..7e03890c85 100755 --- a/libraries/model/src/model/Skybox.cpp +++ b/libraries/model/src/model/Skybox.cpp @@ -15,8 +15,8 @@ #include #include -#include "skybox_vert.h" -#include "skybox_frag.h" +INCLUDE_SHADER(skybox_vert) +INCLUDE_SHADER(skybox_frag) using namespace model; diff --git a/libraries/procedural/src/procedural/Procedural.cpp b/libraries/procedural/src/procedural/Procedural.cpp index 7b718515a8..c0ebdbb186 100644 --- a/libraries/procedural/src/procedural/Procedural.cpp +++ b/libraries/procedural/src/procedural/Procedural.cpp @@ -20,7 +20,7 @@ #include #include -#include "ProceduralCommon_frag.h" +INCLUDE_SHADER(ProceduralCommon_frag) #include "Logging.h" diff --git a/libraries/procedural/src/procedural/ProceduralSkybox.cpp b/libraries/procedural/src/procedural/ProceduralSkybox.cpp index 9544759037..452d3f639a 100644 --- a/libraries/procedural/src/procedural/ProceduralSkybox.cpp +++ b/libraries/procedural/src/procedural/ProceduralSkybox.cpp @@ -15,8 +15,8 @@ #include #include -#include -#include +INCLUDE_SHADER(skybox_vert) +INCLUDE_SHADER(skybox_frag) ProceduralSkybox::ProceduralSkybox() : model::Skybox() { _procedural._vertexSource = skybox_vert; diff --git a/libraries/render-utils/src/AmbientOcclusionEffect.cpp b/libraries/render-utils/src/AmbientOcclusionEffect.cpp index 83753131c8..f5b4f0f6bb 100644 --- a/libraries/render-utils/src/AmbientOcclusionEffect.cpp +++ b/libraries/render-utils/src/AmbientOcclusionEffect.cpp @@ -28,11 +28,11 @@ #include "DependencyManager.h" #include "ViewFrustum.h" -#include "ssao_makePyramid_frag.h" -#include "ssao_makeOcclusion_frag.h" -#include "ssao_debugOcclusion_frag.h" -#include "ssao_makeHorizontalBlur_frag.h" -#include "ssao_makeVerticalBlur_frag.h" +INCLUDE_SHADER(ssao_makePyramid_frag) +INCLUDE_SHADER(ssao_makeOcclusion_frag) +INCLUDE_SHADER(ssao_debugOcclusion_frag) +INCLUDE_SHADER(ssao_makeHorizontalBlur_frag) +INCLUDE_SHADER(ssao_makeVerticalBlur_frag) AmbientOcclusionFramebuffer::AmbientOcclusionFramebuffer() { diff --git a/libraries/render-utils/src/AnimDebugDraw.cpp b/libraries/render-utils/src/AnimDebugDraw.cpp index c22e99cbbc..53ed3ea9a0 100644 --- a/libraries/render-utils/src/AnimDebugDraw.cpp +++ b/libraries/render-utils/src/AnimDebugDraw.cpp @@ -9,8 +9,6 @@ #include -#include "animdebugdraw_vert.h" -#include "animdebugdraw_frag.h" #include #include "AbstractViewStateInterface.h" #include "RenderUtilsLogging.h" @@ -19,6 +17,9 @@ #include "AnimDebugDraw.h" +INCLUDE_SHADER(animdebugdraw_vert) +INCLUDE_SHADER(animdebugdraw_frag) + class AnimDebugDrawData { public: diff --git a/libraries/render-utils/src/AntialiasingEffect.cpp b/libraries/render-utils/src/AntialiasingEffect.cpp index 70c2e3b5ce..078e906fad 100644 --- a/libraries/render-utils/src/AntialiasingEffect.cpp +++ b/libraries/render-utils/src/AntialiasingEffect.cpp @@ -23,9 +23,9 @@ #include "ViewFrustum.h" #include "GeometryCache.h" -#include "fxaa_vert.h" -#include "fxaa_frag.h" -#include "fxaa_blend_frag.h" +INCLUDE_SHADER(fxaa_vert) +INCLUDE_SHADER(fxaa_frag) +INCLUDE_SHADER(fxaa_blend_frag) Antialiasing::Antialiasing() { diff --git a/libraries/render-utils/src/BloomEffect.cpp b/libraries/render-utils/src/BloomEffect.cpp index 9d9367a6d5..ace347f99e 100644 --- a/libraries/render-utils/src/BloomEffect.cpp +++ b/libraries/render-utils/src/BloomEffect.cpp @@ -16,8 +16,8 @@ #include #include -#include "BloomThreshold_frag.h" -#include "BloomApply_frag.h" +INCLUDE_SHADER(BloomThreshold_frag) +INCLUDE_SHADER(BloomApply_frag) #define BLOOM_BLUR_LEVEL_COUNT 3 diff --git a/libraries/render-utils/src/DebugDeferredBuffer.cpp b/libraries/render-utils/src/DebugDeferredBuffer.cpp index fe03ead4e1..05cd6a6f0e 100644 --- a/libraries/render-utils/src/DebugDeferredBuffer.cpp +++ b/libraries/render-utils/src/DebugDeferredBuffer.cpp @@ -23,8 +23,8 @@ #include "TextureCache.h" #include "DeferredLightingEffect.h" -#include "debug_deferred_buffer_vert.h" -#include "debug_deferred_buffer_frag.h" +INCLUDE_SHADER(debug_deferred_buffer_vert) +INCLUDE_SHADER(debug_deferred_buffer_frag) using namespace render; diff --git a/libraries/render-utils/src/DeferredLightingEffect.cpp b/libraries/render-utils/src/DeferredLightingEffect.cpp index 81a33f17e3..8ec2c74353 100644 --- a/libraries/render-utils/src/DeferredLightingEffect.cpp +++ b/libraries/render-utils/src/DeferredLightingEffect.cpp @@ -24,18 +24,18 @@ #include "TextureCache.h" #include "FramebufferCache.h" -#include "deferred_light_vert.h" -#include "deferred_light_point_vert.h" -#include "deferred_light_spot_vert.h" +INCLUDE_SHADER(deferred_light_vert) +INCLUDE_SHADER(deferred_light_point_vert) +INCLUDE_SHADER(deferred_light_spot_vert) -#include "directional_ambient_light_frag.h" -#include "directional_skybox_light_frag.h" +INCLUDE_SHADER(directional_ambient_light_frag) +INCLUDE_SHADER(directional_skybox_light_frag) -#include "directional_ambient_light_shadow_frag.h" -#include "directional_skybox_light_shadow_frag.h" +INCLUDE_SHADER(directional_ambient_light_shadow_frag) +INCLUDE_SHADER(directional_skybox_light_shadow_frag) -#include "local_lights_shading_frag.h" -#include "local_lights_drawOutline_frag.h" +INCLUDE_SHADER(local_lights_shading_frag) +INCLUDE_SHADER(local_lights_drawOutline_frag) using namespace render; diff --git a/libraries/render-utils/src/DrawHaze.cpp b/libraries/render-utils/src/DrawHaze.cpp index da07f5bd9b..dc1893b347 100644 --- a/libraries/render-utils/src/DrawHaze.cpp +++ b/libraries/render-utils/src/DrawHaze.cpp @@ -19,7 +19,7 @@ #include "HazeStage.h" #include "LightStage.h" -#include "Haze_frag.h" +INCLUDE_SHADER(Haze_frag) void HazeConfig::setHazeColor(const glm::vec3 value) { hazeColor = value; diff --git a/libraries/render-utils/src/GeometryCache.cpp b/libraries/render-utils/src/GeometryCache.cpp index 2616d08600..ac8b300e49 100644 --- a/libraries/render-utils/src/GeometryCache.cpp +++ b/libraries/render-utils/src/GeometryCache.cpp @@ -34,21 +34,21 @@ #include "model/TextureMap.h" #include "render/Args.h" -#include "standardTransformPNTC_vert.h" -#include "standardDrawTexture_frag.h" +INCLUDE_SHADER(standardTransformPNTC_vert) +INCLUDE_SHADER(standardDrawTexture_frag) -#include "simple_vert.h" -#include "simple_textured_frag.h" -#include "simple_textured_unlit_frag.h" -#include "simple_fade_vert.h" -#include "simple_textured_fade_frag.h" -#include "simple_textured_unlit_fade_frag.h" -#include "simple_opaque_web_browser_frag.h" -#include "simple_transparent_web_browser_frag.h" -#include "glowLine_vert.h" -#include "glowLine_frag.h" +INCLUDE_SHADER(simple_vert) +INCLUDE_SHADER(simple_textured_frag) +INCLUDE_SHADER(simple_textured_unlit_frag) +INCLUDE_SHADER(simple_fade_vert) +INCLUDE_SHADER(simple_textured_fade_frag) +INCLUDE_SHADER(simple_textured_unlit_fade_frag) +INCLUDE_SHADER(simple_opaque_web_browser_frag) +INCLUDE_SHADER(simple_transparent_web_browser_frag) +INCLUDE_SHADER(glowLine_vert) +INCLUDE_SHADER(glowLine_frag) -#include "grid_frag.h" +INCLUDE_SHADER(grid_frag) //#define WANT_DEBUG diff --git a/libraries/render-utils/src/HighlightEffect.cpp b/libraries/render-utils/src/HighlightEffect.cpp index fee1f4a568..69feffb055 100644 --- a/libraries/render-utils/src/HighlightEffect.cpp +++ b/libraries/render-utils/src/HighlightEffect.cpp @@ -22,13 +22,13 @@ #include -#include "surfaceGeometry_copyDepth_frag.h" -#include "debug_deferred_buffer_vert.h" -#include "debug_deferred_buffer_frag.h" -#include "Highlight_frag.h" -#include "Highlight_filled_frag.h" -#include "Highlight_aabox_vert.h" -#include "nop_frag.h" +INCLUDE_SHADER(surfaceGeometry_copyDepth_frag) +INCLUDE_SHADER(debug_deferred_buffer_vert) +INCLUDE_SHADER(debug_deferred_buffer_frag) +INCLUDE_SHADER(Highlight_frag) +INCLUDE_SHADER(Highlight_filled_frag) +INCLUDE_SHADER(Highlight_aabox_vert) +INCLUDE_SHADER(nop_frag) using namespace render; @@ -547,10 +547,10 @@ const render::Varying DrawHighlightTask::addSelectItemJobs(JobModel& task, const return task.addJob("TransparentSelection", selectItemInput); } -#include "model_shadow_vert.h" -#include "skin_model_shadow_vert.h" +INCLUDE_SHADER(model_shadow_vert) +INCLUDE_SHADER(skin_model_shadow_vert) -#include "model_shadow_frag.h" +INCLUDE_SHADER(model_shadow_frag) void DrawHighlightTask::initMaskPipelines(render::ShapePlumber& shapePlumber, gpu::StatePointer state) { auto modelVertex = gpu::Shader::createVertex(std::string(model_shadow_vert)); diff --git a/libraries/render-utils/src/LightClusters.cpp b/libraries/render-utils/src/LightClusters.cpp index d6ac7fd2e2..79d755683f 100644 --- a/libraries/render-utils/src/LightClusters.cpp +++ b/libraries/render-utils/src/LightClusters.cpp @@ -18,15 +18,15 @@ #include "StencilMaskPass.h" -#include "lightClusters_drawGrid_vert.h" -#include "lightClusters_drawGrid_frag.h" +INCLUDE_SHADER(lightClusters_drawGrid_vert) +INCLUDE_SHADER(lightClusters_drawGrid_frag) -//#include "lightClusters_drawClusterFromDepth_vert.h" -#include "lightClusters_drawClusterFromDepth_frag.h" +//INCLUDE_SHADER(lightClusters_drawClusterFromDepth_vert) +INCLUDE_SHADER(lightClusters_drawClusterFromDepth_frag) -#include "lightClusters_drawClusterContent_vert.h" -#include "lightClusters_drawClusterContent_frag.h" +INCLUDE_SHADER(lightClusters_drawClusterContent_vert) +INCLUDE_SHADER(lightClusters_drawClusterContent_frag) enum LightClusterGridShader_MapSlot { DEFERRED_BUFFER_LINEAR_DEPTH_UNIT = 0, diff --git a/libraries/render-utils/src/RenderForwardTask.cpp b/libraries/render-utils/src/RenderForwardTask.cpp index c83251c605..8d02281d05 100755 --- a/libraries/render-utils/src/RenderForwardTask.cpp +++ b/libraries/render-utils/src/RenderForwardTask.cpp @@ -24,7 +24,7 @@ #include -#include "nop_frag.h" +INCLUDE_SHADER(nop_frag) using namespace render; extern void initForwardPipelines(ShapePlumber& plumber); diff --git a/libraries/render-utils/src/RenderPipelines.cpp b/libraries/render-utils/src/RenderPipelines.cpp index 7f644add72..62252d3a0b 100644 --- a/libraries/render-utils/src/RenderPipelines.cpp +++ b/libraries/render-utils/src/RenderPipelines.cpp @@ -20,86 +20,86 @@ #include "TextureCache.h" #include "render/DrawTask.h" -#include "model_vert.h" -#include "model_normal_map_vert.h" -#include "model_lightmap_vert.h" -#include "model_lightmap_normal_map_vert.h" -#include "skin_model_vert.h" -#include "skin_model_normal_map_vert.h" +INCLUDE_SHADER(model_vert) +INCLUDE_SHADER(model_normal_map_vert) +INCLUDE_SHADER(model_lightmap_vert) +INCLUDE_SHADER(model_lightmap_normal_map_vert) +INCLUDE_SHADER(skin_model_vert) +INCLUDE_SHADER(skin_model_normal_map_vert) -#include "model_lightmap_fade_vert.h" -#include "model_lightmap_normal_map_fade_vert.h" -#include "skin_model_fade_vert.h" -#include "skin_model_normal_map_fade_vert.h" +INCLUDE_SHADER(model_lightmap_fade_vert) +INCLUDE_SHADER(model_lightmap_normal_map_fade_vert) +INCLUDE_SHADER(skin_model_fade_vert) +INCLUDE_SHADER(skin_model_normal_map_fade_vert) -#include "simple_vert.h" -#include "simple_textured_frag.h" -#include "simple_textured_unlit_frag.h" -#include "simple_transparent_textured_frag.h" -#include "simple_transparent_textured_unlit_frag.h" +INCLUDE_SHADER(simple_vert) +INCLUDE_SHADER(simple_textured_frag) +INCLUDE_SHADER(simple_textured_unlit_frag) +INCLUDE_SHADER(simple_transparent_textured_frag) +INCLUDE_SHADER(simple_transparent_textured_unlit_frag) -#include "simple_fade_vert.h" -#include "simple_textured_fade_frag.h" -#include "simple_textured_unlit_fade_frag.h" -#include "simple_transparent_textured_fade_frag.h" -#include "simple_transparent_textured_unlit_fade_frag.h" +INCLUDE_SHADER(simple_fade_vert) +INCLUDE_SHADER(simple_textured_fade_frag) +INCLUDE_SHADER(simple_textured_unlit_fade_frag) +INCLUDE_SHADER(simple_transparent_textured_fade_frag) +INCLUDE_SHADER(simple_transparent_textured_unlit_fade_frag) -#include "model_frag.h" -#include "model_unlit_frag.h" -#include "model_normal_map_frag.h" -#include "model_normal_specular_map_frag.h" -#include "model_specular_map_frag.h" +INCLUDE_SHADER(model_frag) +INCLUDE_SHADER(model_unlit_frag) +INCLUDE_SHADER(model_normal_map_frag) +INCLUDE_SHADER(model_normal_specular_map_frag) +INCLUDE_SHADER(model_specular_map_frag) -#include "model_fade_vert.h" -#include "model_normal_map_fade_vert.h" +INCLUDE_SHADER(model_fade_vert) +INCLUDE_SHADER(model_normal_map_fade_vert) -#include "model_fade_frag.h" -#include "model_unlit_fade_frag.h" -#include "model_normal_map_fade_frag.h" -#include "model_normal_specular_map_fade_frag.h" -#include "model_specular_map_fade_frag.h" +INCLUDE_SHADER(model_fade_frag) +INCLUDE_SHADER(model_unlit_fade_frag) +INCLUDE_SHADER(model_normal_map_fade_frag) +INCLUDE_SHADER(model_normal_specular_map_fade_frag) +INCLUDE_SHADER(model_specular_map_fade_frag) -#include "forward_model_frag.h" -#include "forward_model_unlit_frag.h" -#include "forward_model_normal_map_frag.h" -#include "forward_model_normal_specular_map_frag.h" -#include "forward_model_specular_map_frag.h" +INCLUDE_SHADER(forward_model_frag) +INCLUDE_SHADER(forward_model_unlit_frag) +INCLUDE_SHADER(forward_model_normal_map_frag) +INCLUDE_SHADER(forward_model_normal_specular_map_frag) +INCLUDE_SHADER(forward_model_specular_map_frag) -#include "model_lightmap_frag.h" -#include "model_lightmap_normal_map_frag.h" -#include "model_lightmap_normal_specular_map_frag.h" -#include "model_lightmap_specular_map_frag.h" -#include "model_translucent_frag.h" -#include "model_translucent_unlit_frag.h" +INCLUDE_SHADER(model_lightmap_frag) +INCLUDE_SHADER(model_lightmap_normal_map_frag) +INCLUDE_SHADER(model_lightmap_normal_specular_map_frag) +INCLUDE_SHADER(model_lightmap_specular_map_frag) +INCLUDE_SHADER(model_translucent_frag) +INCLUDE_SHADER(model_translucent_unlit_frag) -#include "model_lightmap_fade_frag.h" -#include "model_lightmap_normal_map_fade_frag.h" -#include "model_lightmap_normal_specular_map_fade_frag.h" -#include "model_lightmap_specular_map_fade_frag.h" -#include "model_translucent_fade_frag.h" -#include "model_translucent_unlit_fade_frag.h" +INCLUDE_SHADER(model_lightmap_fade_frag) +INCLUDE_SHADER(model_lightmap_normal_map_fade_frag) +INCLUDE_SHADER(model_lightmap_normal_specular_map_fade_frag) +INCLUDE_SHADER(model_lightmap_specular_map_fade_frag) +INCLUDE_SHADER(model_translucent_fade_frag) +INCLUDE_SHADER(model_translucent_unlit_fade_frag) -#include "overlay3D_vert.h" -#include "overlay3D_frag.h" -#include "overlay3D_model_frag.h" -#include "overlay3D_model_translucent_frag.h" -#include "overlay3D_translucent_frag.h" -#include "overlay3D_unlit_frag.h" -#include "overlay3D_translucent_unlit_frag.h" -#include "overlay3D_model_unlit_frag.h" -#include "overlay3D_model_translucent_unlit_frag.h" +INCLUDE_SHADER(overlay3D_vert) +INCLUDE_SHADER(overlay3D_frag) +INCLUDE_SHADER(overlay3D_model_frag) +INCLUDE_SHADER(overlay3D_model_translucent_frag) +INCLUDE_SHADER(overlay3D_translucent_frag) +INCLUDE_SHADER(overlay3D_unlit_frag) +INCLUDE_SHADER(overlay3D_translucent_unlit_frag) +INCLUDE_SHADER(overlay3D_model_unlit_frag) +INCLUDE_SHADER(overlay3D_model_translucent_unlit_frag) -#include "model_shadow_vert.h" -#include "skin_model_shadow_vert.h" +INCLUDE_SHADER(model_shadow_vert) +INCLUDE_SHADER(skin_model_shadow_vert) -#include "model_shadow_frag.h" -#include "skin_model_shadow_frag.h" +INCLUDE_SHADER(model_shadow_frag) +INCLUDE_SHADER(skin_model_shadow_frag) -#include "model_shadow_fade_vert.h" -#include "skin_model_shadow_fade_vert.h" +INCLUDE_SHADER(model_shadow_fade_vert) +INCLUDE_SHADER(skin_model_shadow_fade_vert) -#include "model_shadow_fade_frag.h" -#include "skin_model_shadow_fade_frag.h" +INCLUDE_SHADER(model_shadow_fade_frag) +INCLUDE_SHADER(skin_model_shadow_fade_frag) using namespace render; using namespace std::placeholders; diff --git a/libraries/render-utils/src/StencilMaskPass.cpp b/libraries/render-utils/src/StencilMaskPass.cpp index f71111b64e..e2a8b31f08 100644 --- a/libraries/render-utils/src/StencilMaskPass.cpp +++ b/libraries/render-utils/src/StencilMaskPass.cpp @@ -17,7 +17,7 @@ #include -#include "stencil_drawMask_frag.h" +INCLUDE_SHADER(stencil_drawMask_frag) using namespace render; diff --git a/libraries/render-utils/src/SubsurfaceScattering.cpp b/libraries/render-utils/src/SubsurfaceScattering.cpp index 1786898e57..e8d7e23ec2 100644 --- a/libraries/render-utils/src/SubsurfaceScattering.cpp +++ b/libraries/render-utils/src/SubsurfaceScattering.cpp @@ -17,11 +17,11 @@ #include "DeferredLightingEffect.h" -#include "subsurfaceScattering_makeProfile_frag.h" -#include "subsurfaceScattering_makeLUT_frag.h" -#include "subsurfaceScattering_makeSpecularBeckmann_frag.h" +INCLUDE_SHADER(subsurfaceScattering_makeProfile_frag) +INCLUDE_SHADER(subsurfaceScattering_makeLUT_frag) +INCLUDE_SHADER(subsurfaceScattering_makeSpecularBeckmann_frag) -#include "subsurfaceScattering_drawScattering_frag.h" +INCLUDE_SHADER(subsurfaceScattering_drawScattering_frag) enum ScatteringShaderBufferSlots { ScatteringTask_FrameTransformSlot = 0, diff --git a/libraries/render-utils/src/SurfaceGeometryPass.cpp b/libraries/render-utils/src/SurfaceGeometryPass.cpp index c4eea7ce7f..6ad8dc6137 100644 --- a/libraries/render-utils/src/SurfaceGeometryPass.cpp +++ b/libraries/render-utils/src/SurfaceGeometryPass.cpp @@ -25,10 +25,10 @@ const int SurfaceGeometryPass_ParamsSlot = 1; const int SurfaceGeometryPass_DepthMapSlot = 0; const int SurfaceGeometryPass_NormalMapSlot = 1; -#include "surfaceGeometry_makeLinearDepth_frag.h" -#include "surfaceGeometry_downsampleDepthNormal_frag.h" +INCLUDE_SHADER(surfaceGeometry_makeLinearDepth_frag) +INCLUDE_SHADER(surfaceGeometry_downsampleDepthNormal_frag) -#include "surfaceGeometry_makeCurvature_frag.h" +INCLUDE_SHADER(surfaceGeometry_makeCurvature_frag) diff --git a/libraries/render-utils/src/TextRenderer3D.cpp b/libraries/render-utils/src/TextRenderer3D.cpp index 9c85952107..06e041685a 100644 --- a/libraries/render-utils/src/TextRenderer3D.cpp +++ b/libraries/render-utils/src/TextRenderer3D.cpp @@ -25,8 +25,8 @@ #include "MatrixStack.h" #include "RenderUtilsLogging.h" -#include "sdf_text3D_vert.h" -#include "sdf_text3D_frag.h" +INCLUDE_SHADER(sdf_text3D_vert) +INCLUDE_SHADER(sdf_text3D_frag) #include "GeometryCache.h" diff --git a/libraries/render-utils/src/ToneMappingEffect.cpp b/libraries/render-utils/src/ToneMappingEffect.cpp index 72d692c5b2..3d3a11f7b3 100644 --- a/libraries/render-utils/src/ToneMappingEffect.cpp +++ b/libraries/render-utils/src/ToneMappingEffect.cpp @@ -17,7 +17,7 @@ #include "StencilMaskPass.h" #include "FramebufferCache.h" -#include "toneMapping_frag.h" +INCLUDE_SHADER(toneMapping_frag) const int ToneMappingEffect_ParamsSlot = 0; const int ToneMappingEffect_LightingMapSlot = 0; diff --git a/libraries/render-utils/src/ZoneRenderer.cpp b/libraries/render-utils/src/ZoneRenderer.cpp index c0d01c2eaf..77b5c492d3 100644 --- a/libraries/render-utils/src/ZoneRenderer.cpp +++ b/libraries/render-utils/src/ZoneRenderer.cpp @@ -20,9 +20,9 @@ #include "StencilMaskPass.h" #include "DeferredLightingEffect.h" -#include "zone_drawKeyLight_frag.h" -#include "zone_drawAmbient_frag.h" -#include "zone_drawSkybox_frag.h" +INCLUDE_SHADER(zone_drawKeyLight_frag) +INCLUDE_SHADER(zone_drawAmbient_frag) +INCLUDE_SHADER(zone_drawSkybox_frag) using namespace render; diff --git a/libraries/render-utils/src/text/Font.cpp b/libraries/render-utils/src/text/Font.cpp index 8449c58c7c..9e0fbd1522 100644 --- a/libraries/render-utils/src/text/Font.cpp +++ b/libraries/render-utils/src/text/Font.cpp @@ -7,9 +7,9 @@ #include -#include "sdf_text3D_vert.h" -#include "sdf_text3D_frag.h" -#include "sdf_text3D_transparent_frag.h" +INCLUDE_SHADER(sdf_text3D_vert) +INCLUDE_SHADER(sdf_text3D_frag) +INCLUDE_SHADER(sdf_text3D_transparent_frag) #include "../RenderUtilsLogging.h" #include "FontFamilies.h" diff --git a/libraries/render/src/render/BlurTask.cpp b/libraries/render/src/render/BlurTask.cpp index 2be6f8fad2..4b5d6da8e3 100644 --- a/libraries/render/src/render/BlurTask.cpp +++ b/libraries/render/src/render/BlurTask.cpp @@ -13,11 +13,11 @@ #include #include -#include "blurGaussianV_frag.h" -#include "blurGaussianH_frag.h" +INCLUDE_SHADER(blurGaussianV_frag) +INCLUDE_SHADER(blurGaussianH_frag) -#include "blurGaussianDepthAwareV_frag.h" -#include "blurGaussianDepthAwareH_frag.h" +INCLUDE_SHADER(blurGaussianDepthAwareV_frag) +INCLUDE_SHADER(blurGaussianDepthAwareH_frag) using namespace render; diff --git a/libraries/render/src/render/DrawSceneOctree.cpp b/libraries/render/src/render/DrawSceneOctree.cpp index 36663a454a..7823d85dae 100644 --- a/libraries/render/src/render/DrawSceneOctree.cpp +++ b/libraries/render/src/render/DrawSceneOctree.cpp @@ -22,12 +22,12 @@ #include "Args.h" -#include "drawCellBounds_vert.h" -#include "drawCellBounds_frag.h" -#include "drawLODReticle_frag.h" +INCLUDE_SHADER(drawCellBounds_vert) +INCLUDE_SHADER(drawCellBounds_frag) +INCLUDE_SHADER(drawLODReticle_frag) -#include "drawItemBounds_vert.h" -#include "drawItemBounds_frag.h" +INCLUDE_SHADER(drawItemBounds_vert) +INCLUDE_SHADER(drawItemBounds_frag) using namespace render; diff --git a/libraries/render/src/render/DrawStatus.cpp b/libraries/render/src/render/DrawStatus.cpp index 148e104453..1c6d7749f8 100644 --- a/libraries/render/src/render/DrawStatus.cpp +++ b/libraries/render/src/render/DrawStatus.cpp @@ -21,10 +21,10 @@ #include "Args.h" -#include "drawItemBounds_vert.h" -#include "drawItemBounds_frag.h" -#include "drawItemStatus_vert.h" -#include "drawItemStatus_frag.h" +INCLUDE_SHADER(drawItemBounds_vert) +INCLUDE_SHADER(drawItemBounds_frag) +INCLUDE_SHADER(drawItemStatus_vert) +INCLUDE_SHADER(drawItemStatus_frag) using namespace render; diff --git a/libraries/render/src/render/DrawTask.cpp b/libraries/render/src/render/DrawTask.cpp index 629cc55ccb..a6d5072cca 100755 --- a/libraries/render/src/render/DrawTask.cpp +++ b/libraries/render/src/render/DrawTask.cpp @@ -22,8 +22,8 @@ #include #include -#include -#include +INCLUDE_SHADER(drawItemBounds_vert) +INCLUDE_SHADER(drawItemBounds_frag) using namespace render; diff --git a/libraries/render/src/render/drawItemBounds.slf b/libraries/render/src/render/drawItemBounds.slf index e01d1607bd..84c47d0933 100644 --- a/libraries/render/src/render/drawItemBounds.slf +++ b/libraries/render/src/render/drawItemBounds.slf @@ -15,7 +15,6 @@ in vec4 varColor; in vec2 varTexcoord; out vec4 outFragColor; - void main(void) { float var = step(fract(varTexcoord.x * varTexcoord.y * 1.0), 0.5); diff --git a/tests/shaders/src/main.cpp b/tests/shaders/src/main.cpp index 7c6886ad93..e0babc8b47 100644 --- a/tests/shaders/src/main.cpp +++ b/tests/shaders/src/main.cpp @@ -23,65 +23,65 @@ #include -#include -#include -#include -#include +INCLUDE_SHADER(simple_vert) +INCLUDE_SHADER(simple_frag) +INCLUDE_SHADER(simple_textured_frag) +INCLUDE_SHADER(simple_textured_unlit_frag) -#include -#include -#include +INCLUDE_SHADER(deferred_light_vert) +INCLUDE_SHADER(deferred_light_point_vert) +INCLUDE_SHADER(deferred_light_spot_vert) -#include -#include +INCLUDE_SHADER(directional_ambient_light_frag) +INCLUDE_SHADER(directional_skybox_light_frag) -#include -#include +INCLUDE_SHADER(standardTransformPNTC_vert) +INCLUDE_SHADER(standardDrawTexture_frag) -#include -#include -#include -#include -#include -#include -#include -#include +INCLUDE_SHADER(model_vert) +INCLUDE_SHADER(model_shadow_vert) +INCLUDE_SHADER(model_normal_map_vert) +INCLUDE_SHADER(model_lightmap_vert) +INCLUDE_SHADER(model_lightmap_normal_map_vert) +INCLUDE_SHADER(skin_model_vert) +INCLUDE_SHADER(skin_model_shadow_vert) +INCLUDE_SHADER(skin_model_normal_map_vert) -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include +INCLUDE_SHADER(model_frag) +INCLUDE_SHADER(model_shadow_frag) +INCLUDE_SHADER(model_normal_map_frag) +INCLUDE_SHADER(model_normal_specular_map_frag) +INCLUDE_SHADER(model_specular_map_frag) +INCLUDE_SHADER(model_lightmap_frag) +INCLUDE_SHADER(model_lightmap_normal_map_frag) +INCLUDE_SHADER(model_lightmap_normal_specular_map_frag) +INCLUDE_SHADER(model_lightmap_specular_map_frag) +INCLUDE_SHADER(model_translucent_frag) -#include -#include +INCLUDE_SHADER(textured_particle_frag) +INCLUDE_SHADER(textured_particle_vert) -#include -#include +INCLUDE_SHADER(overlay3D_vert) +INCLUDE_SHADER(overlay3D_frag) -#include -#include +INCLUDE_SHADER(skybox_vert) +INCLUDE_SHADER(skybox_frag) -#include -#include -#include -#include -#include -#include +INCLUDE_SHADER(DrawTransformUnitQuad_vert) +INCLUDE_SHADER(DrawTexcoordRectTransformUnitQuad_vert) +INCLUDE_SHADER(DrawViewportQuadTransformTexcoord_vert) +INCLUDE_SHADER(DrawTexture_frag) +INCLUDE_SHADER(DrawTextureOpaque_frag) +INCLUDE_SHADER(DrawColoredTexture_frag) -#include -#include +INCLUDE_SHADER(sdf_text3D_vert) +INCLUDE_SHADER(sdf_text3D_frag) -#include -#include +INCLUDE_SHADER(paintStroke_vert) +INCLUDE_SHADER(paintStroke_frag) -#include -#include +INCLUDE_SHADER(polyvox_vert) +INCLUDE_SHADER(polyvox_frag) // Create a simple OpenGL window that renders text in various ways class QTestWindow : public QWindow { diff --git a/tools/scribe/src/main.cpp b/tools/scribe/src/main.cpp index 810f6c0f45..fef2ea0308 100755 --- a/tools/scribe/src/main.cpp +++ b/tools/scribe/src/main.cpp @@ -123,7 +123,7 @@ int main (int argc, char** argv) { cerr << " varname and varvalue must be made of alpha numerical characters with no spaces." << endl; cerr << " -listVars : Will list the vars name and value in the standard output." << endl; cerr << " -showParseTree : Draw the tree obtained while parsing the source" << endl; - cerr << " -c++ : Generate a c++ header file containing the output file stream stored as a char[] variable" << endl; + cerr << " -c++ : Generate a c++ source file containing the output file stream stored as a char[] variable" << endl; return 0; } @@ -209,9 +209,7 @@ int main (int argc, char** argv) { } targetStringStream << "// File generated by Scribe " << vars["_SCRIBE_DATE"] << std::endl; - targetStringStream << "#ifndef scribe_" << targetName << "_h" << std::endl; - targetStringStream << "#define scribe_" << targetName << "_h" << std::endl << std::endl; - + targetStringStream << "extern const char " << targetName << "[];\n"; targetStringStream << "const char " << targetName << "[] = \n"; // Write the pages content @@ -219,8 +217,6 @@ int main (int argc, char** argv) { targetStringStream << "R\"SCRIBE(\n" << page->str() << "\n)SCRIBE\"\n"; } targetStringStream << ";\n" << std::endl << std::endl; - - targetStringStream << "#endif" << std::endl; } else { targetStringStream << destStringStream.str(); }