refactor Renderer to make it more flexible

This is in preparation to supporting screen-space effects.
There are two major changes:

- RenderPass is now copiable and intended to be passed by copy to
  the execute stage of frame graph passes

- The color pass is in its own function now


This actually simplify RenderPass api.
This commit is contained in:
Mathias Agopian
2020-01-07 16:56:42 -08:00
committed by Mathias Agopian
parent d9ee2fa10d
commit e27158507e
10 changed files with 159 additions and 109 deletions

View File

@@ -163,6 +163,8 @@ public:
using size_type = typename Slice<T, SIZE_TYPE>::size_type;
GrowingSlice() noexcept = default;
GrowingSlice(GrowingSlice const& rhs) noexcept = default;
GrowingSlice(GrowingSlice&& rhs) noexcept = default;
template<typename Iter>
GrowingSlice(Iter begin, size_type count) noexcept
@@ -180,7 +182,7 @@ public:
template<typename Iter>
void set(Iter begin, size_type count) UTILS_RESTRICT noexcept {
this->Slice<T, SIZE_TYPE>::set(begin, count);
mCapOffset = count;
mCapOffset = count;
}
template<typename Iter>