GPU渲染管线和硬件架构浅谈 2022年8月5日 | GPU 作者:landonwang,腾讯 IEG 客户端开发工程师 本文简述了 GPU 的渲染管线和硬件架构,对一些常见问题进行了讨论和分析。特此分享出来,与君共勉。当然,由于本人并未从事过硬件开发的工作,文中有错漏之处在所难免,欢迎批评指正。另外本文内容量很大,总结下来有以下几点核心内容:(1)移动平台…… 阅读全文
nvidia Windows显卡驱动代码分析 2022年5月1日 | GPU BTC挖矿让英伟达飞起来了,当然也与英伟达在并行计算机领域的强大技术能力有关。这次国外黑客把英伟达的代码公开给大家。让中国人有机会一睹英伟达的显卡驱动的芳容。 此贴就重点来研究一下英伟达windows驱动代码。显卡驱动对许多人来说还是比较神密的。首先做PC显卡的就那三家:nvidi…… 阅读全文
Shader在GPU中是如何执行的? 2021年2月15日 | GPU 首先,我想说明一下,虽然文章的标题是 How GPU Works,但是我无意再去重复GPU工作的各个stage,流水线这些概念。本文会深入到更底层一点:GPU是如何执行shader的。在本文中,我除了GPU执行shader的方式之外,还有稍微涉及一些多核心,SIMD,超线程这些过去大家看上去貌…… 阅读全文
Go语言实现RayTracing 2020年3月2日 | 图形学 Ray Tracing in one weekend是Peter Shirley ray tracing系列三部曲的第一本,也是学习ray tracing入门比较容易的一本书,原书中附带的有C++版本的code,最近在学习golang, golang中正好有image包,可以直接生成渲染好的jpg文件,那么就用golang来改写了一遍…… 阅读全文
Games101笔记|Shading 2020年2月29日 | 图形学 当这些物体都变成三角形之后,变成屏幕上的一个个像素点之后,这些像素的值和颜色应该是什么呢?这个就是着色的功能。下一步操作为着色。 挪动一下光源后,物体并没有发生变化,但是物体的颜色却发生了变化。这个问题应该如何解决,就是着色的作用。 这门课中着色的定义:对不同的物体应用不同的材质这样…… 阅读全文
Games101笔记|Z-Buffer(深度缓冲) 2020年2月22日 | 图形学 2 可见性与遮挡 2.1 画家算法 原理 先对远处的物体进行光栅化,后逐步对近处的物体进行光删化操作。(画近处的物体时会覆盖掉之前画的远处的一些物体)这样就可以正确地处理遮挡的问题了。 涉及到一个问题 这里涉及到一个问题:当某些物体在深度上存在互相遮挡的情况,此时没有办法定义顺序关系,这样就无法使…… 阅读全文
Games101笔记|光栅化和反走样 2020年2月16日 | 图形学 在“MVP变换矩阵推导”中首先进行了Model transformation, 也就是摆放好物体(对象);然后就是View transformation摆放好相机(位置,拍摄方向,视场角等);最后就是Projection transformation, 这里面包含有正交投影(Orthogtaphic projection)它是将长方体(cuboi…… 阅读全文
Games101笔记|MVP变换矩阵推导 2020年2月15日 | 图形学 本文是games101课程的第3,4课的相关笔记,这篇内容对于CG非常的重要!!!特别是推导的过程,非常有必要手推一遍!。所谓的MVP变换就是:model-view-project变换。本文中使用的向量均表示的是列向量,在公式推导的过程中要注意第一点。 首先我们回想下我们在拍班级毕…… 阅读全文
Games101笔记|概述和线性代数 2020年2月6日 | 图形学 本文是games101课程的第1,2课的相关笔记。这两课的内容比较基础,大学中有线性代数的学习经验就相对非常容易理解。 1. 计算机图形学概述 计算机图形学(Computer Graphics,CG)是研究计算机在硬件和软件的帮助下创建计算机图形的学科,是计算机科学的一个分支领域,主要关注…… 阅读全文
渲染管线之旅|14 索引页 2019年8月30日 | GPU A trip through the Graphics Pipeline 2011 是发布在博客 http://fgiesen.wordpress.com 上的系列文章。主要涉及图形流水线在GPU中实现的方方面面。包括D3D/OpenGL app, UMD Driver, KMD Driver, GPU 硬件流水线设计等等。是非常好的学习图形学应用,GPU驱动等相关领域的资料。翻译的目的一方面是对学习的总结;另一方面是为了分享,因为国内在图形学, GPU相关的资…… 阅读全文