0

私は objC とゲーム プログラミング全般に非常に慣れていないため、これが多くの人ができる質問である場合は申し訳ありません [self facepalm]。

ゲーム ループ (NSObject) をコントローラーとしてセットアップしようとしています。また、Interface Builder (MainMenu.xib) を介して Window に接続された NSOpenGLView もあります。ループは、すべてのキーボード入力を処理し、ビューに何を描画するかを管理する必要があります。

- (void)keyDown:(NSEvent *)theEvent. この入力をコントローラー/ループに渡すにはどうすればよいですか?

keyinput をループに送信するために、postNotificationName で NSNotificationCenter を使用しました。しかし、それは遅くて「遅れている」ようです。これは正しい方法ではありません。

どんなヒントも素晴らしいでしょう!

4

1 に答える 1

0

を使用してイベントを配信するのと同じ方法NSControlを使用します。または、iOS のUIControl's addTarget:action:forControlEvents:.

アイデアは、いくつかのオブジェクトをそのようなイベントの「リスナー」(ターゲット) として登録し、イベントがトリガーされたときに呼び出されるメソッド (アクション) を登録することです。ビューのプロトコルを宣言し、イベントを受信する必要がある各クラスをそれに準拠させることで、物事を簡単にすることができます。

于 2013-05-24T02:44:42.920 に答える