【发布时间】:2014-02-26 12:01:31
【问题描述】:
我想在我的游戏引擎(用 Java SE 编写)中制作“行为逻辑”之类的东西,但我没有制作,因此我不知道如何确保所有子类方法都被自动调用。它将与 Unity3D 的行为(如 Update()、Start()...)类似,但用于逻辑。在这里我提供实现它的尝试
public abstract class Behaviour {
void Start(){}
abstract void Update(){}
}
这个类被 DaturaBehaviour 类继承
public class DaturaBehaviour extends Behaviour{
public void AppInit()
{
Start();
System.out.println("foo");
}
public void AppRun()
{
Update();
OnGUI();
}
}
从那里我定义了将被调用的方法(例如在引擎初始化中的 AppInit 方法,在绘制的每一帧中的 AppRun)。
所以这些是这个系统的基础。我也做了一个测试类:
public class TestBehaviour extends DaturaBehaviour {
@Override
void Start()
{
System.out.println("bar");//this isn't called dunno why
}
}
这是我第一次尝试使用 Java 制作游戏,所以请不要生气,如果这是显而易见的事情。谢谢!
【问题讨论】:
标签: java game-engine lwjgl