マイペースなプログラミング日記

DTMやプログラミングにお熱なd-kamiがマイペースに書くブログ

2Dグラフィックスで3D

高速化!

Canvasがあまりにも遅かったので、Canvasにできるだけアクセスしないようにしたら、Chromeにおいて劇的に速くなった。Firefoxなどの他のブラウザではかなり遅い。うーむhttp://d-kami.net/d2d3/_d3d.html

3Dを高速化をしようとして

2Dグラフィックスで3Dを高速化しようとして結局は何も変わらなくて...じゃなくて、全然高速化できなかったというな話。ループの中でインスタンス生成しまくりだったので、それをやめてループ中では一切インスタンスを生成しないように変えたが高速化されなか…

WebGLを使わずに3D

実際にやってみたら悲惨なことになった。私のCore i5のマシンだと途中でフリーズするっぽい。でもなんとか動いている。マウスのドラッグで角度変えられるけど、重すぎる... Canvas2Dで3D

Lambertシェーダを適用

前回は単純に法線の向きだけで色を決定していたが、今回は光源への向き、光源の色、3Dモデルの色を使って、色を計算した。上の画像は光源が左前方にあるため、右側が暗くなっている。下の画像は単純に法線だけで決めているため、正面を向いていればだいたい…

2Dグラフィックスで3Dモデル表示 法線補間

上が法線を補間した画像で下が補間無しの画像。上の画像の法線がおかしいかもしれない。もう少しでLambertできそうだけど、結果がおかしくなりそうで怖い

Zバッファした

線形補間を使いながらZバッファ法を実装。これで、後ろに隠れているポリゴンが手前にくることがなくなった。以前は酷かった。次はシェーダの実装を目指す。Lambertができればいいかな。法線も線形補間しなければ

三度目の正直!2Dグラフィックライブラリで3Dモデルを表示する!

上の画像が2Dグラフィックライブラリで表示したもの。下の画像が3Dグラフィックライブラリで表示したもの。まぁ、微妙な感じだけど、2Dグラフィックライブラリで3Dモデルを表示することができました。が...このプログラム、角度を変えると...

今度こそOpenGLやDirectXを使わずに3Dモデルを表示する!

前回はワイヤーフレームだったが、今回は色を塗った。でも面の前後関係の計算が微妙なので、後ろにあるパーツが手前に見えたりする。あと法線ベクトルの計算ミスなのか色がおかしい部分がある。細かい部分を修正すれば満足できるかも!

Google Mapでワイヤーフレーム

Google Maps APIでメタセコイアで作った3Dモデルのワイヤーフレーム表示。何をやっているんだ俺は

OpenGL、DirectXを使わずにMQOを描画してみた

ワイヤーフレームだけど、OpenGLもDirectXも使わずにMQOを読み込んで描画してみた。あとは色を付けるだけだけど、自力でまともなシェーダーは大変そうなので、手抜き色付けになりそう

OpenGLやDirectXを使わずに3Dに挑戦(謎)

タイトルの通り、自分で計算して3Dしてみたい。つまり2Dグラフィックライブラリを使って3Dしたい!。そんな気持ちが強くなってきた。好きにやろう!