![](/img/trans.png)
[英](Unity3D) error CS1503: Argument 2: cannot convert from 'float' to 'UnityEngine.Space'
[英]CS1503: Argument 3: cannot convert from 'double' to 'UnityEngine.Quaternion' HELP! unity 2D c#
//pew pew
Vector3 mousePosition = Input.mousePosition;
mousePosition = Camera.main.ScreenToWorldPoint(mousePosition);
Vector2 direction = new Vector2(mousePosition.x - transform.position.x, mousePosition.y - transform.position.y);
var rad = Math.Atan2(direction.y, direction.x);
var deg = rad * (180 / Math.PI);
Debug.Log(deg);
Instantiate(bulletprefab, firePoint.position, deg);
嗨,基本上,我試圖向鼠標的方向發射子彈。 但找不到任何我能理解的答案。 我是初學者。
您正在將單個float
值deg
傳遞給Instantiate(Transform, Vector3, Quaternion)
Instantiate(bulletprefab, firePoint.position, deg);
它期望旋轉Quaternion
作為這里的第三個參數!
由於這應該是 2D 的,這意味着您正在搜索全局Z
軸上大約deg
度的旋轉。 現在有多種方法可以得到它。 你可以例如使用Quaternion.Euler
Instantiate(bulletprefab, firePoint.position, Quaternion.Euler(Vector3.forward * deg));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.