overte/libraries/shaders/CMakeLists.txt
Bradley Austin Davis fc51b93691 Fix OSX build
2018-08-03 16:15:58 -07:00

193 lines
11 KiB
CMake

set(TARGET_NAME gpu)
AUTOSCRIBE_SHADER_LIB(gpu)
AUTOSCRIBE_PROGRAM(NAME drawColor VERTEX DrawTransformVertexPosition FRAGMENT DrawColor)
AUTOSCRIBE_PROGRAM(NAME drawTransformUnitQuadTextureOpaque VERTEX DrawTransformUnitQuad FRAGMENT DrawTextureOpaque)
AUTOSCRIBE_PROGRAM(NAME drawTexture VERTEX DrawUnitQuadTexcoord FRAGMENT DrawTexture)
AUTOSCRIBE_PROGRAM(NAME drawUnitQuatTextureOpaque VERTEX DrawUnitQuadTexcoord FRAGMENT DrawTextureOpaque)
AUTOSCRIBE_PROGRAM(NAME drawTextureOpaqueTexcoordRect VERTEX DrawTexcoordRectTransformUnitQuad FRAGMENT DrawTextureOpaque)
AUTOSCRIBE_PROGRAM(NAME drawNothing VERTEX DrawVertexPosition FRAGMENT DrawNada)
set(TARGET_NAME graphics)
AUTOSCRIBE_SHADER_LIB(gpu)
AUTOSCRIBE_PROGRAM(NAME skybox)
set(TARGET_NAME display-plugins)
AUTOSCRIBE_SHADER_LIB(display-plugins)
AUTOSCRIBE_PROGRAM(NAME InterleavedSrgbToLinear VERTEX gpu::vertex::DrawUnitQuadTexcoord)
AUTOSCRIBE_PROGRAM(NAME SrgbToLinear VERTEX gpu::vertex::DrawUnitQuadTexcoord)
set(TARGET_NAME procedural)
AUTOSCRIBE_SHADER_LIB(gpu graphics)
set(TARGET_NAME render)
AUTOSCRIBE_SHADER_LIB(gpu graphics)
AUTOSCRIBE_PROGRAM(NAME drawCellBounds)
AUTOSCRIBE_PROGRAM(NAME drawItemBounds)
AUTOSCRIBE_PROGRAM(NAME drawItemStatus)
AUTOSCRIBE_PROGRAM(NAME drawLODReticle VERTEX gpu::vertex::DrawTransformUnitQuad)
AUTOSCRIBE_PROGRAM(NAME blurGaussianV VERTEX gpu::vertex::DrawUnitQuadTexcoord)
AUTOSCRIBE_PROGRAM(NAME blurGaussianH VERTEX gpu::vertex::DrawUnitQuadTexcoord)
AUTOSCRIBE_PROGRAM(NAME blurGaussianDepthAwareV VERTEX gpu::vertex::DrawUnitQuadTexcoord)
AUTOSCRIBE_PROGRAM(NAME blurGaussianDepthAwareH VERTEX gpu::vertex::DrawUnitQuadTexcoord)
set(TARGET_NAME render-utils)
AUTOSCRIBE_SHADER_LIB(gpu graphics render)
AUTOSCRIBE_PROGRAM(NAME animdebugdraw)
AUTOSCRIBE_PROGRAM(NAME bloomThreshold VERTEX gpu::vertex::DrawTransformUnitQuad FRAGMENT BloomThreshold)
AUTOSCRIBE_PROGRAM(NAME bloomApply VERTEX gpu::vertex::DrawTransformUnitQuad FRAGMENT BloomApply)
AUTOSCRIBE_PROGRAM(NAME directional_ambient_light VERTEX deferred_light)
AUTOSCRIBE_PROGRAM(NAME directional_ambient_light_shadow VERTEX deferred_light)
AUTOSCRIBE_PROGRAM(NAME directional_skybox_light VERTEX deferred_light)
AUTOSCRIBE_PROGRAM(NAME directional_skybox_light_shadow VERTEX deferred_light)
AUTOSCRIBE_PROGRAM(NAME local_lights_shading VERTEX deferred_light)
AUTOSCRIBE_PROGRAM(NAME local_lights_drawOutline VERTEX deferred_light)
AUTOSCRIBE_PROGRAM(NAME forward_simple_textured VERTEX simple)
AUTOSCRIBE_PROGRAM(NAME forward_simple_textured_unlit VERTEX simple)
AUTOSCRIBE_PROGRAM(NAME forward_simple_textured_transparent VERTEX simple)
AUTOSCRIBE_PROGRAM(NAME fxaa_blend VERTEX gpu::vertex::DrawUnitQuadTexcoord)
AUTOSCRIBE_PROGRAM(NAME glowLine)
AUTOSCRIBE_PROGRAM(NAME grid VERTEX standardTransformPNTC)
AUTOSCRIBE_PROGRAM(NAME hmd_ui)
AUTOSCRIBE_PROGRAM(NAME drawWorkloadProxy)
AUTOSCRIBE_PROGRAM(NAME drawWorkloadView)
AUTOSCRIBE_PROGRAM(NAME haze VERTEX gpu::vertex::DrawViewportQuadTransformTexcoord FRAGMENT Haze)
AUTOSCRIBE_PROGRAM(NAME highlight_aabox VERTEX Highlight_aabox FRAGMENT nop)
AUTOSCRIBE_PROGRAM(NAME highlight VERTEX gpu::vertex::DrawViewportQuadTransformTexcoord FRAGMENT Highlight)
AUTOSCRIBE_PROGRAM(NAME highlight_filled VERTEX gpu::vertex::DrawViewportQuadTransformTexcoord FRAGMENT Highlight_filled)
AUTOSCRIBE_PROGRAM(NAME lightClusters_drawGrid)
AUTOSCRIBE_PROGRAM(NAME lightClusters_drawClusterFromDepth VERTEX gpu::vertex::DrawUnitQuadTexcoord)
AUTOSCRIBE_PROGRAM(NAME lightClusters_drawClusterContent VERTEX gpu::vertex::DrawUnitQuadTexcoord)
AUTOSCRIBE_PROGRAM(NAME simple_opaque_web_browser VERTEX simple)
AUTOSCRIBE_PROGRAM(NAME simple_transparent_web_browser VERTEX simple)
AUTOSCRIBE_PROGRAM(NAME simple_textured VERTEX simple)
AUTOSCRIBE_PROGRAM(NAME simple_textured_unlit VERTEX simple)
AUTOSCRIBE_PROGRAM(NAME simple_transparent_textured VERTEX simple)
AUTOSCRIBE_PROGRAM(NAME simple_transparent_textured_unlit VERTEX simple)
AUTOSCRIBE_PROGRAM(NAME simple_textured_fade VERTEX simple_fade)
AUTOSCRIBE_PROGRAM(NAME simple_textured_unlit_fade VERTEX simple_fade)
AUTOSCRIBE_PROGRAM(NAME simple_transparent_textured_fade VERTEX simple_fade)
AUTOSCRIBE_PROGRAM(NAME simple_transparent_textured_unlit_fade VERTEX simple_fade)
AUTOSCRIBE_PROGRAM(NAME parabola)
AUTOSCRIBE_PROGRAM(NAME sdf_text3D)
AUTOSCRIBE_PROGRAM(NAME sdf_text3D_transparent VERTEX sdf_text3D)
AUTOSCRIBE_PROGRAM(NAME ssao_makeOcclusion VERTEX gpu::vertex::DrawViewportQuadTransformTexcoord)
AUTOSCRIBE_PROGRAM(NAME ssao_makeHorizontalBlur VERTEX gpu::vertex::DrawViewportQuadTransformTexcoord)
AUTOSCRIBE_PROGRAM(NAME ssao_makeVerticalBlur VERTEX gpu::vertex::DrawViewportQuadTransformTexcoord)
AUTOSCRIBE_PROGRAM(NAME ssao_debugOcclusion VERTEX gpu::vertex::DrawViewportQuadTransformTexcoord)
AUTOSCRIBE_PROGRAM(NAME stencil_drawMask VERTEX gpu::vertex::DrawUnitQuadTexcoord)
AUTOSCRIBE_PROGRAM(NAME standardDrawTexture VERTEX standardTransformPNTC)
AUTOSCRIBE_PROGRAM(NAME standardDrawTextureNoBlend VERTEX standardTransformPNTC)
AUTOSCRIBE_PROGRAM(NAME subsurfaceScattering_makeProfile VERTEX gpu::vertex::DrawUnitQuadTexcoord)
AUTOSCRIBE_PROGRAM(NAME subsurfaceScattering_makeLUT VERTEX gpu::vertex::DrawUnitQuadTexcoord)
AUTOSCRIBE_PROGRAM(NAME subsurfaceScattering_makeSpecularBeckmann VERTEX gpu::vertex::DrawUnitQuadTexcoord)
AUTOSCRIBE_PROGRAM(NAME subsurfaceScattering_drawScattering VERTEX gpu::vertex::DrawUnitQuadTexcoord)
AUTOSCRIBE_PROGRAM(NAME surfaceGeometry_makeLinearDepth VERTEX gpu::vertex::DrawViewportQuadTransformTexcoord)
AUTOSCRIBE_PROGRAM(NAME surfaceGeometry_downsampleDepthNormal VERTEX gpu::vertex::DrawViewportQuadTransformTexcoord)
AUTOSCRIBE_PROGRAM(NAME surfaceGeometry_makeCurvature VERTEX gpu::vertex::DrawViewportQuadTransformTexcoord)
AUTOSCRIBE_PROGRAM(NAME taa VERTEX gpu::vertex::DrawUnitQuadTexcoord)
AUTOSCRIBE_PROGRAM(NAME taa_blend VERTEX gpu::vertex::DrawUnitQuadTexcoord)
AUTOSCRIBE_PROGRAM(NAME simple FRAGMENT forward_simple_textured)
AUTOSCRIBE_PROGRAM(NAME simpleUnlit VERTEX simple FRAGMENT forward_simple_textured_unlit)
AUTOSCRIBE_PROGRAM(NAME simpleTranslucent VERTEX simple FRAGMENT forward_simple_textured_transparent)
AUTOSCRIBE_PROGRAM(NAME simpleTranslucentUnlit VERTEX simple FRAGMENT simple_transparent_textured_unlit)
AUTOSCRIBE_PROGRAM(NAME forward_model VERTEX model)
AUTOSCRIBE_PROGRAM(NAME forward_model_translucent VERTEX model)
AUTOSCRIBE_PROGRAM(NAME forward_model_unlit VERTEX model)
AUTOSCRIBE_PROGRAM(NAME forward_model_normal_map VERTEX model_normal_map)
AUTOSCRIBE_PROGRAM(NAME forward_model_normal_map_translucent VERTEX model_normal_map FRAGMENT forward_model_translucent)
AUTOSCRIBE_PROGRAM(NAME forward_skin_model VERTEX skin_model FRAGMENT forward_model)
AUTOSCRIBE_PROGRAM(NAME forward_skin_model_normal_map VERTEX skin_model_normal_map FRAGMENT forward_model_normal_map)
AUTOSCRIBE_PROGRAM(NAME forward_skin_model_dq VERTEX skin_model_dq FRAGMENT forward_model)
AUTOSCRIBE_PROGRAM(NAME forward_skin_model_normal_map_dq VERTEX skin_model_normal_map_dq FRAGMENT forward_model_normal_map)
AUTOSCRIBE_PROGRAM(NAME forward_skin_translucent VERTEX skin_model FRAGMENT forward_model_translucent)
AUTOSCRIBE_PROGRAM(NAME forward_skin_translucent_normal_map VERTEX skin_model_normal_map FRAGMENT forward_model_translucent)
AUTOSCRIBE_PROGRAM(NAME forward_skin_translucent_dq VERTEX skin_model_dq FRAGMENT forward_model_translucent)
AUTOSCRIBE_PROGRAM(NAME forward_skin_translucent_normal_map_dq VERTEX skin_model_normal_map_dq FRAGMENT forward_model_translucent)
AUTOSCRIBE_PROGRAM(NAME model)
AUTOSCRIBE_PROGRAM(NAME model_unlit VERTEX model)
AUTOSCRIBE_PROGRAM(NAME model_normal_map)
AUTOSCRIBE_PROGRAM(NAME model_translucent)
AUTOSCRIBE_PROGRAM(NAME model_translucent_normal_map)
AUTOSCRIBE_PROGRAM(NAME model_translucent_unlit VERTEX model)
AUTOSCRIBE_PROGRAM(NAME model_lightmap)
AUTOSCRIBE_PROGRAM(NAME model_lightmap_normal_map)
AUTOSCRIBE_PROGRAM(NAME model_shadow)
AUTOSCRIBE_PROGRAM(NAME model_shadow_fade)
AUTOSCRIBE_PROGRAM(NAME skin_model FRAGMENT model)
AUTOSCRIBE_PROGRAM(NAME skin_model_normal_map FRAGMENT model_normal_map)
AUTOSCRIBE_PROGRAM(NAME skin_model_normal_map_fade FRAGMENT model_normal_map_fade)
AUTOSCRIBE_PROGRAM(NAME skin_model_translucent VERTEX skin_model_fade FRAGMENT model_translucent)
AUTOSCRIBE_PROGRAM(NAME skin_model_translucent_fade VERTEX skin_model_fade FRAGMENT model_translucent_fade)
AUTOSCRIBE_PROGRAM(NAME skin_model_normal_map_translucent VERTEX skin_model_normal_map_fade FRAGMENT model_translucent_normal_map)
AUTOSCRIBE_PROGRAM(NAME skin_model_normal_map_translucent_fade VERTEX skin_model_normal_map_fade FRAGMENT model_translucent_normal_map_fade)
AUTOSCRIBE_PROGRAM(NAME skin_model_fade FRAGMENT model_fade)
AUTOSCRIBE_PROGRAM(NAME skin_model_shadow FRAGMENT model_shadow)
AUTOSCRIBE_PROGRAM(NAME skin_model_shadow_fade FRAGMENT model_shadow)
AUTOSCRIBE_PROGRAM(NAME skin_model_dq FRAGMENT model)
AUTOSCRIBE_PROGRAM(NAME skin_model_fade_dq FRAGMENT model_fade)
AUTOSCRIBE_PROGRAM(NAME skin_model_normal_map_dq FRAGMENT model_normal_map)
AUTOSCRIBE_PROGRAM(NAME skin_model_normal_map_fade_dq FRAGMENT model_normal_map_fade)
AUTOSCRIBE_PROGRAM(NAME skin_model_translucent_dq VERTEX skin_model_fade_dq FRAGMENT model_translucent)
AUTOSCRIBE_PROGRAM(NAME skin_model_translucent_fade_dq VERTEX skin_model_fade_dq FRAGMENT model_translucent_fade)
AUTOSCRIBE_PROGRAM(NAME skin_model_normal_map_translucent_dq VERTEX skin_model_normal_map_fade_dq FRAGMENT model_translucent_normal_map)
AUTOSCRIBE_PROGRAM(NAME skin_model_normal_map_translucent_fade_dq VERTEX skin_model_normal_map_fade_dq FRAGMENT model_translucent_normal_map_fade)
AUTOSCRIBE_PROGRAM(NAME skin_model_shadow_dq FRAGMENT model_shadow)
AUTOSCRIBE_PROGRAM(NAME skin_model_shadow_fade_dq FRAGMENT model_shadow_fade)
AUTOSCRIBE_PROGRAM(NAME model_fade)
AUTOSCRIBE_PROGRAM(NAME model_unlit_fade VERTEX model_fade)
AUTOSCRIBE_PROGRAM(NAME model_translucent_unlit_fade VERTEX model_fade)
AUTOSCRIBE_PROGRAM(NAME model_normal_map_fade)
AUTOSCRIBE_PROGRAM(NAME model_translucent_normal_map_fade VERTEX model_translucent_normal_map)
AUTOSCRIBE_PROGRAM(NAME model_translucent_fade VERTEX model_fade)
AUTOSCRIBE_PROGRAM(NAME model_lightmap_fade)
AUTOSCRIBE_PROGRAM(NAME model_lightmap_normal_map_fade)
AUTOSCRIBE_PROGRAM(NAME zone_drawKeyLight VERTEX gpu::vertex::DrawTransformUnitQuad)
AUTOSCRIBE_PROGRAM(NAME zone_drawSkybox VERTEX gpu::vertex::DrawTransformUnitQuad)
AUTOSCRIBE_PROGRAM(NAME zone_drawAmbient VERTEX gpu::vertex::DrawTransformUnitQuad)
AUTOSCRIBE_PROGRAM(NAME toneMapping VERTEX gpu::vertex::DrawViewportQuadTransformTexcoord)
AUTOSCRIBE_PROGRAM(NAME velocityBuffer_cameraMotion VERTEX gpu::vertex::DrawViewportQuadTransformTexcoord)
set(TARGET_NAME entities-renderer)
AUTOSCRIBE_SHADER_LIB(gpu graphics procedural render render-utils)
AUTOSCRIBE_PROGRAM(NAME polyvox)
AUTOSCRIBE_PROGRAM(NAME polyvox_fade)
AUTOSCRIBE_PROGRAM(NAME paintStroke)
AUTOSCRIBE_PROGRAM(NAME textured_particle)
set(TARGET_NAME shaders)
autoscribe_shader_finish()
setup_hifi_library(Gui)
add_dependencies(${TARGET_NAME} compiled_shaders reflected_shaders)
# Despite the dependency above, the autogen logic will attempt to compile the QRC before
# the compiled_shaders project is built causing an error on a clean workspace because the
# QRC references files generated by the compiled_shaders target
# To fix that we need to explicitly add every shader as a dependnecy of the autogen process
foreach(COMPILED_SHADER ${COMPILED_SHADERS})
set_property(TARGET ${TARGET_NAME} APPEND PROPERTY AUTOGEN_TARGET_DEPENDS "${COMPILED_SHADER}")
endforeach()
link_hifi_libraries(shared gl)