图形算法与图形硬件
文章平均质量分 92
图形算法 与 图形硬件
警醒与鞭策
『卧薪尝胆』不同阶段,不同目标!
展开
-
柏林噪声(Perlin Noise) 介绍及应用
柏林噪声(Perlin Noise) 介绍及应用转载 2023-06-08 17:33:42 · 3993 阅读 · 0 评论 -
球谐光照,球谐函数介绍
推导球谐函数是球面坐标系下的拉普拉斯方程(f(x,y,z) = 0 的泊松方程)中角度部分的解,这里参考 球谐函数 自己手推一遍从笛卡尔坐标系到球坐标系的推导过程,可以参考:https://wenku.baidu.com/view/f6c75dd2da38376baf1faec3.html然后主要是分离变量法,考虑虚数域的公式有如下推导,参考。转载 2023-06-05 14:11:24 · 2514 阅读 · 1 评论 -
Unity渲染矩阵变换流程及编辑器
//////////////unity渲染的矩阵变换全流程////////////////////////////////坐标从模型位置转变成屏幕位置的运算过程。整体过程模拟演算以橙色标记点为计算点。模型空间空间:建模软件维度:3维示例演算:世界空间空间:引擎 unity的transform位置维度:3维示例演算公式思路M model 是根据cube的transform位置进行变换。从上图可以得到数据,cube向(-1,-1,-1)进行位移,...翻译 2022-03-12 22:39:38 · 910 阅读 · 1 评论 -
场景剔除--视锥剔除和硬件剔除
/////////////////////////////剔除算法综述在游戏运行中,引擎渲染出数以万计的物体,场景复杂度往往是数千万面的级别,同时还需要处理千计盏灯光和数百种材质。因此,如何有效地减少不必要的绘制就显得格外重要。本文将就游戏引擎中用到的各种剔除技术进行概述,会较少涉及细节,感兴趣的同学可以去看文末的参考文献,文献中会有相关剔除算法的原理和具体实现。我们将分为以下四个方面来介绍:1.场景剔除工作原理2.常用剔除算法3.总结4.参考文献一、场景剔除工作原理..转载 2022-03-31 12:19:11 · 3064 阅读 · 0 评论 -
GPU Driven Render Pipeline 记录
//////////////////////////////////////////////////////////////////==overview==随着硬件的发展,我们可以看到GPU的计算能力远远的把CPU抛在后面,所以把更多的CPU端的计算放在GPU端,可以说是一个行业一直努力的方向。渲染端cpu上面,一直以来,剔除和提交drawcall都是cpu做的,这部分一方面cpu可怜的计算力只能做的很粗糙,一方面消耗颇高,导致国内游戏行业谈性能必谈drawcall数量。这部分离GP..转载 2021-12-26 22:15:00 · 1427 阅读 · 0 评论 -
场景管理:BVH (Bounding volume hierarchy) 相关内容
/////////////////////////////////////////////////////////////BVH全称:Bounding volume hierarchy。这是一种用来管理3D场景中物体的方法。 我主要是在光线追踪算法中用这个方法来做加速,因为光线追踪算法的计算要求非常高,稍微好点的画质,至少要求每像素达到上千的采样数量。简单介绍下光线追踪算法:从相机发射射线到场景中与场景中物体进行相交检测,如果碰撞检测成功,则根据物体的材质计算颜色,然后计算反射或者折射光线的...转载 2021-12-26 20:45:51 · 2338 阅读 · 0 评论 -
MatCap原理与应用
//////////////////////////////////////////////////////////////一.MatCap是啥?MatCap全名叫做Material Capture(材质捕捉),最开始是在Zbrush上应用的。 MatCap基本的概念—映射 将光源,材质信息离线烘焙成一张材质球放在贴图上,渲染时候直接拿来用,通过 计算将MatCap的纹理信息映射到模型上。 基于MatCap制作的Shader 不需要提供任何光照信息,只通过一张或者多张 MatCap就..转载 2021-12-21 23:14:28 · 2844 阅读 · 1 评论 -
剖析GPU Early Z
////////////////////////////////////////////////传统的3D硬件渲染管线中,Z test 所处的位置如下:-------------------------------multitex | PixelShader?fog effectsalpha teststencil\depth test *alpha blendingdither-------------------------------可以看到,实际上在传统管线中,z test转载 2021-12-01 21:59:59 · 699 阅读 · 0 评论 -
SRAM、DRAM、硬盘、ROM、RAM、EPROM、FLASH
/////////////////////////////////////////////////////////////////////////////////////////////SRAM和DRAM的区别和联系:(电脑中的内存属于DRAM,CPU中的二级缓存属于SRAM)存储原理 RAM(Random Access Memory )随机存取存储器,主要的作用就是存储代码和数据供CPU 在需要的时候调用。 但是这些数据并不是像用袋子盛米那么简单,更像是图书馆中用有格子的书架存放书籍转载 2021-12-06 08:51:08 · 1758 阅读 · 0 评论 -
SDF (Signed Distance Field) 相关内容
///////////////////////////动态SDF字体实现要点//////////////////////////使用SDF渲染字体最早比较出名的就是Valve在sigraph上的那篇论文了[1],之后又有前辈大神实现了比较实用化的离线中文SDF静态字库[2],到现在新版的Unity通过集成Text Mesh Pro已经可以很好且高效的实现动态SDF字体的渲染了。对于Unity用户来说使用动态SDF字体来实现描边效果现在也就是勾选一个设置的事儿了。但是背后实现的原理还是非常想要研究一下转载 2021-12-03 22:51:48 · 2839 阅读 · 0 评论 -
Linerspace gamma space
/////////////////////////////////////////////////////////////在unity的这个路径下Edit->Project Settings->Player->Other Settings,可以选择linear空间或者gamma空间。这两种空间会发生什么事,见下。当ColorSpace选择LinearSpace时第一张图:shader中tex2D读取颜色参与计算。LinearSpace时,除非对指定图片选择了bypass sRG转载 2021-12-02 20:10:43 · 872 阅读 · 0 评论 -
检测点是否在扇形之内
前几天,同事在报告中提及检测角色是否在扇形攻击范围的方法。我觉得该方法的性能不是太好,提出另一个颇为直接的方法。此问题在游戏中十分常见,只涉及简单的数学,却又可以看出实现者是否细心,所以我觉得可当作一道简单的面试题。问题在微博发表后得到不少回应,故撰文提供一些解答。问题定义:在二维中,检测点是否在扇形(circular sector)内,设扇形的顶点为,半径为,从方向两边展开角转载 2016-04-12 17:33:37 · 2159 阅读 · 0 评论