游戏的基本结构

更新时间:2023-06-21 22:24:13 阅读: 评论:0

游戏的基本结构
游戏是什么呢?在游戏中,往往是显示各种各样的画面,玩家可以做一些设定好的控制,画面根据玩家的控制有所变化。从这儿可以看出,游戏至少需要三个功能-显示画面,接受玩家输入和对输入产生反馈。这就是常说的渲染,输入输出和逻辑三个模块。将这三个模块组合在一起有很多方法。比如事件驱动-画面保持不变直到接受到输入事件,程序进行逻辑运算然后改变画面。而游戏往往不是这样,游戏是时间驱动的。也就是说无论有没有输入,游戏都在不停的循环-检查是否有输入,运行逻辑,渲染画面。这里我多说一句,其实什么样的结构并不能区别一个程序是不是游戏,其实只要可以互动娱乐的程序就可以称为游戏,也不一定要用时间驱动,但采用时间驱动是专业游戏的普遍做法,也是很容易接受的方法-因为从一定程度上讲,游戏很像电影,随着时间流逝画面在改变。
      销售经验分享总结既然是时间驱动,游戏中就会有帧的概念。所谓帧就是某个时刻显示在屏幕上的画面。从整体上看,游戏就是一系列的帧不断播放着,像动画片一样,不过玩家可以通过交互改变播放的内容。而我们开发游戏的主要任务就是安排每一帧的内容。在每一次游戏循环中,我们需要搜集玩家的输入、运行逻辑以更新游戏的数据、根据更新后的数据安排下一帧显示的内容。 所以一个最简单的游戏结构就是:
金钱树的养殖
0 初始化游戏

1 是否结束游戏(Yes:自然之子转到6)

2 搜集玩家输入信息

3 运行游戏逻辑

4 更新下一帧,显示下一帧

5 回到周记开头1

清理,结束游戏
这是一个最基本的结构,特别对于比较简单的J2ME游戏来说,这个结构更加有代表性。下面我们将分别讲述专业手机游戏如何实现这个结构中的各个内容。
游戏循环的实现
      我们需要一个进入后就一直循环下去直到游戏结束的结构。线程正好可以实现。最通常的做法是让Canvas实现Runnable接口。于是我们就可以实现run方法。下面是一个run方法简化版:
public void run()
{
                       exitMidlet = fal ;
                         long startTime = 0 ;
                        long timeCount = 0 ;
                       pp播放器 gameInit() ;
                       科技的发展 int curKey = 0 ;
                        while (!exitMidlet) {
                                   startTime = System.currentTimeMillis(); 
                                    //acquire key
                                   acquireKey() ;
                                   //call game loop
                                    gameLoop() ;
                                    //repaint the screen
                                    repaint();
                                    rviceRepaints();
                                   莲子百合粥的做法 frameCount++ ;   
                                   无线网络安全 //lock fps 
                                    timeCount = MIN_DELAY - (System.currentTimeMillis() - startTime);

本文发布于:2023-06-21 22:24:13,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/82/1008927.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:游戏   输入   画面   玩家   结构   时间   逻辑   显示
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图