どうも!ラブヘイトです
RayとLineRenderを使って衝突先に案内やコマンドを表示させようかと思い、LineRenderを初めて触ったのですが、これが意外と面白い!
なのでちょっと寄り道ですがRayとLineRenderを分けて紹介していきます
今回はLineRender!
◆LineRenderとは
Line つまり線形に描画できる機能で、どちらかというとパーティクルに分類されるかと思います
LineRenderはRayと一緒に使うものとばかり認識していましたが、LineRenderだけでも色々できます!
もちろんこんな感じでカメラから放つことも可能
◆準備
直感的には操作できなかったので、あとで簡単にまとめていきます
まず線を放出させたいオブジェクトを選択します
カメラから出したければカメラでもいいし、CubeやSaphe、空のGameObjectなら
線だけの描画も可能になります
AddCompornentからLineRenderコンポーネントを追加
これで準備完了です
この時点でworldのどこかには描画はされていますが、見えてる人と見えてない人がいるかもしれません。
私の場合デフォルトではカメラとこんなに離れた場所に生成されます
では、設定を見て行きましょう
◆設定項目-property-
【デフォルト】
まずはコンポーネントを追加したオブジェクトの位置まで戻してあげましょう
Use World Space
これはワールド座標を使うかローカル座標を使うかです
チェックをつけているとワールド座標になりますが、親のTransformについて来ないのがちょっと使いづらいかも
基本的にチェックを外していたほうが使い勝手はいいですね
Width
これはそのままです、線の太さを変更することができます
右クリックでAddKeyすればだんだん太くしていくってことも可能!
次は、色を変えていきます
MaterialとColor
色を変更する方法は2つあります。Materialを適用するか、Colorを変更します。
Materialはアタッチするだけなので特に説明する部分はないですが、Colorはデフォルトのままでは変更しても反映されません
Colorを反映させるには、Materialから「Defalt Line」というMaterialを選択します
それからColorを変更すると、色が反映されるようになります
Blendとか設定するとグラデーションできたり
たったこれだけで、こんなのが作れちゃったりします
ただの棒、だけど使い方は無限大ですね
Position
初めは、普通にTransformがあるのになぜあるんだと思いました
Edit modeにすると二つの球体が出現します
LineRenderは「ポイントとポイントに線を描画するもの」ということがわかりますね!
つまりPositionは一つ一つのポイントの位置のことです
そしてPositionのSizeを変更するとさらに繋げることが可能になります
さらにこの状態で「Loop」にチェックを入れると最初のポイントと繋がって線を閉じることができます
メッシュの構造と同じような感じですかね笑
あと重要なのはこの2つ
Corner Vertices
これは曲がり角の角度(線が閉じているときのみ使用可能)
End Cap Vertices
線が閉じていないときに両端を丸くする
これで大体のことはできるかと思います
一つ気になることがあるとすれば、LineRenderを真横から見ると半円になっているのです。
少し離れている場所や、一瞬であれば気にならないのですが
まじまじと見るとかなり気になります。こうしている理由はなぜなんでしょうか?
知っている人がいたら教えてください!
◆遊んでみた!
赤外線センサーの部屋とか
当たり判定もつけられるので、スパイゲームなどに!
ライブ演出にも使ってみました!!
まさか家の次に建築するものがライブ会場だとは思いませんでした(汗)。後ろのモニターは以前公開した記事を参考にすればできると思います!ぜひやってみてください↓
【Unity】Dr.ストレンジの魔法でワープしてみた【アベンジャーズ】 #22
この演出はプログラムを一切記述しておりません!Unityすごい!
ライブ会場は今回の記事で生まれた副産物ですが、勿体無いのでまた違う記事でも紹介します!お楽しみに
あとは道案内とか案内表示とかやりたいことは沢山ありますが、そういうのは次回Rayと一緒に作成しようと思います
それではまた