レス数が1スレッドの最大レス数(1000件)を超えています。残念ながら投稿することができません。
おちゃめくらぶ掲示板
-
プチコンで2軸回転処理をするプログラム
プチコン用のGRP2軸回転プログラムを作ったにょ。
http://ww5.tiki.ne.jp/~ochame/petitcom/2rotate.htm
「2軸回転」というのは簡単に言えばスーファミのF-ZEROなどに使われているような疑似3D
表示を実現するためのものにょ。
実際に作ったのは今年の初頭でこれを使ったプチコン講座も考えていたにょ。
詳しくはリンク先の後書きにも書いているように本来ならばその講座で発表する予定だった
だけど講座そのものが中止になってしまったためにょ。
せっかく作ったのにもったいないというのもあるし、2軸回転に興味を持っている人は結構
多かったため「2軸回転ルーチン」単体として発表することにしたにょ。
このプログラムの仕組みなどはほとんどリンク先に書いているにょ。
といっても、小中学生でも分かるレベルで詳しく書こうとするととんでもない量になって
しまうためその辺はご了承願いたいにょ。
これを発表するために小中学生向けの高校数学講座を考えていたのだけど書こうと思った
ことを羅列していったらすごい量になってしまいさすがにやる気が失せてしまったにょ。
最低でも行列、ベクトル、三角関数は理解しておく必要があるにょ。
最悪の場合は公式だけを羅列するという方法もあったけど2軸回転はそれでは求めることが
できないため高校レベルの数学力が必要になってくるにょ。
2軸回転はちゃんと理解するのが難しいけどそれ以外でも参考になることはリンク先に書いて
いるにょ。
例えばこの図1だけどこれは画像処理においては非常にポピュラーなテクニックなので覚えて
おいて損はないにょ。
http://ww5.tiki.ne.jp/~ochame/petitcom/image/2rot_1.jpg
このルーチンをアセンブラなどで記述して高速な回転表示を行っているゲームを作った人も
多いのではないかと思われるにょ。
プチコンはかつての8bitパソコンと比べてBASIC同士の比較であれば演算速度は桁違いに
速いけど8bit機のマシン語相手だとシンプルな演算の繰り返し処理では負けてしまう場合も
あるにょ。
この図2は疑似3Dプログラム全般で使える非常に便利な知識にょ。
http://ww5.tiki.ne.jp/~ochame/petitcom/image/2rot_1.jpg
また、これはお絵かきをしている人ならば一点透視図や二点透視図による背景画を描く場合に
知っておくことで正しいパースで描くことが可能になるにょ。
詳しく演算する必要はなく大体の目安程度ならば暗算でもできることだしね。
この図3は2軸回転以外ではほとんどゲームで使うことのない知識にょ。
http://ww5.tiki.ne.jp/~ochame/petitcom/image/2rot_1.jpg
ポリゴンやワイヤーフレームなどの3Dゲームならば行列演算で簡単に求まるからね。
お絵かきならば三点透視図に適用できるけれどこれを考えて描くというのは普通の人には
まずできないのではないかと思うにょ。
ということで、ようやく発表に至ったこの2軸回転プログラムだけどやっぱりゲームで使う
には重すぎるにょ。
デフォの32x12ドット8倍拡大で10fps、最適化をして限界まで高速化をして20fpsだけど
レースゲームではこの解像度では厳しかったからね。
もっとも、現状ではすべて正方形のドットだけどそれを奥行きに行くに従って縦に細い
長方形を使うという方法ならばそれは改善されそうにょ。
気が向いたら作ってまた別の機会に発表するにょ。
プチコンmkIIと比べて最大10倍速になると言われているプチコン3号がもしも2軸回転
処理においても10倍速が可能ならば2軸回転プログラムは実用レベルになるかもしれ
ないにょ。
といっても、3号はBG画面に2軸回転機能が加わるなんていう可能性もなきにしもあらず
なので3号が出たあともこのプログラムは無用の長物になる可能性もあるにょ(笑)
|
|
|
掲示板管理者へ連絡
無料レンタル掲示板