• 2024-09-26GAMES101(作业7)
     作业七题目:实现pathTracing,仅修改castRay(constRayray,intdepth)函数,在其中实现PathTracing算法代码框架://OBJ-loader模型加载库 global:全局变量/函数 vector:Vector3f,Vector2f类floatnorm(){returnstd::sqrt(x*x+y*y+z*z);}/*向量长度
  • 2024-09-05GAMES101(0~1作业)
    搭建虚拟机环境安装OracleVMVirtualBox虚拟机,安装虚拟硬盘,配置Linux Ubuntu-64bit系统,启动虚拟机,发生冲突错误:将Vmware虚拟设备取消挂起状态,关机确保Hyper-V完全关闭:bcdedit/sethypervisorlaunchtypeoff重启计算机安装增强功能,未找到iso错误:ISO下载地址:Indexof
  • 2024-08-17GAMES101——作业5 光线与三角形相交(菲涅尔反射率)
    任务         需要修改的函数是:         Renderer.cpp中的Render():这里你需要为每个像素生成一条对应的光线,然后调用函数castRay()来得到颜色,最后将颜色存储在帧缓冲区的相应像素中。        Triangle.hpp中的rayTriangleInter
  • 2024-04-14games101_Homework7
    实现完整的PathTracing算法需要修改这一个函数:•castRay(constRayray,intdepth)inScene.cpp:在其中实现PathTracing算法//ImplementationofPathTracingVector3fScene::castRay(constRay&ray,intdepth)const{//TODOImplementPathTracing
  • 2024-03-02games101_Homework3
    摘要:在Raster部分实现数值插值,然后实现四种不同的像素着色器作业描述:作业1:修改函数rasterize_triangle(constTriangle&t)inrasterizer.cpp:在此处实现与作业2类似的插值算法,实现法向量、颜色、纹理颜色的插值。在rasterize_triangle函数中重复上次的包围盒进行点采样,
  • 2024-03-01从0开始做一个软渲染器——透视投影和投影矫正
    从0开始做一个软渲染器——透视投影和投影矫正已经做了一段时间了,一直都没记录。最近实现了一个透视投影的相机,从这一部分记录。项目地址:https://github.com/DogWealth/PIRenderer需要注意的是:以下代码的运算都将向量考虑成行向量,进行从左往右的乘法运算。相比列向量,对应的相
  • 2023-08-17games101-homework-notes
    Games101作业笔记Created:2023-06-19T12:00+08:00Published:2023-08-17T16:23+08:00Categories:ComputerGraphics目录pa0hw1ProjectionMatrixTriangleRasterizerprocesshw2insidetrianglerasterize_trianglemyhw2bugs使用\(y+0.5\)setindex导致三角形分裂屏幕两
  • 2023-07-30games101 HomeWork6
    Games101HomeWork6导航导航作业要求IntersectP(constRay&ray,constVector3f&invDir,conststd::array<int,3>&dirIsNeg)intheBounds3.hpp:这个函数的作用是判断包围盒BoundingBox与光线是否相交,你需要按照课程介绍的算法实现求交过程。getIntersection(BVHBuil
  • 2023-07-29games101 HomeWork5
    Games101HomeWork5导航导航任务Renderer.cpp中的Render():这里你需要为每个像素生成一条对应的光线,然后调用函数castRay()来得到颜色,最后将颜色存储在帧缓冲区的相应像素中。Triangle.hpp中的rayTriangleIntersect():v0,v1,v2是三角形的三个顶点,orig是光线的起点