私は現在、楽しみのために SlimDX を使用して C# で小さなゲーム エンジンを作成しようとしています。
世界を破壊可能にしたいので、マップを変更できる必要があります。私のマップは現在ベクター ベースで、 ID2D1PathGeometry (SlimDX の PathGeometry) オブジェクトで表されます。このオブジェクトは、ID2D1Geometry (SlimDX の Geometry) の CombineWithGeometry メソッドを使用して変更されます。
妥当な衝突検出を行うには、ID2D1PathGeometry オブジェクトの正確な形状に関する知識が必要です。たとえば、ボールが壁に跳ね返る角度を計算する場合などです。
では、ID2D1PathGeometry オブジェクトのすべてまたは特定の (場所ごとの) セグメント/ライン/ポイントにアクセスすることは可能ですか? または、すべての線と形状を別のデータ構造に追加で保存するなど、私の目標を達成するための他のより良い方法はありますか?
マップ サイズの制約としてメモリを使用したくないため、ビットマップ ベースのマップはここでは使用しないことに注意してください。
敬具、エミ