游戏开发-梦开始的地方笔记

1. 游戏编程分块:图像图像;AI部分;基本逻辑与UI部分。

2.代码优化:

使用二进制移位代替乘除法;

适当使用全局变量,可以避免调用函数时的参数传递,提高速度;

使用32位变量;

尽量避免类型转换,如果必须使用类型转换的话将其放到最后;

使用inline函数;

使用速查表。如果程序中用到一些数学函数,比如y=f(x),实时计算太耗费时间了,可以预先计算出相应的x,y数值放到一个大表里,在程序运行时只需要到表里查相应的x,y数据即可,这就是用空间换时间的做法;

齐次坐标可以将矩阵的各种变换统一表示成矩阵的乘法,二维坐标系的齐次坐标是三维,三维坐标系的齐次坐标则是四维;

窗口-视图变换:游戏中有2中坐标,世界坐标系和屏幕坐标系,内存中存在的是一个大的世界地图,而屏幕上显示的只是世界地图的一部分。屏幕上的一部分叫视图,用来显示世界地图的一部分,而其对应的世界地图的方形区域叫做窗口。一般来说,游戏中的人物,物品的当前位置数据、相互关系和移动操作等都是在世界坐标系下进行的,然后才转换到屏幕坐标系中输出到屏幕。对三维游戏来说窗口视图变换就是在三维世界内取一个平面,先把三维世界中的物体投影到这个平面上,然后再做二维的窗口视图变换,,,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值