GraphicsContext クラス (Sce.Pss.Core.Graphics)

提供: MonoBook
2012年5月11日 (金) 17:47時点における114.48.18.195 (トーク)による版 (→‎コンストラクタ)
ナビゲーションに移動 検索に移動

GraphicsContext クラスとは、PlayStation Suiteにおけるグラフィックコンテキストを表すクラスである。

主にGameEngine2Dを使わずに低レベルでゴリゴリやりたい場合にもちいる。 またGameEngine2Dに変わる独自フレームワークを構築するような場合には、このクラスの知識が必須となる。

なお、GraphicsContextクラスのインスタンスは1アプリ1個までであり、2個以上作るとぶっ壊れる。

構文

public class GraphicsContext : IDisposable

GraphicsContextクラスはIDisposableを継承しているので、本来であれば使い終わったらDisposeメソッドを呼ぶ必要があるが、よほど特殊なケースでもないかぎりアプリ終了時以外でGraphicsContextのインスタンスを消滅させることはない。アプリ終了時にはプロセスごと消え去るのでDisposeする必要もとくにない。

構成

コンストラクタ

アクセス キーワード コンストラクタ名 概要
public GraphicsContext () 標準的なグラフィクスコンテキストを作成する。
public GraphicsContext (int, int, PixelFormat, PixelFormat, MultiSampleMode) 解像度などを指定してグラフィクスコンテキストを作成する。PlayStation Suite Simulatorで解像度を変更したい場合は、これを使う。

プロパティ

アクセス キーワード 戻り値 プロパティ名 アクセサ 概要
public GraphicsCaps GraphicsContext.Caps プロパティ (Sce.Pss.Core.Graphics) get 各パラメータの許容範囲やサポートする拡張機能などを取得する
public FrameBuffer GraphicsContext.Screen プロパティ (Sce.Pss.Core.Graphics) get デフォルトのスクリーンを表すフレームバッファを取得する
public static ImageSize[] GraphicsContext.ScreenSizes プロパティ (Sce.Pss.Core.Graphics) get グラフィクスコンテキストを作成する時に指定できるスクリーンサイズの配列を取得する

メソッド

アクセス キーワード 戻り値 メソッド名 概要
public void GraphicsContext.Dispose () メソッド (Sce.Pss.Core.Graphics) グラフィクスコンテキストのアンマネージドリソースガーベジコレクター対象外のリソース)を解放する。
public void GraphicsContext.Clear () メソッド (Sce.Pss.Core.Graphics) すべてのフレームバッファーをクリアする。
public void GraphicsContext.Clear (ClearMask) メソッド (Sce.Pss.Core.Graphics) 指定したフレームバッファーをクリアする。
public void GraphicsContext.Disable (EnableMode) メソッド (Sce.Pss.Core.Graphics) 指定したグラフィクス機能を無効にする。アルファブレンドなどを切りたい場合などに使う。
public void GraphicsContext.DrawArrays (Primitive[]) メソッド (Sce.Pss.Core.Graphics) プリミティブを描画する (プリミティブ配列用)
public void GraphicsContext.DrawArrays (Primitive[], int, int) メソッド (Sce.Pss.Core.Graphics) プリミティブを描画する (プリミティブ配列用、範囲あり)
public void GraphicsContext.DrawArrays (DrawMode, int, int) メソッド (Sce.Pss.Core.Graphics) プリミティブを描画する
public void GraphicsContext.DrawArrays (DrawMode, int, int, int) メソッド (Sce.Pss.Core.Graphics) プリミティブを描画する (複数プリミティブ用)
public void GraphicsContext.Enable (EnableMode) メソッド (Sce.Pss.Core.Graphics) 指定したグラフィクス機能を有効にする
public void GraphicsContext.Enable (EnableMode, bool) メソッド (Sce.Pss.Core.Graphics) 指定したグラフィクス機能を有効または無効にする
public BlendFunc GraphicsContext.GetBlendFunc () メソッド (Sce.Pss.Core.Graphics) アルファブレンド関数を取得する
public BlendFunc GraphicsContext.GetBlendFuncAlpha () メソッド (Sce.Pss.Core.Graphics) アルファブレンド関数を取得する (アルファチャンネル用)
public BlendFunc GraphicsContext.GetBlendFuncRgb () メソッド (Sce.Pss.Core.Graphics) アルファブレンド関数を取得する (RGBチャンネル用)
public Vector4 GraphicsContext.GetClearColor () メソッド (Sce.Pss.Core.Graphics) フレームバッファーのクリア時に塗りつぶされる色を取得する
public float GraphicsContext.GetClearDepth () メソッド (Sce.Pss.Core.Graphics) フレームバッファーのクリア時に設定されるデプス値を取得する
public int GraphicsContext.GetClearStencil () メソッド (Sce.Pss.Core.Graphics) フレームバッファーのクリア時に設定されるステンシル値を取得する
public ColorMask GraphicsContext.GetColorMask () メソッド (Sce.Pss.Core.Graphics) カラーの書き込みマスクを取得する
public CullFace GraphicsContext.GetCullFace () メソッド (Sce.Pss.Core.Graphics) バックフェースカリングを取得する
public DepthFunc GraphicsContext.GetDepthFunc () メソッド (Sce.Pss.Core.Graphics) デプステスト関数を取得する
public Vector2 GraphicsContext.GetDepthRange () メソッド (Sce.Pss.Core.Graphics) デプス値の範囲を取得する
public FrameBuffer GraphicsContext.GetFrameBuffer () メソッド (Sce.Pss.Core.Graphics) フレームバッファを取得する
public float GraphicsContext.GetLineWidth () メソッド (Sce.Pss.Core.Graphics) ライン幅を取得する
public PolygonOffset GraphicsContext.GetPolygonOffset () メソッド (Sce.Pss.Core.Graphics) ポリゴンオフセットを取得する
public ImageRect GraphicsContext.GetScissor () メソッド (Sce.Pss.Core.Graphics) シザーテストの矩形を取得する
public ShaderProgram GraphicsContext.GetShaderProgram () メソッド (Sce.Pss.Core.Graphics) シェーダープログラムを取得する
public StencilFunc GraphicsContext.GetStencilFunc () メソッド (Sce.Pss.Core.Graphics) ステンシルテスト関数を取得する
public StencilFunc GraphicsContext.GetStencilFuncBack () メソッド (Sce.Pss.Core.Graphics) ステンシルテスト関数を取得する (裏面用)
public StencilFunc GraphicsContext.GetStencilFuncFront () メソッド (Sce.Pss.Core.Graphics) ステンシルテスト関数を取得する (表面用)
public StencilOp GraphicsContext.GetStencilOp () メソッド (Sce.Pss.Core.Graphics) ステンシルテスト操作を取得する
public StencilOp GraphicsContext.GetStencilOpBack () メソッド (Sce.Pss.Core.Graphics) ステンシルテスト操作を取得する (裏面用)
public StencilOp GraphicsContext.GetStencilOpBack () メソッド (Sce.Pss.Core.Graphics) ステンシルテスト操作を取得する (表面用)
public Texture GraphicsContext.GetTexture (int) メソッド (Sce.Pss.Core.Graphics) テクスチャを取得する
public VertexBuffer GraphicsContext.GetVertexBuffer (int) メソッド (Sce.Pss.Core.Graphics) 頂点バッファを取得する
public ImageRect GraphicsContext.GetViewport () メソッド (Sce.Pss.Core.Graphics) ビューポートの矩形を取得する
public bool GraphicsContext.IsEnabled (EnableMode) メソッド (Sce.Pss.Core.Graphics) 指定されたグラフィクス機能が有効かどうかを取得する
public void GraphicsContext.ReadPixels (byte[], PixelFormat, int, int, int, int) メソッド (Sce.Pss.Core.Graphics) フレームバッファのピクセルを読み出す
public void GraphicsContext.ReadPixels (Texture2D, int, int, int, int, int, int, int) メソッド (Sce.Pss.Core.Graphics) フレームバッファのピクセルを読み出す (2Dテクスチャにコピー)
public void GraphicsContext.ReadPixels (TextureCube, int, TextureCubeFace, int, int, int, int, int, int) メソッド (Sce.Pss.Core.Graphics) フレームバッファのピクセルを読み出す (キューブテクスチャにコピー)
public void GraphicsContext.SetBlendFunc (BlendFunc) メソッド (Sce.Pss.Core.Graphics) アルファブレンド関数を設定する
public void GraphicsContext.SetBlendFunc (BlendFuncMode, BlendFuncFactor, BlendFuncFactor) メソッド (Sce.Pss.Core.Graphics) アルファブレンド関数を設定する
public void GraphicsContext.SetBlendFuncAlpha (BlendFunc) メソッド (Sce.Pss.Core.Graphics) アルファブレンド関数を設定する (アルファチャンネル用)
public void GraphicsContext.SetBlendFuncAlpha (BlendFuncMode, BlendFuncFactor, BlendFuncFactor) メソッド (Sce.Pss.Core.Graphics) アルファブレンド関数を設定する (アルファチャンネル用)
public void GraphicsContext.SetBlendFuncRgb (BlendFunc) メソッド (Sce.Pss.Core.Graphics) アルファブレンド関数を設定する (RGBチャンネル用)
public void GraphicsContext.SetBlendFuncRgb (BlendFuncMode, BlendFuncFactor, BlendFuncFactor) メソッド (Sce.Pss.Core.Graphics) アルファブレンド関数を設定する (RGBチャンネル用)
public void GraphicsContext.SetClearColor (Vector4) メソッド (Sce.Pss.Core.Graphics) フレームバッファのクリアで使用されるカラーを設定する
public void GraphicsContext.SetClearColor (float, float, float, float) メソッド (Sce.Pss.Core.Graphics) フレームバッファのクリアで使用されるカラーを設定する
public void GraphicsContext.SetClearColor (int, int, int, int) メソッド (Sce.Pss.Core.Graphics) フレームバッファのクリアで使用されるカラーを設定する
public void GraphicsContext.SetClearDepth (float) メソッド (Sce.Pss.Core.Graphics) フレームバッファのクリアで使用されるデプス値を設定する
public void GraphicsContext.SetClearStencil (int) メソッド (Sce.Pss.Core.Graphics) フレームバッファのクリアで使用されるステンシル値を設定する
public void GraphicsContext.SetColorMask (ColorMask) メソッド (Sce.Pss.Core.Graphics) カラーの書き込みマスクを設定する
public void GraphicsContext.SetCullFace (CullFace) メソッド (Sce.Pss.Core.Graphics) バックフェースカリングを設定する
public void GraphicsContext.SetCullFace (CullFaceMode, CullFaceDirection) メソッド (Sce.Pss.Core.Graphics) バックフェースカリングを設定する
public void GraphicsContext.SetDepthFunc (DepthFunc) メソッド (Sce.Pss.Core.Graphics) デプステスト関数を設定する
public void GraphicsContext.SetDepthFunc (DepthFuncMode, bool) メソッド (Sce.Pss.Core.Graphics) デプステスト関数を設定する
public void GraphicsContext.SetDepthRange (Vector2) メソッド (Sce.Pss.Core.Graphics) デプス値の範囲を設定する
public void GraphicsContext.SetDepthRange (float, float) メソッド (Sce.Pss.Core.Graphics) デプス値の範囲を設定する
public void GraphicsContext.SetFrameBuffer (FrameBuffer) メソッド (Sce.Pss.Core.Graphics) フレームバッファを設定する
public void GraphicsContext.SetLineWidth (float) メソッド (Sce.Pss.Core.Graphics) ライン幅を設定する
public void GraphicsContext.SetPolygonOffset (float, float) メソッド (Sce.Pss.Core.Graphics) ポリゴンオフセットを設定する
public void GraphicsContext.SetPolygonOffset (PolygonOffset) メソッド (Sce.Pss.Core.Graphics) ポリゴンオフセットを設定する
public void GraphicsContext.SetScissor (ImageRect) メソッド (Sce.Pss.Core.Graphics) シザーテストの矩形を設定する
public void GraphicsContext.SetScissor (int, int, int, int) メソッド (Sce.Pss.Core.Graphics) シザーテストの矩形を設定する
public void GraphicsContext.SetShaderProgram (ShaderProgram) メソッド (Sce.Pss.Core.Graphics) シェーダープログラムを設定する
public void GraphicsContext.SetStencilFunc (StencilFunc) メソッド (Sce.Pss.Core.Graphics) ステンシルテスト関数を設定する
public void GraphicsContext.SetStencilFunc (StencilFuncMode, int, int, int) メソッド (Sce.Pss.Core.Graphics) ステンシルテスト関数を設定する
public void GraphicsContext.SetStencilFuncBack (StencilFunc) メソッド (Sce.Pss.Core.Graphics) ステンシルテスト関数を設定する (裏面用)
public void GraphicsContext.SetStencilFuncBack (StencilFuncMode, int, int, int) メソッド (Sce.Pss.Core.Graphics) ステンシルテスト関数を設定する (裏面用)
public void GraphicsContext.SetStencilFuncFront (StencilFunc) メソッド (Sce.Pss.Core.Graphics) ステンシルテスト関数を設定する (表面用)
public void GraphicsContext.SetStencilFuncFront (StencilFuncMode, int, int, int) メソッド (Sce.Pss.Core.Graphics) ステンシルテスト関数を設定する (表面用)
public void GraphicsContext.SetStencilOp (StencilOp) メソッド (Sce.Pss.Core.Graphics) ステンシルテスト操作を設定する
public void GraphicsContext.SetStencilOp (StencilOpMode, StencilOpMode, StencilOpMode) メソッド (Sce.Pss.Core.Graphics) ステンシルテスト操作を設定する
public void GraphicsContext.SetStencilOpBack (StencilOp) メソッド (Sce.Pss.Core.Graphics) ステンシルテスト操作を設定する (裏面用)
public void GraphicsContext.SetStencilOpBack (StencilOpMode, StencilOpMode, StencilOpMode) メソッド (Sce.Pss.Core.Graphics) ステンシルテスト操作を設定する (裏面用)
public void GraphicsContext.SetStencilOpFront (StencilOp) メソッド (Sce.Pss.Core.Graphics) ステンシルテスト操作を設定する (表面用)
public void GraphicsContext.SetStencilOpFront (StencilOpMode, StencilOpMode, StencilOpMode) メソッド (Sce.Pss.Core.Graphics) ステンシルテスト操作を設定する (表面用)
public void GraphicsContext.SetTexture (int, Texture) メソッド (Sce.Pss.Core.Graphics) テクスチャを設定する
public void GraphicsContext.SetVertexBuffer (int, VertexBuffer) メソッド (Sce.Pss.Core.Graphics) 頂点バッファを設定する
public void GraphicsContext.SetViewport (int, int, int, int) メソッド (Sce.Pss.Core.Graphics) ビューポートの矩形を設定する
public void GraphicsContext.SetViewport (ImageRect) メソッド (Sce.Pss.Core.Graphics) ビューポートの矩形を設定する

フィールド

関連項目

参考文献


外部リンク