NarrowInit: 関数ネストが深すぎてエラーになっていた箇所を修正
実装を構造体別に分離
3D形状を(convexを除いて)ひと通り実装
3D形状をひと通り実装