参考資料

modoとLightWave風モデラー「Vibe3D」

modoとLightWave風モデラー「Vibe3D」が公開されています。

Pixel FondueのDiscord には何名か3Dモデラーを開発しようとしてる人がいますが、そこで公開されていました。AIを使用して開発しているとのことなので、私は試してないです。D言語なんて物があるんですね、知りませんでした。

https://github.com/shulc/vibe3d

私は独自のプロジェクトに取り組んでいます。modoのモデリングを再現するプロジェクトです。プロジェクトはまだ初期段階ですが、基本的な機能は既に実装済みです。Windows、Linux、macOS用のバイナリも作成済みです。

普段はC++を使っていますが、最近はD言語を学習しています。これはCloude Codeを使ったテストプロジェクトです。D言語はよりシンプルでコンパイル速度が速く、コードも簡潔に記述できます。ガベージコレクタによるオーバーヘッドはありますが、プログラムのプロファイリングを行い、ボトルネックを特定しています。現在のところ、アニメーションやレンダリング機能のない、モデリング専用のツールを作成することを目標としています。

 

Vibe3D

MODO と LightWave3D に着想を得た、ポリゴンベースの 3D メッシュエディタ。OpenGL 3.3 Core Profile、SDL2、Dear ImGui を使用して D 言語で記述されています。

特長

  •  3 つのモードによるポリゴン編集:頂点、エッジ、ポリゴン(1/2/3 または Space で切り替え)
  •  インタラクティブなトランスフォームギズモ:移動 (W)、回転 (E)、スケール (R)
  •  ベベル (B) — ポリゴンのインセット/シフトおよびエッジベベル
  •  作成ツール — Box、Sphere、Cylinder、Cone、Capsule、Torus、Pen
  •  変形ツール — フォールオフ駆動の Soft Drag / Move / Rotate / Scale に加え、Twist、Swirl、Shear、Taper、Bulge
  •  ImGui プロパティパネルでのトランスフォームパラメータの数値入力
  •  矩形ドラッグ選択;Shift で追加、Ctrl で削除
  •  接続選択 — 隣接コンポーネントのフラッドフィル ([])
  •  ループ/リング/中間/拡張/縮小選択
  •  サブディビジョンサーフェス — Catmull-Clark アルゴリズム (Shift+D)
  •  フレームフィット:シーン全体 (A) または選択部分のみ (Shift+A)
  •  適応型ギズモサイズ調整(スクリーンスペーススケール);9 段階のサイズステップ (- / =)
  •  ジオメトリック可視性テスト:背面を向いた面、エッジ、頂点は選択不可
  •  Ctrl 押下中は 15° 刻みで回転スナップ
  •  MODO スタイルの ToolPipe による対称、スナップ、アクションセンター、軸モード
  •  フォールオフタイプ:linear、radial、screen — オンスクリーンハンドル付き
  •  Undo / Redo コマンド履歴 (Ctrl+Z / Ctrl+Shift+Z)
  •  最適化付き OpenGL VBO/VAO レンダリング(GPU オフセットドラッグ、部分頂点アップロード)
  •  JSON へのイベント記録 (F1/F2) と再生 (--playback <file>)
  •  自動テスト用 HTTP サーバー (--test)

コメントを残す