プレイ日記
NAGI KOUCHA_PAN
おちゃめさんのポリゴン表示プログラムをプチコンmkIIから3号に移植してみました。おちゃめさんが脳内だけでモデリングしたらしい!?152ポリゴンのアンドアジェネシスが素晴らしいです。GTRIもARYOPも使わないでここまでfpsをだせるなんてすごいなあ。タッチパネルでうごかせます[BDEX33JJ]
20そうだね
プレイ済み
返信[1]
親投稿
おちゃめ ochame_nako
さすがはプチコン3号・・・プチコンmkIIと比べて桁違いに高速です。 移植ありがとうございます。本来であれば私自身の手でプチコン3号に移植したかったのですがなかなかその気がおきませんでした。 移植の際にズーム機能や光源設定機能は省略されているみたいですがプチコンmkIIに依存している処理もあるため難しいかもしれないですね。プチコンmkIIでは最大で524287までしか扱えないためオーバーフロー対策を各所で行っています。 ちなみにモデルがその4つなのには理由があるのです。 立方体、24面体、トライフォースは私より先にポリゴンプログラムを作っている人が居たためそれとの速度比較用です。 アンドアジェネシスはある程度知名度が高くある程度複雑な物体ということで脳内で作り上げた状態のものを打ち込みました。
2そうだね
プレイ済み
返信[2]
親投稿
NAGI KOUCHA_PAN
すみません。光源設定機能が抜けてるのはおちゃめさんのおっしゃるとおりプチコンmkIIに依存している処理(タッチパネルやスプライト)をわたしの力不足で移植しきれなかったのが理由です。ズーム機能の抜けは私の移植ミスです。おちゃめさんに言われて気がつきました オーバーフロー対策は気がつかなかったです。よくみてみます
0そうだね
プレイ済み
返信[3]
親投稿
NAGI KOUCHA_PAN
光源設定機能はまだなんですけどズーム機能(下画面の右端をタッチ)とおなじくぬけていたシェーディングのON/OFFだけ修正しました[XECXVNAV]
3そうだね
プレイ済み
返信[4]
親投稿
NAGI KOUCHA_PAN
まだいちぶのきょどうがへんなんですけど光源設定機能を付けた暫定版です[BD5XQ3J4]
2そうだね
プレイ済み
返信[5]
親投稿
おちゃめ ochame_nako
ついに光源の設定を実装できましたか。 これはmkIIに依存する処理が多くて難しかったと思います。 挙動が変に感じるのは私のプログラムがタッチ座標の相対値で処理しているのに対してNAGIさんの方は絶対値で処理しているためだと思います。 このせいで光源を動かすだけでモデルが回転してしまうわけです。 これはズーム処理においても同じことがいえます。 簡単にいえば私のプログラムはノートPCのスライドパッドの動作みたいな感じです。タッチの起点がどこであっても同じ量動かすことでモデルは同じ量だけ回転したりズームしたりします。
1そうだね
プレイ済み
返信[6]
親投稿
NAGI KOUCHA_PAN
オブジェクトの位置とズーム処理を相対値に修正しました。ノートPCのスライドパッドは相対値のたとえとしてわかりやすかったです。おかけでオリジナルの挙動にちかづけたかな[KJ54X39J]
0そうだね
プレイ済み
返信[7]
親投稿
おちゃめ ochame_nako
これで挙動においては私が作ったプログラムと概ね同じになりましたね。 細かいところを言えばズームで最大拡大値が限界を超えてしまったり光源の角度設定が分かりにくいなどの部分がありますがこの辺はオリジナルとは異なるだけであり表示が欠けてももっと大きくしたいというニーズもあるだろうし操作に対する慣れもあるため一概に悪い部分とはいえないですね。 やはり、mkII版のプログラムを実際に動作させてみたわけではないだろうから両者の細かい違いというのはなかなか分からないだろうし、現時点のものでもかなり再現できていてすごいと思います。(MiiverseだとmkII版の画面写真を載せることはできないし)
1そうだね
プレイ済み
返信[8]
親投稿
NAGI KOUCHA_PAN
おちゃめさんコメントありがとうございます ズームで最大拡大値が限界を超えていたばあいのしょりを修正しました[AER33NKV] こちらmkII版のプログラムを動作させてます。両者を比べて違和感はあるのですが光源の角度設定のところはよくわかりませんでした。
0そうだね
プレイ済み
返信[9]
親投稿
おちゃめ ochame_nako
私が作ったmkII版の角度設定は下図のようになっています。 縦横の黄色の線が0度を示しその交点に太陽マークがあるときは3Dモデルの真正面から光源が当たっていることを意味します。 白線(図では灰色腺)の間隔はすべて15度を示しているため画面の上端がモデルの真上、下端がモデルの真下、右端がモデルの真右、左端がモデルの真左を示します。 中心から数えて右に線4つ分、上に線3つ分の位置に太陽マークがある場合は右60度、上45度の位置に光源があるというわけです。
1そうだね
プレイ済み
返信[10]
親投稿
おちゃめ ochame_nako
これは正距円筒図法の世界地図でたとえると分かりやすいです。 上端はどの位置でも北極点を示し上90度となり、下端はどの位置も南極点を示し下90度となります。 図では90度の位置をする線(最も外側の線)が描かれていますが、これは説明のための便宜上の線で実際は画面の端が90度を示します。 ただし、プチコン3号はmkIIと違って上下左右5ドットはタッチ入力ができないため5ドット分空白を開けないとmkIIと同じ挙動を得ることはできません。(mkIIでは画面端が90度となっていたけどそれと同じことをプチコン3号で行うには90度の場所にも実線が必要)
1そうだね
プレイ済み
返信[11]
親投稿
NAGI KOUCHA_PAN
絵つきで解説ありがとうございます。なんとかりかいした(あやしい)?けどあたまがこんがらがりそうです。[DNEXXA3] プチコン3号が上下左右5ドットはタッチ入力できないのはしらなかったです。オンラインマニュアルにも非公式マニュアルにもそう書いてあるのですが私の環境では左右5ドットはなぜか入力できてしまいます。環境によるのかな?
0そうだね
プレイ済み
返信[12]
親投稿
おちゃめ ochame_nako
これでプチコンmkII版のポリゴン表示プログラムのプチコン3号完全移植という感じになりましたね。自分で作ったプログラムがプチコン3号に移植されるというのは感慨深いものがありますね。 オリジナルのプログラムで分からない部分がまだあれば言ってもらえればお答えしますよ。 ちなみにプチコン3号において周囲5ドットのタッチ座標を取得できないというのはX座標が5~314、Y座標が5~234に制限されるということです。例えばX座標0をタッチしても5になります。 これは感圧式タッチパネルの仕様で周辺部は十分な精度を確保してないためこのようにしているのだと思われます。
1そうだね
プレイ済み
返信[13]
親投稿
NAGI KOUCHA_PAN
おちゃめさんにそういってもらえると移植したかいがありました。ありがとうございます。わからないことがあったら質問したいとおもいますのでよろしくおねがいします タッチパネルの仕様はりょうかいしました
0そうだね
プレイ済み