D と MacOSX と SDL その2
PARSEC47 はだいたい動きました。 TumikiFighter も画像の通りゲームはできてます。
まだまだある問題点。
- SDL_PumpEvents で落ちる。 QZ_PumpEvents から InputMethod まわりのイベントを拾うタイミングで落ちる模様。 SDL を直接いじって対処。 InputMethod のイベントなど不要なので該当箇所を以下のように修正。面倒なのでマウスも取らなくて十分。前回落ちていたのはこれ。
event = [ NSApp nextEventMatchingMask:NSKeyDownMask|NSKeyUpMask untilDate:distantPast inMode: NSDefaultRunLoopMode dequeue:YES ];
- SDL_mixer が動作しない。なんかやたらと遅くなった後に落ちちゃいます。実際に鳴っているかどうかは未確認。 -nosound で起動して対処。
- たぶん hash の挙動がおかしい。リナザウでもよく落ちるし。どうあがいても TumikiFighter の三面以降を読みたがらないので定数いじって二面まで。
- 直感的に上記三つの問題は同一の問題で、かつ GC の問題じゃないかと思っています。根拠は省略。
- その他、 gdc がバギーな部分は適当にソースをいじってごまかしてやりました。