VkShader.h 632 B

1234567891011121314151617181920212223242526272829303132333435
  1. // Copyright (C) 2009-present, Panagiotis Christopoulos Charitos and contributors.
  2. // All rights reserved.
  3. // Code licensed under the BSD License.
  4. // http://www.anki3d.org/LICENSE
  5. #pragma once
  6. #include <AnKi/Gr/Shader.h>
  7. #include <AnKi/Gr/Vulkan/VkCommon.h>
  8. #include <AnKi/Util/BitSet.h>
  9. namespace anki {
  10. /// @addtogroup vulkan
  11. /// @{
  12. /// Shader vulkan implementation.
  13. class ShaderImpl final : public Shader
  14. {
  15. public:
  16. ShaderReflection m_reflection;
  17. GrDynamicArray<U32> m_spirvBin;
  18. ShaderImpl(CString name)
  19. : Shader(name)
  20. {
  21. }
  22. ~ShaderImpl();
  23. Error init(const ShaderInitInfo& init);
  24. };
  25. /// @}
  26. } // end namespace anki