Blender: add-on ~ KJ Eye Through Hair v0.3.6 取扱説明書 ~ アニメの表現でよくある髪の毛越しに目を浮き上がせる(投影).

Image

Render Exactness Contract

Viewport Broad-phase CullingはPerformance Optimizationです。

最終Renderの形状を近似する機能ではありません。

Render開始前にはCULLED Unitを正確なStateへ戻します。

その後Runtime Refreshを実行します。

今後さらにGPU Optimizationを追加する場合も、このRender-pre Exact Contractを維持する必要があります。

Legacy Regions

Legacy v0.0.3系のRegion方式を互換機能として保持します。

主なShape ModeはSUPERELLIPSEとFACE_EXACTです。

SUPERELLIPSEはMask Expand、Width Scale、Height Scale、Shape Power、Feather、Minimum Half Sizeなどを使用します。

FACE_EXACTはEvaluated Meshの完全なFace Regionを使用します。

Legacy Modeを新しい主機能へ流用しないことを推奨します。

Demo Structure

Demo Collection名はKJ_ETH_Demoです。

Target Object名はKJ_ETH_Demo_CharacterSphereです。

Occluder Object名はKJ_ETH_Demo_HairCubeです。

Vertex GroupはKJ_Eye_L、KJ_Eye_R、KJ_Brow_L、KJ_Brow_Rです。

Demo Objectはkj_eth_demo_owned Custom Propertyで識別します。

Create Demo中はAuto Updateを一時的にOFFにしてBatch Property Assignmentを行い、apply_setup()を1回だけ実行します。

終了後は短時間のHandler Suppressionを設定します。

Debug Log

Debug Text Datablock名はKJ_ETH_DebugLogです。

DxxxはDemo関連です。

AxxxxはTarget Group Analysisです。

A-BATCHはObject Batch Analysisです。

NxxxxはNode Rebuildです。

ADD-TARGETはIncremental Addです。

HxxxxはDepsgraph Handlerです。

XFORMはTransform Fast Pathです。

GEOM-TARGETEDはGeometry Refreshです。

DEFERはDeferred Geometryです。

HSUSPはHandler Suspend Transactionです。

CULL-REEVALはPersistent Culled Unit Re-evaluationです。

Performance Regressionを評価するときは、Viewportの体感だけでなくTagごとの処理時間も比較します。

v0.3.6 実測Sample

2026年9月13日に取得したSample Logでは、Create Demo Totalは約0.1476秒でした。

Initial Runtime Rebuildは42 Triangleで約0.0996秒でした。

Brow_L 20 Triangleの追加は約0.0301秒でした。

Eye_L 42 Triangleの再追加は約0.0738秒でした。

Eye_R 42 Triangleの追加は約0.1203秒でした。

Brow_R 20 Triangleの追加は約0.0399秒でした。

4 Active Unit時のTransform Handlerは、表示されたSampleで概ね約0.0013~0.0033秒でした。

4 UnitすべてがCULLEDの場合は概ね約0.0002~0.0005秒でした。

4 Unit、124 TriangleのTargeted Geometry Refreshは約0.2070秒でした。

これらは特定PC、特定SceneでのSampleであり一般性能保証値ではありません。

現在のBottleneck評価

Pure TransformのPython Handlerは、v0.3.6時点ですでに低コストです。

4 Target Unit、124 TriangleがACTIVEなMaterial Preview / Rendered Viewで体感が重い場合、次に疑うべき候補はGPU Shader側のPer-pixel Exact Ray / Triangle Evaluationです。

これはDebug Logからの合理的推定であり、GPU Profilerによる直接計測はまだ実施していません。

今後はACTIVE 4 UnitとCULLED 4 UnitのViewport FPSまたはGPU Timingを比較し、Shader Bottleneckであることを確認してから次の最適化へ進むべきです。

コメント

コメントを残す

メールアドレスが公開されることはありません。 ※ が付いている欄は必須項目です

CAPTCHA