テラシュールブログ

旧テラシュールウェアブログUnity記事。主にUnityのTipsやAR・VR、ニコニコ動画についてのメモを残します。

ステージ構築

【Unity】ブラシを使ってステージにGameObjectをサクサクっと配置する

ステージに木や岩を配置したい 今回やること 手順1:準備 手順2:配置するPrefabの登録 手順3:ブラシで塗る 補足 関連 ProBuilderで地面を作る場合 ステージに木や岩を配置したい ステージを作る際、 木や岩をランダムに配置したい という物があります。…

【Unity】Denoiseを使用してライトマップのベイク時間を劇的に抑える

Unity 2019.1で追加されたDenoiseを使ってみます Denoiseでライトマップのノイズを除去 Optix AI Denoiser 使ってみる 感想 関連 Denoiseでライトマップのノイズを除去 Progressive Lightmapperはレイトレースベースのライトマッパーです。そのサンプリング…

【Unity】Scene上に構築したステージを、Entity群に変換してECSで利用可能にする「SubScene」

ECS 0.0.12 preview 26から、GameObjectとComponentをEntity&ComponentDataに変換する機能が追加されました。まずは、この中で最も便利であろうSubSceneについて紹介します。 GameObjectをECS向けに変換する SubScene 実際に使ってみる 1. 選択したオブジェ…

【Unity】Nested PrefabやPrefabエディターが追加、新しいPrefabワークフローを触ってみた

Uniteベルリンにて、Nested Prefabが可能になるプレビュービルドが公開されたので触ってみました。 追記:Unity 2018.3にて搭載されています Prefabの階層化が出来るようになった Prefabのバリアント Prefabエディターの追加 プレビューのダウンロード Prefa…

【Unity】Timelineと移動を連携して、特定のタイミングから"指定の座標"へ移動させる

今回はTimelineの機能を使用するが、「目標地点が異なる」場合を対処する方法についてです。例えば「距離の異なる崖をジャンプで超える」や「位置が毎回異なる敵に攻撃を仕掛ける」といった物をTimelineで制御する場合の話です。 Timelineアニメーションの「…

【Unity】ProBuilderで作ったパーツを組み替えてステージを作る アプローチ

パーツの組み合わせで簡単なステージを作ってみるのを試してみました パーツを組み合わせてステージを作るアプローチ ステージのパーツを作る パーツを使い回すために出力する 並べる 関連 パーツを組み合わせてステージを作るアプローチ ステージを作る上で…

【Unity】ProBuilderで作ったステージに色を塗る

今回はProBuilderで作ったメッシュに色を付ける方法についてです。 ProBuilderでステージを作った、しかし単色 ProBuilderで色を塗る 面を塗る 頂点を塗る 関連 ProBuilderでステージを作った、しかし単色 ProBuilderはステージをサクっと作れる割と凄い機能…

【Unity】特別なコードをあまり書かずに "別シーン内のオブジェクト" へアクセスするアイディア

Unityで別オブジェクトの情報を取得したり操作する上で、最も簡単な方法はInspectorに露出して参照先をセットすることです。 ただ、このアプローチはシーンを分割する事になると厄介です。UnityのSceneは別のSceneのオブジェクトに対してアクセス出来ないの…

【Unity】ProBuilderで超適当に超適当なステージを作る

ProBuilderが無料になりました。 blogs.unity3d.com せっかくなので、ProBuilderを使用して超適当なステージを超適当に作ってみます。超適当なので、超適当です。超適当してください。 ProBuilderのインポート 超適当なステージを作る 部屋のレイアウトを決…

【Unity】Terrainの負荷やらDrawCallやらを下げるポイント

Terrainは名前の通り地形を作る機能です。ちゃんと作れば、こんな感じのステージが作れます。…地面があり、草木が茂り、地面には段差がある。 パっと見、使い方は微妙な感じですが、メイキングは参考になります。 www.youtube.com さて、これを夢見て初期設…

【Unity】"家具を動かせる" 部屋(ステージ)の見栄えを、出来る限り良い感じにする

綺麗なグラフィックを実現するのは8割以上はモデルとマテリアルのクォリティですが、〆としてライティングやポストプロセスも重要な要素の一つです。 ただし、場合によってはライティングのベイクを利用できないといったケースも存在するかもしれません。例…

【Unity】Occlusion Portalについて

モデルが非表示になっている部分をスキップすることで3D空間を効率的に描画するOcclusion Cullingという機能の機能の一つ、Occlusion Portalsという機能についてです。 Occlusion Portalsという機能 どんなときに使えるのか 実際に使用してみる 簡単なステー…

【Unity】良い感じに見える(屋内向け)ライティングの設定手順

UnityTipsにライティングの設定手順があったので、実際に試してみました。 Last Man Sittingのライティング設定 手順 ステップ1 - とりあえず配置 - ステップ2 - ポイントライトを置く - ステップ3 - Reflection Probeを追加 - ステップ4-Directional Li…

【Unity】Timelineで敵の”出現タイミング”や”動き”を制御してみる

今回はUnity Advent Calendar 2017 のネタで、「Timelineがカットシーンを作るだけのツールではない事を教えてやる!という妄想を書きなぐる」内容です。要するに、TImelineでゲームの進行を管理してみようぜ!というお話 Timelineを動画作成以外に使用する …

【Unity】ProBuilder Basicでコーネルボックスを作ってみる

ProBuilder コーネルボックスを作ろう Cubeを作成する Cubeの色を変えよう ノーマルを反転しよう ライトを配置しよう 内側のCubeを配置しよう 完成 参考 ProBuilder 旧Prototype、現ProBuilderという無料のアセットを使用すると、簡単なモデリングが出来るみ…

【Unity】2D Experimental Preview Release 4のタイルマップ デモが楽しそう

2D Experimental Preview Releaseの4が(だいぶ前に)公開されてました。 https://forum.unity3d.com/threads/2d-experimental-preview-release-4.469914/ 今回はプレビューリリースの他にデモプロジェクト「RoboDash 」が付いてます。 www.youtube.com 動画…

【Unity】Spriteで9 Sliceを使う

今回はUnity 5.6から可能になったSpriteでの9 Sliceについて紹介します。 Unity 5.6から搭載された 9 Slice(スプライト向け) 9 Sliceって? 9 Sliceを使ってみる スプライトの用意 タイリング(Tiled) TiledのTile Mode TiledとSlicedの違い Colliderの大…

【Unity】AssetBundleに格納したSceneやPrefabがピンクになる問題

AssetBundleにモデルを格納した時、モデルのマテリアルがユニークなシェーダーを使用しているとモデルがピンクになる事があります。 今回はその原因と対策についてです。 モデルがピンクになるという事 AssetBundleに格納したSceneやModelがピンクになる 問…

【Unity】ゲームのビルド直前に "ファイルの退避" や "シーンの最適化" 等の処理を挟む

今回はUnityでゲームをビルドする前にプロジェクトやシーンに何らかの処理を行い、、ビルド完了後に戻す方法についての紹介です。 Unity 5.6以降で動作します。 作る際に便利なものとパフォーマンスに良いもの ビルド前とビルド後に処理を行う(全体) ビル…

【Unity】Area Lightと、Emissiveな材質を持つ発光するオブジェクトが輝けと囁く

Unityのライティングシステムの隅にひっそりと存在するArea Light(エリアライト)、その知られざる生態系について、今回は踏み込んでみようと思います。 影の表現が柔らかくなるAreaLight 広い範囲からの照射ばぼんやり、狭い範囲からの照射はハッキリ Area…

【Unity】Shadow ProjectionのClose FitとStable Fitについて

今回はQualityの設定にあるShadow Projectionの設定について、少し説明が分かりにくかったので検証してみます。 Shadow Projection Stable Fit Close Fit あくまで描画範囲を設定しているだけ 動かすと影がちらつく 描画判定はRecieve Shadow 感想 関連 Shad…

【Unity】引き伸ばしてもテクスチャが伸びないキューブを作る MasterCube

UnityのCubeを引き伸ばしても、テクスチャが引き伸ばされずにしき詰めてくれるアセットを見かけたので、メモします。 Master Cube Cubeを引き伸ばしてもテクスチャが伸びなくする CubeのUVを面毎に調整する メッシュを結合して単一のメッシュにする 感想 Mas…

【Unity】ユニティちゃんを転がすゲーム、UnityChanBallRollはどのように作られていたのか

新人ブートキャンプに使われたユニティちゃんを転がすゲーム、UnitychanBallRollについて解析してみます。 このゲームは、Roll a ballの発展形っぽい感じで「キャラクターがステージ上に配置されているアイテムを回収しながら、ゴールへ向かう」といった内容…

【Unity】ライティングを理解するためにコーネルボックスを作って遊ぶ

コーネルボックスをご存知でしょうか? なにやらライティング関連のデモによく出てくるアレです。つまり、コレです。 ちょっと週末にライティングについて色々と聞いたので、今回はコーネルボックスを作ったりして、ライティングについて色々と試してみよう…

【Unity】マルチシーン編集する際に知っておきたい、複数のシーンに跨ったライトマップを操作した時の挙動について

今回はマルチシーン編集(Multi Scene Editing - MSE)による複数シーン編集とライトマップについてです。 Unity 5.3より複数のシーンを同時に編集可能になりました。これにより広大なシーンを複数のシーンに分割し段階的に構築する事や、屋根や壁といった編…

【Unity】戦車が撃ち合うゲーム「Tanks!」はどのように作られてるのか

ふと思いついて、Unityの「Tanks!」の中身を解析してみます。 ゲームの内容は、1対1で戦車が出て撃ち合い、先にHPを全損させた方が勝ち…といった感じです。 パンツぁーフォー。 ステージの構造 各コンポーネントの役割 ゲームシステム側の話 GameManager Ca…

【Unity】ライトマップのベイク時間を短時間で終わらせる

最近、Unityの割と大きめでリアルな感じのデモが幾つかきました。例えばThe Courtyard(上画像)とか、The Blacksmith: Environments(下画像)等です。 で、広範囲かつリアルなのは良いのですが、この手の大きなデモ・大きなステージはライトマップのビルド…

【Unity】AssetBundleManagerで「AssetBundleからSceneをロード」する

今回はAssetBundleにSceneを格納し、ロードする手法について紹介します。 上手く使うと、ステージの読み込みやローカライズしたUIの表示等に使えそうです。 目次 目次 AssetBundleの新しいサンプル、AssetBundleManager AssetBundleManagerを構築はフォルダ…

【Unity】リアルタイムライトがstaticなオブジェクトに対し、妙に強く反映される問題の解決法

Unity4からUnity5に移行した場合や、他のケースにおいて、realtimeのpointlightが妙に明るくなる事があります。特にMobile向けに開発している場合、これが発症するケースがあるかもしれません。 下の画像では、地面がstaticな場合と非staticな場合の比較です…

【Unity】Unity 5 で「光モノ系」を表現するあれこれ

今回は所謂「光りもの」の作り方について紹介します。Unity 4まではProでないと使用できなかったせいで光りものを使っている人が少なかったのですが、Unity 5 (personal)になりその辺りが自由に使えるようになったので、どんどん使っていきたい所です(但し…