夜風のMixedReality

xRと出会って変わった人生と出会った技術を書き残すためのGeekなHoloRangerの居場所

Shader

ゼロから始めるUnityShader開発 第五章 透明度のシェーダーを書く その③一般的なAlphaBlending

本日はシェーダー枠です。 昨日は透明度を持った半透明なオブジェクトの描画を行いました。 キーポイントとして透明度を持ったオブジェクトの描画には以下の二つがあります。 ・不透明なオブジェクトが描画された後に描画する ・すでに描画されているピクセ…

ゼロから始めるUnityShader開発 第五章 透明度 半透明なシェーダーを書く

本日はシェーダー学習枠です。 〇不透明なオブジェクトの描画順 描画処理が行われる際は一般的に遠くにあるものから塗りつぶされるように描画が行われています。 半透明なオブジェクトは不透明なオブジェクトの描画が完了した後に処理が実行されます。 これ…

プラットフォームによってShaderのUV座標が上下反転する問題

本日はShaderのトラブル解消を行います。 先日MixedRealityGraphicsToolsの拡大鏡機能をHoloLensで実行した際にUV座標のV座標が反転する現象を確認しました。 redhologerbera.hatenablog.com 取り急ぎの対処としてV座標に-1をかけ合わせてトラブルを回避しま…

Tokyo HoloLens Meetup Vol.32LT登壇資料

本日はイベント枠です。 昨日TokyoHoloLens Meetupに参加をしました。 イベント自体のレポートに関しては昨日記事にまとめております。 redhologerbera.hatenablog.com 本日はHoloLens Meetupイベント中に筆者が登壇したLTに関して紹介します。 〇LT大会 LT…

Unityプロジェクト内のマテリアルをシェーダー別に取得するツールを作る その③ プロトタイプの完成

本日は昨日に引き続きMRGTに提出予定のエディタツールを作成していきます。 先日はプロジェクト内に含まれるすべてのマテリアルをデバッグログとして出力しました。 redhologerbera.hatenablog.com 今回は任意のシェーダーでフィルタリングしてログを出力し…

Unityプロジェクト内のマテリアルをシェーダー別に取得するツールを作る その②ボタンの実装とマテリアルの検索

本日はUnity枠です。 昨日からMRGT向けの新機能としてUnityプロジェクト内のマテリアルをシェーダー別に取得するツールを作成しています。 前回はエディタウィンドウの基本設定を行っていきました。 redhologerbera.hatenablog.com 今回はこちらの機能を作成…

MixedRealityGraphicsTools v0.5がリリースされました。

本日はMRGT枠です。 昨日MixedRealityToolkit 3(MRTK3)のパッケージの一つでxR上でのグラフィックに特化したパッケージであるMixedRealityGraphicsTools(MRGT)の公式メジャーアップデートv0.5がリリースされました。 本リリースでは筆者の開発した機能も含…

ゼロから始めるUnityShader開発 CustomShaderGUIでマテリアルをカスタマイズする Enum型のプロパティを表示する

本日はShader学習枠です。 今回はShader自体というよりはShaderをUnity上に表示させる際に使用できるカスタマイズ表示を実装します。 〇CustomShaderGUIとは? 〇Enum型のマテリアルプロパティの実装 〇カスタムシェーダーGUIの全コード 〇CustomShaderGUIと…

ゼロから始めるUnityShader開発 第四章 SRP Batcherに対応するシェーダーを記述する

本日はShader勉強枠です。 今回は軽量化の処理であるSRPBatcherに関して紹介します。 〇SRP Batcherとは? SRP BatcherはSRPと名がつくことからわかるようにURPやHDRPなどのSRPで使用できるレンダリングの最適化にかかわる機能です。 従来はマテリアル単位で…

MixedRealityGraphicsToolsのNPR機能の陰に画像を使用できるようにする その② 

本日は昨日に引き続きMRGTStandardShaderのトーン表現を拡張していきます。 redhologerbera.hatenablog.com 〇shader_featureの定義 URPではマテリアルから使用する機能だけチェックボックスを有効化して有効にするウーバーシェーダーシステムを使用するため…

MixedRealityGraphicsToolsのNPR機能の陰に画像を使用できるようにする その① プロパティの表示

本日はShader学習枠です。 〇MxedRealityGprahicsTools(MRGT)とは? MixedRealityToolkitGraphicsTools(MRGT)はMicrosoftによって提供されているMixedRealityアプリ向けのUnitySDKであるMixedRealityToolkit3(MRTK3)の一つでグラフィックを担っています。 xR…

ゼロから始めるUnityShader開発 CustomShaderGUIでマテリアルのプロパティをカスタマイズする  任意にプロパティの表示非表示を切り替える

本日はShader学習枠です。 今回はCustomShaderGUIを使用して任意にプロパティの表示を切り替える実装を紹介します。 redhologerbera.hatenablog.com 〇チェックボックスと連動して表示を行う シェーダーによってはある機能を有効にしている場合のみ必要とな…

ゼロから始めるUnityShader開発 CustomShaderGUIでマテリアルのプロパティをカスタマイズする ShaderGUIの使い方とTextureのカスタマイズ

本日はShader勉強枠です。 今回はShader自体というよりはShaderをUnity上に表示させる際に使用できるカスタマイズ表示を実装します。 〇CustomShaderGUIとは? 〇CustomShaderGUIを使用する 〇ラベルの作成 〇Shaderのプロパティの取得 〇プロパティの表示 …

MixedRealityToolkit GraphicsTools DistantLightを完全に理解する

本日はまとめ記事です。 〇MixedRealityToolkitGraphicsToolsとは? MixedRealityToolkitGraphicsTools(MRGT)はMicrosoftによって提供されているMixedRealityアプリ向けのUnitySDKであるMixedRealityToolkit3(MRTK3)の一つでグラフィックを担っています。 xR…

ゼロから始めるUnityShader開発 第六章 モザイクシェーダー

本日はShader学習枠です。また2022年最後の記事になります。本年は毎日ブログを更新できました。23年も毎日更新はもちろんのことですが、質もよくしていきたいと思います。 〇モザイクシェーダー 今回は画像をmosaicで表示する表現を紹介します。 ①新規のUnl…

UntiyShaderGraphでクリスタルなシェーダーを描く その②

本日は昨日に引き続きUnityでクリスタルなシェーダーを書いていきます。 昨日はクリスタルの表現において最もコア的なTransmissionとIOR(屈折)を実装しました。 これはViewDirectionノードによってカメラの角度を取得、hlsl で提供されているRefract関数を…

UnityShaderGprahでクリスタルなシェーダーを描く その① リフレクションの実装

本日はShader学習枠です。 今回はShaderGprahを使用して宝石のようなシェーダーを作っていきます。 〇Transmission(伝搬) Blenderでガラスやクリスタルの表現を行う際はTransmission(伝搬)を使用することが一般的です。 アルファとの違いとしてただ単に透明…

ゼロから始めるUnityShader開発 第五章 ノーマルマップ その②

本日はShader勉強枠です。 前回の記事はこちらになります。 redhologerbera.hatenablog.com 〇ノーマルマップとは ノーマルマップはローポリゴンでありながら凸凹間を再現するために使用されるテクスチャとそれを用いた実装です。 ノーマルマップを使用する…

ゼロから始めるUnityShader開発 第五章 複数の機能を切り分けて使えるシェーダーを記述する

本日はShader学習枠です。 〇複数の機能を切り分けて使用できるシェーダー Unityのマテリアルではシェーダーごとに提供されているパラメータを使用してマテリアルごとの特徴を出すことができます。 同一シェーダーのキューブ 例えば上図では同じシェーダーを…

MRGT StandardShaderを完全に理解する HoloLens 2022年アドベントカレンダー 23日目

本日はMRGT枠です。 〇HoloLens 2022年アドベントカレンダー HoloLens 2022年アドベントカレンダーはQiita上で私の師であるがち本さんが開催している企画です。 クリスマスまで毎日記事を埋めていくことが目的で本日は23日目の記事になります。 qiita.com 〇…

MRGT StandardShaderを完全に理解する固定ページを公開しました。HoloLens 2022年アドベントカレンダー 22日目

本日はMRGT枠です。 本日本ブログの固定ページにGraphicsToolsStandardShader機能解説ページを作成しました。 〇HoloLens 2022年アドベントカレンダー HoloLens 2022年アドベントカレンダーはQiita上で私の師であるがち本さんが開催している企画です。 クリ…

MixedRealityToolkit GraphicsTools導入方法まとめ HoloLensアドベントカレンダー2022 19日目

本日はMixedRealityToolkit GraphicsTools(MRGT)の環境導入方法をまとめていきます。 〇HoloLens 2022年アドベントカレンダー HoloLens 2022年アドベントカレンダーはQiita上で私の師であるがち本さんが開催している企画です。 クリスマスまで毎日記事を埋め…

SpatialMeshにサイバーな影を落とすシェーダーを開発する HoloLensアドベントカレンダー2022 18日目

本日はHoloLensの表現実験枠です。 昨日開発したSpatialMeshのシェーダーを改造していきます。 〇HoloLens 2022年アドベントカレンダー HoloLens 2022年アドベントカレンダーはQiita上で私の師であるがち本さんが開催している企画です。 クリスマスまで毎日…

HoloLensのSpatialMeshに影を描画する

本日はHoloLensの表現実験枠です。 HoloLensではオブジェクトを空間に配置することができますが、一般的に影の描画を行うことは稀です。 これには次のような理由があります。 ①光学シースルーの特性上黒を描画できないため ②ライト処理は重たい処理であるた…

MixedRealityToolkit GraphicsTools StandardShaderのVertex Extrusionの機能を読み解く

本日はMixedRealityToolkit GraphicsToolsStandardShaderのVertex Extrusionの機能を読み解いていきます。 〇HoloLens 2022年アドベントカレンダー HoloLens 2022年アドベントカレンダーはQiita上で私の師であるがち本さんが開催している企画です。 クリスマ…

HoloLensで床や壁に穴をあける。 その⑤ 手をかざして穴をあける HoloLensアドベントカレンダー2022年11日目

本日はHoloLens表現枠です。 昨日に引き続きHoloLensで床や壁に穴をあけていきます。 redhologerbera.hatenablog.com 〇HoloLens 2022年アドベントカレンダー HoloLens 2022年アドベントカレンダーはQiita上で私の師であるがち本さんが開催している企画です…

HoloLensで床や壁に穴をあける。 その③ 機能の完成 HoloLensアドベントカレンダー2022年 7日目

本日はHoloLens表現枠です。 〇HoloLens 2022年アドベントカレンダー HoloLens 2022年アドベントカレンダーはQiita上で私の師であるがち本さんが開催している企画です。 クリスマスまで毎日記事を埋めていくことが目的で本日は7日目の記事になります。 qiita…

HoloLensで床や壁に穴をあける。 その② 壁の中のみに存在するオブジェクトを作る HoloLensアドベントカレンダー2022年 6日目

本日は昨日に引き続きHoloLensで床や壁に穴をあけていきます。 〇HoloLens 2022年アドベントカレンダー HoloLens 2022年アドベントカレンダーはQiita上で私の師であるがち本さんが開催している企画です。 クリスマスまで毎日記事を埋めていくことが目的で本…

HoloLensで床や壁に穴をあける。 その① SpatialMeshに使用されているシェーダーを調べる HoloLensアドベントカレンダー2022年 5日目

本日はHoloLens2の表現枠です。 〇HoloLens 2022年アドベントカレンダー HoloLens 2022年アドベントカレンダーはQiita上で私の師であるがち本さんが開催している企画です。 クリスマスまで毎日記事を埋めていくことが目的で本日は5日目の記事になります。 qi…

MixedRealityGraphicsTools StandardShader全機能解説 その⑦NormalMapの実装を読み解く HoloLensアドベントカレンダー2022年3日目

本日はMRGT枠です。 〇HoloLens 2022年アドベントカレンダー HoloLens 2022年アドベントカレンダーはQiita上で私の師であるがち本さんが開催している企画です。 クリスマスまで毎日記事を埋めていくことが目的で本日は3日目の記事になります。 qiita.com 〇M…