2009-05-22から1日間の記事一覧

z値の可能性

ViewPortでzのことを考えていたので、ついでに。 DXRubyは2D描画だから、zは描画順のソートにのみ使われる。 ポリゴン描画の座標を計算するときにzを使って透視座標変換すれば疑似3Dができるようになる。 4点の座標をそれぞれxyzで表現するようにすれば自由…

テクスチャの合成

DXRubyではなんとなく半透明と加算合成に対応している。 DirectXはテクスチャを描画する際に、描画しようとするテクスチャと、描画先にある絵をどのように合成するかを指定する、レンダーステートが存在する。 簡単に言えば、D3DBLEND_SRCALPHAとすれば指定…

Imageクラスの修正が半分できた

とりあえず、レンダーターゲット化して現在と互換レベルまでできた。 テクスチャのダーティ領域を設定しないと全体の転送をしてしまうから、描画時のロック範囲を狭くしてみたところなぜか異様に遅くなってしまったので、自分でダーティ領域を管理するように…

なんというか、無茶だ

Imageクラスの修正。 規模でかすぎな上に複雑で、能力の限界を超え気味。 とりあえず単純な矩形転送をStretchRectで実装してみたが、やっぱりGetRenderTargetDataが死ぬほど遅い。 これでできればよかったのだが、この対策のためにかかる手間が膨大すぎるか…

Star RubyとDXRubyの似ているところと似てないところ

数あるRuby用ゲームライブラリの中でも、Star RubyとDXRubyはなんだかよく似ている。 英語圏でメジャーなrubygameとかgosuとかまで含めるとまた色々あるのかもしれないが、ちょっと見た限りではシンプルではあってもあんまり似ていなかった。 どこが似ていて…