简单游戏的问题
问题描述:
我几乎是C编程的新手,我想开发一个简单的游戏,玩家必须将角色移动到屏幕底部的一条线上,而敌人随机产生在顶部线上并且每一个现存的敌人都会滑落一行。我有两个主要问题:我怎样才能使某个功能在某段时间后执行某些操作(滑下一行的敌人)以及如何让角色随着播放器按下通讯键而移动WHILE另一个功能正在工作在周期?简单游戏的问题
答
游戏开发的一个基本概念是移动和绘制的分离。每个敌人都应该有一个“移动”功能,并且每个敌人都应该有一个“移动”功能。
“移动”功能应该将敌人移动一步......通过这个我的意思是,如果函数需要敌人向下移动,则函数只会将1加1;如果要移动它,则为-1;等等......它不会一下子将敌人移动到屏幕上。
“绘制”功能将占据敌人的位置,只需在该位置绘制敌人即可,仅此而已。
一旦你有了这两个概念,你需要主游戏循环。主游戏循环将通过全部循环,并在每个敌人上调用“移动”功能。它处理帧率的计时,但为了简单起见,跳过这个步骤......之后它会循环穿过敌人并调用“绘制”功能。
一旦你有了这个设置,你需要在每个主游戏循环中进行一次操作,就是处理你的按键并相应移动heroX,heroY。
玩这个概念,你会发现它非常强大。添加和移除敌人变得很容易,碰撞检测变得更简单等。祝你好运。
'线程'是要走的路! – Rizier123 2014-12-03 14:50:01