我正在尝试将我的游戏开发转移到第三维,但我在理解我实际上必须做什么时遇到了一些麻烦。我在使用 C 和 SDL 之前创建了一个 2D MMORPG,这并不太难。但我似乎找不到任何有用的资源来解释 3D 编程的实际工作原理。我对所涉及的矢量数学有一个基本的了解,但我似乎无法找到任何关于照明和着色器等其他一切如何工作的清晰、深入的解释。我找到了很多代码示例等,但所有这些都只是添加了“//应用照明”之类的注释,这并没有真正告诉我它实际在做什么以及为什么这样做。
我不是在寻找特定于 API 的教程;学习一个新的 API 很容易——我只是不确定用它来做什么。
最佳答案
如果您正在寻找一本书,我强烈推荐 Real-Time Rendering .我有这本书的第二版,发现它在处理 3D 图形时非常有用。这本书解释了 3D 编程构建块的内部工作原理,如变换、光照和纹理。它还探讨了各种高级主题,包括着色器、碰撞检测、加速和优化。
这本书对代码非常轻描淡写。它深入解释了算法,但不包含真正的代码片段。因此,如果您想了解事物的工作原理,而不仅仅是知道要调用哪个函数,那将是非常好的。
关于3d - 3D 编程概念指南?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/821924/