7

多くの一流大学が、コンピューター グラフィックスに関連する科目を CS 専攻で教えるコースを学生に提供していることに気付きました。悲しいことに、これは私の大学が提供しているものではなく、今後数年のうちに実際に取り組みたいと思っています。

私がいくつかの大学で見つけたいくつかのプロジェクトは素晴らしいですが、主に次の 2 つのことに興味があります。

  • レイトレーシング:
    • 今後 2 年以内に Raytracer を書きたいと思っています。何を知る必要がありますか? 私はまだ素晴らしいプログラマーではありません (Java、C、および Prolog が現在の私の主な言語です) が、毎日ゆっくりと学習しています。また、私の数学のバックグラウンドはそれほど優れていないので、読むべき本のヒントやそのようなプログラムを書くためのアドバイスは素晴らしいでしょう. 私はこれらのことをすぐに拾う傾向があるので、私に参考文献を気軽に投げてください.
  • 3D レンダリング モデルのプログラミング
    • 私は、学生がモデルを開発し、ゲームで使用したいくつかのプロジェクトを見てきました。ラスター イメージを使用して 2D ゲームをいくつか作成しましたが、3D モデルを使用したことはありません。これらのモデルのプログラミングに関して、何を学ぶ必要がありますか? 以前は 3D Studio Max と Cinema4D を使用していましたが (すべてのコースで Maya を使用しているようですが)、約 4 年間触れていませんでした。

あいまいで、正直に言って、ばかげた質問を投稿して申し訳ありません。それは私がしばらくの間やりたかったことであり、私自身の時間で開発するための大きなプロジェクトとして良いものです.

関連する質問

4

7 に答える 7

8

pbrtをお勧めします。これは本であり、コンピューター サイエンスの卒業生を教えるために使用される物理ベースのレンダラーです。使用される数学の説明は素晴らしく明確であり、「文芸的プログラミング」で書かれているため、適切なコード (C++ で) も見ることができます。

于 2009-02-20T18:44:36.857 に答える
4

「Computer Graphics: Principles and Practice」 (Computer Graphics サークルでは「Foley-VanDam」として知られている) という本は、ほとんどのコンピューター グラフィックス コースの基本であり、レイ トレーサーの実装に関するトピックを詳細にカバーしています。それはかなり時代遅れですが、それでも最高のものであり、基本的な原則は同じままです.

また、 Eric Lengyel の Mathematics for 3D Game Programming and Computer Graphics の推奨も支持します。それほど網羅的ではありませんが、3D プログラミングに必要な数学の基礎のすばらしい復習であり、各章の最後に非常に役立つ要約があり、親しみやすく、怖がりすぎない方法で書かれています。

さらに、おそらく OpenGL または DirectX の基礎が必要になるでしょう。3D API の使用を開始してから基礎となる数学を学ぶほうが (私の意見では) その逆よりも簡単ですが、どちらのオプションも可能です。SO で OpenGL を探すだけで、適切な参考文献がいくつか見つかるはずです。

于 2009-01-15T16:55:47.180 に答える
2

2000 ICFP プログラミング コンテストでは、参加者に 3 日間でレイ トレーサーを作成するよう求めました。シンプルなレイ トレーサーの優れた仕様があり、入賞作品やその他の作品のコードも入手できます。多数の異なるプログラミング言語のエントリがありました。これは、始めるのに良い方法かもしれません。

于 2009-01-15T03:43:06.763 に答える
1

私が与えることができる最も簡単な有用な答えは、Tomas Akenine-Möller、Eric Haines、および Naty Hoffman によるReal-Time Renderingで重要なアルゴリズムのほとんどを見つけることができ、最後の参考文献には必要な数学への参照があるということです。彼らのウェブサイトには、おすすめの読書リストもあります。

このテーマに関して私が読んだ中で最も役立つ数学の本は、Eric Lengyel のMathematics for 3D Game Programming and Computer Graphicsです。最も必要な数学は、幾何学 (明らかに) と線形代数 (すべての行列を処理するため) です。

于 2009-01-15T03:09:20.453 に答える
0

これらのトピックの数学的紹介については、を参照してください。

http://graphics.idav.ucdavis.edu/education/GraphicsNotes/homepage.html

于 2009-01-15T20:27:57.827 に答える
0

http://www.scratchapixel.com/lessons/3d-basic-lessons/lesson-1-writing-a-simple-raytracer/ を確認してください

これは、レイ トレーシングとレンダリング全般について学ぶのに非常に適した場所です。

于 2013-06-25T23:39:06.003 に答える
0

昨年、私はそのようなクラスを受講しましたが、このクラスは、コンピュータを自分のやりたいようにさせるためのコマンドだけでなく、コンピュータ グラフィックスの背後にある数学を学生に強制的に学ばせる素晴らしい授業だったと思います。

私の教授はここにあるサイトを持っていて、そこには彼の講義ノートと問題集があります。

私たちの最後のプロジェクトは確かにレイトレーサーでしたが、その背後にある数学を理解すれば、コーディング (非効率的なもの) は簡単です。

于 2009-01-15T16:47:21.783 に答える