68 virtual void init(
const std::shared_ptr<RenderTarget>&
renderTarget =
nullptr,
69 const std::shared_ptr<RenderPassOptions>& options =
nullptr);
79 float scaleX()
const {
return _options ? _options->scaleX : 1.0f; }
81 float scaleY()
const {
return _options ? _options->scaleY : 1.0f; }
83 const std::vector<std::shared_ptr<RenderPass>>&
beforePasses()
const {
return _beforePasses; }
85 const std::vector<std::shared_ptr<RenderPass>>&
afterPasses()
const {
return _afterPasses; }
86 void addBeforePass(
const std::shared_ptr<RenderPass>& renderPass);
87 void addAfterPass(
const std::shared_ptr<RenderPass>& renderPass);
98 std::shared_ptr<RenderTarget>
renderTarget()
const {
return _renderTarget; };
100 const std::vector<std::shared_ptr<ColorAttachmentOps>>&
colorArrayOps()
const {
return _colorArrayOps; }
102 std::shared_ptr<DepthStencilAttachmentOps>
depthStencilOps()
const {
return _depthStencilOps; }
113 void setOptions(
const std::shared_ptr<RenderPassOptions>& value);
119 void log(std::shared_ptr<GraphicsDevice>
device,
int index = 0)
const;
121 std::shared_ptr<ColorAttachmentOps>
colorOps()
const;
124 std::shared_ptr<GraphicsDevice>
device()
const {
return _device; }
131 std::shared_ptr<GraphicsDevice> _device;
133 std::shared_ptr<RenderPassOptions> _options;
135 std::shared_ptr<RenderTarget> _renderTarget;
136 bool _renderTargetInitialized =
false;
139 std::vector<std::shared_ptr<RenderPass>> _beforePasses;
140 std::vector<std::shared_ptr<RenderPass>> _afterPasses;
142 bool _enabled =
true;
144 bool _executeEnabled =
true;
146 bool _skipStart =
false;
147 bool _skipEnd =
false;
149 std::vector<std::shared_ptr<ColorAttachmentOps>> _colorArrayOps;
150 std::shared_ptr<DepthStencilAttachmentOps> _depthStencilOps;