2009/11/24

SIO2 - マルチタッチを検出する(2)

開発環境を iPhone SDK 3.1.2, Xcode 3.2.1, SIO2 intteractive 1.4 に変えて、作っていたプログラムを新たに tutorial062 にマージしたところ、Interface Builder で Multiple Touch にチェックを入れるだけではマルチタッチが検出できなくなってしまいました。

いろいろ調べたり試したりしたところ、Classes/EAGLView.mm の createFramebuffer 関数で EAGLView の multipleTouchEnabled を YES にしたらうまくいくことが分かりました。なにゆえに昔はこうしなくても良かったのかまでは調べていませんが、とりあえずこれで動いてます。Window と View の両方で multipleTouchEnabled=YES にする必要があるとか?(教えて君)

追加後のコードはこんな感じになります。


// EAGLView.mm
- (BOOL)createFramebuffer {
self.multipleTouchEnabled=YES;
glGenFramebuffersOES(1, &viewFramebuffer);