2
私はUnityでドラッグ可能なgameobjectsを作成しようとしていますが、今はマウスに追随するようにしています。マウスでオブジェクトをドラッグして値にスナップします
これは私が必要とするものではありません。私はそれがマウスがある場所に正確に行くのではなく、マウスの方向に0.375fだけ動かしたいと思います。
どのように動作するのか想像できません。何か助けていただければ幸いです。
void OnMouseDown()
{
screenPoint = Camera.main.WorldToScreenPoint(transform.parent.position);
offset = transform.parent.position - Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y, screenPoint.z));
}
void OnMouseDrag()
{
Vector3 curScreenPt = new Vector3(Input.mousePosition.x, Input.mousePosition.y, screenPoint.z);
Vector3 curPos = Camera.main.ScreenToWorldPoint(curScreenPt) + offset;
transform.parent.position = new Vector3(curPos.x, curPos.y);
}
重要:今日、Unityでドラッグアンドドロップや同様の概念を実装することは間違いなく簡単です。ここでは:http://stackoverflow.com/a/37473953/294884 – Fattie
ええ、afaikそれはUIの - のみ、私は実際には動作しませんので、ゲームオブジェクトに取り組んでいます – Fiffe