自前メッシュ
require 'dxruby' image = Image.load("ruby.png") p1 = Polygon.new p1.vertex = [-1, -1, 0, 1, -1, 0, 1, 1, 0] p1.tutv = [0, 0, 31, 0, 31, 31] p2 = Polygon.new p2.vertex = [-1, -1, 0, 1, 1, 0, -1, 1, 0] p2.tutv = [0, 0, 31, 31, 0, 31] m = Mesh.new([p1, p2], image) Window.loop do Window.drawMesh([300,240,-300], [0, 0, 0], [200,200,200], m, -10) end
このまえ書いたのとちょっと変えた。
テクスチャはポリゴンに持たせるんじゃなくて、メッシュを作るときに指定するようにした。
どうせ同じじゃないと作れないから。
でもDirect3Dのメッシュってサブセットの集合体で、それごとにマテリアルやテクスチャをもてるから、そのようにしようと思ったら中間になんかクラスを作らないといけないかもしれない。
ま、ともかくとりあえず基本部分はできたということで。
綺麗に描画するためにはライティング関連もしっかり作らないといけないのだけど、これはまだまったくわかってないのでそのうち。
なんかシンプルな3Dダンジョンとか作れそうな感じにはなってきた。