zl程序教程

GAMES 202 作业2

  • GAMES202作业1-实现过程详细步骤

    GAMES202作业1-实现过程详细步骤

    目录 查看初始模型 Shadow Map 要求 1 CalcLightMVP() 了解1-该方法如何参与到后续的环节 了解2-WebGL中glMatrix的使用 补充代码(截图) useShadowMap() 参数传入1 -> shadowMap 参数传入2 -> shadowCoord Web

    日期 2023-06-12 10:48:40     
  • GAMES202作业1-万字分析代码框架&帮助更好理解框架内容

    GAMES202作业1-万字分析代码框架&帮助更好理解框架内容

    目录 indexl.html src -> engine.js 照相机 camera 轨道控制器 cameraControls 渲染器 renderer 光照 directionLight 物体 GUI 循环渲染 src -> textures FrameBuffer概念介绍 FBO.js Texture.js sr

    日期 2023-06-12 10:48:40     
  • GAMES202作业0-环境搭建过程&解决遇到的问题

    GAMES202作业0-环境搭建过程&解决遇到的问题

    目录 1 下载Visual Studio Code 2 安装插件 Live Server 3 Node.js 4 打开作业框架查看模型 解决问题 npm WARN config global `--global`, `--local` are deprecated. Use `--location=

    日期 2023-06-12 10:48:40     
  • GAMES101作业7提高-微表面材质的实现过程

    GAMES101作业7提高-微表面材质的实现过程

    目录 补充Material.hpp 补充计算着色函数-eval() 补充计算公式-private: 补充材质剩下的属性-pdf&sample main.cpp 材质属性&加入物体 优化部分 Sphere::evalDiffuseColor() 模型有黑点 结果:spp=4,用时25mi

    日期 2023-06-12 10:48:40     
  • GAMES101作业7提高-实现微表面模型你需要了解的知识

    GAMES101作业7提高-实现微表面模型你需要了解的知识

    目录 微表面材质模型 微平面理论 Microfacet Theory BSDF(浅浅的提一下) 微表面BRDF的实现 Cook-Torrance BRDF 漫反射的BRDF 镜面反射的BRDF 1 法线分布函数 D GGX分布简介 Trowbridge-Reitz 分布(GGX分布) 公式 表面粗糙度​编辑

    日期 2023-06-12 10:48:40     
  • GAMES101作业7-多线程提速实现步骤详解

    GAMES101作业7-多线程提速实现步骤详解

    目录 用循环VS不用循环 用循环:spp=2,t=5min 不用循环:spp=2,t=1min 多线程优化 原Render.cpp思路 (1)发出主射线primary ray,并调用castRay()函数实现对每

    日期 2023-06-12 10:48:40     
  • GAMES101作业7-路径追踪实现过程&代码框架超全解读

    GAMES101作业7-路径追踪实现过程&代码框架超全解读

    目录 Path Tracing算法过程讨论 蒙特卡洛积分 直接光照 direct illumination 间接光照 indirect illumination ​编辑 合成全局光照 解决一些存在的问题 问题1:光线爆炸 问题2:递归停止条件 问题3:目前算法并不高效 问题3解决方案ÿ

    日期 2023-06-12 10:48:40     
  • GAMES101作业6-BVH完成全过程

    GAMES101作业6-BVH完成全过程

    目录 作业要求 Render.cpp TODO:需要的补充内容 Triangle.hpp 框架 Ray.hpp -> struct Ray Intersection.hpp -> struct Intersection 判断有无交点 TODO:需要的补充内容 Bounds3.hpp TODO:需要的补充内容 BVH.cp

    日期 2023-06-12 10:48:40     
  • GAMES101作业5-从头到尾理解代码&Whitted光线追踪

    GAMES101作业5-从头到尾理解代码&Whitted光线追踪

    目录 Whitted Ray-Tracing Whitted光线追踪 What Why How 1 发射主射线primary ray 实现步骤 (1)定义相机 (2)计算primary主射线的方向 Renderer.cpp->render() 2 射线交互 3 获得相交对象

    日期 2023-06-12 10:48:40     
  • GAMES101作业4-贝塞尔曲线&OpenCV图像处理

    GAMES101作业4-贝塞尔曲线&OpenCV图像处理

    目录 作业内容 实现代码 分段解析 mouse_handler()函数  cv处理鼠标事件 naive_bezier() recursive_bezier()递归找出点轨迹 main()函数 cvtColor() 图像色彩模式 参考 作业内容 实现代码 #include <chrono> #include

    日期 2023-06-12 10:48:40     
  • GAMES101作业3-代码过程详细理解

    GAMES101作业3-代码过程详细理解

    目录 作业要求 补充代码 代码框架预览 rasterize_triangle() 结果 interpolated--做插值 关于代码中插值属性出现的shadingcoords phong_fragment_shader() 结果  texture_fragment_shader() 结果  bump_fragment_shader(

    日期 2023-06-12 10:48:40     
  • GAMES101作业3-遇到的各种问题及解决方法

    GAMES101作业3-遇到的各种问题及解决方法

    目录 程序运行报错 C2039 std缺少成员  找不到文件 导出图片问题 导出图片是全黑的 导出图片前后颠倒 程序运行报错 C2039 std缺少成员 应该是VS的标准没有修改成c++17,还是默认的c++14 修改路径为:项目->属性->配置属性

    日期 2023-06-12 10:48:40     
  • GAMES101作业2-代码框架逐行理解(c++基础巩固)

    GAMES101作业2-代码框架逐行理解(c++基础巩固)

    目录 补充作业代码 main.cpp get_projection_matrix函数 rasterize.cpp 1.insideTriangle函数——判断点(x,y)是否在三角形内 2.rasterizer_triangle 结果展示 正三角-n和f取负值  倒三角-n和f取正值  代码框架详细理解 Triangle.hpp r

    日期 2023-06-12 10:48:40     
  • GAMES101作业1-VS2019

    GAMES101作业1-VS2019

    目录 题目概要 完善代码 绕Z轴变换矩阵  构建透视矩阵 先展示完成的代码 参数理解 运行结果  过程中出现一次报错 提高作业 提高作业代码  将代码运用于图像 main.cpp完整代码 rasterizer.hpp完整代码 rasterizer.cpp完整代码 题目概要 我用的是VS2019完成的作业,

    日期 2023-06-12 10:48:40     
  • GAMES101作业0-VS2019

    GAMES101作业0-VS2019

    作业要求 添加Eigen库 (1)到Egien官网:Eigen下载Eigen库。  (2)解压缩后,找到Eigen文件夹所在位置,在VS2019中项目->project属性->V C++目录->包含目录->添加

    日期 2023-06-12 10:48:40