X-Git-Url: http://git.tdb.fi/?p=libs%2Fgl.git;a=blobdiff_plain;f=source%2Frender%2Fsequence.h;h=00211b006ef4f119c13f292a4b4c885f71dfb10c;hp=f862bbcb55914b229ff1d4d2e756e1fc0809e6c8;hb=74c995a4ce89d52100f2e9967f61a719a8affe67;hpb=1509585cd1adcf7cff7beecc72e953583a2ea07e diff --git a/source/render/sequence.h b/source/render/sequence.h index f862bbcb..00211b00 100644 --- a/source/render/sequence.h +++ b/source/render/sequence.h @@ -80,36 +80,23 @@ private: std::vector postproc; unsigned width; unsigned height; - bool hdr; - bool alpha; - unsigned samples; + FrameFormat target_format; RenderTarget *target[2]; RenderTarget *target_ms; - std::string debug_name; public: - Sequence(unsigned, unsigned, bool = false); - Sequence(const View &); - Sequence(const Framebuffer &); + Sequence(unsigned, unsigned, const FrameFormat & = FrameFormat()); + Sequence(const View &, const FrameFormat & = FrameFormat()); + Sequence(const Framebuffer &, const FrameFormat & = FrameFormat()); private: - void init(unsigned, unsigned); + void init(unsigned, unsigned, const FrameFormat &); public: ~Sequence(); - /* Sets high dynamic range mode. Requires floating-point texture support. - A ColorCurve postprocessor is recommended for full benefit. */ - void set_hdr(bool); - - /* Enable or disable alpha channel. When enabled, all render targets are - created with an RGBA pixel format instead of RGB. */ - void set_alpha(bool); - - void set_multisample(unsigned); + const FrameFormat &get_target_format() { return target_format; } unsigned get_width() const { return width; } unsigned get_height() const { return height; } - bool get_hdr() const { return hdr; } - unsigned get_multisample() const { return samples; } /** Adds a step to the sequence. It's permissible to add the same Renderable multiple times. */ @@ -132,13 +119,7 @@ public: virtual void render(Renderer &, Tag tag = Tag()) const; -private: - void create_targets(unsigned); - -public: void set_debug_name(const std::string &); -private: - void set_target_debug_names(); }; } // namespace GL