《游戏引擎架构》读书笔记(二)

本文是《游戏引擎架构》的读书笔记,主要探讨了游戏调试技巧和工具,包括日志、调试绘图API、游戏内置菜单、性能检测等方面。在渲染引擎部分,介绍了3D世界的基本元素、渲染管道、渲染状态管理和场景图等概念,揭示了游戏引擎的复杂性和挑战。
摘要由CSDN通过智能技术生成

一.调试技巧及工具

(1)基础调试

a)   日志及追踪,有些bug难以用VS自带的调试来进行单步调试,最好的解决方案就是printf调试法,打印一组数据,观察情况。之前我的做法是单独生成一个控制台,不过VS自带了一个OutPutDebugString()的方法,可以打印调试信息。不过这个只支持char*内容,我们可以将这个函数加工一下,使其支持不同类型的数据,甚至可以使其接受可变参数个数。

b)   冗长级别:我们有时想要打印,有时又不想打印,所以可以设置打印内容的级别,每个信息设置一个级别,然后设置一个全局的级别,大于这个级别的打印,然后可以通过调节全局级别,控制打印内容的范围。

c)      频道:再扩展的想一想,有很多要打印的内容时,就会比较乱,那么,将不同模块的打印信息分成不同的频道就可以解决问题了,再增加一个频道的参数,就可以控制打印哪个频道的相关信息啦。

d)      日志:有时候程序会莫名的崩掉,这时候就不单单要只看打印信息了,我们需要将程序的执行过程写入日志文件来供运行后查看结果。这里有个纠结的地方,如果每次打印都输入到日志文件,会保证日志的完整性,但是会损失性能,如果缓冲满了才输出到日志,有可能程序崩了就没办法将缓冲区的内容输出了,所以这是个取舍的问题。

e)  崩溃报告:崩溃报告也是一种日志,不过是程序崩溃时才有的日志,多数操作系统有一个顶层的异常处理函数,可以在此函数中打印各种异常信息,甚至发送电子邮件给程序团队(这个有点6啊)&

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值