文章目录总览调通框架修改的内容你需要迁移的内容编译运行开始实现代码框架Path Tracing 的实现说明结果与分析注意事项参考结果材质的扩展作业代码进阶代码多线程Microfacet 总览在之前的练习中,我们实现了 Whitted-Style Ray Tracing 算法,并且用 BVH 等加速结构对于求交过程进行了加速。在本次实验中,我们将在上一次实验的基 础上实现完整的 Path Trac
转载 2024-03-19 13:44:38
65阅读
目录 作业要求任务分析提高部分1:多线程提高部分2:Microfacet参考链接作业要求        在之前的练习中,我们实现了 Whitted-Style Ray Tracing 算法,并且用 BVH 等加速结构对于求交过程进行了加速。在本次实验中,我们将在上一次实验的基础上实现完整的 Path
修改函数 rasterize_triangle(const Triangle& t) in rasterizer.cpp: 在此处实现与作业 2 类似的插值算法,实现法向量、颜色、纹理颜色的插值。//Screen space rasterization void rst::rasterizer::rasterize_triangle(const Triangle& t, const
1 总览在这次编程任务中,我们会进一步模拟现代图形技术。我们在代码中添加了Object Loader(用于加载三维模型), Vertex Shader 与 Fragment Shader,并且支持了纹理映射。而在本次实验中,你需要完成的任务是:1. 修改函数 rasterize_triangle(const Triangle& t) in rasterizer.cpp: 在此处实现与作业
请用来检验答案是否正确 思路 根据Games101第四讲的内容来写即可,核心的部分还是M(p) = M(o) * M(p->o),具体的推动过程课程内讲的很详细,点赞~ 这里有一点需要注意的是,get_projection_matrix传入的参数是“距离值”,因此是正的,但计算过程中需要考虑方向,而 ...
转载 2021-10-30 12:11:00
520阅读
2评论
介绍作业1在Unity上的复现, 实现了基于的硬阴影, PCF, PCSS代码下载: https://github.com/Eagle104fred/Games202_Homework1Games101 阴影课程笔记:https://smuwm007.feishu.cn/docs/doccnQopokLgMTVbIPsTSxow6He注意事项阴影的shader必须写在阴影的接受物体上例如墙壁等地方
请用来检验答案是否正确 思路 这份作业主要在做两个部分: 搭环境 原作业pdf介绍使用虚拟机,但个人因为卡顿等原因放弃使用虚拟机,使用vscode remote+wsl的方式来开发,具体的配置过程可以搜索关键字,蛮多教程的 实现一个旋转、平移 题目大意指在二维中,先逆时针旋转,再平移,并要求在齐次空 ...
转载 2021-10-18 23:06:00
462阅读
3评论
所用到的函数1、Triangle.hppa,b,csetVertex()setNormal()setColor()setTexCoord()toVector4()2、Triangle.cpp3、rasterizer.hpp运算重载load_position()load_indices()set_model()set_view()set_projection()set_pixel()clear()
从什么角度看os。--定义用户角度操作界面操作方式,用户环境。开发者,虚拟机,给予的资源和函数调用方式。资源管理者。作业组织者。目标,方便性,高效性。资源稀缺。 发展单批处理:内存中一个任务(作业) 监控系统--人工取代 问题:slow performance。 cpu的发展solution:多道程序批处理多批:cpu切换--作业调度的出现 早期多任务雏形,仍是操作员和程序员,
GAMES 101 作业0 1.环境配置 安装虚拟机 Oracle VM VirtualBox虚拟机 Ubuntu虚拟硬盘 ⇒ 初识Linux Guest Addition ⇒ 和宿主系统更便捷的交互 作业框架 C++ Eigen线性代数运算库 2.初识Cmake编译工具: 创建目录 建立、编写cp ...
转载 2021-08-23 00:35:00
978阅读
2评论
作业2需要对rasterizer.cpp函数进行修改,另外main.cpp以及rasterizer.hpp也有所修改,这里就主要贴出这三个函数的代码,主要给出rasterizer.cpp的注释rasterizer.cpp:#include <algorithm> #include <vector> #include "rasterizer.hpp" #include &lt
转载 2024-04-23 09:55:34
37阅读
一、系统截图(需要演示视频可以私聊)           摘  要使用旧方法对作业管理信息进行系统化管理已经不再让人们信赖了,把现在的网络信息技术运用在作业管理信息的管理上面可以解决许多信息管理上面的难题,比如处理数据时间很长,数据存在错误不能及时纠正等问题。这次开发的作业管理系统有管理员
这是games101 现代计算机图形学 作业06 by coolwx感谢 这位大佬的文章,因为我一开始真的写不出来SAH(启发式搜索),看了这位大神的算法,我最终才理解了他的算法,其实还是比较简单的,关于SAH,我应该会写一篇笔记,来记录我的感想,再次感谢以上这位大神的算法,因为我一开始真的想不出这个启发式算法,所以代码我会使用他的代码,然后添上我的注释,便于理解(哎,还是太菜,没写出来)。作业
多线程详解04:多线程基础练习 文章目录多线程详解04:多线程基础练习练习一:并行、并发概念练习二:进程概念、线程概念、线程与进程联系练习三 :多线程编码练习1练习四:多线程编码练习2:多线程匿名内部类练习练习五:多线程编码练习3练习六:多线程编码练习4 练习一:并行、并发概念问题:请简单描述什么是并行,什么是并发?答:并发:一个CPU同一时间段内处理多个线程任务。并发的关键是你有处理多个任务的能
转载 2024-07-12 00:26:44
47阅读
线性变换 线性变换是指对数乘和加法封闭 对图像的操作包括缩放(Scale)、旋转(rotation)、错切(shear)、翻转(flip) 仿射变换 线性变换+平移 ##二维情况 (x,y,w) 我们的目标:使用一个矩阵A,使得变换后的坐标(x’,y')=A(x,y)。 问题:平移操作无法使用一个2 ...
转载 2021-10-08 03:26:00
209阅读
2评论
Screen Space Real-Time Global Illumination 总结SSAO、HBAO、SSDO、SSR的原理 本文是GAMES 202的学习笔记,主要内容包括:SSAO、HBAO、SSDO、SSR1. Screen Space Ambient Occlusion环境光遮蔽是一个对于全局光照的近似,在屏幕空间意味着从Camera渲
光栅化 光栅化描述的主要过程就是将点绘制在屏幕上。我们将屏幕划分成m*n个像素 采样 假设我们想把一个三角形显示在屏幕上,我们需要知道是哪些像素在三角形中。因此,我们一般将像素中心点对三角形相交的位置进行采样(如果在其中就认为这个像素是被填充的) 走样 形成锯齿 原因 我们可以认为采样就是对信号(原 ...
转载 2021-10-11 00:55:00
86阅读
2评论
<1>简单的2-D追踪-Twinsen编写-本人水平有限,疏忽错误在所难免,还请各位数学高手、编程高手不吝赐教 Lamothe说:“向量几何是游戏程序员最好的朋友”。一点不假,向量几何在游戏编程中的地位不容忽视,因为在游戏程序员的眼中,显示屏幕就是一个坐标 系,运动物体的轨迹就是物体在这个坐标系曲线运动结果
今天接触了一款新的软件,叫101教育PPT。可以这样说吧,这款软件扩展了PPT的功能,增加了许多有趣的内置功能。一、下面讲述右侧工具栏中我感兴趣的一些功能:1、学科工具 这个内置功能中提供了许多教育资源。比如有词汇卡功能。在这个功能中,通过插入词汇卡片,可以有音标、释义、词组、例句等功能,可以说对这个词汇从认知、到学习都提供了非常丰富的资源,极大地缩短了教师寻找教学资源的时间。 让我觉得很有趣的学
学习和了解矩阵的基本使用后,准备做布置的第一次作业,巩固一下对相关知识的理解。 题目:给定三维下三个点 v0(2.0, 0.0, −2.0), v1(0.0, 2.0, −2.0), v2(−2.0, 0.0, −2.0),需要将这三个点的坐标变换为屏幕坐标并在屏幕上绘制出对应的线框三角形。 我们先 ...
转载 2021-08-27 23:40:00
167阅读
2评论
  • 1
  • 2
  • 3
  • 4
  • 5