bro*_*n-e 37
Actors的主要优点是动作,命中测试和触摸事件,以及演员组.
如果您的游戏逻辑需要,操作可以快速轻松地进行补间.
你可以随时调用stage.hit(x,y)来返回第一个返回true的actor,它返回你为它编写的任何命中逻辑(通常用x,y,width,height检查边界).返回此actor或null以继续遍历actor的命中方法以寻找命中的actor.如果没有玩家被击中,则返回Null.
Hit用于Stage的触摸事件.actor的触摸方法是传递本地坐标,舞台处理对象的重叠,例如,如果一个actor覆盖另一个actor而另一个actor不应该接收touchDown,则在覆盖actor上返回true以停止在actor上调用touchDown"下面".这也将"焦点"设置为返回true的actor,以便调用Actor的touchUp.
您可以将actor组合在一起,以整个作业组的形式作为一个单元执行动作,触摸事件等.
一些缺点:演员需要一个限制功能的阶段.许多编码员使用其他逻辑来确定游戏对象状态,而不是使用scene2d动作(例如box2d).如果你使用Actors作为游戏对象,你可能需要两个阶段,一个用于ui,一个用于游戏世界.如果你不使用它们,你可能会使用你自己的SpriteBatch和相机.请记住,Actors只有一个抽象的Draw方法,所以你仍然需要创建绘制逻辑.您可能会将TextureRegion或Sprite保留为Actor的私有字段.如果要使用自己的更新逻辑,可以覆盖act(float delta)方法以获取增量时间(如果使用Actions,则调用super.act(delta)).
因此,如果您有自己的逻辑并且不会使用Stage提供的大部分内容,请节省一些资源并推出您自己的特定于应用程序的解决方案.如果您可以使用某些专业人员而不限制所需的功能,那么请进入游戏逻辑的第二阶段.
| 归档时间: |
|
| 查看次数: |
14104 次 |
| 最近记录: |