開発者向け情報

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

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

Operator Panelの変更

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

Scriptについて

独自のSpr.pydを使用

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