0

Java3D プログラムの SimpleUniverse に Java3D の KeyNavigatorBehavior を追加しました。上、下、左、右の矢印が押されたときに KeyNavigatorBehavior が検出することは知っていますが、WASD などの他のキーも検出したいのですが、「カスタム Java3D キー ナビゲーターの動作」をグーグルで検索するのはあまりうまくいきませんでした。

ここにあるKeyNavigatorBehaviorソースコードを見てきました:

http://www.java2v.com/Open-Source/Java-Document/6.0-JDK-Modules/java-3d/org/jdesktop/j3dfly/utils/vpbehaviors/KeyNavigatorBehavior.java.htm

KeyNavigator クラスが次の場所にあることに気付きました。

http://www.java2v.com/Open-Source/Java-Document/6.0-JDK-Modules/java-3d/com/sun/j3d/utils/behaviors/keyboard/KeyNavigator.java.htm

キーイベントを処理しているようです。残念ながら、このオブジェクトは getter も setter も持たないプライベート クラス メンバであるため、アクセスする方法はないと思います。

また、SimpleUniverse.getCanvas() に KeyListener を追加しようとしましたが、うまくいきませんでした。正しい方法ではないと思います。

Java3Dで検出される独自のキーを追加する方法について、誰かが私に提案できるかどうか疑問に思っています。

(ソース コードをコピー アンド ペーストして、必要な変更を加えることができることはわかっていますが、より適切で痛みの少ない代替手段があることを願っています。)

助けてくれてありがとう!

4

1 に答える 1