- 新・オブジェクトプール
- オブジェクトプール作ってみた
- Unity オブジェクトプールの作成 ~その1
- Unity オブジェクトプールの作成 ~その2
- パーティクル再利用クラス
- 簡易オブジェクトプール
- 第01回 オブジェクトプーリング
- Loom
- Object Pools Keeping Things Alive
- ObjectPoolを実装してみた。【Unity】【ObjectPool】
- 【Unity】PrefabPoolManagerクラスを作ってみた(再利用可能Prefabをつくる)
- Object Pooling – For Unity3D
- OBJECT POOLING IN UNITY
- Object Pooling v2, v1
- Object Pooling in Unity 3D
- nickgravelyn/GameObjectPool.cs
- Simple Pooling
- Object Pooling in Unity
Notes of lightmaps in Unity
- Lightmap
- 【Unity】モバイル向けのライトマップTipsと、ライトマップを動的に更新するHack
Notes of draw order
- UnityのSpriteとパーティクルとかモデルの描画順番について
- Unity+スマホで3Dゲーム開発最適化するための考え方
Notes of Unity 5.5
- Upgrading to Unity 5.5 beta
- Unity Beta Release notes
Notes of projection texture shadows
- 「いけにえと雪のセツナ」グラフィック解説(第2回・グラフィック効果編)
- 投射テクスチャマッピング
Notes of combine meshes in Unity
- Unityのシーン上に配置したモデルを結合する
- ドローコールを減らす!Draw Call Minimizer
- Draw Call Minimizerの使い方と問題について
- Mesh Bakerを使ってメッシュをまとめ、Draw Callsを1306から6にしてみた【Unity】【アセット】
- 『Mesh Baker 2』を使ってUnityちゃんのドローコールを18にした時の作業の流れ
- 20150429 Mesh Baker 複数のメッシュを1つに統合しDrawCall数を減らそう
- CombineMeshesの基本的な使い方
- Mesh加工にちょっと挑戦、メッシュ最適化プラグインを試作
- Resourcesから非同期でインスタンス化する
Notes of GPU Skinning in Unity
- Unity の GPU スキニングは頂点バッファへのストリームアウトで実装されているみたい
- なので, 頂点シェーダをカスタマイズしたときでもマトリックスパレットにアクセスするコードを書く必要がない
- GPU skinning vs. your custom vertex shader
- Unity5 - Shader Stream Output Stage
追記 : 2017/09/30
- Unity でスキニングをしているキャラに対して, GPU スキニングを有効にして RenderDoc でシェーダの中身を見てみた
- Camera.Render よりも前に, MeshSkinning.SkinOnGPU を実行してストリームアウトしている
- 下図は RenderDoc でのスクリーンショットと, ストリームアウト用の頂点シェーダの一部
Shader hash 2b7e5ba9-d111fb26-c1bf5b67-5780f0c3 vs_4_0 dcl_resource_buffer (mixed,mixed,mixed,mixed) texBones (t0) dcl_input v0.xyz dcl_input v1.xyz dcl_input v2.xyzw dcl_input v3.xyzw dcl_input v4.xyzw[f:id:gregory-igehy:20170930151308p:plain] dcl_output o0.xyz dcl_output o1.xyz dcl_output o2.xyzw dcl_temps 6 0: imul null, r0.xyzw, v4.xyzw, l(3, 3, 3, 3) 1: ld_indexable r1.xyzw, r0.yyyy, texBones.xyzw 2: mul r1.xyzw, r1.xyzw, v3.yyyy 3: ld_indexable r2.xyzw, r0.xxxx, texBones.xyzw 4: mad r1.xyzw, v3.xxxx, r2.xyzw, r1.xyzw 5: ld_indexable r2.xyzw, r0.zzzz, texBones.xyzw 6: ld_indexable r0.xyzw, r0.wwww, texBones.xyzw 7: mad r1.xyzw, v3.zzzz, r2.xyzw, r1.xyzw 8: mad r0.xyzw, v3.wwww, r0.xyzw, r1.xyzw 9: mov r1.xyz, v0.xyzx 10: mov r1.w, l(1.000000) 11: dp4 o0.x, r1.xyzw, r0.xyzw 12: imad r2.xyzw, v4.xxyy, l(3, 3, 3, 3), l(2, 1, 2, 1) 13: ld_indexable r3.xyzw, r2.wwww, texBones.xyzw 14: mul r3.xyzw, r3.xyzw, v3.yyyy 15: ld_indexable r4.xyzw, r2.yyyy, texBones.xyzw 16: mad r3.xyzw, v3.xxxx, r4.xyzw, r3.xyzw 17: imad r4.xyzw, v4.zzww, l(3, 3, 3, 3), l(2, 1, 2, 1) 18: ld_indexable r5.xyzw, r4.yyyy, texBones.xyzw 19: mad r3.xyzw, v3.zzzz, r5.xyzw, r3.xyzw 20: ld_indexable r5.xyzw, r4.wwww, texBones.xyzw 21: mad r3.xyzw, v3.wwww, r5.xyzw, r3.xyzw 22: dp4 o0.y, r1.xyzw, r3.xyzw 23: ld_indexable r5.xyzw, r2.zzzz, texBones.xyzw 24: ld_indexable r2.xyzw, r2.xxxx, texBones.xyzw 25: mul r5.xyzw, r5.xyzw, v3.yyyy 26: mad r2.xyzw, v3.xxxx, r2.xyzw, r5.xyzw 27: ld_indexable r5.xyzw, r4.xxxx, texBones.xyzw 28: ld_indexable r4.xyzw, r4.zzzz, texBones.xyzw 29: mad r2.xyzw, v3.zzzz, r5.xyzw, r2.xyzw 30: mad r2.xyzw, v3.wwww, r4.xyzw, r2.xyzw 31: dp4 o0.z, r1.xyzw, r2.xyzw 32: dp3 o1.y, v1.xyzx, r3.xyzx 33: dp3 o2.y, v2.xyzx, r3.xyzx 34: dp3 o1.z, v1.xyzx, r2.xyzx 35: dp3 o2.z, v2.xyzx, r2.xyzx 36: dp3 o1.x, v1.xyzx, r0.xyzx 37: dp3 o2.x, v2.xyzx, r0.xyzx 38: mov o2.w, v2.w 39: ret
Notes of uv rotation in Unity
Good
- https://forum.unity3d.com/threads/rotation-of-texture-uvs-directly-from-a-shader.150482/
- http://answers.unity3d.com/questions/279292/animating-uv-transforms-in-shader.html
- https://forum.unity3d.com/threads/rotate-texture.19018/
- http://www.jonki.net/entry/20140205/1391612451
- https://forum.unity3d.com/threads/matrix-rotation-for-uvs.32354/#post-212096
Notes of Graphics in Witcher3
Notes of slides of FF15
- "FINAL FANTASY XV - CHARACTER & ENVIRONMENT WORKFLOW" CEDEC 2016
- "AAAタイトル開発における最適化 FINAL FANTASY XV実例紹介" CEDEC 2016
- "FINAL FANTASY XV におけるレベルメタAI制御システム"
- "Brain and Brawn" SIGGRAPH 2016
Notes of DontDestroyOnLoad in Unity
- Object.DontDestroyOnLoad
- Scene切替時でもGameObject等を破棄せずに保持しておく方法
- 一時的にLoadLevelする際にGameObjectが破棄されないようにする
Notes of billboard lighting
- "From AAA to Indie: Graphics R&D" Andrew Willmott. TP CG '13"
- Rendering large forests with ray-casting
- Geometric modeling of plants
- Deeper Tutorial: Billboard
- Rendering Grass in Real Time with Dynamic Lighting
- Procedural grass rendering
Notes of graphics in Uncharted 4
- Technical Art of Uncharted 4
- Deferred Lighting in Uncharted 4, Rendering Rapids in Uncharted 4, Temporal Antialiasing in Uncharted 4, The Process of Creating Volumetric-based Materials in Uncharted 4
- Technical Art Culture of 'Uncharted 4' GDC 2016
Notes of GC in Unity
- Understanding Automatic Memory Management
- Optimizing Script Performance
- 【Unity】Unite 2016「モバイル端末向けのUnityアプリケーションの最適化実践テクニック」翻訳
- 【Unity】Unite 2015「Unity パフォーマンス・チューニング」レポート
- C# MEMORY AND PERFORMANCE TIPS FOR UNITY
- Performance recommendations for Unity
- 【Unity】CPUプロファイラでパフォーマンスを改善する 後編
- REDUCING MEMORY USAGE IN UNITY, C# AND .NET/MONO
- Unityスマートフォンアプリの パフォーマンス最適化
- Mobile Optimization – Garbage Collector
- C# Memory Management for Unity Developers
- Part1 : http://www.gamasutra.com/blogs/WendelinReich/20131109/203841/C_Memory_Management_for_Unity_Developers_part_1_of_3.php
- Part2 : http://www.gamasutra.com/blogs/WendelinReich/20131119/203842/C_Memory_Management_for_Unity_Developers_part_2_of_3.php
- Part3 : http://www.gamasutra.com/blogs/WendelinReich/20131127/203843/C_Memory_Management_for_Unity_Developers_part_3_of_3.php
- うにばな メモリ使用量の最適化・ヒープメモリ ほか
- Unity Internals: Memory and Performance
- UNITY GARBAGE COLLECTION TIPS AND TRICKS
- ゲームは初心者にやさしく : Unityメモリ管理「参照型とヒープ
- REDUCING MEMORY USAGE IN UNITY, C# AND .NET/MONO
- Memory Management in Unity
- 【Unity】ゲーム会社でスマホ向けゲームを開発して得た知識 コーディング編
Notes of const and readonly
Notes of StringBuilder
Notes of Stencil buffer in Unity
- ShaderLab: Stencil
- Spineオブジェクトのシルエットを描画してみる
- 【Unity】ステンシルバッファを使った2D面白表現を色々と試す
- [Unity]オブジェクトをレントゲンのように透過させて表示するシェーダ
- Unityでステンシルを用いたアウトライン表現
- 【Unity】UIシェーダとステンシル
- [Unity] UnityのShaderでステンシルバッファを試す
- Using the Stencil Buffer for Sprite Occlusion
- Impossible Geometry: Non-Euclidean Cubes
Notes of Material Property Block in Unity
- MaterialPropertyBlock
- THE MAGIC OF MATERIAL PROPERTY BLOCKS
- 【Unity】マテリアルやSetPassを増やさずテクスチャのUVを変える
- うにばな (Graphics.DrawMesh で高速な描画?)
- [Unity] DrawCallメモ(SetPropertyBlock())
- マテリアルのプロパティをスクリプトから変更【Unity】
- A Game of Tricks V – Particles fun (part2)
Notes of Scriptable Objects in Unity
- ScriptableObjectについて
- ゲームバランスをUnityのEditor上で設定できるScriptableObjectを試す
- [Unity] ScriptableObjectを使ってModelを作る
- 第4章 ScriptableObject
- Unity ScriptableObjectはバトルデータに向いていると思う
- UnityでScriptableObjectを用いて設定管理
- 【Unity】 ScriptableObjectを使おう
- Unity : 不変データはScriptableObject を使って管理するとドヤ顔できるかもしれない
- ScriptableObjectって何??
- [Unity] CSVからScriptableObjectを作成してみる
- Creating ScriptableObjects in Unity
- Unity Serialization… behind the mistery of ScriptableObject
- Using ScriptableObject for data objects in Unity scenes
- ScriptableObjectの基礎理解
- [Unity]ScriptableObjectをモデルクラスとして使う
- Game Settings with Scriptable Objects in Unity3D
- Advanced Unity Serilization