ドキュメント

View Categories

CaptureComponent

< 1 min read

CaptureComponentは子孫コンポーネントを1枚のキャプチャ画像として作成します。描画オブジェクトの増加によるfpsの低減を削減します。子孫コンポーネントは再描画が必要な時にrecaptureメソッドを呼び出すことでCaptureComponentでキャプチャしている画像を上書きできます。recaptureメソッドを呼び出すと呼び出したコンポーネントから子孫コンポーネント全て順に上書きします。

capture_component.hpp

class CaptureComponent : public Component
{
public:
  CaptureComponent
  (
    MOD mod,
    spa::config::capture::MODE capture_mode
    =spa::config::gui::common::capture_mode
  );

  ~CaptureComponent() = default;

  void configure();

  void recapture();

  spa::gui::Capture<>* get();

private:
  std::shared_ptr<spa::gui::Capture<>> capture;
};


MODE::ON、MODE::OFFを指定できます。CaptureComponentの子孫コンポーネントにMODE::OFFのCaptureComponentを指定した場合、Capture画像に含めず毎フレームレンダリングを行います。子孫コンポーネントにMODE::ONのCaptureComponentを指定した場合、別のキャプチャー画像として新たにキャプチャー画像を生成します。操作によって表示、非表示を切り替えるSelectBoxComponentようなコンポーネントで使用しています。

ペンディング:背景色を指定できるようにする。ScrollBgLayerなど透明背景が基本の場合で背景色を指定し忘れるため

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です