渲染
文章平均质量分 92
shader 实时渲染 3D的渲染等等
微小的鱼
这个作者很懒,什么都没留下…
展开
-
传统图形学对nerf的对比与应用落地
传统图形学:显示表达几何表达方式:网格(Mesh)、点云(Point cloud)、体素(Voxel)、隐式函数(Implicit),渲染主要包括两种:1、渲染管线(主实时);2、光线追踪(主离线,现也出现PC的实时光追)nerf:nerf本质上提供了一种新的逆渲染方式,通过神经网络模拟连续的场+体渲染的方式。同时也是隐式可微渲染,创造性的引进神经网络达到惊艳的效果。原创 2023-06-01 00:01:04 · 2039 阅读 · 0 评论 -
毛发渲染(一)--基于多pass透明混合
移动端毛发的渲染,主要是通过多pass实现。只能模拟短发,动物的毛发,无法模拟长发。原创 2022-12-30 20:17:59 · 1742 阅读 · 0 评论 -
PBR学习笔记
PBR更通俗一些的称呼是指基于物理的渲染(Physically Based Rendering),它指的是一些在不同程度上都基于与现实世界的物理原理更相符的基本理论所构成的渲染技术的集合。值得特别注意的是:需要FBO,立方体贴图,Gamma校正,HDR和法线贴图相关知识同时实时渲染PBR与BRDF 等等相关是 探讨的内容属于渲染的相当高端的领域;原创 2022-08-20 10:00:00 · 1205 阅读 · 0 评论 -
图形管线(一)后处理阶段 alpha测试 模版测试 深度测试 混合
在实时渲染中不管是TA、游戏特效等等,工作中或者面试经常用到或者问道,所以本人今天来梳理总结一番!光栅化一般分为 三大阶段,应用程序阶段->几何阶段->光栅化阶段,也可以四大阶段 应用程序阶段->几何阶段->光栅化阶段->后处理阶段.........原创 2022-07-19 02:54:53 · 1269 阅读 · 0 评论 -
离屏渲染 &FBO
介绍FBO,展开说明了相关进阶的RTT,与调试手段MRT等等相关的知识原创 2022-06-29 03:08:04 · 1179 阅读 · 0 评论 -
曲面细分(subdivision)&曲面细分着色器&GPU的LOD
曲面细分是指将一个模型的面合理的分成更多小的面,从而提升模型精度,提高渲染效果 曲面简化是指将一个模型的面合理的合成更少的面,从而降低模型精度,为特定情形下提供使用(如LOD技术) 。这一过程是可以在CPU中完成的,但组织多个点的动态添加和删除,并且更新同步到着色器所需的vb中,这一过程比较消耗性能,并且实现起来也不能算是特别容易的事情。一个比较理想的做法应该是在GPU硬件中完成相关的操作(曲面细分做色器),并且给用户提供一些可编程的接口。曲面细分着色器(GPU):带着这一目的,DirectX 11引入原创 2021-12-07 00:15:09 · 3199 阅读 · 0 评论 -
合批/批量渲染 (Batch)、实例化Instancing
可以简单的理解为:批量渲染是通过减少CPU向GPU发送渲染命令(DrawCall)的次数,以及减少GPU切换渲染状态的次数,尽量让GPU一次多做一些事情,来提升逻辑线和渲染线的整体效率。但这是建立在GPU相对空闲,而CPU把更多的时间都耗费在渲染命令的提交上时,才有意义。合批最重要的前提:材质必须相同!!!合批是节省了CPU的相关准备工作的工作量。合批后,经过VS,PS,尝试测试,模板测试后,此时已没有了纹理,顶点,索引的概念,只剩下一个个孤立的像素,各像素间没有任何关系了。像素送到GPU后进行批原创 2021-11-15 19:32:27 · 7613 阅读 · 0 评论 -
HLSL & CG 与glsl着色器编译及其原理
Shader简介:Shader Language的发展方向是设计出在便携性方面可以和C++、Java等相比的高级语言,“赋予程序员灵活而方便的编程方式”,并“尽可能的控制渲染过程”同时“利用图形硬件的并行性,提高算法效率”。Shader Language目前主要有3种语言:基于 OpenGL 的 OpenGL Shading Language,简称 GLSL;基于 DirectX 的 High Level Shading Language, 简称 HLSL;还有 NVIDIA 公司的 CG原创 2021-09-09 23:44:18 · 4125 阅读 · 0 评论 -
GPU的架构(一)
gpu的驱动框架:1、窗口标准的实现是与操作系统强相关的,它为图形渲染提供目标内存。一般来说,只要支持的标准不变,操作系统更换/升级,对驱动的代码影响就只限在窗口这一块。2、编译器用于编译shader或kernel,编译kernel需要用llvm预编译,编译器会大一些。低端GPU的编译器特别容易出现各种语法不支持,让写shader的人痛苦万分。3、通用计算的实现就是把kernel编译后转成任务扔给内核去跑,相对简单。4、图形渲染的实现则需要考虑到一帧中可能有重复渲染/过度绘制的情况,为了这方面做优原创 2021-09-05 06:13:54 · 12007 阅读 · 0 评论 -
渲染性能优化之Culling 剔除
几种剔除:背面裁剪(Backface Culling)视锥裁剪(View Frustum Culling)遮挡剔除(Occlusion Culling)层次视锥裁剪(Hierarchical View Frustum Culling)入口裁剪(Portal Culling)细节裁剪(Detail Culling)像素剔除(Pixel Culling)在计算机图形学中,相对应的就是裁剪技术(Culling Techniques)所要做的工作——“从大量游戏事物中进行删除”。所谓的“大量事物”就原创 2021-06-18 20:04:29 · 2563 阅读 · 0 评论 -
RenderDoc 调试web
由于学习闫老师的GAMES202 用到了webgl所以需要webgl抓帧调试一下~配置:会弹出小窗口,记住PID:然后files->inject into process 输进去刚刚小窗口弹出来的点击注入当然弹出的小窗口点击确定就可以了;当然有的可能会出现配置不成功就需要方式二:需要写个DEBUG_CHROME.bat脚本:set RENDERDOC_HOOK_EGL=0"C:\Program Files (x86)\Google\Chrome\Application\chrom原创 2021-04-02 15:59:45 · 4595 阅读 · 12 评论 -
BRDF(一)
辐射度量学:辐射通量(Radiant Flux,又译作光通量,辐射功率)描述的是在单位时间穿过截面的光能,或每单位时间的辐射能量,通常用Φ来表示,单位是W,瓦特。其中的Q表示辐射能(Radiant energy),单位是J,焦耳。对一个点(比如说点光源)来说,辐射强度表示每单位立体角的辐射通量,用符号I表示,单位 :概括一下:辐射强度(Radiant intensity,又译作发光强度),表示每单位立体角的辐射通量,通常用符号I表示,单位 ,瓦特每球面度。辐射率(Radiance,又译作光亮原创 2021-03-26 15:30:09 · 1786 阅读 · 0 评论