Transparent_StandardLighting.azsli 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. /*
  2. * Copyright (c) Contributors to the Open 3D Engine Project.
  3. * For complete copyright and license terms please see the LICENSE at the root of this distribution.
  4. *
  5. * SPDX-License-Identifier: Apache-2.0 OR MIT
  6. *
  7. */
  8. #pragma once
  9. #include <Atom/Features/SrgSemantics.azsli>
  10. #define MATERIALPIPELINE_SHADER_HAS_PIXEL_STAGE 1
  11. // TODO(MaterialPipeline): In the end, after all refactoring and rearranging of our shader code is done, some of these flags might become unnecessary and should be re-evaluated.
  12. // Some of these setting used to be in ShaderQualityOptions.azsli as a basic/limited solution for multiple pipelines.
  13. #define FORCE_IBL_IN_FORWARD_PASS 1
  14. #define ENABLE_AREA_LIGHT_VALIDATION 0
  15. #define OUTPUT_DEPTH 0
  16. #define FORCE_OPAQUE 0
  17. #define OUTPUT_SUBSURFACE 0
  18. #define ENABLE_TRANSMISSION 0
  19. #define ENABLE_SHADER_DEBUGGING 1
  20. #define ENABLE_CLEAR_COAT 1
  21. //////////////////////////////////////////////////////////////////////////////////////////////////
  22. #ifdef MATERIAL_TYPE_DEFINES_AZSLI_FILE_PATH
  23. #include MATERIAL_TYPE_DEFINES_AZSLI_FILE_PATH
  24. #endif
  25. //////////////////////////////////////////////////////////////////////////////////////////////////
  26. #include <viewsrg_all.srgi>
  27. #include <scenesrg_all.srgi>
  28. #include <Atom/Features/Pipeline/Forward/ForwardPassSrg.azsli>
  29. #include <Atom/Features/Pipeline/Forward/ForwardPassVertexData.azsli>
  30. #include <Atom/Features/Pipeline/Forward/ForwardPassPipelineCallbacks.azsli>
  31. //////////////////////////////////////////////////////////////////////////////////////////////////
  32. #include MATERIAL_TYPE_AZSLI_FILE_PATH
  33. //////////////////////////////////////////////////////////////////////////////////////////////////
  34. // TODO(MaterialPipeline): I don't like how this file #includes something from BasePBR. I'd rather it include a file
  35. // called StandardPBR_LightingData.azsli which just #includes the BasePBR file. Otherwise this looks suspicious like
  36. // a mistake of some kind.
  37. #include "../../../Shaders/Materials/BasePBR/BasePBR_LightingData.azsli"
  38. #include "../../../Shaders/Materials/StandardPBR/StandardPBR_LightingBrdf.azsli"
  39. #include "../../../Shaders/Materials/StandardPBR/StandardPBR_LightingEval.azsli"
  40. #include "../Common/TransparentPassVertexAndPixel.azsli"