Unity Weekly #011

On-Demand QA Testing with Unity Automated QA

Automated QA blog header 1280x720

Unity Automated QA によるオンデマンドな QA テスト - Unity Technologies Blog

ccache で Unity の生成する Xcode プロジェクトのビルドを高速化する

ccache で Unity の生成する Xcode プロジェクトのビルドを高速化する

  • この記事では ccache/ccache: ccache – a fast compiler cache を用いて、UnityのiOSビルドを高速化する方法について紹介されています。記事で紹介されているサンプルプロジェクトでは、ビルド時間を50%にすることができたそうです。
  • ccacheのインストール方法からIPostprocessBuildWithReportを用いてUnityプロジェクトでccacheを利用する方法、プロジェクト中でCocoapodsを利用する際やEnable Modulesの有無での設定方法の注意点についてが述べられています。
  • 元記事であるccacheを導入してUnityのiOSビルドを高速化出来ないか検証してみた - QiitaにもccacheのUnity組み込みが紹介されています。

How to speed up 2D art workflows with 2D PSD Importer

image8 2

How to speed up 2D art workflows with 2D PSD Importer

  • この記事ではPSBファイル(PSDとほぼ機能は同じで、より大きい画像を扱えるフォーマット)を 2Dアセットとしてインポートすることのできる2D PSD Importerについての説明と、インポーターを用いたワークフローの効率化のユースケースを紹介しています。
  • PSBをインポートすると、全てのPhotoshopレイヤーを子オブジェクトにしたプレハブを自動的に作成します。全てのオブジェクトはSprite Rendererコンポーネントが付加され、元データのトランスフォーム及び深度データを保持しています。またこの挙動はインポート設定により変更することができます。
  • 元データにボーンまたはウェイトデータがある場合、2D PSD Importerは2DアニメーションのためにSprite Skinコンポーネントを自動で追加します。これはスキニングエディターと連携して機能するため、2Dアニメーションを作成するワークフローを簡単に構築することができます

ShaderQuest Part 5: Shader code syntax & Colors

SQ Part 5

ShaderQuest Part 5: Shader code syntax & Colors – Harry Alisavakis

  • Harry AlisavakisさんによるシェーダーチュートリアルであるShaderQuestの第5弾です。今回はシェーダーの構文(データ型やベクターの扱い方、Swizzlingなど)とシェーダーにおける色の扱い方、乗算および加算とはなにかについて説明しています。
  • シェーダーでの色の加算について、ShaderLabとShaderGraph、また他のゲームエンジンでどのように実現するかについて説明されています。

Holofoil Card Shader Breakdown

Holofoil Card Shader Breakdown | Cyanilux

  • この記事では上記動画のような見た目を実現する「Holofoil Card Shader」を実装する方法について紹介されています。
  • カードが虹色に輝く演出(Holographic Foil Effect)は、接空間のViewDirectionベクトルから虹色の繰り返しパターンテクスチャをサンプリングすることで実装しています。トレーディングカードのような効果を出すために、座標をディストーションテクスチャを用いるなどして歪めています。
  • 上記の演出の影響度をカードの場所によって変更するために、マスク画像を用いています。またカード上部には3Dモデルをそのまま表示していますが、これはステンシルによりカードをくり抜くことで表現しています。

Unity Mesh API Compute Shader Access

  • Unity 2021.2でMesh APIが改善され、Computer Shader内でメッシュの頂点とインデックスデータにアクセスすることができるようになりました。
  • 具体的にはMeshおよびSkinnedMeshRendererGetVertexBufferGetIndexBufferというようなAPIが追加されます。戻り値としてGraphicBufferがかえるためそれをCompute Bufferに渡すことでメッシュ情報にアクセスすることができます。
  • Unity-Technologies/MeshApiExamples at mesh-compute-accessにてサンプルプロジェクトを確認することができます。