fc2ブログ

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

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

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

| PAGE-SELECT |

≫ EDIT

class を Inspector で操作できるようにする

ある処理をスクリプトで書こうと思った場合、構造体を定義してそれを処理しようと思いました。
折角なら Inspector 上で操作できるようにしようかなーと思ったのですが駄目でした。

こちらの記事をみると、どうも構造体は駄目なようです。
http://d.hatena.ne.jp/nakamura001/20110805/1312563959

class であれば、こういった記述をすれば Inspector に出すことができるようです。

[System.Serializable]
public class SData{
public Transform mTransform;
public float mValue;
};


[System.Serializable] という記述が必要のようです。
無事 Inspector 上で操作できるようになりました。
グラフィッカさんなどが操作できるものはこうしてバンバン外に出すのが良いのでしょうねー。

| Unity | 17:33 | comments:0 | trackbacks:0 | TOP↑

≫ EDIT

デフォルトアウトラインの太さ

デフォルトの Toon で設定できるアウトラインの太さですが
そのままだとカメラの距離が変わっても同じ太さで表示されます。

こんな感じですね。
アウトライン

太い! 太いのですよ!
というわけで、これはこれで使いようはあると思うのですが
できれば固定で制御できる方が良いと思ったのでシェーダーに変更を加えます。

「Standard Assets」⇒「Toon Shading」⇒「Sources」⇒「Shaders」の中にある
「Toony-BasicOutline.shader」を開きます。

この33行目にある
o.pos.xy += offset * o.pos.z * _Outline;


o.pos.xy += offset * _Outline;

に変更します。

「o.pos.z」を掛けている部分が、距離に応じてアウトラインの太さを変えている部分ですね。
このデフォルトのアウトラインはポストエフェクトではなく
頂点押し出しの方式なのでこうなっているようですね。

そうするとこんな感じにカメラが離れても太くならないようになりました。
アウトライン

シェーダーはいじれるようになれば結構いろいろできるので勉強していきたいところです…!

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

| PAGE-SELECT |