发现IGame中又一个大坑

本文记录并分析了IGameUVGen::GetUVTransform()存在的Bug,详细说明了该函数进行不必要的坐标轴变换导致的问题,并给出了正确的解决方案。
好久没更新了, 就在五分钟之前发生了一件事情, 让我不得不记录下来 

通过哥用了2个小时的反复测试,确认了一件事情……

 
经验证IGameUVGen::GetUVTransform()有bug, 估计是做了swap(y, z); z = -z;的操作
但实际上uvgen并不是像max坐标系那样z朝上和y朝里, 所以是不需要做上述变换的
所以直接用sdk中的Texmap::GetUVTransform反而是正确的

我猜IGame统一对所有坐标系的数据都做了轴转换的操作, 而没有检查其正确性, 这也应该是IGame使用不多没有经过严格的测试及反馈

于是2个多小时废在IGame的这个bug上了
我谨以最诚挚的问候,向全体自动麻将桌的工作人员们说一声:你们辛苦了! 

俺再次成功得为广大使用IGame编写插件的编程爱好者们填了一个坑 

 

PS, 自动麻将桌这名字的确是俺起的,他们的确不容易,做这么大一软件, 但有时用sdk的时候恨起来,真觉得他们应该改去做自动麻将桌!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值