libgdx:[23]使用游戏类图

2025-09-25 07:37:32

1、我们现在仔细观察一下Canyon Bunny的结构. 一个所谓的类关系视图是用来 帮助我们用一种标准化和结构化的观念来看待和理解程序类之间的关系。类关系视图如下所示:

libgdx:[23]使用游戏类图

2、这这个类关系图中,你将会看到很多游戏中使用的类。它也展现出关于类的重要信息,还有他们是如何相互关联的。首先,在我们继续往下之前,请不要排斥这些框图 连线 和指向每个方向的箭头。 In case you are not familiar with 

 Otherwise, simply skip to the next paragraph to continue.

大致的看一下类关系图/UML(统一建模语言),快速阅读以下后面的信息提示框,里面有一些有利于你看懂类图的简要说明信息。否则,就跳到下一段继续。

3、每个类都在一个框中。如果是一个特殊类,它会出现在书名号中:«interface» «abstract» 。

一个没有箭头的连线表示两个类之间是双向性的关系,表示他们相互依赖才能正常的工作。如果一个线的一边又一个实心的箭头,表示这个类完全依赖它指向的类,反过来并不适用。另外如果一个连线一端有一个空心的箭头,通常表示实现类指向它的父类,或者是接口或者是抽象类。

最后数字表示多重性,或者说是可以存在多少个类的对象实例,语法如下: • 0..1: This indicates zero or one instance. The notation n..mindicates n to m instances.

表示0或1个实例,n..m表示 n到m个实例• 0..* or *: This indicates that there is no limit to the number ofinstances (including none).

这表示实例个数无限制• 1: This indicates that there is exactly one instance.

这表示有且只能有一个实例• 1..*: this indicates that there is at least one instance but no limitto the number above this.

最多只能有一个现在你可以看懂类图上的信息啦。

4、在类图的顶部, 你看到CanyonBunnyMain. 这是游戏的启动类。因此 必须实现Libgdx提供的ApplicationListener 接口. 它包括一个资源索引类来组织和简化访问游戏资源. 有两个以上引用指向 WorldController 和 WorldRenderer.

5、World controller 类包括所有的游戏逻辑来初始化和改变游戏世界。 它还要访问CameraHelper, 一个相机的帮助类 , 例如让它可以指向并跟随游戏中的任何一个对象; 

Level 管理所由的关卡有关的数据。

;和一个AbstractGameObject 类的实例的列表,代表任何游戏世界中存在的游戏对象。

6、WorldRenderer替代了rendering的位置显然地它要频繁地寻址AbstractGameObject类的实例列表。

因此游戏的对象需要在做出修正和rendering进程之前被创建,在游戏开始时,当关卡数据从level文件中加载时Level同样 需要寻址AbstractGameObject 类的实例列表。

7、

还有什么没有说的,就是类图最下面一行的类,他们都指向abstract 类,AbstractGaeObject.他们都实现一个 这个类的特殊类型。因此表现出一个通用的功能作为一个可以在游戏世界里被渲染的一般游戏对象。此外,这些类都被聚集在一起放在这个视图里,来标示他们在这个游戏中的作用。你可以再瞥一眼第一章的最后,介绍libgdx项目创建的,然后快速的看一眼草图上所有游戏的对象。这里是一个队类模块的一个简要的介绍 。

8、玩家角色

    峡谷兔子的头:代表玩家由游戏者控制

关卡物体

    石头 :代表一个平台,有左边和右边。中间可以被设置成任意的长度,这是地面玩家可以在上面移动。

关卡物品: 

金币:代表一个商品玩家捡起时就会怎家玩家的 得分。

羽毛:它代表的是一种力量,将授予飞的能力 玩家的角色时,拿起。

9、关卡的装饰

    水面:它连接到相机的水平位置,无论什么时候相机移动它也会在x轴移动

山:两个大山以不同的速度移动用来造成视觉上的错觉

 云:一朵云在慢慢的向左移动。

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢