仮想世界改変報告書。

僕の鼻毛の成長を見守るブログです。

xops offline ghost mode 5

冷静に考えた。
「水平方向の向き = 45度」に限っていえば、「水平方向の向き = 0度」の場合のZ座標差分に「sprt(2) / 2」を掛ければ良いのか。

でもこの掛ける数式(sqrt(2) / 2)ってどういう風に導き出したんだっけ。
わすれてもうた。
思い出したらスティックコントローラみたいな45度以外のナナメ移動にも適用できそうだけど、キーボード操作を前提にしているこのツールには関係ないかw

なにはともあれ、これで厳密なGhostModeが完成しそうだ。
プログラムソース自体は結構力技だけどw

モニタのリペアという名のデストローイ

壊れたモニタの型は LCD-A173V。
さっそくかいたいじゃー!

ツメ外すのむずい。
指痛い。
ネジ固すぎ。
ネジ穴潰れた。
しょうがないから鉄板歪めた。
手が攣った。
ついにオープン!

んでネットでいわれている通り、C922のニチコン製16V1000μFコンデンサ(?)が膨らんでいた。
でもハードウェアに疎い僕がこれ以上弄るのは危険だと判断し、後日詳しい人に聞いてみることにする。
半田付けとか中学以来やったこと無いしねw

xops offline ghost mode 4

今日、算数の先生に相談して、Deg=45の時のX座標は
sqrt(2) / 2
だったのを思い出した。
これって使えるかも?

まだよくわかんない。
参考になるサイトでも巡ってみよう。

まあ、結局はナナメ移動2倍速の仕様で終わると思うけど。

xops offline ghost mode 3

いろいろ煮詰めているうちにめんどくさくなった。
ラジアン値をPiで割った剰余を求めるいい方法が見つからなかったのが原因として大きい。
周知の通り、ラジアンも円周率も実数だけど、DelphiにはCでいうfmodみたいな実数の剰余を求める方法が無いらしい?


function fmod(a, b: Extended): Extended;
begin
if a > 0 then
while a >= b do
a := a - b
else
if a < 0 then
while a <= b do
a := a + b
else
a := 0;
Result := a;
end;

みたいな方法でも求められるけど、速度的に心配……。

インラインアセンブラに期待してみたけど、FDIV命令はDIV命令のEDXみたいに剰余は求まらないみたい。

もう……ナナメ方向の移動速度が2倍でも良いかw


p. s.
よくよく考えてみたら、剰余とか求めなくても良いかもしれない。
算出したかったのは、上や下を向きながらナナメ移動した際のZ座標の変化。

でも、剰余を求めるよりもっと難しく考える必要がありそう。
正矢とか求めるの?よくわからん。
中学生レベルの脳みそには難しすぎる。

xops offline ghost mode 2

一旦RadToDegでデグリー値に戻してから90とか180を足し引きすればいいのか!なるほど。
こうすれば小数点以下のブレが少しは抑えられるかも。

頭が冴えてると気分がいい。
やっぱり睡眠は必要だ。



あと、攻殻機動隊のPS版は超隠れた名作だったらしい。
今度見つけたら買っておこう。
すごくやすかったし。
次のページ

FC2Ad

FC2ブログ