3

私はいくつかのグラフィックスをいじりたいです。簡単なアニメーションやもの。私もレイトレーシングをいじりたいです。これらのことを行うのに役立つライブラリを見つけるのに助けが必要です。いくつかの要件があります。

  • レイトレーシングができる必要があります
  • 高水準言語 (python、.NET など) 用である必要があります。C/C++ はご遠慮ください
  • できれば例を含む、適切なドキュメントが必要です。

私がだますのに使用できる良いライブラリを知っている人はいますか?

4

5 に答える 5

6

Blender.org をご覧ください。これは、Python スクリプト機能を備えたオープンソースの 3D プロジェクトです。

于 2009-04-23T07:01:28.510 に答える
5

最初に頭に浮かぶのは、人気のあるオープン ソースの POV Raytracer (www.povray.org) です。POV シーンは完全にスクリプト ファイルで定義されており、一部の人々はそれらを簡単に生成するために Python コードを作成しました。

http://code.activestate.com/recipes/205451/

http://jabas-unblog.blogspot.com/2007/04/easy-procedural-graphics-python-and-pov.html

于 2009-04-23T08:01:06.027 に答える
4

私はあなたの要求を満たすライブラリを知りません (少なくとも、私自身のトレーサーのコードを公開することに決めない限り...)。

とにかく、トレーサーを書くことは実際にはそれほど難しいことではありません。Glassner による「An Introduction to Ray Tracing」のコピーを入手することを強くお勧めします。比較的理解しやすい用語で実際の数学を説明し、「レイ トレーサーの書き方」に関するセクション全体も含まれています。

いずれにせよ、「ライブラリ」はそれだけではあまり役に立ちません。ほとんどすべてのレイ トレーサーには独自の内部ライブラリがありますが、それらはトレーサーに固有のものです。通常、次のものが含まれます。

  1. 3D オブジェクトを表す基本クラス
  2. 各幾何プリミティブのサブクラス
  3. ベクトルおよび行列クラス (3D および 4D)
  4. テクスチャリング関数および/またはクラス
  5. さまざまなタイプのライト クラス(ポイント ライト、スポット ライトなど)

私自身のトレーサーでは、実際にはjavax.vecmath上記の 3 のパッケージを使用しましたが、Glassner の本に基づいて 1 と 2 のコードを独自に作成する必要がありました。全体のコードは 2,000 行をはるかに下回り、個々のクラスのほとんどは約 40 行の長さです。

于 2009-04-23T07:14:57.307 に答える
2

XNA Game Studioを使ってレイトレーサーを組んでいる人は少ないと思います。

コードを使用したこの例は、次の場所で見ることができます。

Bespoke Software » レイ トレーシング - マテリアル

于 2009-04-23T07:40:00.007 に答える
2

よく開発されたオープン ソースのレイトレーサーは次のとおりです。

リアルタイム 3D の場合 (もちろん言語に依存します)、 JMonkeyEngine (Java) がありますが、それが「高水準言語」の要件を満たしているかどうかは不明です。

GameCoreBlitzBasicなどの 3D ゲーム スクリプト言語も検討できます。

于 2009-04-23T07:56:02.467 に答える