Process Scheduler
最近作ったもの
前からWPFで作ってたプロセススケジューラーが完成形に。複雑な階層構造が表現可能になったのと自動でパネルサイズがフィットするように。これでプロセスAとBを直列に動作させつつプロセスCを並列実行させるというスケジューリングが可能に pic.twitter.com/qEV5BjMfwu
— バイザン (@into_vision) 2016年5月8日
自作ゲームエディタ用のプロセススケジューラーツールのUI。
C# WPFで作成。
やりたかったことは、ゲームは1秒間に大抵60フレーム更新されるけど、
1フレームで更新する処理のうち、「非同期で行っていいもの」、「別の更新の完了を待たないといけないもの」を簡単に視覚的に制御したかった。
具体的には
1)SendUpdateで当たり判定の更新
2)それが終わったら当たったかどうかを一括でチェック、それと同時に物理演算も行っておく
3)PostUpdateで当たった場合の処理を行う
と言った感じのことが制御できる。
1フレームは1/60秒、つまり16.666msで描画まで完了しないといけないので並列で出来ることは一括でやりましょうねという感じ。
ついでにUI作っただけで実際の更新処理に関して何も作ってないという