Adobe Substance 3D、Mesh Deformation、Overlay - Unity Weekly 078
Unity Officials
Unity 向けの新しい Adobe Substance 3D プラグインのご紹介 | Unity Blog
Adobe Substance上で作成したマテリアルをUnity上に取り込んで、Unityのマテリアルとして利用したり、公開されているパラメーターをUnityエディター上で調整することで見た目を調整できるAdobe Substance 3D プラグインについて紹介しています。
Articles
Unity のシェーダ内でスクリーンの色と深度を取得するときの注意点
Unity のシェーダ内でスクリーンの色と深度を取得するときの注意点 | おいもログ
シェーダー内でスクリーン上の色や深度を取得する際の、特にプラットフォームに結果が依存しないように値を取得するための注意点をまとめています。
スクリーン上の色を取得する際にGrabPassからテクスチャ経由で取得したり、深度を _CameraDepthTexture テクスチャ経由で取得するときに、 ComputeGrabScreenPos
や ComputeScreenPos
を利用する必要性や、これらの関数から得られる値を加工して利用する際の注意点について解説しています。
Unityでアバターを外部からいい感じにロードしたい
Unityでアバターを外部からいい感じにロードしたい - Synamon’s Engineer blog
Unityでアバターを外部からロードする方法(アバターをResourcesやアセットバンドルなどに変換せずにランタイムで直接ファイルを読み込んで利用する方法)についてまとめています。
VRM・glTF・FBX形式のアバターをUniVRMとTriLibの2つのライブラリを使い分けて読み込むことで、3DモデルのロードからHumanoidとしてアニメーションのセットアップまでを行う方法について解説しています。
Sand Balls Mechanics Implementation: The Best Way To Deform A Mesh In Unity
Sand Balls Mechanics: The Best Way To Deform A Mesh In Unity
ランタイムでメッシュを変形させる方法として、 MeshFilter
で取得できるメッシュの頂点を直接編集する方法、ジョブ経由で並列に実行する方法、 AsyncGPUReadback
を用いてCompute Shader実行する方法と、それぞれの手法のパフォーマンスについて検証しています。
コンテクスト・オーバーレイの使い方
シーンビュー上にUIを表示するOverlayの基本的な使い方と、特定の EditorWindow に対してのみOverlayを表示する方法、コード上からOverlayを呼び出す方法、 ITransientOverlayを用いて特定の状況下でOverlayを表示する方法についてそれぞれ解説しています。
Unityの自作パッケージリリースに関するあれこれを自動化する
Unityの自作パッケージリリースに関するあれこれを自動化する
GitHubにコミットをプッシュしたときに、Unityの自作パッケージをリリース作業として、CHANGELOG.mdの更新やpackage.jsonのバージョン更新、npmへのプッシュ、tag打ち、GitHubのリリースページの作成などを自動化するGitHub Actionの作成方法について解説しています。
Time Travel - Rewinding Hexahedra, Part Two
Time Travel - Rewinding Hexahedra, Part Two
ブログ著者が開発している Hexahedra におけるタイムトラベル(時間の巻き戻し)機能の実装について、アニメーション再生の巻き戻しや、キューブの見た目の巻き戻し、 Time.timeScale
を 0にしたときの物理シミュレーションのアップデートなどの実装についてまとめています。
Microsoft.Unity.Analyzersを制御する
#unity Microsoft.Unity.Analyzersを制御する - 土屋つかさの技術ブログは今か無しか
Microsoft.Unity.AnalyzersによるUnityプロジェクトの解析方法の紹介と導入方法、UnityアナライザーやVisual Studio標準のアナライザーのカスタマイズ方法についてそれぞれ紹介しています。
longをfloatにキャストしたときの丸め誤差について
【小ネタ】longをfloatにキャストしたときの丸め誤差について
C#でlongで保持している値をfloatにキャストし、さらにlongに戻したときに発生する丸め誤差を、浮動小数点での値の持ち方を交えつつ解説しています。
Stylized Puffy Clouds Shader
☁️ Puffy Clouds Shader - Nokdef
Amplify Shader Editorを用いて、ふわふわとしたアニメ風な雲シェーダーを簡単なノイズと頂点操作で実装する方法について紹介しています。
スプラインとタイムラインを同期させる
【Unity2022】スプラインとタイムラインを同期させる | ねこじゃらシティ
Unity 2022から利用できるSplineパッケージをタイムラインで操作する方法について紹介しています。
タイムラインの ITimeControl
を実装するスクリプトで スプラインの位置を計算し、このスクリプトを Control Track 経由でタイムラインから操作する方法を解説しています。
Unityのカメラ画角は垂直画角
UnityEngine.Camera
の画角が垂直画角であることの実験的な確認と、カメラの画角を水平画角での固定に変更するスクリプトについて紹介しています。
InternalsVisibleToを用いて特定アセンブリからinternalにアクセスできるようにする
【Unity, C#】InternalsVisibleToを用いて特定アセンブリからinternalにアクセスできるようにする - はなちるのマイノート
特定のアセンブリから internal
にアクセスを許可する InternalsVisibleTo
属性について紹介しています。
Unity公式パッケージでの利用例、この属性を用いてテスト用のアセンブリからの参照を許可する方法についても言及しています。
Repositories
Runtime Unity Editor / Debugging Tools
ランタイム上で動作するデバッグツール。ゲームオブジェクトやコンポーネントブラウザ、オブジェクトインスペクター、C# REPLコンソールなどが実装されています。
ExtraLINQUnity
kyubuns/ExtraLINQUnity: Useful extension methods for .NET sequence and collection types.
LINQに存在しないがUnityでLINQを使う際にあると便利な拡張メソッドを実装したライブラリ。
最近追加されたメソッドについては、下記ブログ記事にて著者が解説しています。