私は、ビームで構成された構造の3Dモデルを生成し、オブジェクトのいくつかのビュー(フロント、サイド、トップ、アイソメ)を生成するプログラムをC#で構築しようとしています。どの3Dレンダリング技術/アルゴリズムがエッジでビームを描くのに最も効果的ですか?
私は表面を描画する必要があります(エッジは十分です)、私は描画する各ラインを計算してきたし、その後
GraphicObject.DrawLine(myPen, x1, y1, x2, y2)
これは、これまでのところうまくいきました、しかしとしてでそれをしないと構造体に部品を追加すると、GraphicObject
のリフレッシュに時間がかかりすぎます。だから私は描画する線の量を減らすために線の可視性チェックに入っています。
私はWikipediaとそのPDFをいくつか検索しましたが、私が見つけたものはすべて表面に向けられています。だから私の質問:オブジェクトのエッジの可視性をチェックするための単純化されたアルゴリズムがありますか、または私は別のアプローチ、表面を検討するように行く必要がありますか?
ご協力いただきありがとうございます。
その他の注意事項/質問:
私の現在のアプローチ:
計算ローカル軸内のすべてのビーム(すべての頂点)
- =>自分のグローバル位置 に移動
- =>ポイントのペアを含むリストを作成する(ビューに投影され、スケーリングされたもの)
- =>
GraphicObject.DrawLine
ポイントのペアのリスト)私はDrawLine
メソッドを使用するのではなく、ピクセルのビューを計算したい場合
は全部がより速くなるでしょうか?
スクリーンショットは(まだ完全に完了していないが)、何をするつもりだ構造の種類には、次のとおりです。
- 構造ビュー
- 構造詳細