本文主要是介绍cocos2dx3.2 关于计算两点向量normalize问题的解决办法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
最近经常有小伙伴问这个一个问题,cocos2dx3.2 关于计算两点向量normalize问题,我想可能是看了官网“贼来了”这个游戏的缘故吧。举个例子,比如这句代码Point normalizedShootVector = -shootVector.normalize();编译后会出现错误 1 error C2171: “-”:“void”类型的操作数非法,错误 2 error C2440: “初始化”: 无法从“void”转换为“cocos2d::Vec2” 错误 3 error C2679: 二进制“=”: 没有找到接受“void”类型的右操作数的运算符(或没有可接受的转换) 。
void normalize(); //标准化向量. 若为零向量,忽略
由于cocos引擎是开源的,跟进去一看.normalize()返回的是void类型,怪不得会出这个错,(ps:cocos这个引擎真的是改要吐槽了)。我修改的方法是先取值,再进行正负判断,修改后的代码是这样shootVector.normalize(); Point normalizedShootVector = -shootVector; 然后编译,过了~~~
好吧,废话不多说了,就先到这吧。。。。
不懂的可以关注我的公众号,里面有你想要的(有问题公众号留言必回答)https://mp.weixin.qq.com/s?__biz=MzIyOTM4MDMxNw==&mid=2247483836&idx=2&sn=1e1d922b5f2511e550da712921992d32&chksm=e842d80edf35511810bc8e383992c2e6a38665e466328200265386ab16fc4601d4822badf546&token=573588601&lang=zh_CN#rd
这篇关于cocos2dx3.2 关于计算两点向量normalize问题的解决办法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!