Version: 5.3 (switch to 5.4b)
言語English
  • C#
  • JS

スクリプト言語

好きな言語を選択してください。選択した言語でスクリプトコードが表示されます。

Vector3.Project

フィードバック

ありがとうございます

この度はドキュメントの品質向上のためにご意見・ご要望をお寄せいただき、誠にありがとうございます。頂いた内容をドキュメントチームで確認し、必要に応じて修正を致します。

閉じる

送信に失敗しました

なんらかのエラーが発生したため送信が出来ませんでした。しばらく経ってから<a>もう一度送信</a>してください。ドキュメントの品質向上のために時間を割いて頂き誠にありがとうございます。

閉じる

キャンセル

マニュアルに切り替える
public static function Project(vector: Vector3, onNormal: Vector3): Vector3;
public static Vector3 Project(Vector3 vector, Vector3 onNormal);

パラメーター

説明

ベクトルを別のベクトルに投影します。

ベクトルの投影を理解するには、onNormal がその方向の直線上に静止していると想像してみてください。 ラインは vector の先の位置からもっとも近い位置のどこかです。 投影は onNormal に再スケーリングされライン上の位置に到達します。



onNormal がほぼ 0 である場合、この関数は 0 ベクトルを返します。

プロジェクションの使用例として、ターゲットのオブジェクトにできるだけ近くなるようにスライドさせる必要がある Rail-Mounted Gun がそのひとつの例にあたります。 対象物のプロジェクションに沿って リジッドボディに力を適用することでオブジェクトの gun を動かすことができます。

function Slide(target: Transform, railDirection: Vector3) {
	var heading = target.position - transform.position;
	var force = Vector3.Project(heading, railDirection);
	GetComponent.<Rigidbody>().AddForce(force);
}
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour { void Slide(Transform target, Vector3 railDirection) { Vector3 heading = target.position - transform.position; Vector3 force = Vector3.Project(heading, railDirection); GetComponent<Rigidbody>().AddForce(force); } }