fc2ブログ

凛(kagring)のUE5/UE4とゲーム制作と雑記ブログ

2016 年から UE4 / 2021年から UE5 を触り始めました。勉強したもののメモ用ブログです。ゲーム制作に関するメモや雑記とか色々あります。C++ での Qt、Unity もほんの少しあります。

2013年12月 | ARCHIVE-SELECT | 2014年02月

| PAGE-SELECT |

≫ EDIT

全ての GameObject をリストアップ

UnityEditor でいろいろ便利なものを作ろうと思ったのですが
全てのゲームオブジェクトを調べる方法がわからなかったので色々検索してみました。

とりあえず知り合いに教えてもらった以下のページ。

・How to get all GameObjects in Scene?
http://answers.unity3d.com/questions/329395/how-to-get-all-gameobjects-in-scene.html

英語なのですがとりあえず、こんな感じでリストアップできるようですね。

object[] allObjects = Resources.FindObjectsOfTypeAll(typeof(GameObject));


あとは foreach なりで対処すればよさそうですね。

ちなみにこのままだとなぜか Asset の中までリストアップされてしまったのでした。

というわけで以下のサイトを参考に。

・Resources.FindObjectsOfTypeAll
http://docs.unity3d.com/Documentation/ScriptReference/Resources.FindObjectsOfTypeAll.html


GameObject gameObject;
if (gameObject.hideFlags == HideFlags.NotEditable || gameObject.hideFlags == HideFlags.HideAndDontSave){

// Asset のオブジェクト
}

といった感じっぽいです。間違ってたら教えていただければと…。
とりあえず自分はこれでちゃんと全てリストアップすることができました。

| Unity | 22:34 | comments:0 | trackbacks:0 | TOP↑

≫ EDIT

続・ルックアット

前回はこんな感じでしたが…。

・transform の回転をプログラムから制御
http://kagring.blog.fc2.com/blog-entry-6.html

ブレンドシェイプが使えるようになったのでこれにプラスして、目を動かしてみました。
ここら辺の制御はほぼ transform と同じで角度に対して
ブレンドシェイプのウェイトを変更してやるといったことでできました。

その結果がこちら!


なかなか良い感じになったのではないでしょうか。

| Unity | 02:18 | comments:0 | trackbacks:0 | TOP↑

≫ EDIT

両面描画シェーダーの作成

影を落としたり、アウトラインを押し出しで行う場合など
本来は両面描画のポリゴンは使わない方が良いのですが
前につかったリソースを表示するには両面描画がほしかったので調べてみました。

どうも Unity のデフォルトシェーダーには両面描画ないっぽいですね…。

というわけで、以下のサイトを参考にして作ってみました。

・Unityの両面シェーダー
http://tortale.com/2013/07/unity.php

基本はシェーダーに対して

Cull Off


この記述を入れればよいみたいですね。
欲しい機能はデフォルトシェーダーに欲しい機能だったので以下のサイトさんを参考にしました。

■[Unity][Unity3d]ビルドイン(内蔵)シェーダの「Diffuse」のコードを読む
http://d.hatena.ne.jp/nakamura001/20120405/1333644877

・Unity download archive
http://unity3d.com/unity/download/archive/

このサイトにある Built-in shaders をダウンロードして魔改造をしてみました。

両面描画

無事両面描画(樹)ができるようになりました!

| Unity | 01:59 | comments:0 | trackbacks:0 | TOP↑

| PAGE-SELECT |