OpenSiv3D  v0.6.5
C++20 framework for creative coding
s3d::Scene Namespace Reference

Functions

void Resize (s3d::Size size)
 シーンの幅と高さを変更します。 More...
 
void Resize (int32 width, int32 height)
 シーンの幅と高さを変更します。 More...
 
s3d::Size Size () noexcept
 現在のシーンの幅と高さ(ピクセル)を返します。 More...
 
int32 Width () noexcept
 現在のシーンの幅(ピクセル)を返します。 More...
 
int32 Height () noexcept
 現在のシーンの高さ(ピクセル)を返します。 More...
 
Point Center () noexcept
 シーンの中心の座標を Point 型で返します。 More...
 
Vec2 CenterF () noexcept
 シーンの中心の座標を Vec2 型で返します。 More...
 
s3d::Rect Rect () noexcept
 左上が (0, 0) で現在のシーンと同じ大きさの Rect を返します。 More...
 
template<class Type = double>
Type HorizontalAspectRatio () noexcept
 
void SetResizeMode (ResizeMode resizeMode)
 ウィンドウのサイズを変更したときに、シーンをどのようにリサイズするかを設定します。 @reamrk デフォルトは Scene::DefaultResizeMode です。
More...
 
ResizeMode GetResizeMode () noexcept
 ウィンドウのサイズを変更したときに、シーンをどのようにリサイズするかの現在の設定を返します。 More...
 
void SetTextureFilter (TextureFilter textureFilter)
 ウィンドウのクライアント領域がシーンのサイズと異なる場合にシーンを拡大縮小描画するために使うテクスチャフィルタを設定します。 @reamrk デフォルトは Scene::DefaultTextureFilter です。
More...
 
TextureFilter GetTextureFilter () noexcept
 ウィンドウのクライアント領域がシーンのサイズと異なる場合にシーンを拡大縮小描画するために使うテクスチャフィルタの現在の設定を返します。 More...
 
void SetBackground (const ColorF &color)
 シーンの背景色を設定します。色のアルファ成分は無視されます。 @reamrk デフォルトは Scene::DefaultBackgroundColor です。 More...
 
const ColorFGetBackground () noexcept
 現在のシーンをクリアする色(背景色)を返します。 More...
 
void SetLetterbox (const ColorF &color)
 シーンとウィンドウのアスペクト比が異なる際に、余白となるスペース「レターボックス」の色を設定します。 @reamrk デフォルトは Scene::DefaultLetterBoxColor です。 More...
 
const ColorFGetLetterBox () noexcept
 現在のレターボックスの色を返します。 More...
 
void SetMaxDeltaTime (double timeSec)
 Scene::DeltaTime() が返す最大の時間(秒)を設定します。 More...
 
double GetMaxDeltaTime () noexcept
 Scene::DeltaTime() が返す最大の時間(秒)の現在の設定を返します。 More...
 
double DeltaTime () noexcept
 前回の System::Update() からの経過時間(秒)を、Scene::GetMaxDeltaTime() を超えない値で返します。 More...
 
double Time () noexcept
 アプリケーションが起動してからの経過時間(秒)を返します。 More...
 
int32 FrameCount () noexcept
 System::Update() が呼ばれた回数(= フレームカウント)を返します。 More...
 
Vec2 ClientToScene (Vec2 pos) noexcept
 クライアント座標をシーンの座標に変換します。 More...
 

Variables

constexpr s3d::Size DefaultSceneSize = Window::DefaultClientSize
 シーンの幅と高さ(ピクセル)のデフォルト値です。 More...
 
constexpr ResizeMode DefaultResizeMode = ResizeMode::Virtual
 ウィンドウをリサイズしたときのシーンのサイズの扱いのデフォルト値です。 More...
 
constexpr TextureFilter DefaultTextureFilter = TextureFilter::Linear
 ウィンドウのフレームバッファのサイズがシーンのサイズと異なる際、シーンの拡大縮小描画に用いるテクスチャフィルタのデフォルト値です。 More...
 
constexpr ColorF DefaultBackgroundColor = Palette::DefaultBackground
 シーンの背景色のデフォルト色です。 More...
 
constexpr ColorF DefaultLetterBoxColor = Palette::DefaultLetterbox
 ウィンドウのクライアント領域がシーンよりも大きい場合に余白となるスペース「レターボックス」のデフォルト色です。 More...
 
constexpr double DefaultMaxDeltaTime = 0.1
 Scene::DeltaTime() が返す最大の時間(秒)のデフォルト値です。 More...
 

Function Documentation

◆ Center()

Point s3d::Scene::Center ( )
noexcept

シーンの中心の座標を Point 型で返します。

Returns
シーンの中心の座標

◆ CenterF()

Vec2 s3d::Scene::CenterF ( )
noexcept

シーンの中心の座標を Vec2 型で返します。

Returns
シーンの中心の座標

◆ ClientToScene()

Vec2 s3d::Scene::ClientToScene ( Vec2  pos)
noexcept

クライアント座標をシーンの座標に変換します。

Remarks
Cursor::PosRaw() が返す座標をシーンの座標に変換できます。
Parameters
posクライアント座標(ピクセル)
Returns
シーン座標(ピクセル)

◆ DeltaTime()

double s3d::Scene::DeltaTime ( )
noexcept

前回の System::Update() からの経過時間(秒)を、Scene::GetMaxDeltaTime() を超えない値で返します。

Remarks
この値をもとにアニメーションやイベントの処理などを行うことで、フレームレートが上下しても対応できます。
System::Update() を呼ぶことで値が更新されます。
Returns
前回のフレームからの経過時間(秒)と Scene::GetMaxDeltaTime() のうち、小さいほうの値

◆ FrameCount()

int32 s3d::Scene::FrameCount ( )
noexcept

System::Update() が呼ばれた回数(= フレームカウント)を返します。

Remarks
ユーザの環境によってフレームレートが変わるため、この値をアニメーション等の制御に使ってはいけません。
Returns
System::Update() が呼ばれた回数

◆ GetBackground()

const ColorF& s3d::Scene::GetBackground ( )
noexcept

現在のシーンをクリアする色(背景色)を返します。

Returns
シーンをクリアする色

◆ GetLetterBox()

const ColorF& s3d::Scene::GetLetterBox ( )
noexcept

現在のレターボックスの色を返します。

Returns
レターボックスの色

◆ GetMaxDeltaTime()

double s3d::Scene::GetMaxDeltaTime ( )
noexcept

Scene::DeltaTime() が返す最大の時間(秒)の現在の設定を返します。

Returns
Scene::DeltaTime() が返す最大の時間(秒)

◆ GetResizeMode()

ResizeMode s3d::Scene::GetResizeMode ( )
noexcept

ウィンドウのサイズを変更したときに、シーンをどのようにリサイズするかの現在の設定を返します。

Returns
シーンのリサイズモード

◆ GetTextureFilter()

TextureFilter s3d::Scene::GetTextureFilter ( )
noexcept

ウィンドウのクライアント領域がシーンのサイズと異なる場合にシーンを拡大縮小描画するために使うテクスチャフィルタの現在の設定を返します。

Returns
シーンを拡大縮小描画する際に使うテクスチャフィルタ

◆ Height()

int32 s3d::Scene::Height ( )
noexcept

現在のシーンの高さ(ピクセル)を返します。

Returns
シーンの高さ(ピクセル)

◆ HorizontalAspectRatio()

template<class Type = double>
Type s3d::Scene::HorizontalAspectRatio ( )
inlinenoexcept

◆ Rect()

s3d::Rect s3d::Scene::Rect ( )
noexcept

左上が (0, 0) で現在のシーンと同じ大きさの Rect を返します。

Returns
シーンと同じ大きさの Rect

◆ Resize() [1/2]

void s3d::Scene::Resize ( int32  width,
int32  height 
)

シーンの幅と高さを変更します。

Remarks
シーンのリサイズモードが ResizeMode::Keep でなければ、ウィンドウのリサイズ時に自動的にシーンのサイズも変更されます。
Parameters
width新しいシーンの幅(ピクセル)
height新しいシーンの高さ(ピクセル)

◆ Resize() [2/2]

void s3d::Scene::Resize ( s3d::Size  size)

シーンの幅と高さを変更します。

Remarks
シーンのリサイズモードが ResizeMode::Keep でなければ、ウィンドウのリサイズ時に自動的にシーンのサイズも変更されます。
Parameters
size新しいシーンの幅と高さ(ピクセル)

◆ SetBackground()

void s3d::Scene::SetBackground ( const ColorF color)

シーンの背景色を設定します。色のアルファ成分は無視されます。 @reamrk デフォルトは Scene::DefaultBackgroundColor です。

Parameters
color

◆ SetLetterbox()

void s3d::Scene::SetLetterbox ( const ColorF color)

シーンとウィンドウのアスペクト比が異なる際に、余白となるスペース「レターボックス」の色を設定します。 @reamrk デフォルトは Scene::DefaultLetterBoxColor です。

Parameters
colorレターボックスの色

◆ SetMaxDeltaTime()

void s3d::Scene::SetMaxDeltaTime ( double  timeSec)

Scene::DeltaTime() が返す最大の時間(秒)を設定します。

Parameters
timeSec最大の時間(秒)

◆ SetResizeMode()

void s3d::Scene::SetResizeMode ( ResizeMode  resizeMode)

ウィンドウのサイズを変更したときに、シーンをどのようにリサイズするかを設定します。 @reamrk デフォルトは Scene::DefaultResizeMode です。

Parameters
resizeModeシーンのリサイズモード

◆ SetTextureFilter()

void s3d::Scene::SetTextureFilter ( TextureFilter  textureFilter)

ウィンドウのクライアント領域がシーンのサイズと異なる場合にシーンを拡大縮小描画するために使うテクスチャフィルタを設定します。 @reamrk デフォルトは Scene::DefaultTextureFilter です。

Parameters
textureFilterシーンを拡大縮小描画する際に使うテクスチャフィルタ

◆ Size()

s3d::Size s3d::Scene::Size ( )
noexcept

現在のシーンの幅と高さ(ピクセル)を返します。

Returns
シーンの幅と高さ(ピクセル)

◆ Time()

double s3d::Scene::Time ( )
noexcept

アプリケーションが起動してからの経過時間(秒)を返します。

Remarks
System::Update() を呼ぶことで値が更新されます。
Returns
アプリケーションが起動してからの経過時間(秒)

◆ Width()

int32 s3d::Scene::Width ( )
noexcept

現在のシーンの幅(ピクセル)を返します。

Returns
シーンの幅(ピクセル)

Variable Documentation

◆ DefaultBackgroundColor

constexpr ColorF s3d::Scene::DefaultBackgroundColor = Palette::DefaultBackground
inlineconstexpr

シーンの背景色のデフォルト色です。

◆ DefaultLetterBoxColor

constexpr ColorF s3d::Scene::DefaultLetterBoxColor = Palette::DefaultLetterbox
inlineconstexpr

ウィンドウのクライアント領域がシーンよりも大きい場合に余白となるスペース「レターボックス」のデフォルト色です。

◆ DefaultMaxDeltaTime

constexpr double s3d::Scene::DefaultMaxDeltaTime = 0.1
inlineconstexpr

Scene::DeltaTime() が返す最大の時間(秒)のデフォルト値です。

◆ DefaultResizeMode

constexpr ResizeMode s3d::Scene::DefaultResizeMode = ResizeMode::Virtual
inlineconstexpr

ウィンドウをリサイズしたときのシーンのサイズの扱いのデフォルト値です。

◆ DefaultSceneSize

constexpr s3d::Size s3d::Scene::DefaultSceneSize = Window::DefaultClientSize
inlineconstexpr

シーンの幅と高さ(ピクセル)のデフォルト値です。

◆ DefaultTextureFilter

constexpr TextureFilter s3d::Scene::DefaultTextureFilter = TextureFilter::Linear
inlineconstexpr

ウィンドウのフレームバッファのサイズがシーンのサイズと異なる際、シーンの拡大縮小描画に用いるテクスチャフィルタのデフォルト値です。