DXRuby 1.4.6 Reference Manual
INDEX > RenderTarget

class RenderTarget

Description

画像イメージを持ち、Windowモジュールと同じ方法で描画ができ、ハードウェア描画の対象に指定できるクラスです。
ビデオメモリにデータが配置されるため、ピクセル単位での自由な直接的な操作はできません。
しかしハードウェア描画(GPU処理)になるため、拡大/縮小/回転といった処理を含めた高速な描画が可能です。
Shaderを用いれば、より複雑な操作を高速に行うことが可能です。
Window.draw系のメソッドは画面に直接描画しますが、RenderTarget#draw系のメソッドはレシーバのRenderTargetオブジェクトに対して描画します。
基本的な使い方は、RenderTarget.newして、RenderTarget#draw系メソッドで描画、Window.draw系/RenderTarget#draw系メソッドでimageに指定して使う、という流れになります。
デバイスロスト時にデータが消えるため、その際は再描画が必要になります。
1.4.1よりRenderTarget#updateは明示的な呼び出しなく、利用時に自動的に更新されるようになりました。また、フレームを跨ぐとデータが消去されます。

Class Methods

new
RenderTargetオブジェクトを生成して返します。

Instance Methods

dispose
selfの画像リソースを解放します。
disposed?
selfがdisposeされている場合に真を返します。
draw
単純描画をします。
draw_scale
縦、横の拡大率を指定して描画します。
draw_rot
回転角度と中心を指定して描画します。
draw_alpha
アルファ値を指定して描画します。
draw_add
加算合成描画をします。
draw_sub
減算合成描画をします。
draw_shader
シェーダ処理を適用して描画します。
draw_ex
拡縮、回転、半透明、加算合成を一括指定して描画します。
draw_font
文字の描画をします。"\n"を入れると改行することができます。
draw_font_ex
高品質な文字の描画をします。
draw_morph
4点を自由に指定してimageを描画できます。これを使うと自在に変形した画像を描画することができます。
draw_tile
タイルチップと二次元配列を使ってマップ描画をします。
draw_pixel
画面の(x, y)に点を描画します。
draw_line
画面に(x1, y1)~(x2, y2)を結ぶ線を引きます。
draw_box
画面に(x1, y1)~(x2, y2)の矩形を描画します。
draw_box_fill
画面に(x1, y1)~(x2, y2)を塗りつぶす矩形を描画します。
draw_circle
画面の(x, y)を中心に半径rの円を描画します。
draw_circle_fill
画面の(x, y)を中心に半径rの塗りつぶした円を描画します。
update
描画を実行します。
width
RenderTargetの横幅を返します。
height
RenderTargetの高さを返します。
bgcolor
画面のクリア(RenderTarget#update時、描画処理前に自動的にされます)時に使う色を返します。
bgcolor=
画面のクリア(RenderTarget#update時、描画処理前に自動的にされます)時に使う色を変更します。
min_filter
draw_scaleやdraw_exのscale_x/yキーで縮小する場合に使用されるフィルタを返します。
min_filter=
draw_scaleやdraw_exのscale_x/yキーで縮小する場合に使用されるフィルタを変更します。
mag_filter
draw_scaleやdraw_exのscale_x/yキーで拡大する場合に使用されるフィルタを返します。
mag_filter=
draw_scaleやdraw_exのscale_x/yキーで拡大する場合に使用されるフィルタを変更します。
to_image
RenderTargetオブジェクトが保持する画像をImageオブジェクトに変換して返します。
discard
draw系メソッドによる描画予約を取り消します。
decide
discard時の取り消しから保護します。
resize
サイズを変更します。
ox
X軸方向の描画位置補正を返します。
ox=
X軸方向の描画位置補正を変更します。
oy
Y軸方向の描画位置補正を返します。
oy=
Y軸方向の描画位置補正を変更します。