[[開発者向け情報>devel]]

SprBlender2.0(仮)は,SprBlender1.3のの内部構造とUIに大幅な変更を行ったものです.

特徴的な変更を以下に挙げます.

* Operator Panelの変更 [#x307fbca]

+ 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について [#b84b5a26]




* 独自のSpr.pydを使用 [#pf894bd9]
-- SprBlender付属の,独自拡張を行ったSpr.pydが必要です.従来使用できたSpringhead標準付属のSpr.pydは使えません.