Unity3d 团结问题
我首先为变量hh指定了float,但unity给了我一个错误,它无法将double转换为float,因为向量使用float。考虑到我已经把它命名为浮点数,这真的很奇怪。然后我尝试将hh赋值为double,然后在vector3参数中将它改回float。令人惊讶的是,它居然成功了,这毫无意义,因为它在技术上是一样的Unity3d 团结问题,unity3d,Unity3d,我首先为变量hh指定了float,但unity给了我一个错误,它无法将double转换为float,因为向量使用float。考虑到我已经把它命名为浮点数,这真的很奇怪。然后我尝试将hh赋值为double,然后在vector3参数中将它改回float。令人惊讶的是,它居然成功了,这毫无意义,因为它在技术上是一样的 private float hh=-6.74f; 注意f它告诉c这是一个float值。看见否则,-6.74是一个双精度,不能隐式分配给浮点字段/变量,但需要显式转换(浮点) 它不能隐式
private float hh=-6.74f;
注意f
它告诉c这是一个float
值。看见否则,-6.74
是一个双精度
,不能隐式分配给浮点
字段/变量,但需要显式转换(浮点)
它不能隐式转换,因为double
的精度高于float
。另一种方法是隐式完成,因为您不会丢失任何信息
因此,由于Unity以float
的形式提供所有信息,因此使用double
与变换信息进行比较和计算是没有意义的
稍后,对于您使用的向量
(浮动)hh
这绝对不是技术上相同的东西。这是一个显式类型转换,在赋值时也可以这样做
private float hh=(float)-6.74;
在你做之前
transform.position.x<-6.74
这是因为这里的-6.74
并没有转换成浮点
,相反:transform.position.x
是浮点
可以隐式转换成更精确的双精度
。因此,隐含发生的实际上是
(双)变换.position.x<-6.74
使用double
comparison操作符Problems with unity是一个毫无意义的问题标题,我们无法帮助您解决无法看到的代码问题。代码是文本,可以直接复制和粘贴到您的文章中,并进行格式化以使其可读。请更新您的问题标题,清楚地解释您遇到的问题,将相关代码直接包含到您的帖子中,并提出与该代码相关的特定问题,以便我们可以尝试提供帮助。如果您在发布之前花一些时间阅读并了解网站的工作方式,您会发现您在这里的体验会更好。