Repo

kjana00@gmail.com

older <-

2016-01-27 00:58:55

今朝は晴れ。朝ごはんはパンとトマトとソーセージ。寒さも柔らぎ気味で日差しがあったかい。休んだ後には良いことです。いきなりやる気を失せさせるような気候でないっていうのは。

処理負荷についての話合いというか情報展開からお仕事開始。とりあえず先週の段階でやることになっててやったことについてはそれなりの成果あり。で、やっぱりそれだけじゃ全然足りないんで、こんなで行くか、と思ってたのを今日、明日ぐらいで実装して計測しますよという話と、そことは別の部分でいじらなきゃいけないところがありそうなんで、予備実験するとしたらどうするかという話と。後者は要するに、この関数呼び出しコメントアウトすると効果だけは確かめられますねっていう話なんだけど。

ということで前者の話。とりあえず細かい関数を大量に呼ぶのが悪いんだよなというのが見えてたんで、しょうがないから外のモジュールにある配列を const なポインタで受け取るコールバック関数を渡すインターフェースを作ってみることにしたんで、今ばらばらになってる配列を構造体の配列にまとめるところから。これはまあ、大した問題も無く出来上がった。

で、コールバックおを受け取る関数を作るのにしばらく悩む。渡した配列を書き換えないことを示すために const 付けたいわけなんだけど、この配列が二次元配列なもんだからちょっと謎なことになって。void func(const unsigned short (*p)[n]) に unsigned short arr[m][n] を渡すと incompatible pointer type と言われるんだよな…… const なポインタじゃないって。普通の一次元配列と何が違うか分からなくて、結局あきらめてキャストした。func 内で p 越しに配列を書き換えられないっていうのを確認してからだから一応、意図通りの動きにはなるんだけど……だいぶ気持ち悪い。

ついでに同じように細かい関数の多数回呼び出しになってるところで、前々からこういう API が共通であるべきだと思ってたっていうのがあったんで実装しておいてみて終わる感じ。とりあえずここまでで計測して、ちゃんと効果があるかどうかを確認しないと。……効果無かったらどうしよう。あるはずなんだけど、一応。

そんな感じで帰る。晩ごはんは豚汁うどんと冷奴。うどんを買い忘れてる気がして近所のスーパーに寄ったら、月末で閉店という案内が出てたりする。別資本で復活したと思ったのにもうか。しばらくトマトソースとオリーブとスパゲティをこっちに依存してたんで、また面倒臭くなるな……

後は WWW 見たりゲームしたり。やる気を出して森を進んでシェロブを倒してクリアして、これからどうしようかと悩んだ結果、カメレオンの洞窟を進行中。森のモンスターハウスで禁断の護り手とか出た時にはどうしようかと思ったけど。無事撤退出来て良かったわ。

older <-

goto

hint can be:

Tags

old

2007-05 -- 2006-12

ゲーム関係の古い記録

before 2005-12