BMPファイルを読み込めば、MMDのデフォルトのモデルは表示できるので、Google先生に聞いたらRubyでBMPファイルをあつかうを発見した。さっそくダウンロードして、readを使い画像を読み込みこんだ。あとはpgetを使いOpenGLで扱える形式に変更すればOK。OpenGLに渡す形式はunsigned byteにしたため、Rubyでは文字列としてバイナリを扱うようにした。あとは描画するのみ!
def get_raw(bitmap) image = "" bitmap.height.times do |y| bitmap.width.times do |x| rgb = bitmap.pget(x, y) index = (y * bitmap.width + x) * 3 image[index] = rgb[0] image[index + 1] = rgb[1] image[index + 2] = rgb[2] end end return image end