開発者向け情報
SprBlender2.0(仮)は,SprBlender1.3のの内部構造とUIに大幅な変更を行ったものです.
特徴的な変更を以下に挙げます.
Operator Panelの変更
- FPS情報は,TextEditからSprBlender Infoパネルへ移動になりました.
- Springhead Physicsと SprBlender Operatorは非同期で動くため,それぞれのFPS(CPS)が表示されます.
- Set Scene / Set Objectsを廃止しました.
- Springhead Sceneの構築は,blender sceneの変更を検知して自動で行われます.そのため,明示的なSet Sceneは不要となりました.
- シミュレーション開始直前の状態を自動で保存し,Backボタンで元に戻せるようにしました.
- 状態記録はStartボタンを押した時に行われます.
- Startボタンは,シミュレーション中はPauseボタンに変化します.Pauseからの再開は「ReStart」として扱われ,状態記録の対象になりません.
- Stopボタンを押すとReStartでなくStartとなります.
- Endボタンは,最後にシミュレーションを止めた時点の状態を再現します.シミュレーション停止とは,Pause,Stop,およびOneStepの終了時です.
- なお,Backや後述するRestoreの情報はBlenderを終了すると消えてしまう(.blendファイルに保存されない)のでご注意ください.
- Store/Restoreの機能がつきました.
- Backボタンとほぼ同じですが,シミュレーション開始とは関係なく任意の状態でStoreできる点が異なります.
- なお,BackとRestoreは異なるバッファを使用するため,Restore Sceneは必ず最後にStoreボタンを押した時の状態に戻ります.
- Minimal Syncモードがつきました.
- シーンの変更検知・同期を最小限に抑え,動作を高速化するモードです.主に表示のカクつきをなくし滑らかにする効果があります.
- SprBlenderの動作を節約するため,Physics Stepの動作速度には影響しません.(ただしRule ScriptのStep間隔に影響するため動作そのものには影響があります)
- このモードでは新たなオブジェクトの追加や,Blender側からのオブジェクトの編集(移動含む)ができません.デモ用として利用してください.
- Creature RuleのUpdateボタンをOperator Panelに配置しました.
- Physics Scriptと同様にしました.これに伴い,ObjectパネルからはApply Ruleボタンがなくなっています.
- また,スクリプトが外部ファイルに保存されている場合はUpdate時にファイルからの再読み込みも行うようにしました(Physics Scriptも同様).
Scriptについて
独自のSpr.pydを使用
- SprBlender付属の,独自拡張を行ったSpr.pydが必要です.従来使用できたSpringhead標準付属のSpr.pydは使えません.