前提
unity c#で万有引力を再現しようとしたところfloat型に宣言したがエラーが起こってしまい。他にも色々な型を試したりしたがどうやっても解消してくれません。
実現したいこと
エラーの解消
発生している問題・エラーメッセージ
Assets\Scenes\scripts\gravitation.cs(28,25): error CS1503: Argument 1: cannot convert from 'float' to 'UnityEngine.Vector3'
該当のソースコード
public class gravitation : MonoBehaviour
{
Rigidbody rb;
private float g;
string Tag_Name="object";
private GameObject[] o;
private GameObject w;
void Start()
{
rb=GetComponent<Rigidbody>();
}
void update()
{
float a=Mathf.Pow(10,-11);
g=6.67f*a;
o=GameObject.FindGameObjectsWithTag(Tag_Name);
w=GameObject.FindWithTag("world");
Vector3 posB=w.transform.position;
foreach(var obj in o){
Rigidbody trb=obj.GetComponent<Rigidbody>();
Vector3 posA=obj.transform.position;
float dis=Vector3.Distance(posA,posB);
float r=Mathf.Pow(dis,2.0f);
float M=-g * trb.mass * rb.mass / r;
rb.AddForce(M,ForceMode.Impulse);
}
}
}
試したこと
色々な型に変えてみた
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー