夜風のMixedReality

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

Shader

ゼロから始めるUnityShader開発 第三章UnityでのShaderのタイプ

本日は昨日に引き続きShader枠です。 昨日に引き続き先日筆者の所属している会社で行ったShader勉強会の内容をまとめていきます。 redhologerbera.hatenablog.com redhologerbera.hatenablog.com 〇第三章 UnityでのShaderタイプ さて、前回、前々回でShader…

ゼロから始めるUnityShader開発 第二章ShaderとGPU

本日は昨日に引き続きShader枠です。 昨日に引き続き先日筆者の所属している会社で行ったShader勉強会の内容をまとめていきます。 redhologerbera.hatenablog.com 〇ShaderとGPU 第一章ではShaderはGPU上で実行されるプログラム言語と述べました。 ではGPU上…

ゼロから始めるUnityShader開発 第一章Shaderとは?

本日はShader枠です。 本日私の所属している会社でShader勉強会を開催しました。 きっかけはインターン生として参加していただいている方からShaderに関する相談を受けたことや社内のエンジニアでShaderに興味を持っている人が増えてきたので、時間をとって…

MixedRealityGraphicsTools StndardShader全機能解説 その⑤ Albedo

本日はMRGT調査枠です。 前回に引き続きMixedRealityGraphicsTools StandardShader全機能を解説していきます。 前回はCullModeの実装を見ていきました。 redhologerbera.hatenablog.com 本日はAlbedoの処理を追っていきます。 〇Albedo Albedoは最も基本的な…

RenderDocを使用してUnityアプリ、ピクセル単位のデバッグを行う。

本日はグラフィック調査枠です。 〇RenderDocとは? RenderDocはオープンソースで開発、提供されている、GPU上で実行されている処理を見ることができるソフトウェアになります。 〇RenderDocを使用してUnityアプリのデバッグを行う。 今回はOculusLinkで接続…

MixedRealityGraphicsTools StndardShader全機能解説 その④ CullModeと実装

本日はMRGT調査枠です。 前回に引き続きMixedRealityGraphicsTools StandardShader全機能を解説していきます。 前回はRenderingModeの実装を見ていきました。 redhologerbera.hatenablog.com redhologerbera.hatenablog.com redhologerbera.hatenablog.com r…

MixedRealityGraphicsTools StndardShader全機能解説 その④ RenderingModeの実装を見る CustomRenderMode

本日はMRGT調査枠です。 redhologerbera.hatenablog.com 前回はBaseShaderGUI.csのレンダリングモードを変更する処理を行っていましたが、今回は前回見れなかったCustom RenderingModeの場合の処理を見ていきます。 〇CustomRenderingMode RenderingModeがCu…

MixedRealityGraphicsTools StndardShader全機能解説 その② RenderingModeの実装を見る

本日はMixedRealityToolkitGraphicsTools枠です。 StandardShader全機能を実装から読み解いていきます。 今回は前回見たRenderingModeの実装を読み解いていきます。 redhologerbera.hatenablog.com 〇RenderingModeの実装 GraphicsTools/Standerd.shaderのPr…

MixeRealityGraphicsTools StandardShader全機能解説 その① RenderingModeを完全に理解する。

本日はMRGT調査枠です。 また本ブログ解説から1000記事目の記事になります。 2019年に始まった本ブログですが、累計PVが先日20万を越え、多くの方に見ていただいているようでとてもうれしいです。 今回はMixedRealityGraphicsToolsのStandardShaderの全…

MRTK GT用のToonShaderを開発する その④ PRのフィードバックを反映させる

本日はMRGT枠です。 〇MRGTとは? MixedRealityToolkit GraphicsTools(略してMRTK GT もっと略してMRGT)はMicrosoftによって提供、開発されているMixedRealityデバイス向けアプリケーション開発のオープンソースプロジェクトです。 GraphicsToolsの名の通り…

Unity C#で調整可能なグレースケールシェーダーを書く

本日はShader学習枠です。 今回は白黒のスケールになれるShaderを作成していきます。 〇コード Shader "Unlit/GrayScale" { Properties { _GrayScale("GrayScale",float) = 1. _MainTex ("Texture", 2D) = "white" {} } SubShader { Tags { "RenderType"="Op…

MRTK GT用のToonShaderを開発する その③ PRを提出する ShaderGUIの編集

本日はShader学習枠です。 先日より開発しているMRGT向けのNPR機能を本家MRGTへ提出しようと思います。 redhologerbera.hatenablog.com redhologerbera.hatenablog.com 今回はまずシェーダーの機能を埋め込む場所を準備していきます。 〇LightMode MRGTではv…

MRTK GT用のToonShaderを開発する その② RampTexture

本日はShader&MRGT学習枠です。 前回MixedRealityGraphicsTools(MRGT)のStandardShaderにNPR機能を実装しました。 NPRとはNon Photorialisitic Renderingの略称で、一言で言うと非現実的な影の付き方のレンダリングを指します。 NPRの中には絵画調やコミッ…

ShaderでプロパティにEnumを使用する その② シェーダーコード内の処理

本日はShader学習枠です。 昨日はMRGTShaderを例にとってインスペクタ上に表示されるマテリアルプロパティからEnum型の変数を使用できるようにしました。 今回は実際にここで選択されたプロパティをもとにシェーダー内部の処理を変えていきます。 〇Shader内…

MRTK GT用のToonShaderを開発する その① NPRシェーダー

本日はShader学習枠です。 今回勉強も兼ねてMRTG StandardShaderを改造していきます。 〇NPRシェーダーとは? NPR(No Photorealistic Rendering)とは、写実的ではないレンダリングを指します。 つまりリアルではない見た目となるという意味です。 NPRの中に…

ShaderGraphでオブジェクト同士の交差点を取得する

本日はShader学習枠です。 今回は水面表現などでよく見かけるほかのオブジェクトと交差している個所が発光するような見た目のシェーダーを実装します。 〇Unityでオブジェクト同士の交差点の取得 Unityであるオブジェクトと別のオブジェクトが接触、交差して…

GraphicsTools StandardShaderのSuperSample Anti Aliasingを触る。

本日はMRGT枠です。 MixedRealityGraphicsTools(MRGT) で提供されているGraphicsTools/StandardShader(以下MRGTStandard)はxRに特化した数多くの機能が提供されています。 多くの機能は触りながらであったり、ドキュメントを見ることで使い方がわかることが…

MixedRealityGraphicsToolsでClippingを使用する

本日はシェーダー調査枠です。 今回はMRGTの機能を使用してオブジェクトの出現表現を行っていきます。 〇MixedRealityGraphicsTools(MRGT)とは? MixedRealityGraphicsTools(MRGT)はHoloLensやMetaQuestをはじめとしてxRアプリケーション開発に役立つツール…

MRTG Standard シェーダーの負荷をURP/Litシェーダーと比較する

本日はシェーダー調査枠です。 MixedRealityGrahpicsTools(以下MTGT)ではxRに特化したシェーダーシステムとしてGraphicsTools /Standardシェーダーが提供されています。(以下MRGT Standard) ドキュメントによるとライティングの近似化などによりUnityでDefau…

MR Speaker Series: Shader Foundationsを読み解く まとめ

本日はShader学習枠です。 先日までMRTKやMRGTでグラフィックを担当されているMicrosoftのCameronさんによるMR向けのShader解説セッションを読み解いていました。 youtu.be 今回はセッション全体をまとめていきます。 〇セクションの目的と内容 動画では 初…

RenderDocをGoogleChromeで起動してWebXRのデバッグを行う

本日はRenderDocを使用してブラウザ上でのグラフィックのデバッグを行っていきます。 〇RenderDocとは? RenderDocはMITライセンスで開発、提供されているスタンドアローンなグラフィックスデバッガーです。 通常レンダリング回りの処理はGPU上で動いている…

MR Speaker Series: Shader Foundationsを読み解く §7 参考資料

本日はシェーダー学習枠です。 現在MRTKやMRGTでグラフィックを担当されているMicrosoftのCameronさんによるMR向けのShader解説セッションを読み解いています。 前回までは§6を読み解きながら見ていました。 redhologerbera.hatenablog.com 今回は§7の参考資…

RenderDocでUnityレンダリングのデバッグを行う その③ Event Browserの処理の流れを深読みする。

本日はRenderDocを触ります。 〇RenderDocとは? RenderDocはMITライセンスで開発、提供されているスタンドアローンなグラフィックスデバッガーです。 通常レンダリング回りの処理はGPU上で動いているためログの出力などが難しく、デバッグやプロファイルが…

Unity C#でスクリプトからメッシュを作成する その① メッシュを作成する。

本日はUnity実験枠です。 普段はBlenderなどでメッシュを作成しShaderを使用することで描画を行っていますが、このメッシュを今回はC#で作成していきます。 〇Meshクラス スクリプトでメッシュを作成するためにはMeshクラスを使用します。 docs.unity3d.com …

MixedRealityGraphicsToolsでアウトラインをつける

本日はMRGT枠です。 〇MixedRealityGraphicsToolsとは? MixedRealityGraphicsTools(MRGT)はHoloLensやMetaQuestをはじめとしてxRアプリケーション開発に役立つツールキットであるMixedRealityToolkitの最新版MRTK3で提供されるパッケージの一つで、グラフィ…

RenderDocでUnityレンダリングのデバッグを行う その②TextureViewerの使い方を深読みする。

本日はRenderDocを触ります。 〇RenderDocとは? RenderDocはMITライセンスで開発、提供されているスタンドアローンなグラフィックスデバッガーです。 通常レンダリング回りの処理はGPU上で動いているためログの出力などが難しく、デバッグやプロファイルが…

RenderDocでUnityレンダリングのデバッグを行う その① RenderDocでパイプラインの処理の見方を追う

本日はRenderDocを触ります。 〇RenderDocとは? RenderDocはMITライセンスで開発、提供されているスタンドアローンなグラフィックスデバッガーです。 通常レンダリング回りの処理はGPU上で動いているためログの出力などが難しく、デバッグやプロファイルが…

RenderDocを使う 導入~Unityでの利用

本日はShader調査枠です。 先日MicrosoftのMRTKチームのCameronさんのShaderに関する動画の中でShaderのデバッグツールとしてRenderDocというツールが紹介されていました。 セッション内では時間の都合か詳細が説明されてはいませんでしたので今回初めてRend…

MR Speaker Series: Shader Foundationsを読み解く §6 デバッグ

本日はシェーダー学習枠です。 現在MRTKやMRGTでグラフィックを担当されているMicrosoftのCameronさんによるMR向けのShader解説セッションを読み解いています。 前回までは§4のシェーダーの実行をコードを読み解きながら見ていました。 redhologerbera.haten…

MR Speaker Series: Shader Foundationsを読み解く §5 パフォーマンスと最適化ツール

本日はシェーダー学習枠です。 現在MRTKやMRGTでグラフィックを担当されているMicrosoftのCameronさんによるMR向けのShader解説セッションを読み解いています。 前回までは§4のシェーダーの実行をコードを読み解きながら見ていました。 redhologerbera.haten…