美文网首页
如何构架一个游戏?

如何构架一个游戏?

作者: 乔一丁_2020强化班 | 来源:发表于2021-05-09 14:26 被阅读0次

开始

首先是游戏循环,在一个死循环里运行游戏的逻辑是游戏常用的架构(通常来说这个循环时从游戏开始运行到游戏结束的)。好处是可以很好的处理暂停,而且便于将各个不同部分的游戏逻辑整合在一起。如果每个逻辑使用一个独立的线程来运行,一是需要对线程进行调度,比较复杂;二是多线程需要的资源更多,不利于游戏的性能。
之后我们可以划分游戏的逻辑,比如渲染
渲染的意思就是将内存中的画面展现到屏幕中来,我们可以给每个游戏元素(包括玩家,敌人,障碍物,甚至是地板装饰等)创建一个对象来保存其位置等参数,渲染时就会根据其参数来渲染,我们只需把重心放在游戏性的逻辑上,即如何改变对象的参数即可。
然后就是游戏性逻辑部分,这个部分是游戏的核心,游戏如何调度就是依靠的这个部分。
例如角色的移动,我们可以创建一个对象,来保存角色的移动状态,其中包括 u,d,l,f 四个布尔变量,表示角色的移动。需要注意判断在两个相对的方向上(左右和上下)同时按下时,相当于两者都没按下。
判断完移动方向后,再根据速度不断的改变角色的位置参数即可(这个地方有个细节就是如果是朝着斜方向走,xy轴上的分速度应该是根号2,如果没有学过物理中矢量的合并和分解的话,可以去看看)
游戏的循环的模板(Java)

boolean gameover = false;
boolean paused = false;
while(){
  if(gameover) break;
  if(!paused){
    logic();//根据状态更改各个参数,碰撞检测
    render();//根据参数渲染画面到界面
  }
  //休眠,防止跑满CPU,因为大可不必
  try{Thread.sleep(10)}catch(Exception e){/*一个必要的异常处理,但是一般不会写什么内容*/}
  
}

相关文章

  • 如何构架一个游戏?

    开始 首先是游戏循环,在一个死循环里运行游戏的逻辑是游戏常用的架构(通常来说这个循环时从游戏开始运行到游戏结束的)...

  • 如何识别一个合格的优秀的系统构架师

    如何识别一个合格的优秀的系统构架师是不难的。 具体来讲,我们可以通过以下几方面来评估系统构架师的工作成绩: 1:系...

  • 和弗兰克学写作第十一期: 改变 3/6

    不管是什么写作,都需要缜密的思考如何开篇,如何构建文章的构架,如何结尾,如何取一个引起关注的题目。 周五是弗兰克老...

  • DevOps未死,ContainerOps已到

    发现Docker项目还是2013年中,我正在为构架一个Micro Service的游戏云而测试各种PaaS平台和产...

  • MVC游戏构架注意事项

    1.Model层不能调用任何其他模块方法。2.Control层只能调用自己模块的model层方法。也就是说Cont...

  • 今日得到

    今天听罗胖启发俱乐部,讲到华为的时候,提到一个词“构架”,在没有构架之前,一个公司没有自己的构架,一个人没有自己的...

  • Struts之如何在Java中学习

    Struts 1、概述Struts,以及Struts如何实现MVC构架的? 答:struts framework是...

  • 创意人生蜕变游戏——首次体验

    昨天晚上首次体验了创意人生蜕变游戏,意犹未尽。玩儿的时候在感受游戏带来的启发,结束后一直在想这个游戏的构架和设计,...

  • Kafka原理

    Kafka概述 Kafka构架 Kafka的Partition log是如何工作的? Kafka的Consumer...

  • 基于NodeJS的高性能分布式游戏日志系统

    大纲: 前言 日志系统架构是怎样的 游戏分析有什么内容 为什么要自己架一个系统 FEN架构架构图FluentdEl...

网友评论

      本文标题:如何构架一个游戏?

      本文链接:https://www.haomeiwen.com/subject/ouwmdltx.html