2016-08-29 37 views
0

私は、撮影用レーザーに関する統一チュートリアルに従っています。このチュートリアルでは、ラインレンダラーをガンチップに適用して撮影しています。以下に示すように、私はラインレンダラを適用しようとすると、今、それは銃の隣に配置されてラインレンダラの位置の問題 - Unity 5.3.5

enter image description here

:以下のようにとすぐにラインレンダラーが適用されると、それは直線でそれを指します。

enter image description here

は、どのように私はこれが直線になるように調整することができますか?私は空のgameobjectしかし幸運ではない銃の先端の回転と位置を確認しようとしました。助けてください!

EDIT:

階層の追加:

enter image description here

感謝を!

+0

オム...これは本当に私たちを支援するための十分な情報ではありません。ラインレンダラを操作するために使用しているコードはどこですか?その間に線を引くためのポイントを供給していますか? – Serlite

+0

私はまだコードを入れていませんが、銃の先端にある空のゲームオブジェクトにラインレンダラを適用しました。私は階層のスクリーンショットを追加しています。ガンの先端はファーストパーソンコントローラの中に入れ子になっています。 –

+1

[documentation](https://docs.unity3d.com/Manual/class-LineRenderer.html)を見直すと、Line Rendererの前に2つ以上のポイントの配列を指定する必要があることが明らかになります適切に線を描くことができます。これを行うコードを少し追加するか、Line Rendererのエディタプロパティでそれらのポイントを手動で設定するだけです。 – Serlite

答えて

0

まず最初にlinerendererコンポーネントをオブジェクトに追加するときに、その頂点数は1であり、幅もあるので、添付画像のピンクの小さな線が見えます。 だからあなたがしなければならないすべては今2 にあなたの頂点数を設定

LineRenderer.SetVertexCount() 
LineRenderer.SetWidth() 

のようなそのプロパティの一部を設定されている次に、あなたにそのインデックス(0と1) 設定された第1の頂点ことによって、これらの2つの頂点にアクセスすることができます始点(ガンポイント)と2番目のポイントを終点(デスティネーション)に設定します。

//Line renderer component is attached to gun 
    LineRenderer linerenderer = GetComponent<LineRenderer >(); 
    lineRenderer.SetVertexCount(2); 
    lineRenderer.SetPosition(0, "GUN TIP POSITION HERE"); 
    lineRenderer.SetPosition(1, "DESTINATION POSITION HERE"); 

そして、あなたのジョブが実行されたときのdontその頂点が戻ってカウントをゼロに設定することを忘れ:)

lineRenderer.SetVertexCount(0);