(:3[kanのメモ帳]

個人ゲーム開発者kan.kikuchiのメモ的技術ブログ。月木更新でUnity関連がメイン。

アセットのアセットバンドル名をプログラムから設定する方法【Unity】【AssetBundle】【エディタ拡張】


この記事でのバージョン
Unity 2017.1.1f1


はじめに

AssetBundleを生成する時にはアセットのアセットバンドル名を設定する必要があります。


f:id:kan_kikuchi:20171012070105j:plain


Inspector上から手動で設定する事も可能ですが、

量が増えてると面倒だし、なにより間違いが起きる可能性もあるので自動化したいですよね?


今回はそんな時に使える、アセットのアセットバンドル名をプログラムから設定する方法のご紹介です!


assetBundleName

続きを読む

AssetBundleとは【Unity】【AssetBundle】

この記事でのバージョン
Unity 2017.1.1f1


はじめに

今回はUnityのAssetBundleについての記事です!


個人開発だとサーバを使わない事も多いので、AssetBundleという名前は聞いた事はあるけど、

使ったことはないし、よく知らない!みたいな方もいるかと思います。


かく言う私もそうだったんですが、ちょっと使う機会が出来たので

AssetBundleについて簡単に調べて見ました!


なお、記事中では以下のアセットを使っております。





AssetBundleとは

続きを読む

エディタ上で再生を開始するSceneを固定する【Unity】【エディタ拡張】


この記事でのバージョン
Unity 2017.1.1f1


はじめに

Unityのエディタ上では再生ボタンを押すと、当たり前ですが今開いているシーンが再生されます。


場合によっては開いているシーンとは別のシーン(初期化用シーン等)から常に再生を開始したい!

という事もあるかもしれません。


今回はそんな時に使える方法のご紹介です!!


EditorSceneManager.playModeStartScene

続きを読む

複数のSceneを順に読み込み、各Sceneの全GameObjectを取得する【Unity】【エディタ拡張】


この記事でのバージョン
Unity 2017.1.1f1


はじめに

今回は複数のSceneを順に読み込み、各Sceneの全GameObjectを取得する方法のご紹介です!

文章だと分かり難いですが、例えば以下のようにScene1,2,3があった時に、


f:id:kan_kikuchi:20170929191811j:plain


Scene1を読み込み、Scene1の全GameObjectを取得し、Logで名前を表示、

Scene2を読み込み、Scene2の全GameObjectを取得し、Logで名前を表示、

Scene3を読み込み、Scene3の全GameObjectを取得し、Logで名前を表示、

といった具合に、各シーンに順に処理を行っていく感じです。


f:id:kan_kikuchi:20170929192658g:plain


これは使えば、全シーンに配置してあるGameObjectをチェックや、処理を簡単に行えます。


GameObjectGetterOfAllScenes

続きを読む

楽にシーンを開く拡張機能を作ってみた(マルチシーン対応)【Unity】【エディタ拡張】


この記事でのバージョン
Unity 2017.1.1f1


はじめに

今回は楽にシーンを開く拡張機能のご紹介です!


f:id:kan_kikuchi:20170927114809g:plain


この機能が特に活躍するのがマルチシーン(Multi Scene Editing)で開発している時で、

複数のシーンの切り替えを一瞬で出来るのでかなり便利です。


f:id:kan_kikuchi:20170927120116g:plain


もちろん単独のシーンで開発している時でも、それなりに便利だと思います。


なお、あくまでエディタ上の機能なのであしからず。


SceneUnit

続きを読む

エディタ非実行時にプログラムからシーンの開閉を行う【Unity】【エディタ拡張】

この記事でのバージョン
Unity 2017.1.0f3


はじめに

今回はタイトル通り、エディタ非実行時にプログラムからシーンの開閉を行う方法のご紹介です!


f:id:kan_kikuchi:20170918182523g:plain


エディタ拡張で特定のシーンを開きたい、閉じたいなんて時に役立つ話です。


EditorSceneManager

続きを読む

変更と3Dモデルの子を減らして、Transformを最適化 【Unity】【Unite 2017 Tokyo】【最適化】

この記事でのバージョン
Unity 2017.1.0f3


はじめに

今回はTransformの最適化を行い、負荷を軽減しようというお話です。


なお、『Unite 2017 Tokyo』

「Unity最適化講座 ~スペシャリストが教えるメモリとCPU使用率の負担最小化テクニック~」

の前半部分を参考にさせてもらってます。



また、記事中では以下のアセットを使っております。





Transformとは

続きを読む

ドット絵の箱庭系スローライフRPG、ピコンティアがTGSに出展!(試遊有り)【新作】【Unity】【Steam】【NintendoSwitch】

f:id:kan_kikuchi:20170921081000p:plain


今日から開催されるTGS(東京ゲームショウ)に、

鋭意製作中の箱庭系スローライフRPG「ピコンティア」が出展されます!

場所はフライハイワークスさんのブース(8-SO1)です!

お越しの方は是非遊んでみてください!







ジャンル別、気になるアセット18個【Unity】【Unite 2017 Tokyo】【アセット】

はじめに

今回は『Unite 2017 Tokyo』の講演の動画を見て、要点をまとめたり、追加で調べたり、

実際に手を動かしたりしながら、記事にもしちゃおうという感じの記事です。


そして、題材にする講演は、「2017年の注目アセット100連発」です!

講演者:常名 隆司(ユニティ・テクノロジーズ・ジャパン合同会社)

こんな人におすすめ
・Unityでアセットストアを利用し始めた方

受講者が得られる知見
・国内外で最近流行っている、あるいは流行る兆しが出ているアセットを多量にインプットすることができます。


講演では100個のアセット(人気順で80個、各国のオススメ20個)を紹介してます。

この記事では、その中から気になったアセット18個をジャンル別にご紹介します。


目次

  • はじめに
  • 目次
  • 3Dモデル
    • Office and Police Station Pack (アメリカのオフィス+牢屋)
    • Simple Dungeons(シンプルで可愛らしいダンジョン)
  • テクスチャ
    • Dramatic Skies(アニメ調のスカイボックス)
  • オーディオ
    • Grand Orchestra Collection(壮大なオーケストラBGM)
  • パーティクル
    • Realistic Effects Pack 4 (モバイルやVRにも対応した効果音付きパーティクル)
    • SpriteToParticles (UIやSpriteにエフェクトを追加する)
    • Mesh Effects (メッシュの表面からパーティクルを放出)
    • Text Dynamic Effect(文字の形のパーティクル)
  • シェーダー
    • DeepSky Haze (靄などを表現するシェーダー)
    • Low Poly Water GPU (ローポリの海を表現するシェーダー)
  • スクリプト
    • PortalKit Pro (Portalのようなテレポーテーションを実現)
    • Ink Painter(イカしたインク表現)
    • SRDebugger (実機上でコンソールやプロファイラを表示)
    • Weather Maker(2D&3Dで様々な天候を操る)
    • Anti-Cheat Toolkit (チート対策)
  • エディタ拡張
    • Rainbow Folders (フォルダに色やアイコンを自動で付ける)
    • A+ Assets Explorer (アセット探しアセット)
    • Additive Scene Manager (シーンのロード周りの拡張)
  • おわりに



3Dモデル

続きを読む

Profilerの使い方と最適化の目安の付け方(後編)【Unity】【Unite 2017 Tokyo】【最適化】

この記事でのバージョン
Unity 2017.1.0f3


はじめに

今回は『Unite 2017 Tokyo』の講演の動画を見て、要点をまとめたり、追加で調べたり、

実際に手を動かしたりしながら、記事にもしちゃおうという感じの記事です。


そして、題材にする講演は、「最適化をする前に覚えておきたい技術」です!

講演者:黒河 優介(ユニティ・テクノロジーズ・ジャパン合同会社)

こんな人におすすめ
・最適化したいが、何をしてよいかわからず困っている人
・効率的に最適化を行いたい人


受講者が得られる知見
・Unity Profilerに関するノウハウ
・最適化の目算、見積もりをする技術


タイトル通り、この記事は後編で、いきなり常にフレームレート低い場合の最適化から始まります。

最適化とは、Profilerの基本的な使い方、メモリの使用量が多い場合の最適化

ロードが長い場合の最適化一瞬だけ画面が固まる場合場合の最適化

をご覧になりたい方は、以下の前編をご参照ください。



なお、記事中では以下のアセットを使っております。





目次

  • はじめに
  • 目次
  • 常にフレームレート低い(処理が重い)場合
    • プロファイリング中はDebug.LogをOFFに
    • 描画が重い?ロジックが重い?
  • 描画のチェック
    • 余計な描画をしてないか?
    • Batch数やSetPass数が多くないか?
    • 頂点数が多くないか?
    • 描画面積が多すぎないか?
    • Shaderが重くないか?
  • ロジックのチェック
    • C#側が重い?Unity側が重い?
    • Unity側のどこが重い?
  • Profilerの結果保存
  • スクリプトの特定部分だけで処理負荷を測る方法
  • おわりに



常にフレームレート低い(処理が重い)場合

続きを読む