一个拥有3A游戏梦的不正经大学生|

shadow_lr

园龄:4年10个月粉丝:41关注:1

随笔分类 -  计算机图形学

Microfacet模型采样下的brdf
摘要:本文前言 在学习图形学(games101 from bilibili)的时候,也遇到了像这样的问题,Cook-Torrance模型无法实现粗糙度为0时,物体微表面呈现绝对镜面的效果(呈现出一面镜子),为了搜寻解决办法,因此看到了这篇博客,因为是全英文,所以就花了一点时间翻译了一下,方便日后重新观看,
989
0
1
低差异序列 (low-discrepancy sequences)之Hammerysley在半球中采样点方法的介绍
摘要:半球上的Hammersley 源作者:Holger Dammertz 一组关于如何在2D中使用Hammersley点集以在着色器程序中快速实用地生成半球方向的笔记。如果你发现任何错误或有意见,不要犹豫,请联系我或在我的博客上留言。 1. 概述 在编写与光照有关的着色器时,人们经常需要一些以表面法线为
2043
2
0
低差异序列 (low-discrepancy sequences)之Halton序列均匀产生多维随机数的介绍与实现
摘要:Halton序列 在统计学中,Halton序列是用于生成空间中的点的序列,如Monte Carlo模拟的数值方法,虽然这些序列是确定性的,但它们的差异性很低,也就是说,在许多方面看起来是随机的。它们在1960年首次提出,是准随机数列的一个例子。它们概括了一维Van der Corput序列 用于生成
2509
0
0
回顾games101中的SSAA和MSAA
摘要:回顾games101中的AA(抗锯齿) 前言 善于进行课后总结,可以更加巩固自己的知识和具体细节 锯齿(走样)产生的原因 本质上,在光栅化阶段中,用有限离散的数据想表示连续的(类似三角形的某一边),就可能存在采样点不够的问题,也就引申出了锯齿(走样 Aliasing)的这个概念,在信号处理以及相关领
1608
2
0
回顾Games101图形学(一)几何变换中一些公式的推导
摘要:回顾Games101 chapter 1 - 6 前言 本文只写回顾后重新加深认识的知识 透视除法的意义 经过MVP矩阵之后,将模型空间下某点的坐标,转换成了裁剪空间下的坐标,此时因为裁剪空间的范围是x[W/2W/2]y[H/2H/2],所以经过以下两个变换,其中除以pz就是透
914
0
2
射线与空间内三角形的相交检测算法(Möller-Trumbore)的推导与实践
摘要:背景介绍(学习算法之前需要先了解) 射线与空间内三角形的相交检测是游戏程序设计中一个常见的问题,最典型的应用就是拾取(Picking),本文介绍一个最常见的方法,这个方法也是DirectX中采用的方法,该方法速度快,而且存储空间少。先讲述理论,然后文章末尾给出对应的代码实现与Unity中的显示。 简
2931
0
0
判断点在多边形内算法(凸多边形和复杂多边形)
摘要:判断点是否在凸多边形内 这个判断比较的简单,只需要按一定顺序遍历三角形顶点,与红点进行连线,按照顺时针或逆时针进行叉乘 bool PointIsInPolygon() { int j = points.Length - 1; bool oddNodes = false; for (int i = 0
2369
0
0
游戏中的2D OBB碰撞模型的碰撞算法介绍和实践
摘要:前言 上一篇博文说道,射线与场景中模型上的所有三角形求交时,会大幅度影响效率且花费比较多的时间,因此会采取使用包围盒的形式,进行一个加速求交。在此文中介绍OBB碰撞模型的碰撞算法 OBB的碰撞模型 有没有想过为什么需要用到OBB模型呢,假设一个场景内两个人物相撞了,你怎么判断它们是否相撞呢,大概就是
1587
0
0
点击右上角即可分享
微信分享提示
深色
回顶
收起