【動画作ってみた】
暫く書き込んでなかったので、前の記事から随分と技術的(しょうもないけどw)差が開いてしまったww
動画は、原点中心に配置された面群が音量とBPMに合わせて座標移動と拡大されるというもの。
飛んでる面は白色だけど、実際は白いテクスチャになっている。
ここで使っている単なるDSPだと、テクスチャへのアクセスもボトルネックと言えるほどの処理負荷となる。
白い面を「生成」するのと、白いテクスチャを「ロード」するのとでは処理負荷が全然違うって言うこと。
↓
(=´Д`=)ゞ イヤァーw
まぁ、なんだかんだで、自己マンMAXですな!コリャw
まぁまぁ、でもでも、操作してみると面白い事は面白い。
---------- キリトリ -----------
【クォータニオンその後】
前回は色々と悩んでいた風に終わった記事だったけど、
その後、よーくよく考えて試行錯誤した結果、クォータニオンはかなり使えた。
(ここにたどり着くのに時間がコンダケかかるって言う時点で自分自身どうかと思うけどw)
だけどここで使っているDSPは基本整数型。
で、整数精度だと誤差も激しい。
実際はx16384精度で小数点を表現しているけど
正規化したベクトルの長さが16385とか16383になったりする。
この1/16384の誤差によってベクトルのNAS角が
(本当は0度なのに)
0.7度(だったかな)とかいう誤差が生まれてしまう。
これによって、ある点を注視するというシミュレーションをした時に、
注視してるつもりだけど、再計算すると0.7度ずれてるからまた注視補正しはじめる・・・
というアホナ感じになってしまった。
この辺はナンヤカンヤのウマイコトやってなんとか乗り切った。
【結局double型も使うハメニナル】
また、32bit整数では正規化して無いでかいベクトルのスカラー量を出す際にオーバーフローを起こしてしまう。
従ってコレばっかりはdouble型で対処した。