![]() |
OpenSiv3D
v0.6.5
C++20 framework for creative coding
|
エフェクトグループ More...
#include <Effect.hpp>
Inherits s3d::AssetHandle< Effect >.
Public Member Functions | |
| SIV3D_NODISCARD_CXX20 | Effect (double maxLifeTimeSec=10.0) |
| エフェクトグループを作成します。 More... | |
| SIV3D_NODISCARD_CXX20 | Effect (const Duration &maxLifeTimeSec) |
| エフェクトグループを作成します。 More... | |
| virtual | ~Effect () |
| デストラクタ More... | |
| const Effect & | add (std::unique_ptr< IEffect > &&effect) const |
| エフェクトグループに新しいエフェクトを追加します More... | |
| template<class IEffectType , class... Args, std::enable_if_t< std::is_base_of_v< IEffect, IEffectType >> * = nullptr> | |
| const Effect & | add (Args &&... args) const |
| エフェクトグループに新しいエフェクトを追加します More... | |
| template<class Fty , std::enable_if_t< std::is_invocable_r_v< bool, Fty, double >> * = nullptr> | |
| const Effect & | add (Fty f) const |
| エフェクトグループに新しいエフェクトを追加します More... | |
| operator bool () const | |
| エフェクトグループがアクティブなエフェクトを持っているかを返します。 More... | |
| bool | isEmpty () const |
| エフェクトグループがアクティブなエフェクトを持っていないかを返します。 More... | |
| bool | hasEffects () const |
| エフェクトグループがアクティブなエフェクトを持っているかを返します。 More... | |
| size_t | num_effects () const |
| エフェクトグループでアクティブなエフェクトの個数を返します。 More... | |
| void | pause () const |
| このエフェクトグループの時間経過を一時停止します。 More... | |
| bool | isPaused () const |
| このエフェクトグループの時間経過が一時停止されているかを返します。 More... | |
| void | resume () const |
| このエフェクトグループの時間経過が一時停止されている場合、再開します。 More... | |
| const Effect & | setSpeed (double speed) const |
| このエフェクトグループの時間経過の速さを、実時間に対する倍率 (2.0 で 2 倍早く経過)で設定します。 More... | |
| double | getSpeed () const |
| このエフェクトグループの時間経過の速さを返します。 More... | |
| const Effect & | setMaxLifeTime (double maxLifeTimeSec) |
| このエフェクトグループでのエフェクトの最大継続時間(秒)を設定します。 More... | |
| void | setMaxLifeTime (const Duration &maxLifeTimeSec) |
| このエフェクトグループでのエフェクトの最大継続時間(秒)を設定します。 More... | |
| double | getMaxLifeTime () const |
| このエフェクトグループでのエフェクトの最大継続時間(秒)を返します。 More... | |
| void | update () const |
このエフェクトグループ内のエフェクトの update() を実行します。 More... | |
| void | clear () const |
| このエフェクトグループ内の全てのエフェクトを、経過時間に関わらず消去します。 More... | |
| void | swap (Effect &other) noexcept |
Public Member Functions inherited from s3d::AssetHandle< Effect > | |
| SIV3D_NODISCARD_CXX20 | AssetHandle () |
| SIV3D_NODISCARD_CXX20 | AssetHandle (std::shared_ptr< AssetIDWrapperType > &&id) |
| IDType | id () const noexcept |
| アセットの内部管理 ID を返します。 More... | |
| bool | isEmpty () const noexcept |
| アセットが空であるかを返します。 More... | |
| operator bool () const noexcept | |
| アセットが空でないかを返します。 More... | |
| bool | operator== (const AssetHandle &other) const noexcept |
| 2 つのアセットが同じオブジェクトであるかを返します。 More... | |
| bool | operator!= (const AssetHandle &other) const noexcept |
| 2 つのアセットが異なるオブジェクトであるかを返します。 More... | |
| void | release () |
| このハンドルが管理するアセットを解放します。 More... | |
Additional Inherited Members | |
Public Types inherited from s3d::AssetHandle< Effect > | |
| using | AssetIDWrapperType = AssetIDWrapper< AssetHandle > |
| アセット ID ラッパー型 More... | |
| using | IDType = typename AssetIDWrapperType::IDType |
| アセット ID 型 More... | |
Protected Attributes inherited from s3d::AssetHandle< Effect > | |
| std::shared_ptr< AssetIDWrapperType > | m_handle |
エフェクトグループ
| SIV3D_NODISCARD_CXX20 s3d::Effect::Effect | ( | double | maxLifeTimeSec = 10.0 | ) |
エフェクトグループを作成します。
| maxLifeTimeSec | このエフェクトグループでのエフェクトの最大継続時間(秒) |
| SIV3D_NODISCARD_CXX20 s3d::Effect::Effect | ( | const Duration & | maxLifeTimeSec | ) |
エフェクトグループを作成します。
| maxLifeTimeSec | このエフェクトグループでのエフェクトの最大継続時間(秒) |
|
virtual |
デストラクタ
| const Effect& s3d::Effect::add | ( | Args &&... | args | ) | const |
エフェクトグループに新しいエフェクトを追加します
| IEffectType | 追加するエフェクトの型 |
| ...Args | コンストラクタ引数の型 |
| ...args | コンストラクタ引数 |
| const Effect& s3d::Effect::add | ( | Fty | f | ) | const |
エフェクトグループに新しいエフェクトを追加します
| Fty | エフェクト(関数オブジェクト)の型 |
| f | エフェクトの関数オブジェクト |
エフェクトグループに新しいエフェクトを追加します
| effect | 追加するエフェクト |
| void s3d::Effect::clear | ( | ) | const |
このエフェクトグループ内の全てのエフェクトを、経過時間に関わらず消去します。
| double s3d::Effect::getMaxLifeTime | ( | ) | const |
このエフェクトグループでのエフェクトの最大継続時間(秒)を返します。
| double s3d::Effect::getSpeed | ( | ) | const |
このエフェクトグループの時間経過の速さを返します。
| bool s3d::Effect::hasEffects | ( | ) | const |
エフェクトグループがアクティブなエフェクトを持っているかを返します。
| bool s3d::Effect::isEmpty | ( | ) | const |
エフェクトグループがアクティブなエフェクトを持っていないかを返します。
| bool s3d::Effect::isPaused | ( | ) | const |
このエフェクトグループの時間経過が一時停止されているかを返します。
| size_t s3d::Effect::num_effects | ( | ) | const |
エフェクトグループでアクティブなエフェクトの個数を返します。
|
explicit |
エフェクトグループがアクティブなエフェクトを持っているかを返します。
Effect::hasEffects() と同じ結果を返します。 | void s3d::Effect::pause | ( | ) | const |
このエフェクトグループの時間経過を一時停止します。
| void s3d::Effect::resume | ( | ) | const |
このエフェクトグループの時間経過が一時停止されている場合、再開します。
| void s3d::Effect::setMaxLifeTime | ( | const Duration & | maxLifeTimeSec | ) |
このエフェクトグループでのエフェクトの最大継続時間(秒)を設定します。
| maxLifeTimeSec | このエフェクトグループでのエフェクトの最大継続時間(秒) |
| const Effect& s3d::Effect::setMaxLifeTime | ( | double | maxLifeTimeSec | ) |
このエフェクトグループでのエフェクトの最大継続時間(秒)を設定します。
| maxLifeTimeSec | このエフェクトグループでのエフェクトの最大継続時間(秒) |
| const Effect& s3d::Effect::setSpeed | ( | double | speed | ) | const |
このエフェクトグループの時間経過の速さを、実時間に対する倍率 (2.0 で 2 倍早く経過)で設定します。
| speed | 時間経過の速さ |
|
noexcept |
| void s3d::Effect::update | ( | ) | const |
このエフェクトグループ内のエフェクトの update() を実行します。