BsEditorShaderIncludeHandler.h 948 B

1234567891011121314151617181920212223
  1. //********************************** Banshee Engine (www.banshee3d.com) **************************************************//
  2. //**************** Copyright (c) 2016 Marko Pintera ([email protected]). All rights reserved. **********************//
  3. #pragma once
  4. #include "BsEditorPrerequisites.h"
  5. #include "BsShaderManager.h"
  6. namespace BansheeEngine
  7. {
  8. /**
  9. * Shader include handler for the editor. It uses project library to find the includes, and supports special keywords
  10. * for built-in includes that reside outside of the project library.
  11. */
  12. class BS_ED_EXPORT EditorShaderIncludeHandler : public IShaderIncludeHandler
  13. {
  14. public:
  15. /** @copydoc IShaderIncludeHandler::findInclude */
  16. virtual HShaderInclude findInclude(const String& name) const override;
  17. /** Converts a shader include name or path to a path of the resource containing include data. */
  18. static Path toResourcePath(const String& name);
  19. };
  20. }