テラシュールブログ

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

ライティング の検索結果:

【Unity】LWRPの2D向けライト機能を試してみる

…ゲームでは、2Dでもライティング…正しくは法線効果で光源の位置を示しているゲームをよく見ます。 そのやり方については下の記事で紹介していましたが、LWRPに標準機能として2Dライティングの機能が追加されました。 tsubakit1.hateblo.jp 大雑把に言えば、以下の機能が追加されています。 スプライトにノーマル等の補助用テクスチャ追加 2DスプライトShaderがノーマル計算用に参照するライト 実際に使ってみます 導入手順 まず Unity 2019.2 で Lig…

【Unity】新しいステルス系チュートリアル「John Lemon's Haunted Jaunt(ジョン・レモンのお化け屋敷)」

…ment ステージのライティング設定とNavMeshの設定についてです The Camera CinemachineとPostProcessingStackの説明です Ending the Game ゲームクリア処理と、UIについての説明です Enemies, Part 1: Static Observers 動かない敵(ガーゴイル)の作り方です。キャラクターの発見処理等とゲームオーバーが含まれます Enemies, Part 2: Dynamic Observers 動き回…

【Unity】既存のプロジェクトにLightweight RenderPipelineを導入する

…す。これはLWRPのライティングが今までのSurface Shaderに対応していないからです。これを一つ一つアップデートするのは非常に骨なので、一括でアップデートしてしまいます。 Editor > Render Piepeline > Update Project Materials To Lightweight Materials Processedを押す これで一定の法則に従い、シェーダーがアップデートされます。この法則については、Upgradable Shadersに…

【Unity】ドット絵に照明効果を追加する

今回はドット絵にライティングを追加するアプローチについてです。 ドット絵 は 光の演出 を手に入れた!!! 光が届く範囲が明るくなるだけで良い 光の陰影や光るパーツなどを表現するのも欲しい ドット絵に影もつけたい 感想 関連 ドット絵 は 光の演出 を手に入れた!!! 今回はドット絵に光の演出を試してみました。例えば暗い洞窟や完全自動で動く工場など、ステージ全体が明るくない場所での表現において、光による演出は中々に楽しそうです。 なお、今回使用するのは殆どTilemapかSp…

【Unity】dynamic voxel-based global illuminationを実現する SEGI

…感じに出来ない時は、Voxel Spaceの数を減らすとかすると良いかもしれません。範囲が減りピクセル辺り高い解像度が得られます。 同時にFollow TransformでGIを求める対象を設定したり。 感想 普通にベイクした物とくらべて重かったりノイズが発生してたりしますが、ベイクなしでもソコソコ綺麗に絵が出るのは中々に面白いです。 関連 こちらはベイクすることが前提のライティング手順です。 tsubakit1.hateblo.jp tsubakit1.hateblo.jp

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

…ティですが、〆としてライティングやポストプロセスも重要な要素の一つです。 ただし、場合によってはライティングのベイクを利用できないといったケースも存在するかもしれません。例えば建築デモなど、部屋の家具が変化可能といったケースです。日差しの位置やライトの配置など、すべての要素が変化する可能性があります。 今回は、そういったダイナミックに追加/変化するオブジェクトでも綺麗に見せる為に色々と試行錯誤してみた結果を紹介します。 オブジェクトをダイナミックに生成しても、そこまで破綻なく…

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

UnityTipsにライティングの設定手順があったので、実際に試してみました。 Last Man Sittingのライティング設定 手順 ステップ1 - とりあえず配置 - ステップ2 - ポイントライトを置く - ステップ3 - Reflection Probeを追加 - ステップ4-Directional Lightの追加- ステップ5 - 光の調整 - ステップ6 -画面効果の追加- ステップ7 -色合いの調整- ステップ8 - ライトのベイク- ステップ9-もっと明る…

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

ProBuilder コーネルボックスを作ろう Cubeを作成する Cubeの色を変えよう ノーマルを反転しよう ライトを配置しよう 内側のCubeを配置しよう 完成 参考 ProBuilder 旧Prototype、現ProBuilderという無料のアセットを使用すると、簡単なモデリングが出来るみたいです。 www.youtube.comこの機能で簡単なレベルを作成する練習がてら、コーネルボックスを作成してみます。 コーネルボックスを作ろう コーネルボックスを作ってみます。…

【Unity】物理シェーダーベースのパーティクル向けシェーダー、Standard Particle Shader

…d Shaderよりライティング周りを簡略化した代わりにパフォーマンスを得る感じなんじゃないかなと。 Unity 2017.3以降 [Release] Standard Particle Shader ソレ以外にも、幾つかパーティクルシステムに便利なオプションがあるみたいです。 アニメーションのテクスチャブレンディング 照明のON/OFF Depth Bufferによるフェード Cameraによるフェード(カメラ距離によりフェード) 屈折効果*1 使用パラメータに基づいてVe…

【Unity】確認までに長い時間を要求するライトのベイクを、素早く確認する Progressive Lightmapper

…直接焼き込むタイプのライティングは実際の結果を確認するまでに非常に長い時間がかかります。特に広大なステージの場合は顕著で、モノによっては1日とか要求する事があり、しかもライトの一つを変更しただけでその時間を要求します。 そういった問題の最も効果的な対策はライトマップの適切なクォリティを設定することですが、もう一つの新しいアプローチが出てきました。 Progressive Lightmapper という機能 Progressive Lightmapperは、Scene View…

【Unity】とあるライトマップと光沢感(スペキュラー)

…は頂点カラーベースのライティングに切り替わります。また、同一のオブジェクトが受けるスペキュラーの数も制限するらしく、下のように複数のライトから単一のオブジェクトを照らしている場合、優先度の高いライトの光沢が表現されます。 そのため、この手法では「Point Lightの範囲を被らないように設定する」事が必要になりそうです。範囲がかぶらなければ(モデル一つに対して複数のライトが影響しないのであれば)、Pixel Point Lightが1でも下のように光沢がライト毎に出てます。…

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

Unityのライティングシステムの隅にひっそりと存在するArea Light(エリアライト)、その知られざる生態系について、今回は踏み込んでみようと思います。 影の表現が柔らかくなるAreaLight 広い範囲からの照射ばぼんやり、狭い範囲からの照射はハッキリ AreaLightの影は静的なオブジェクトに焼く 発光するEmissiveオブジェクト Emissiveの特性 AreaLightと似たような特性 発光する範囲と形状 で、どっちが良いの? 関連 影の表現が柔らかくなる…

【Unity】IBLの背景(SkyBox)を動的に変更する

…イメージ・ベースド・ライティング…HDR画像を元に光源を再現する)手法を使うと、非常に背景に馴染む3D表現が出来ます。 これを今回はある目的のためにリアルタイムに更新してみます。 Skyboxの更新 注意 関連 Skyboxの更新 Unityでは、Skyboxを更新する事でIBLを表現しています。なのでSkyboxを更新すればOKです。 SkyboxはCubemapを元に更新しているので、渡したCubemapを更新します。 また RenderSettings.customRe…

【Unity】パーティクルシステムの粒子を発光させるLightsモジュールを使う

…Lightに設定したライティング設定を「基本的に」使用します。例えばコンポーネントのIntensityを上げれば輝度が上がりますし、Rangeを上げれば光が影響する範囲が広がります。 ここで「基本的に」と言うのは、Lightsコンポーネントでもある程度の値が調整出来る為です。例えば Range Multiplier で光が影響する範囲が広がりますし、 Intensity Multiplier で輝度が上昇します。この二つの項目があるのは、Lightコンポーネントの設定を使いま…

【Unity】GameObjectのstatic設定についてのアレコレ

UnityはGameObjectにstaticのフラグを設定する事が出来ます。面倒な場合はeverything(全部)で設定してしまうのですが、これは結構意味がり、場合によってはチェックを外したほうが良い事もあります。 色々なstatic Lightmap Static Reflection Probe Static Batching Static OcluderとOcludeeのstatic Navigation StaticとOff Mesh LinkGeneration…

【Unity】リアルタイムデモ「Adam」の実行ファイルとアセットが公開

Adamの実行ファイル、及びAdamに使用したアセット群が公開されました。AssetStoreやGithubから取得出来るみたいです。 blogs.unity3d.com 実行ファイル 実行ファイルは、GeForce GTX 980 及び Intel Core i7 の環境で30FPS出るみたいです。ちなみにサイズは3GB。 HDDの容量が後2.5GB開けられたら試します。 マウスクリックで再生・一時停止を切替 一時停止中に周囲を見渡せる ライトアイコンで光関係のコントロール…

【Unity】uGUIのWorld Spaceを楽に配置したい

uGUIのWorld Spaceを楽に配置したい場合によく使ってるTipsです。 World SpaceのUI Word SpaceとUI解像度 個人的によくやっている方法 関連 World SpaceのUI CanvasはScreenSpace-Overlay(常に画面最前面)やScreenSpace-Camera(指定のカメラに映るように配置)の他に、World Space(World空間に配置)があります。 よく一般で言われているような、画面にボタンがあるUIを作りたい…

【Unity】サクッと適応出来る 綺麗な全部入りイメージエフェクト、 New Post-processing Stack (Pre-Release)

…パフォーマンスの低いPCでは全エフェクトをONにすると負荷が高いかもしれません。シーン編集時に「重い」と感じたら、ImageEffectのシーン適応を外します。 関連 tsubakit1.hateblo.jp Unity道場08「絵づくりの基礎」ライティング虎の巻 from 小林 信行 www.slideshare.net その他 そういえばシリコンスタジオさんのYEBIS for Unityも最近上がってました。これを近いうちに試したい(割と近いうちに 3dnchu.com

【Unity】複数のオブジェクトを同時編集する際に便利な、Inspectorビューをサクっと複製してLockするエディタ拡張

…pectorビュー ライティング(Light)の設定はInspectorビュー カメラの設定はInspectorビュー Materialの設定はInspectorビュー Meshの設定はInspectorビュー アプリの設定はInspectorビュー ビルド設定はInspectorビュー どれかを変更したければInspectorビューの表示内容を変更する必要があり、複数の項目を同時に変更する事は出来ません。 この操作と結果が余り変化しないのがUnityの理解しやすさの一つだと…

【Unity】Unity 5.5以降のRender Pathの設定

Unity 5.5でRender Path(ForwardやDeferredを設定してたアレ)の表示がPlayer Settingsから別の場所へ移動しました。 新しいRender Pathの設定場所 Standard Shader Qualityの設定も 関連 新しいRender Pathの設定場所 新しい場所は、Project Settings > Graphicsの…ココ。 見つけられるか…ッッッ とりあえずボタンのUI以外にボタンを入れるのをやめよう(期待 Stand…

【Unity】目的地へ辿り着くための矢印を表示する

…ではステージの配置やライティング、カットシーン等により「ユーザー自身の気づき」で移動先を見出すのが最もクールだと思いますが、ソレを見落として道に迷った末に止めたゲームを自分は何本か持っています。 矢印を示す方法は幾つかありますが、今回はプレイヤーの上に矢印を表示する方法について考えてみます。 方向を示す3つの方法 目的地までの移動先を示す方法ですが、ざっと考えて3つ思いつきました。 ゴールの方向だけを見るするパターン 中間点の方向を示すパターン 経路を探索して方向を取得するパ…

【Unity】Matcapテクスチャを動的に作ってみる実験

Matcapなんてバカ正直にPhotoShopで球体塗らんでもええんやで(・ω・)適当に球置いてライトばかすか置いてSS撮ったら完成やで pic.twitter.com/mAoXbl2GTy — ntny (@nD_ntny) 2016年7月1日 成る程、そんな手が…!? あれ、Unity内で出来るなら動的に云々出来るんじゃね? という事でやってみました。どの程度有益かは知りません。 Matcapテクスチャを動的に作る 手順 感想 関連 Matcapテクスチャを動的に作る ま…

【Unity】Matcap、事前に用意した綺麗な光表現を利用する

…する ダイナミックなライティング?PBR?なにそれ美味しいの? 視点はある程度固定が前提 UnityでMatcapを使用する アセットのダウンロード・インポート 実際に使ってみる その他 関連 Matcapって何? matcapとは、事前にレンダリングした画像を使用してライト表現を行う手法です。 この手法では、材質と光を表現した球の絵を使用して擬似的にライティングを行います。つまり、ライティングの処理を行わず(事前計算して)ライティングの表現を行える訳です。多分 表現の調整が…

【Unity】Lightprobeの影響をモデルやパーティクルの一部に限定する、LightprobeProxyVolumeを使ってみる

今回はUnity 5.4(オープンベータ中)の新しい新しい機能LightprobeProxyVolumeについて、少し分かりにくいなと思ったので色々と確認を兼ねてメモします。 間接光(GI)と動的なオブジェクトとLightprobe Lightprobeと大きなメッシュ LightprobeProxyVolume LPPVの使い方 関連 間接光(GI)と動的なオブジェクトとLightprobe UnityはUnity5になり動的なGI(間接光)を使用出来るようになりました。壁…

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

…しょうか? なにやらライティング関連のデモによく出てくるアレです。つまり、コレです。 ちょっと週末にライティングについて色々と聞いたので、今回はコーネルボックスを作ったりして、ライティングについて色々と試してみようと思います。 コーネルボックスを作る 箱を作る 色を塗る 照明を蛍光灯に変更する ライティングについて色々と試してみる 光沢を付ける ダイナミックなオブジェクトとの混ぜ合わせ 光を足すと白になる 色は光が反射する事で表現される 感想 コーネルボックスを作る まずは兎…

【Unity】3D空間にUIをメッシュのように表示する

uGUIを使用して3D空間上にUIを使用するアプローチとその注意点についてです。 3D空間にUIを配置 間接光の影響を受けられない 描画順 感想 関連 3D空間にUIを配置 CanvasのRender modeをWorld Spaceに変更すると、UIをワールドスペースつまり3D空間上に配置する事が出来ます。World SpaceのCanvasはAnchorを使用することが出来ませんが、PositionやRotationを使用して座標を調整する事が出来ます。UIをWorld …

【Unity】UIに立体的に見せるライティングを付ける

…でもハイポリな感じのライティングを行うためのものです。 例えば下のようなタイルのテクスチャがあったとします。地面は板ポリなので凹凸はテクスチャの色でのみ再現されています。 これにノーマルマップを設定し立体感を出します。ノーマルマップを設定した絵に光を当てることで、光の反射が表現され、質感がぐっと良くなります。 ついでにAOマップやらハイトマップやらを付けると、より見た目がよくなりますが、それに関しては追々。とにかくノーマルを付与すると光を当てた際に立体的な感じになります。 U…

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

…ンと同名のフォルダ ライティングの基本設定はアクティブなシーンが保持 各シーンのライトマップは必要な時にロードされる 焼く時に含まれないシーンのライトマップは破棄される 関連 複数シーンに跨ってライトマップを焼くには 複数のシーンに跨ってライトマップを焼くには、マルチシーンエディティングを活用します。つまり、複数のシーンをHierarchyに登録した状態、マルチシーンエディティング中にライトマップを焼けば、結合した状態でライトマップが焼かれます。 これで各々のシーンをロードし…

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

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

【Unity】Ambient Occlusionを設定

…een-Space Ambient Occlusionなるアセットが個人的にはお気に入りです。このアセットは黒単じゃなくて付近の色でAOを作るので、露骨なアウトラインじゃなくて割と自然な感じで色を出してくれます。 他にも色々とアルゴリズム違いのSSAOがあるので、試してみたい処。 関連 tsubakit1.hateblo.jp tsubakit1.hateblo.jp tsubakit1.hateblo.jp トンガルマン ブログ: Unity5のライティング機能を試してみた