凛(kagring)のUE4とUnityとQt勉強中ブログ

2016 年から UE4 を触り始めました。勉強したもののメモ用のブログです。C++ での Qt、Unity も少しあります。

PREV | PAGE-SELECT | NEXT

≫ EDIT

モデル内のオブジェクトの表示切り替え

ゲーム中にモデル内にあるオブジェクトの表示状態をスクリプトから切り替えます。
とりあえず、ゲーム中に同じオブジェクトの名称があったと仮定しました。
多分キャラクターなどだと、中のオブジェクト名がシーンで被ってる場合もあると思うので。

こんな感じに。
一度キャラクターを取得してから、その中のオブジェクトを探しています。

// ゲームオブジェクトを取得(キャラクタを取得後、キャラクターの中のオブジェクトを取得)
GameObject object = GameObject.Find("CharaName");
GameObject meshObject = object.transform.Find ("ObjectName").gameObject;
// メッシュレンダラーを取得してコンポーネントを無効化
SkinnedMeshRenderer meshRenderer = meshObject.GetComponent< SkinnedMeshRenderer>();
meshRenderer.enabled = false;


今回はスキンだったのでこれですが、スキン以外のものだと

MeshRenderer meshRenderer = meshObject.GetComponent< MeshRenderer>();


こんな感じでできると思います。

とりあえず結果として、こんなものが
モデル表示
こんな感じに消えました!
モデル非表示
スポンサーサイト

| Unity | 00:34 | comments:1 | trackbacks:0 | TOP↑

COMMENT

承認待ちコメント

このコメントは管理者の承認待ちです

| | 2014/11/27 17:06 | |















非公開コメント

TRACKBACK URL

http://kagring.blog.fc2.com/tb.php/5-0713413e

TRACKBACK

PREV | PAGE-SELECT | NEXT