SetFullSceneAntiAliasingMode

画面のフルスクリーンアンチエイリアスモードの設定をする

SetFullSceneAntiAliasingMode Samples, Quality

int Samples : マルチサンプルレベル
int Quality : マルチサンプルクオリティ

(プラグイン / モジュール : DxLibW)

解説

画面のフルスクリーンアンチエイリアスモードの設定をします。


<注意!>

1.この関数は DxLib_Init の前で実行した場合のみ効果が得られます

2.この関数は実行したPCに搭載されているグラフィックスデバイスがフルシーンアンチエイリアスに対応している場合のみ効果を得ることができます

3.フルスクリーンアンチエイリアスを有効にした場合は必ず SetDrawScreen で「裏画面」を使用して ScreenFlip で画面を更新する必要があります

フルシーンアンチエイリアスが有効なのは主に3D描画に関してで、2D描画には殆ど効果はありません。
( 寧ろぼやけて汚くなってしまうことも・・・ )

3D描画の結果は、フルシーンアンチエイリアスを有効にすることによってジャギが消え、フルシーンアンチエイリアスがOFFの時には潰れてしまっていた細かい部分も見えるようになります。

要は元の画面解像度の高い解像度の画面に描画した結果を綺麗に縮小したような効果を得ることができます。

その「画面の解像度に対して、どれくらい高い解像度の画面に描画したのと同じような結果を得るか」の「どれくらい」の部分に当たるのが引数 Samples です。

Samples の値を 1 にした場合は1倍なので、フルシーンアンチエイリアスの効果は得られません。
2にすると2倍面積の解像度の画面に描画してそれを綺麗に縮小したような効果をえることが、4にすると4倍面積の解像度の、16にすると16倍面積の解像度の画面に描画してから縮小したような効果を得ることができます。
( つまり画面の解像度が 640x480 だった場合は 2560x1920 の解像度の画面に描画してから縮小したような結果が得られる!( 解像度が倍になると面積は4倍になるので面積16倍=解像度4倍 ) )

ただ、高い解像度の画面に描画する、となると想像が付くと思いますが、引数 Samples の値が大きければ大きいだけ処理負荷は高くなります。
フルシーンアンチエイリアス無しと比べると Samples の値が 4 でもかなり見た目が違いますので、効果が得られる可能な限り小さい値を渡すのが賢明です。

引数 Quality について、Samples の値に従って「高い解像度の画面に描画して、それを綺麗に縮小した場合と同じような効果が得られる」フルシーンアンチエイリアスの機能ですが、
その「綺麗に縮小」する工程の、「どのくらい綺麗にするか」を Quality で指定します。

値の上限はグラフィックスデバイス毎に設定されていて、大体指定できる範囲は 0 ~ 3 です。この引数も Samples と同様に値が大きければ大きいほど処理負荷が高くなりますので、
満足できる効果が得られる、可能な限り小さい値を渡すのが賢明です。

尚、この関数でフルスクリーンアンチエイリアスモードの設定を行えるのは裏画面、表画面のみで、MakeScreen 関数で作成できる描画可能画像のフルスクリーンアンチエイリアスについての設定は SetCreateDrawValidGraphMultiSample で行います。

戻り値:
  0:成功

情報

プラグイン / モジュールDxLibW
バージョン3.24f
作成日2026/04/12
著作者DxLib: Takumi Yamada / HSP binding: IronHSP Project
URLhttps://dxlib.xsrv.jp/
備考hspdxlib.as をインクルードして使用
タイプDxLib ゲームライブラリ
グループDxLib その他
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\hspdxlib.hs