それで、jme3 エンジンと SDK の使い方を学んでいます。私は、SimpleApplication を拡張してアプリケーションをさらにオブジェクト指向にするメイン アプリケーション ファイルの外部での作業をいじり始めました。
私の質問はこれです.物理オブジェクトを正しく初期化するにはどうすればよいですか? のように.. phyiscs という名前の BulletAppState オブジェクトを持つ Player クラスを作成しますが、最初は値が割り当てられていません! コンストラクター内で割り当てられます。
class Player {
BulletAppState physics;
public Player(BulletAppState physicsState) {
this.physics = physicsState; // State should now be initialized when
// this constructor is is called
}
}
次に、メインクラスファイルで
class Main extends SimpleApplcation {
Player player;
BulletAppState physics;
public static void main(String[] args) {
Main app = new Main();
app.start();
}
@Override
public void simpleInitApp() {
physics = new BulletAppState();
physics.setThreadingType(BulletAppState.ThreadingType.PARALLEL);
stateManager.attach(physics);
player = new Player();
}
}
期待した結果が得られません。
出力結果は次のとおりです。
メインクラスの物理状態は有効ですか? 真実
プレーヤー クラスの物理状態が有効になっていますか? 間違い