- 资源介绍
- 更新记录
课程介绍
课程概述
本课程旨在教授开发者如何从头开始构建一个用于 3D 游戏的射线投射引擎。课程将涵盖射线投射算法的基础知识,并指导学员通过动手实践来实现自己的引擎。
课程目标
- 了解射线投射算法在 3D 游戏中的应用
- 掌握射线投射算法的数学和几何原理
- 学习如何实现射线-多边形、射线-平面和射线-球体的碰撞检测
- 能够构建一个用于 3D 游戏的可定制射线投射引擎
课程大纲
模块 1:射线投射基础
- 射线和射线投射的概念
- 透视投影和正交投影
- 视锥体裁剪
模块 2:射线-多边形碰撞
- 苏therland-Hodgman 算法
- 凸多边形和平面多边形的碰撞检测
- 多边形纹理贴图
模块 3:射线-平面碰撞
- 平面方程和法线向量
- 射线与平面的相交点计算
- 地板和天花板纹理贴图
模块 4:射线-球体碰撞
- 球体方程和半径
- 射线与球体的相交点计算
- 球体纹理贴图
模块 5:构建射线投射引擎
- 视锥体裁剪实现
- 数据结构和算法设计
- 碰撞检测优化
模块 6:高级主题
- 二叉空间分割 (BSP) 树
- 光线追踪
- 阴影投射
课程适合人群
- 对 3D 游戏开发感兴趣的开发者
- 具有 C++ 或类似编程语言经验者
- 希望从头开始构建自己射线投射引擎的任何人
课程时长
大约 15-20 小时,根据个人的学习进度而异。
课程形式
- 视频讲座
- 代码演示
- 练习和项目
课程完成后
完成本课程后,您将:
- 对射线投射算法在 3D 游戏中的应用有一个深入的理解
- 能够构建一个适用于您自己的 3D 游戏的自定义射线投射引擎
- 了解射线投射引擎优化和故障排除的技术
- 为进一步探索 3D 游戏图形学奠定坚实的基础
课程目录
/15-026-游戏开发中的射线投射引擎编程/
│├─01. Introduction and Learning Outcomes.mp4 92MB
│├─01. Introduction and Learning Outcomes.srt 15.3KB
│├─01. Introduction and Learning Outcomes.vtt 16.7KB
│├─02. How to Take this Course.srt 3.9KB
│├─02. How to Take this Course.vtt 4.1KB
│├─02. How to Take this Course.mp4 4.3MB
│├─03. An Overview of the Raycasting Algorithm.mp4 40.7MB
│├─03. An Overview of the Raycasting Algorithm.srt 9KB
│├─03. An Overview of the Raycasting Algorithm.vtt 9.6KB
│├─04. Raycasting or Raytracing.srt 9.9KB
│├─04. Raycasting or Raytracing.vtt 10.2KB
│├─04. Raycasting or Raytracing.mp4 53.6MB
│├─05. Raycasting Limitations.srt 5.3KB
│├─05. Raycasting Limitations.vtt 5.6KB
│├─05. Raycasting Limitations.mp4 23MB
│├─06. A Review of Degrees and Radians.mp4 74MB
│├─06. A Review of Degrees and Radians.srt 13.6KB
│├─06. A Review of Degrees and Radians.vtt 14.4KB
│├─07. A Review of Sine Cosine and Tangent.mp4 112.2MB
│├─07. A Review of Sine Cosine and Tangent.srt 22.5KB
│├─07. A Review of Sine Cosine and Tangent.vtt 24.3KB
│├─08. Defining the 2D Map Grid.mp4 46.1MB
│├─08. Defining the 2D Map Grid.srt 11.2KB
│├─08. Defining the 2D Map Grid.vtt 11.8KB
│├─09. Coding the Map Class.mp4 59.2MB
│├─09. Coding the Map Class.srt 21.1KB
│├─09. Coding the Map Class.vtt 21.8KB
│├─10. Player Movement.srt 8.2KB
│├─10. Player Movement.vtt 8.9KB
│├─10. Player Movement.mp4 41.6MB
│├─11. Coding the Player Movement.srt 27KB
│├─11. Coding the Player Movement.vtt 28.4KB
│├─11. Coding the Player Movement.mp4 59MB
│├─12. Coding the Map Collision.mp4 42MB
│├─12. Coding the Map Collision.srt 11.6KB
│├─12. Coding the Map Collision.vtt 11.9KB
│├─13. Defining the Field of View.mp4 75.6MB
│├─13. Defining the Field of View.srt 11.4KB
│├─13. Defining the Field of View.vtt 12.1KB
│├─14. Coding the Field of View Ray Increments.mp4 67.6MB
│├─14. Coding the Field of View Ray Increments.srt 21.2KB
│├─14. Coding the Field of View Ray Increments.vtt 22KB
│├─15. Finding Wall Hit.srt 10.7KB
│├─15. Finding Wall Hit.vtt 11.2KB
│├─15. Finding Wall Hit.mp4 55MB
│├─16. Finding Horizontal Intersections.srt 29.9KB
│├─16. Finding Horizontal Intersections.vtt 31.8KB
│├─16. Finding Horizontal Intersections.mp4 143.7MB
│├─17. Finding Vertical Intersections.srt 10.3KB
│├─17. Finding Vertical Intersections.vtt 10.9KB
│├─17. Finding Vertical Intersections.mp4 55.7MB
│├─18. Coding X-intercept and Y-intercept.mp4 87.6MB
│├─18. Coding X-intercept and Y-intercept.srt 32.1KB
│├─18. Coding X-intercept and Y-intercept.vtt 33.2KB
│├─19. Coding the Horizontal Wall Intersection.mp4 39.2MB
│├─19. Coding the Horizontal Wall Intersection.srt 13.9KB
│├─19. Coding the Horizontal Wall Intersection.vtt 14.4KB
│├─20. Coding the Vertical Intersection.mp4 74.3MB
│├─20. Coding the Vertical Intersection.srt 27.5KB
│├─20. Coding the Vertical Intersection.vtt 28.7KB
│├─21. Fixing the Intersection Offset Error.mp4 31.4MB
│├─21. Fixing the Intersection Offset Error.srt 9.3KB
│├─21. Fixing the Intersection Offset Error.vtt 9.7KB
│├─22. Orientation as Angles or Vectors.srt 4.9KB
│├─22. Orientation as Angles or Vectors.vtt 5.1KB
│├─22. Orientation as Angles or Vectors.mp4 31.5MB
│├─23. Wall Projection.srt 10.7KB
│├─23. Wall Projection.vtt 11.2KB
│├─23. Wall Projection.mp4 47MB
│├─24. Finding the Wall Strip Height.mp4 73.9MB
│├─24. Finding the Wall Strip Height.srt 15.1KB
│├─24. Finding the Wall Strip Height.vtt 16.6KB
│├─25. Visualizing the Minimap.srt 6.2KB
│├─25. Visualizing the Minimap.vtt 6.3KB
│├─25. Visualizing the Minimap.mp4 24.3MB
│├─26. Coding the Wall Rendering.srt 19.9KB
│├─26. Coding the Wall Rendering.vtt 20.6KB
│├─26. Coding the Wall Rendering.mp4 65.4MB
│├─27. Fixing the Fishbowl Distortion.mp4 77.7MB
│├─27. Fixing the Fishbowl Distortion.srt 13.8KB
│├─27. Fixing the Fishbowl Distortion.vtt 15.4KB
│├─28. Implementing Wall Shading by Depth.srt 6.4KB
│├─28. Implementing Wall Shading by Depth.vtt 6.7KB
│├─28. Implementing Wall Shading by Depth.mp4 23.3MB
│├─29. BrightDark Wall Sides.srt 15.8KB
│├─29. BrightDark Wall Sides.vtt 16KB
│├─29. BrightDark Wall Sides.mp4 27.8MB
│├─30. First Steps in C.mp4 43.5MB
│├─30. First Steps in C.srt 14KB
│├─30. First Steps in C.vtt 14.8KB
│├─31. Working with Makefile.mp4 19.2MB
│├─31. Working with Makefile.srt 19.9KB
│├─31. Working with Makefile.vtt 20KB
│├─32. Installing Visual Studio and SDL on Windows.mp4 30.2MB
│├─32. Installing Visual Studio and SDL on Windows.srt 20KB
│├─32. Installing Visual Studio and SDL on Windows.vtt 20.4KB
│├─33. Creating a SDL Window.mp4 37MB
│├─33. Creating a SDL Window.srt 25KB
│├─33. Creating a SDL Window.vtt 26.4KB
│├─34. SDL Rendering and Event Polling.srt 13.8KB
│├─34. SDL Rendering and Event Polling.vtt 14.6KB
│├─34. SDL Rendering and Event Polling.mp4 23.8MB
│├─35. Rendering SDL Rectangles.srt 8.9KB
│├─35. Rendering SDL Rectangles.vtt 9.2KB
│├─35. Rendering SDL Rectangles.mp4 18.7MB
│├─36. Game Loop Overview.srt 8.8KB
│├─36. Game Loop Overview.vtt 9.3KB
│├─36. Game Loop Overview.mp4 26.6MB
│├─37. Coding a Fixed Time Step Game Loop.mp4 18.7MB
│├─37. Coding a Fixed Time Step Game Loop.srt 11.6KB
│├─37. Coding a Fixed Time Step Game Loop.vtt 12.1KB
│├─38. SDL Delay.mp4 43MB
│├─38. SDL Delay.srt 13.1KB
│├─38. SDL Delay.vtt 13.6KB
│├─39. Drawing the Map with SDL.mp4 31.8MB
│├─39. Drawing the Map with SDL.srt 20KB
│├─39. Drawing the Map with SDL.vtt 20.5KB
│├─40. Player Movement and SDL Events.srt 18.1KB
│├─40. Player Movement and SDL Events.vtt 18.2KB
│├─40. Player Movement and SDL Events.mp4 28.4MB
│├─41. Implementing Wall Collision in C.mp4 6.1MB
│├─41. Implementing Wall Collision in C.srt 4.4KB
│├─41. Implementing Wall Collision in C.vtt 4.3KB
│├─42. Ray Struct and FOV.mp4 24.2MB
│├─42. Ray Struct and FOV.srt 13.7KB
│├─42. Ray Struct and FOV.vtt 14.1KB
│├─43. Translating the Horizontal Intersection to C.mp4 28.4MB
│├─43. Translating the Horizontal Intersection to C.srt 19.7KB
│├─43. Translating the Horizontal Intersection to C.vtt 20.4KB
│├─44. Translating the Vertical Intersection to C.mp4 35.6MB
│├─44. Translating the Vertical Intersection to C.srt 17.5KB
│├─44. Translating the Vertical Intersection to C.vtt 17.8KB
│├─45. Rendering Rays.srt 11.9KB
│├─45. Rendering Rays.vtt 11.9KB
│├─45. Rendering Rays.mp4 17.3MB
│├─46. The Color Buffer.mp4 113.4MB
│├─46. The Color Buffer.srt 38.4KB
│├─46. The Color Buffer.vtt 39.8KB
│├─47. Color Buffer Implementation.srt 21.9KB
│├─47. Color Buffer Implementation.vtt 22.6KB
│├─47. Color Buffer Implementation.mp4 26.4MB
│├─48. Freeing Allocated Resources.srt 7.1KB
│├─48. Freeing Allocated Resources.vtt 7.4KB
│├─48. Freeing Allocated Resources.mp4 8.6MB
│├─49. Creating the Wall Projection.mp4 39.7MB
│├─49. Creating the Wall Projection.srt 20.7KB
│├─49. Creating the Wall Projection.vtt 21.8KB
│├─50. Exercise Ceiling & Floor Solid Colors.mp4 4.5MB
│├─50. Exercise Ceiling & Floor Solid Colors.srt 1.7KB
│├─50. Exercise Ceiling & Floor Solid Colors.vtt 1.7KB
│├─51. Ceiling & Floor Solid Color Implementation.srt 2.3KB
│├─51. Ceiling & Floor Solid Color Implementation.vtt 2.4KB
│├─51. Ceiling & Floor Solid Color Implementation.mp4 6.1MB
│├─52. Representing Textures.srt 15.1KB
│├─52. Representing Textures.vtt 15.5KB
│├─52. Representing Textures.mp4 46.5MB
│├─53. Creating a Texture Programmatically.mp4 14MB
│├─53. Creating a Texture Programmatically.srt 7.8KB
│├─53. Creating a Texture Programmatically.vtt 8.6KB
│├─54. Mapping Textures to Wall.mp4 67.4MB
│├─54. Mapping Textures to Wall.srt 9.4KB
│├─54. Mapping Textures to Wall.vtt 9.8KB
│├─55. Implementing Wall Texturing.srt 23.8KB
│├─55. Implementing Wall Texturing.vtt 24.8KB
│├─55. Implementing Wall Texturing.mp4 51.6MB
│├─56. Multiple Textures.srt 8.4KB
│├─56. Multiple Textures.vtt 9.2KB
│├─56. Multiple Textures.mp4 34MB
│├─57. Multiple Texture Code.mp4 34.3MB
│├─57. Multiple Texture Code.srt 15.7KB
│├─57. Multiple Texture Code.vtt 17KB
│├─58. Fixed Size Data Types.mp4 23.8MB
│├─58. Fixed Size Data Types.srt 8.2KB
│├─58. Fixed Size Data Types.vtt 8.6KB
│├─59. Using Fixed Size Integer Types.srt 2.5KB
│├─59. Using Fixed Size Integer Types.vtt 2.6KB
│├─59. Using Fixed Size Integer Types.mp4 5.1MB
│├─60. Libraries to Decode PNG Files.srt 14.8KB
│├─60. Libraries to Decode PNG Files.vtt 15.1KB
│├─60. Libraries to Decode PNG Files.mp4 23.1MB
│├─61. Loading External PNG Files.mp4 59MB
│├─61. Loading External PNG Files.srt 46.9KB
│├─61. Loading External PNG Files.vtt 48.4KB
│├─62. Activity Field of View Distortion.mp4 10.8MB
│├─62. Activity Field of View Distortion.srt 6.7KB
│├─62. Activity Field of View Distortion.vtt 7KB
│├─63. Understanding the Angle Increment Distortion.mp4 49.9MB
│├─63. Understanding the Angle Increment Distortion.srt 16.4KB
│├─63. Understanding the Angle Increment Distortion.vtt 17.8KB
│├─64. Coding the Angle Increment Distortion Fix.mp4 15.8MB
│├─64. Coding the Angle Increment Distortion Fix.srt 11.7KB
│├─64. Coding the Angle Increment Distortion Fix.vtt 12.3KB
│├─65. Full Screen Window.mp4 55.2MB
│├─65. Full Screen Window.srt 28.5KB
│├─65. Full Screen Window.vtt 29.6KB
│├─66. Refactoring the Graphics File.mp4 72.7MB
│├─66. Refactoring the Graphics File.srt 50.2KB
│├─66. Refactoring the Graphics File.vtt 51.4KB
│├─67. Drawing Filled Rectangles.srt 3.2KB
│├─67. Drawing Filled Rectangles.vtt 3.3KB
│├─67. Drawing Filled Rectangles.mp4 4.5MB
│├─68. Refactoring the Map File.mp4 38.5MB
│├─68. Refactoring the Map File.srt 23.6KB
│├─68. Refactoring the Map File.vtt 24.3KB
│├─69. Refactoring the Ray and Player File.mp4 35.7MB
│├─69. Refactoring the Ray and Player File.srt 24KB
│├─69. Refactoring the Ray and Player File.vtt 24.6KB
│├─70. The Line Equation.srt 22.5KB
│├─70. The Line Equation.vtt 23.6KB
│├─70. The Line Equation.mp4 52.5MB
│├─71. Rasterizing Lines.srt 28.9KB
│├─71. Rasterizing Lines.vtt 30.4KB
│├─71. Rasterizing Lines.mp4 80.4MB
│├─72. Coding the DDA Line Algorithm.mp4 10MB
│├─72. Coding the DDA Line Algorithm.srt 5.5KB
│├─72. Coding the DDA Line Algorithm.vtt 5.9KB
│├─73. Refactoring the Wall Projection File.mp4 20.4MB
│├─73. Refactoring the Wall Projection File.srt 12.5KB
│├─73. Refactoring the Wall Projection File.vtt 13KB
│├─74. Creating a Type Definition for Color Values.mp4 10.3MB
│├─74. Creating a Type Definition for Color Values.srt 9KB
│├─74. Creating a Type Definition for Color Values.vtt 9.1KB
│├─75. Sending Parameters by Reference.mp4 7.2MB
│├─75. Sending Parameters by Reference.srt 6.5KB
│├─75. Sending Parameters by Reference.vtt 6.7KB
│├─76. Refactoring the Ray-Facing Code.srt 7.3KB
│├─76. Refactoring the Ray-Facing Code.vtt 7.5KB
│├─76. Refactoring the Ray-Facing Code.mp4 15.6MB
│├─77. Wall Texture Color Intensity.mp4 28.2MB
│├─77. Wall Texture Color Intensity.srt 12.4KB
│├─77. Wall Texture Color Intensity.vtt 12.8KB
│├─78. Coding the Texture Color Intensity.mp4 15MB
│├─78. Coding the Texture Color Intensity.srt 8.1KB
│├─78. Coding the Texture Color Intensity.vtt 8.5KB
│├─79. Raycasting Sprites.srt 8.6KB
│├─79. Raycasting Sprites.vtt 9.1KB
│├─79. Raycasting Sprites.mp4 42.8MB
│├─80. Sprite Type Definition.srt 6.4KB
│├─80. Sprite Type Definition.vtt 6.7KB
│├─80. Sprite Type Definition.mp4 26.2MB
│├─81. Coding the Sprite Typedef.mp4 63MB
│├─81. Coding the Sprite Typedef.srt 30KB
│├─81. Coding the Sprite Typedef.vtt 31.2KB
│├─82. Rendering Sprites in the Minimap.mp4 13MB
│├─82. Rendering Sprites in the Minimap.srt 6.8KB
│├─82. Rendering Sprites in the Minimap.vtt 6.9KB
│├─83. Identifying Visible Sprites.mp4 25.8MB
│├─83. Identifying Visible Sprites.srt 7.5KB
│├─83. Identifying Visible Sprites.vtt 8.1KB
│├─84. Coding the Visible Sprites.mp4 27.6MB
│├─84. Coding the Visible Sprites.srt 9.7KB
│├─84. Coding the Visible Sprites.vtt 9.8KB
│├─85. Finding the Sprite Distance.mp4 17.3MB
│├─85. Finding the Sprite Distance.srt 6.9KB
│├─85. Finding the Sprite Distance.vtt 7.3KB
│├─86. Normalizing Player Rotation Angle.mp4 20MB
│├─86. Normalizing Player Rotation Angle.srt 6.4KB
│├─86. Normalizing Player Rotation Angle.vtt 6.5KB
│├─87. Calculating the Sprite Projection Height.mp4 50.1MB
│├─87. Calculating the Sprite Projection Height.srt 18.3KB
│├─87. Calculating the Sprite Projection Height.vtt 19.4KB
│├─88. Calculating the Sprite X Position.mp4 23.5MB
│├─88. Calculating the Sprite X Position.srt 6.6KB
│├─88. Calculating the Sprite X Position.vtt 6.8KB
│├─89. Sprite Rectangle Position in the Screen.mp4 32.5MB
│├─89. Sprite Rectangle Position in the Screen.srt 10.1KB
│├─89. Sprite Rectangle Position in the Screen.vtt 10.8KB
│├─90. Displaying Textured Sprites.srt 19.2KB
│├─90. Displaying Textured Sprites.vtt 19.8KB
│├─90. Displaying Textured Sprites.mp4 57.6MB
│├─91. Activity Sorting Sprites.srt 2.9KB
│├─91. Activity Sorting Sprites.vtt 3.1KB
│├─91. Activity Sorting Sprites.mp4 6.4MB
│├─92. Sorting Sprites by Distance.mp4 22.4MB
│├─92. Sorting Sprites by Distance.srt 6.6KB
│├─92. Sorting Sprites by Distance.vtt 6.9KB
│├─93. Sprites Behind Walls.mp4 35.7MB
│├─93. Sprites Behind Walls.srt 8.5KB
│├─93. Sprites Behind Walls.vtt 8.8KB
│├─94. Fixing the Sprite Fishbowl Distortion.mp4 14.5MB
│├─94. Fixing the Sprite Fishbowl Distortion.srt 4KB
│├─94. Fixing the Sprite Fishbowl Distortion.vtt 4.3KB
│├─95. Concluding our Raycasting Implementation.mp4 24.1MB
│├─95. Concluding our Raycasting Implementation.srt 7.4KB
│├─95. Concluding our Raycasting Implementation.vtt 7.9KB
│├─96. Notes on Look-up Tables.mp4 68.6MB
│├─96. Notes on Look-up Tables.srt 13.3KB
│├─96. Notes on Look-up Tables.vtt 14.3KB
│├─Raycasting Programming with C.txt 2.8KB
│├─code.zip 8.7MB
│├─获取更多精品课程资源.url 120byte
猜你喜欢
-
金蝶WISE K3培训课程
2024-03-25 -
Koa2搭建movie预告片网站
2023-11-27 -
学堂在线-手写操作系统实战课程
2024-05-14 -
善知堂android就业视频教程+源码
2023-11-22 -
费曼学习法7天特战营【完结】| 非IT类学习资源,是学习方法视频
2023-11-29 -
乾颐堂军哥-HCIP-华为产品线和中间系统
2024-10-26 -
Android之豆瓣项目开发教程+源码
2023-11-22 -
Android社交分享平台——口袋微博
2023-11-22 -
TensorFlow快速入门与实战
2023-11-29 -
2024社工 初级中级高级[非计算机类]
2024-11-07
-
Docker 系统性入门+进阶实践(最新版)
2024-02-13 -
人人都要学的项目管理课[完结无密]
2024-02-07 -
黑马安卓52期视频下载
2023-11-22 -
互联网人副业指南 传授思维与方法 启动你的首个项目
2024-03-01 -
Oracle11g最佳培训教程
2024-06-06 -
郝斌C语言系列
2023-11-28 -
Android培训李韩飞老师新浪微博项目视频[共11课时]
2023-11-22 -
跟着老男孩一步步学习Shell高级编程实战视频教程{黑客教程小组}
2023-11-26 -
李宁android开发权威指南
2023-11-22 -
小滴-互联网架构之深入剖析高性能RocketMQ4.X实战
2024-11-05
猜你在找
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 如遇到加密压缩包,默认解压密码为"www.xitnds.com"或“xitnds.com”,如遇到无法解压的请联系管理员!
学IT那点事 » 游戏开发中的射线投射引擎编程
常见问题FAQ
- 免费下载或者VIP会员专享资源能否直接商用?
- 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
- 提示下载完但解压或打开不了?
- 找不到素材资源介绍文章里的示例图片?
- 学IT那点事下载免费吗?