Fluid
  • Home
  • Archives
  • Categories
  • Tags
  • About

Compute Shader 基础

基础概念1. GPU 中的概念1.1 处理器核心的层级概念GPU 具有非常多的处理器核心,在 Nvidia 中称为 Streaming Multiprocessor(SM),AMD 称为 Compute Unit(CU),以下使用 SM。在 SM 内部包含最基本的处理单元 lane,lane 可以近似理解为一个线程。SM 进行调度执行任务时,最小单位并不是 lane,而是 Warp(Nvidia
2023-09-20
Vulkan Basics

Compute Shader 实现 Pyramid Algorithm

使用 compute shader 生成 mipmap本文是参考 https://github.com/nvpro-samples/vk_compute_mipmaps 的算法复现。 将输入层级记为 $L$,将 $L$ 的 2x2 样本区域生成一个样本则得到 $L+1$ 层级。下面介绍从 $L$ 到 $L+M$ 层级的生成算法,$M\in[1,6]$,算法输入为 $L$ 层级的大小为 $2^M\t
2023-09-20
Vulkan Basics

Reblur解析

1 概要2 调用逻辑文件 Reblur_DiffuseSpecular.hpp,在 nrd::InstanceImpl::Add_ReblurDiffuseSpecular 里创建好所有 render pass 每个 pass 的名字使用宏 PushPass("PostFix") 设置,最后得到 pass name = DENOISER_NAME - PostFix
2023-09-20
Rendering Blogs > Graphics Alogrithm

Screen Space Ray Reflection

1 Summary本文介绍屏幕空间反射中最重要的一步——基于 hierarchy depth buffer(HZB) 的 ray march算法,主要参考了 [1] 中的实现。 ray march算法的目的是为了根据屏幕空间深度得到光线在屏幕上的交点,相比于世界空间的光追,这是一种开销很低但仅局限于屏幕空间的做法,也就是若光线交于相机看不到的表面,那么屏幕空间ray march则无法得到求交结果。
2023-09-20
Rendering Blogs > Graphics Alogrithm

Scene Graph and Draw Call Grouping Strategy

Summary本文介绍了表示场景的 Scene Graph ,以及场景加载过程。基于 Scene Graph 组织 draw call 的策略。 Scene GraphScene Graph 表示场景中物体的层级结构,是场景物体的组织形式。在本渲染器中,Scene Graph 主要由表示层级结构的基类UltraNode与组织场景物体的基类SceneObject组成。 1. 场景层级结构UltraN
2023-09-20
Render Engine

Vulkan Render Design

Summary本文介绍了本渲染器的 Vulkan 管线管理策略以及 Shader 管理策略。 Vulkan 管线管理策略Vulkan 包含三种管线 graphics、compute、raytracing,管线只是一种状态描述,描述了整个工作流中涉及的状态。人们经常提 OpenGL 是个状态机,OpenGL 的状态是由根据使用者的 API 调用来进行切换的,属于 high-level 的 API 设
2023-09-20
Render Engine

Real-Time Global Illumination using Precomputed Light Field Probes

1 Summary这篇论文提出了一种基于light probe的全局光照方法,其中包括预计算过程中probe数据的生成方式、基于probe数据的光线追踪算法以及实时渲染中的着色过程。 在预计算过程中,对场景的每个离散采样点生成以该位置为中心的probe数据,每个probe包含了球面分布的两组数据:probe中心收到每一方向上最近点的radiance、该最近点的法线以及该最近距离(radial di
2023-09-20
Paper Notes > GI > Light Probe

Texture Space Shading

1 Summary传统的光栅化管线(forward或者deferred)执行于屏幕空间,表面采样率或者像素密度与相机距离、视角相关。同时,GPU光栅化管线的流水线作业使得shading rate完全由分辨率、几何复杂度、帧率控制。而texture space shading(TSS)提出在texture space着色,使得shading rate变得更加可控。同时texture space下的t
2023-09-20
Paper Notes > Render Pipeline

Texel Shading

1 Summary传统的光栅化管线着色(forward/deferred)是基于屏幕空间像素的着色过程,由于光栅化流水线作业的限制,shading rate完全由分辨率、几何复杂度、帧率控制。而本文提出的texel shading管线将着色转化为texture space的任务,并将着色结果cache在texture space,最终的着色通过采样cache完成。 基于texture s
2023-09-20
Paper Notes > Render Pipeline

Spatiotemporal reservoir resampling for real-time ray tracing with dynamic direct lighting

1 SummarySpatiotemporal reservoir resampling for real-time ray tracing with dynamic direct lighting [1] 本文提出了一种基于蓄水池采样的流式重采样方法,旨在提高 many-lights 场景下,光追计算直接光照过程中的重要性采样的效率。 在以往的重要性采样方法中, IS:最基础的采用单一分布采样
2023-09-20
Paper Notes > Ray Tracing
1…3456

Search

Hexo Fluid