Unity Weekly 153
Unity Officials
Unite 2023基調講演の日本語翻訳
Unite 2023の基調講演全文とそれぞれのセクションでの発表の日本語翻訳が公開されています。
- Unite 2023 基調講演 - YouTube
- Unity を使ったゲーム開発の未来像 - YouTube
- UI Toolkit でより美しく、素早く作成できるエディターとゲームインターフェース - YouTube
- 新しいメモリプロファイラーでアプリのパフォーマンスを改善する - YouTube
- Unity Muse でゲームレベルのプロトタイプを 20 分で作成する - YouTube
- Unity で作成したゲームをより多くのプレイヤーに瞬時に届ける - YouTube
- Unity PolySpatial + visionOS について知っておきたいすべてのこと - YouTube
やってみよう!SpeedTree はじめの一歩
やってみよう!SpeedTree はじめの一歩 - YouTube
SpeedTreeを用いて樹木を作る方法を動画で紹介しています。
10分でわかる! SpeedTree
SpeedTreeの概要や特徴を動画でまとめています。
Advent Calendar 2023
ZLogger v2 による .NET 8活用事例 と Unity C# 11対応の紹介
neue cc - ZLogger v2 による .NET 8活用事例 と Unity C# 11対応の紹介
ZLogger v2の設計のポイントから実装に際して活用したいくつかのトリック、Unity対応についてそれぞれ解説しています。
ゲーム作りとかCGとかに関わる数学(初歩)①
ゲーム作りとかCGとかに関わる数学(初歩)① #数学 - Qiita
ゲーム制作の際に頻出する数学の知識のうち三角関数とベクトルについて、その基本から各種定理や性質、ゲームで活用する際の知識をそれぞれ解説しています。
UnityにおけるSDFを使った円の描画とアンチエイリアス
UnityにおけるSDFを使った円の描画とアンチエイリアス #Unity - Qiita
SDFを用いたUIシェーダーにおける円の描画方法から、アンチエイリアスによるジャギーの回避方法をそれぞれ解説しています。
UniTaskAsyncEnumerableとは何なのか
【Unity】UniTaskAsyncEnumerableとは何なのか #Unity - Qiita
UniTask v2に実装されたUniTaskAsyncEnumerable
についてその概要から立ち位置の解説、似たような機能としてのUniRxのObservable
との使い分けについてそれぞれ説明しています。
モバイルクライアントアプリにおける「どんなログを出してるのか?」「どの様に役立てているのか?」事例
モバイルクライアントアプリにおける「どんなログを出してるのか?」「どの様に役立てているのか?」事例 - KAYAC engineers' blog
Unity製アプリケーションにおいて、ログ出力の考え方や役立て方、具体的なログ出力と一部の実装について紹介しています。
Sobel Filterを使ってリムライト表現を実装する
【Unity】Sobel Filterを使ってリムライト表現を実装する|Colorful Palette
Sobel Filterによるリムライト表現について、そのような実装が必要になった背景と課題の考察、Sobel Filterを用いたリムライト表現の具体的な実装、メリット・デメリットをそれぞれ解説しています。
Unity NuGetとNuGetForUnity
Unity NuGetとNuGetForUnity - やらなイカ?
NuGet Galleryで公開されているパッケージをUnityで扱うことのできる「Unity NuGet」と「NuGetForUnity」について、それぞれの導入方法から基本的な使い方を紹介しています。
(Unity/URP製)モバイルゲームの描画負荷制御
(Unity/URP製)モバイルゲームの描画負荷制御 #Unity - Qiita
モバイルゲームにおける端末ごとのスペック差の課題とそれに対処するための基本的な戦略、URP製のアプリにおいて負荷を調整するためのテクニックを紹介しています。 また、デフォルトの画質設定を決定するための基準の決定方法やシェーダーの事前ロードについても言及しています。
TextMeshProの落とし穴
TextMeshProの落とし穴 | Unity用ビジュアルノベルツール「宴」
TextMeshProを扱う際に注意すべき挙動を、バージョン問題・ColorSpace・フォントアセット・Line Metrics・SpriteAsset(スプライト絵文字)・ダイナミックフォントのそれぞれの観点でまとめています。
Unityのエディタ拡張で使える「Tree View」が超絶便利なので実装方法を紹介したい!
Unityのエディタ拡張で使える「Tree View」が超絶便利なので実装方法を紹介したい! #C# - Qiita
Unity標準で提供される「Tree View」について、基本的な使い方から応用的な利用方法として見た目のカスタマイズや検索機能の実装などを紹介しています。
Vector3をSceneView上でハンドルで編集する
[Unity]Vector3をSceneView上でハンドルで編集する(ドロップダウン付き)
SceneView上でVector3を編集できる独自のハンドル実装について紹介しています。
A.I.VOICE for Gamesを使ってUnityエディタ内でカットシーンの仮当てボイス生成を半自動化
A.I.VOICE for Gamesを使ってUnityエディタ内でカットシーンの仮当てボイス生成を半自動化 #Unity - Qiita
A.I.VOICE for Gamesを用いて、Timelineで制作するカットシーンでの仮当てボイスを半自動で生成するためのエディター拡張の実装を紹介しています。
機運到来!Photon Quantum
マルチプレイヤーゲームのための決定論的ECSフレームワークPhoton Quantumについて、その概要から学習リソース、このフレームワークを用いたマルチプレイヤーゲーム実装の各種Tipsを紹介しています。
Source GeneratorでNullObjectを自動生成する
Source GeneratorでNullObjectを自動生成する #C# - Qiita
NullObjectをSource Generatorを用いて自動生成する方法を紹介しています。
ノード表現でロジックをアセットに! GraphViewの入門とツール活用
【Unity】ノード表現でロジックをアセットに! GraphViewの入門とツール活用|Colorful Palette
GraphViewの紹介から活用事例、ロジックをアセットとして扱う検証時に感じた課題を紹介しています。
UIデザイナーもUnityでUIを実装してみよう
UIデザイナーもUnityでUIを実装してみよう|Happy Elements株式会社 カカリアスタジオ
uGUIでのデザインの組み込みを、UIデザイナー観点でまとめています。
QualiArtsのGithub Actionsへの取り組みやアプリビルドについて
QualiArtsのGithub Actionsへの取り組みやアプリビルドについて #Unity - Qiita
著者の所属する会社でのGitHub Actionsによるアプリビルドパイプラインの構築やその工夫を紹介しています。
PNGなど既存AssetのImporterを上書きする
PNGなど既存AssetのImporterを上書きする SetImporterOverride #C# - Qiita
Unity標準でサポートしている拡張子のインポーターを上書きする方法を紹介しています。
Code Coverage Package を Github Actions で動かしてみた
【Unity】Code Coverage Package を Github Actions で動かしてみた #Unity - Qiita
GitHub Actions上でCode Coverage Packageを実行して、出力をPR上にコメントする方法を紹介しています。
【Meta Quest3】WebXRでできる!フルカラーパススルーMR開発
【Meta Quest3】WebXRでできる!フルカラーパススルーMR開発【Unity】 - KAYAC engineers' blog
フルカラーパススルーのMRアプリケーションを、Web XR Exportパッケージを介してWebXRアプリケーションとしてビルドすることで、インストール不要なMRコンテンツとして提供する方法を紹介しています。
SceneViewからRaycastを飛ばして座標を取得したい。
【Unity】SceneViewからRaycastを飛ばして座標を取得したい。 #Unity - Qiita
SceneView.duringSceneGui
をフックして、SceneView上でRaycastを飛ばす方法を紹介しています。
UnityでC#だけでQRを読み込む
UnityでC#だけでQRを読み込む #C# - Qiita
QRCodeを用いてC#のみでQRコードを読み込む実装を紹介しています。
IUnityLinkerProcessorでCodeStrippingからコードを守る
IUnityLinkerProcessorでCodeStrippingからコードを守る
IUnityLinkerProcessor
とMono.Cecilを組み合わせてビルド時にlink.xml
を生成することで、特定のパターン(本記事ではZenjectによるバインド)でManaged Stripping Codeによって削除されてしまうコードを保護する方法を紹介しています。
Unityでシグナルハンドリングする
Unityでシグナルハンドリングする #Unity - Qiita
Unity上でシグナル(SIGTERM)をハンドリングするためのネイティブプラグイン実装を紹介しています。
サーバーレスで定数管理!サンプルで学ぶRemote Config
【Unity】サーバーレスで定数管理!サンプルで学ぶRemote Config【Unity Gaming Service】 - うどんてっくメモ
Remote Configのサンプルを触りつつ、リモート上で定数を管理する方法を紹介しています。
タブグループを作ろう!
uGUIでタブグループを実現する方法について、設計方針からその実装、実装したタブグループを用いて選択したタブごとにコンテンツを切り替える実装をそれぞれ紹介しています。
Anjinによる自動テストの活用事例
Anjinによる自動テストの活用事例 #Unity - Qiita
アウトゲームのテスト自動化について、著者の所属する会社でのAnjinとAirTestとのテストの使い分けからAnjinでのテスト事例を紹介しています。
【AudioMixer】exposed parametersの操作クラスを自動生成する
【AudioMixer】exposed parametersの操作クラスを自動生成する #C# - Qiita
著者の開発するAudio Mixerのexposed parametersの操作を自動生成するAudioMixerControllerGeneratorについて、その概要から基本的な使い方を説明しています。
DOTweenでUIアニメーションが連続で呼ばれた時に少しずつズレる問題の解決方法
【Unity】DOTweenでUIアニメーションが連続で呼ばれた時に少しずつズレる問題の解決方法【DOTween】 - Raspberlyのブログ
DOTweenを用いて連続したアニメーションを行うと期待したアニメーションから少しずつズレてしまう問題について、その原因から解決方法を紹介しています。
ATOM Mate for toio サンプル for Unity
ATOM Mate for toio サンプル for Unity #Unity - Qiita
ATOM Mate for toioに搭載されている距離センサーを用いて、障害物から遠ざかるtoio™コア キューブを実装する方法を紹介しています。
LINQのインターフェースでGPUを使いたい!(GPGPU)
LINQのインターフェースでGPUを使いたい!(GPGPU) #C# - Qiita
GPU上での計算をLINQのようなインターフェイスで実現するための実装について解説しています。
「Shaderでif文を使ったら遅い」は正しくない🧐
「Shaderでif文を使ったら遅い」は正しくない🧐 #C# - Qiita
シェーダーでのif文の利用について、分岐の種類の説明から参考としての各種資料、実際の計測結果を紹介しています。
ShaderでのDynamic分岐とGPUのテクスチャプリロード
ShaderでのDynamic分岐とGPUのテクスチャプリロード #C# - Qiita
シェーダーのDynamic分岐とGPUのテクスチャプリロードに関するパフォーマンスの影響を検証しています。
点線って可愛いよねって話
LineRenderer
の各種パラメーターが見た目にどのように作用するかについて紹介しています。
今更ながらPUN2でマルチプレイを実装してみる
今更ながらPUN2でマルチプレイを実装してみる #C# - Qiita
PUN2を用いたUnityでのマルチプレイゲームの実装方法について、パッケージの導入から基本的な使い方や設定、マルチプレイに関する各種操作の実現方法を紹介しています。
トグルボタンを作ろう!
【Unity入門】トグルボタンを作ろう!【UI】 #Unity - Qiita
トグルボタン(ここでは2つの状態を持ったボタン)について、その設計方針から実装までを解説しています。
Unityでフェイストラッキング
Unityでフェイストラッキング #Unity - Qiita
OpenCVSharpを用いてUnity上でフェイストラッキングを実装する方法を紹介しています。
Object.FindObjectsOfTypeを高速化したObject.FindObjectsByTypeを用いてシーン中に存在する指定された型のオブジェクトを全て列挙する
Object.FindObjectsByType
について、概要からこのメソッドの使い方を紹介しています。
Test FrameworkにてType判定するときのIs.TypeOfとIs.InstanceOfの挙動の違いについて
【C#, Unity】Test FrameworkにてType判定するときのIs.TypeOfとIs.InstanceOfの挙動の違いについて - はなちるのマイノート
Is.TypeOf
とIs.InstanceOf
について、そのメソッドの挙動の違いを説明しています。
BuildOptions.CleanBuildCacheが有効かどうかをEditor.Logから見分ける方法
【Unity】BuildOptions.CleanBuildCacheが有効かどうかをEditor.Logから見分ける方法 - はなちるのマイノート
ビルドログからBuildOptions.CleanBuildCache
(ビルドキャッシュが有効かどうか)を見分ける方法を紹介しています。
グラフィックス周りを業務で扱うまでにやったこと
【Unity】グラフィックス周りを業務で扱うまでにやったこと
著者が業務でグラフィックスを扱うために学習した基礎知識や、Unityのレンダリングパイプラインを学ぶために参考にした動画やコンテンツについて紹介しています。
Material '〜' with Shader '〜' doesn't have a color property '_Color'
[Unity]Material '〜' with Shader '〜' doesn't have a color property '_Color' #Unity - Qiita
MaterialやShaderGraphを扱うと発生する Material '〜' with Shader '〜' doesn't have a color property '_Color'
のようなエラーを解決する方法を紹介しています。
UnityAdsを導入する
[Unity]UnityAdsを導入する #Unity - Qiita
UnityAdsの導入方法についてまとめています。
NOVAShaderで作るエフェクト制作Tips
NOVAShaderで作るエフェクト制作Tips|Colorful Palette
NovaShaderを用いたDissolve(エフェクトを消す表現)の設定方法を紹介しています。
ステンシルを試してみる
ステンシルの基本的な使い方を紹介しています。
「UnityWebRequest」でMP3(AudioClip)を取得する方法
【Unity】「UnityWebRequest」でMP3(AudioClip)を取得する方法 | ツバサムスBlog
UnityWebRequestを用いて、外部にあるMP3ファイルを読み込んでAudioClipを取得する方法を紹介しています。
toioで遊んでみた
toioで遊んでみた2 - KAYAC engineers' blog
toio SDK for UnityとAR Foundationを組み合わせて、AR上でタップした点にtoioのコアキューブを移動させるアプリケーションの実装を紹介しています。
Articles
4頂点の色を指定できるRawImageの派生コンポーネント
4頂点の色を指定できるRawImageの派生コンポーネント RawImage4Color #Unity - Qiita
4頂点を指定できる独自のRawImage派生コンポーネントの実装についてその詳細を解説しています。
UnityでOpenPose風のアバタースケルトンを表示する仕組みを作ってみた
UnityでOpenPose風のアバタースケルトンを表示する仕組みを作ってみた - Activ8 Tech Blog
UnityのHumanoidのボーンとOpenPoseのボーンを紐づけ、可視化する方法を紹介しています。
Unity2022 URP14 呟き独歩
URP14のアップデート内容の、主にRenderGraphやRTHandleについてまとめています。
【Android】ランタイムでのClassNotFoundExceptionやNoSuchMethodErrorの解決
【Android】ランタイムでのClassNotFoundExceptionやNoSuchMethodErrorの解決(Vivox利用時)
Androidのネイティブライブラリ側のストリッピングとその対応方法についてまとめています。
Intro to Shader Graph in Unity (Part 4 - The Depth Buffer)
Intro to Shader Graph in Unity (Part 4 - The Depth Buffer)
Shader Graphでデプスバッファを扱う方法について紹介しています。
【MasterMemory】Validatorを使ってマスタデータをバリデーションする
【Unity】【MasterMemory】Validatorを使ってマスタデータをバリデーションする - LIGHT11
MasterMemoryで扱うマスターデーターを、バイナリ化する前にバリデーションする方法について紹介しています。
SpriteRenderer の裏をぼかすシェーダ
SpriteRenderer の裏をぼかすシェーダ - 実践ゲーム製作メモ帳2
SpriteRenderer
の裏側をぼかすシェーダーの実装を紹介しています。
Unity Loggingのハマりポイントまとめ
Unity Loggingを利用する際の、各種機能やメソッドの挙動の注意点を紹介しています。