现在的位置: 首页 > 综合 > 正文

花了n个礼拜,解决了一个原本只需几秒钟的事(opengl)

2014年12月05日 ⁄ 综合 ⁄ 共 627字 ⁄ 字号 评论关闭

几个礼拜,一直间隙地在弄那个透明贴图,可是就是不出来。

一行行,一个顺序一个顺序地对比,感觉和别人的一模一样啊,咋就不出效果呢,是在郁闷。

后来做了个3D面板,也使用到透明贴图,发现是可以的,然后觉得奇怪,同一个系统为什么那边不可以,这边可以?于是开始了最低级的debug:注释掉一些,然后重新编译,重新运行;然后是第二次,第三次,……,调啊调,好像应该在接近目标,但却越来越糊涂,咋的一模一样还不对呢?

目标在一步步接近,应该是这样,我更自己说。

我甚至开始在查看内存,一点一点地对比,不停地换着可能的方式,不停地设置断点,任何可能,任何结果,都不放过。……,终于:啊,这个地方怎么可能运行到啊,应该不会啊?于是,在错误出现的瞬间,我开始清楚,看来又是自己编码时的疏忽了,一步步倒退,终于在一个地方发现了幼稚的不能再幼稚的代码:

if(bUseBlack != TEX_INVALID) ……

bUseBlack是一个bool型变量,TEX_INVALID是-1,能不成立么,苦笑,真是幼稚到极点了。

然后一修改,哇,想想中的效果!yeah,好几个礼拜来的郁闷竟来自这么个表达式,真是哭笑不得哦。

 

在解决问题过程中也发现,自己的确是缺乏测试的能力哦:没能有迅速抓住问题本质的能力,没能采用尽可能简单有效的比较方式(比如使用已经成立的一个例子来测试你不肯定的部分),没能设计一个比较完整有效的测试方案,更不用说知道什么测试工具,……,学习ing,求知ing,请教ing……

 

抱歉!评论已关闭.