games101

2024/4/12 2:46:29

games101 作业2

题目 光栅化一个三角形 1. 创建三角形的 2 维 bounding box。 2. 遍历此 bounding box 内的所有像素(使用其整数索引)。然后,使用像素中心的屏幕空间坐标来检查中心点是否在三角形内。 3. 如果在内部,则将其位置处的插值深度值 (…

GAMES101 学习3

Lecture 13 ~ 16 Shadow mapping 一种图像空间算法生成阴影时不需要知道场景中的几何信息会产生走样现象 最重要的思想:如果有的点不在阴影里你又能看到这个点,那么说明摄像机可以看到这个点,光源也可以看到这个点 经典的Shadow mapping …

GAMES101 学习 2

Lecture 7:Shading 1(lllumination,Shading and Graphics Pipeline) Visibility / occlusion 解决可见性和遮挡的问题 可见性,Z-buffering Z-Buffer 深度缓存 Idea: Store current min. z-value for each sample (pixel)Needs an additi…

计算机图形学-GAMES101-13

Ray Tracing (1)为什么使用光线追踪 Ray Tracing 和 Rasterization 是两种不同的成像方式。Rasterization最大的问题:不利于表达全局效果。整体来说光栅化做阴影是比较困难的。Glossy reflection:一种不那么光滑的反射镜面。Ind…

Games101学习笔记1

2023-08-10开始接触图形学 Lecture 01--Overview of Computer Graphics Lecture 02 Review of Linear Algebra

【GAMES101】Lecture 09 纹理贴图 点查询与范围查询 Mipmap

目录 纹理贴图 纹理放大-双线性插值 点采样纹理所带来的问题 Mipmap 各向异性过滤 纹理贴图 我们在之前的着色里面说过如何给物体上纹理,就是对于已经光栅化的屏幕点,就是每个像素的中心,去寻找对应纹理的映射位置的纹理颜色&#xff0…

[GAMES101]透视投影变换矩阵中为什么需要改变z值

透视投影需要保证,1.变换矩阵内的元素是常数,2.相对深度值不变(绝对值不重要);若再加上变换后zNear和zFar平面上的点依旧在zNear和zFar平面上这两个条件(实际上并不一定需要满足这两个条件)&…

GAMES101作业7及课程总结(重点实现多线程加速,微表面模型材质)

目录闲言碎语最终全部效果展示(均为10241024512ssp)课程总结与理解(Path Tracing)框架梳理任务一:迁移相关代码任务二:实现path tracing任务三:多线程加速(包括其他加速的小trick&am…

Games101-光线追踪(基本原理)

光线追踪和光栅化是两个不同的成像方式。 光栅化最大的问题是无法很好的表示全局的效果。 全局效果包括 软阴影(shadow mapping后来被改进成能够支持软阴影,阴影随着离物体越远越来越模糊),glossy反射(类似镜子,但没有镜子那么光滑&#xff0…

CG-3D渲染器-0.1

引言 在学习GAMES101的路上,我总是会心血来潮,想要做出一个3D渲染器。所谓3D渲染器,就是可以加载模型,并且通过调整参数来渲染出不同的视觉效果。最近看视频看到了第9课,想着做个作业,于是通过作业1接触到…

计算机图形学-GAMES101-3

一、transformation-变换 (1)Scale 缩放变换示意图 图形每个像素对应坐标的计算公式 写成缩放矩阵的形式 非均匀缩放 (2)Reflection Matrix 镜面变换示意图 图形每个像素对应坐标的计算公式 写成镜像矩阵的形式 …

计算机图形学-GAMES101-11

显式几何的表示方法 Point Cloud 使用一系列点表示物体的表面。理论上可以表达空间中任何物体。如物体扫描会得到空间中一系列点,但在建模时我们要提取出大量多边形的面。点云对密度要求很高,因此不常使用。 Polygon Mesh 使用三角形表示物体。涉及三…

【GAMES101】Lecture 19 相机

目录 相机 视场 Field of View (FOV) 曝光(Exposure) 感光度(ISO) 光圈 快门 相机 成像可以通过我们之前学过的光栅化成像和光线追踪成像来渲染合成,也可以用相机拍摄成像 今天就来学习一下相机是如何成像的…

Games101笔记-线性代数回顾

向量/矢量的概念 单位向量的概念 向量求和的概念 向量默认是列向量,转置向量是横向量 向量点乘 作用: 通常用于找两个向量的夹角一个向量投影到一个方向的长度(将一个向量分解成两个向量)计算两个向量有多接近判定同向还是反…

计算机图形学-GAMES101-5

一、观测变换 通过Viewing(观测)transformation,最终我们将世界坐标系中的物体投影到了一个xyz都处于【-1,1】的立方体中。那么接下来,我们该做什么? 二、光栅化(Rasterization) (1)透视投影的定义 定义透视投影的视…

计算机图形学-GAMES101-2

Vectors向量 一、向量的介绍 表示一个方向。计算向量的方法:AB (B-A)。向量对应的单位向量 AB / ||AB|| 。向量具有平移性,我们不关心它的开始位置。向量求和:三角形法则和平行四边形法则。在代数上计算直接把向量的…

计算机图形学-GAMES101-9

前言 材质和光的相互作用很重要。VertexShader和FragmentShader。纹理贴图Texture mapping。 一、在三角形中插值 为什么要在三角形内部插值?虽然我们的操作很多是在三角形顶点上进行计算的,但是对于三角形内部我们也希望每个像素点能得到一个值&…

【GAMES101】Lecture 17 材质

目录 材质 漫反射 镜面反射 折射-Snell’s Law Fresnel Reflection / Term(菲涅耳项) 微表面模型 各向同性与各向异性 BRDF的性质 测量BRDF 材质 渲染方程中的BRDF描述了物体是如何与光线作用的,而物体的材质决定了它看起来是怎么样…

Games101笔记-计算机图形学概述

光栅化:把三维空间的几何形体显示在屏幕上 实时:每秒30帧的画面 曲线和曲面: 如何表示一条光滑曲线,如何表示曲面如何用简单的曲面通过细分的方法得到更复杂的曲面在形状发生变化时,面要如何变化,如何保…

计算机图形学-GAMES101-12阴影

Shadow mapping 问题的提出 我们之前在进行着色时,对于每个物体仅考虑自己,而不考虑其他物体对它的影响。限定在光栅化中,如何解决阴影问题呢?阴影能被摄像机看到,但不能被光源所照亮。经典的Shadow mapping只能处理…

计算机图形学-GAMES101-7

引言 场景中有很多的三角形,如果实现可见性和遮挡呢?  一个简单的想法是,从远到近画,近处的物体自然会覆盖掉远处的物体,这种画法也叫画家算法。  但是实际绘制中物体的顺序是不容易确定的,比如如下图绘制…