Sdk/RenderSystem: Make ChangeRenderTechnique return a reference to the render technique
Former-commit-id: bffd29fae1ec56fbf9769e9d98c6482dcf953233 [formerly 8efbb3be17fa259e5b7a0529c21d89ca66cb92fe] [formerly a6908831f5568b0d9c5c94c2085722513e240acb [formerly 24501e9445e2f64303751ca34af2df5170af4248]] Former-commit-id: c8da7e4bd2680ddc942b6f06c7b528a1007fe1df [formerly a66ad334b5e9032f35d58c25ba3b5affc97d72da] Former-commit-id: f67f457a615944e276e19e5551107333c4c4dd8f
This commit is contained in:
parent
2c076ae1c5
commit
cb4fbe0894
|
|
@ -28,8 +28,8 @@ namespace Ndk
|
|||
inline RenderSystem(const RenderSystem& renderSystem);
|
||||
~RenderSystem() = default;
|
||||
|
||||
template<typename T> void ChangeRenderTechnique();
|
||||
inline void ChangeRenderTechnique(std::unique_ptr<Nz::AbstractRenderTechnique>&& renderTechnique);
|
||||
template<typename T> T& ChangeRenderTechnique();
|
||||
inline Nz::AbstractRenderTechnique& ChangeRenderTechnique(std::unique_ptr<Nz::AbstractRenderTechnique>&& renderTechnique);
|
||||
|
||||
inline const Nz::BackgroundRef& GetDefaultBackground() const;
|
||||
inline const Nz::Matrix4f& GetCoordinateSystemMatrix() const;
|
||||
|
|
|
|||
|
|
@ -10,14 +10,15 @@ namespace Ndk
|
|||
}
|
||||
|
||||
template<typename T>
|
||||
inline void RenderSystem::ChangeRenderTechnique()
|
||||
inline T& RenderSystem::ChangeRenderTechnique()
|
||||
{
|
||||
ChangeRenderTechnique(std::make_unique<T>());
|
||||
return *static_cast<T*>(ChangeRenderTechnique(std::make_unique<T>()));
|
||||
}
|
||||
|
||||
inline void RenderSystem::ChangeRenderTechnique(std::unique_ptr<Nz::AbstractRenderTechnique>&& renderTechnique)
|
||||
inline Nz::AbstractRenderTechnique& RenderSystem::ChangeRenderTechnique(std::unique_ptr<Nz::AbstractRenderTechnique>&& renderTechnique)
|
||||
{
|
||||
m_renderTechnique = std::move(renderTechnique);
|
||||
return *m_renderTechnique.get();
|
||||
}
|
||||
|
||||
inline const Nz::BackgroundRef& RenderSystem::GetDefaultBackground() const
|
||||
|
|
|
|||
Loading…
Reference in New Issue