随笔分类 -  图形学

摘要:参考:颜色空间 - Unity 手册 为什么要有伽马空间,那是因为人眼对亮度的感知没暗部感知来的敏感,举个例子,黑暗的房间,灯源数量从1增加到2,人眼能明显感知到变化。但从100增加到101,人眼就很难察觉变化,虽然从物理上来说它们的增量是相同的。 如果把真实光照按照线性变化,如0-100亮度对应0 阅读全文
posted @ 2025-12-03 20:47 JeasonBoy 阅读(40) 评论(0) 推荐(0)
摘要:写在前面 最近开始学习Unity性能优化,是结合了《Unity游戏优化》这本书和教程《Unity性能优化》第叁节——静态资源优化(3)——纹理的基础概念一起学习。在学习纹理优化部分时候遇到了问题,固定管线下Unity的Scene窗口有一个可视化Mipmap的渲染模式: 而这批Miscellaneou 阅读全文
posted @ 2025-12-03 20:18 JeasonBoy 阅读(97) 评论(0) 推荐(0)
摘要:在 Unity 图形渲染中,纹理采样方式的核心分类围绕 采样过滤模式(Filter Mode)、纹理寻址模式(Wrap Mode) 和 Mipmap 采样策略 展开,三者组合决定最终采样行为。以下是底层实现相关的关键分类及技术细节,聚焦性能和渲染效果的核心差异: Unity纹理相关的设置参考:Uni 阅读全文
posted @ 2025-12-03 17:04 JeasonBoy 阅读(65) 评论(0) 推荐(0)
摘要:todo 两者好像不兼容,不能同时开启。 两者都需要在Shader里增加对应的属性块 Unity6 起好像有新方案代替 gpu instance了? GPU Instancing 与 SRP Batcher 深度解析 1. 核心概念对比 特性GPU InstancingSRP Batcher 目标​ 阅读全文
posted @ 2025-11-27 11:58 JeasonBoy 阅读(54) 评论(0) 推荐(0)
摘要:todo 参考:mob-sakai/SoftMaskForUGUI: Enhance Unity UI (uGUI) with advanced soft-masking features to create more visually appealing effects! 阅读全文
posted @ 2025-10-28 00:06 JeasonBoy 阅读(43) 评论(0) 推荐(0)
摘要:按照我们的常规理解,渲染顺序应该是: 1.不透明物体按照相机空间进行Z轴排序,从前往后排,先渲染前面再渲染后面,避免造成过多的OverDraw 2.绘制天空盒,天空盒在要不透明物体之后渲染,避免造成OverDraw 3.绘制透明物体,透明物体按照相机空间进行Z轴排序,从后往前排,先渲染最后面的,这样 阅读全文
posted @ 2025-09-27 01:29 JeasonBoy 阅读(88) 评论(0) 推荐(0)
摘要:OpenGL跟Vulkan可以理解为一套规范,并不是实际存在的软件,在Linux上,Mesa就是对它们的实现。 Mesa 是一个开源的图形库,它提供了对 OpenGL 和 Vulkan 等图形 API 的具体实现,充当了应用程序与图形硬件之间的桥梁。 ​​libGL​​:在类Unix系统(如Linu 阅读全文
posted @ 2025-09-17 17:31 JeasonBoy 阅读(89) 评论(0) 推荐(0)
摘要:参考链接: 团结引擎 - 手册: 在自定义渲染管线中创建简单渲染循环 可定制渲染管线(Deprecated) | Cocos Creator,示例代码:cocos-example-custom-pipeline Custom SRP - Custom Render Pipeline | 三叔的数字花 阅读全文
posted @ 2025-09-15 01:16 JeasonBoy 阅读(55) 评论(0) 推荐(0)
摘要:todo 阅读全文
posted @ 2025-09-03 22:39 JeasonBoy 阅读(22) 评论(0) 推荐(0)
摘要:todo 阅读全文
posted @ 2025-09-03 22:16 JeasonBoy 阅读(19) 评论(0) 推荐(0)
摘要:在实时渲染领域,向前渲染(Forward Rendering) 和 延迟渲染(Deferred Rendering) 是两种核心的渲染管线架构,核心区别在于 “光照计算的时机与方式”—— 前者在 “绘制物体时” 同步计算光照,后者先 “记录物体信息” 再统一计算光照。二者在性能、功能支持、资源消耗上 阅读全文
posted @ 2025-09-02 00:32 JeasonBoy 阅读(435) 评论(0) 推荐(0)
摘要:HDRP Dynamic resolution | High Definition Render Pipeline | 17.3.0 URP/Built-In Unity - Manual: Dynamic Resolution FeatureWhat the feature uses to ups 阅读全文
posted @ 2025-08-21 00:48 JeasonBoy 阅读(43) 评论(0) 推荐(0)
摘要:一、预烘焙 GI(Pre-baked GI) 计算时机为编辑阶段,运行时不更新数据,仅适用于静态场景 / 物体,核心优势是性能开销极低。 1. 光照贴图(Lightmap) 核心逻辑:将静态物体表面的直接光 + 间接光信息烘焙到 2D 纹理(如 RGBA32 或 BC6H 压缩格式),运行时直接采样 阅读全文
posted @ 2025-08-20 03:08 JeasonBoy 阅读(352) 评论(0) 推荐(0)
摘要:参考: Unity无光照假阴影Shader实现及常见问题总结 - 简书 (jianshu.com) Unity Shader - Planar Shadow - 平面阴影_unity 平面阴影-CSDN博客 详解平面阴影 Planar Shadow (概念篇) - 知乎 (zhihu.com) 详解 阅读全文
posted @ 2024-07-16 12:08 JeasonBoy 阅读(1270) 评论(0) 推荐(0)
摘要:参考: 【Unity Shader入门】4、几何着色器Geometry Shaders之结构解析_shader编译目标级别-CSDN博客 Geometry Shader(Unity几何着色器)_unity geometry shader-CSDN博客 Unity几何着色器详解 - 知乎 (zhihu 阅读全文
posted @ 2024-07-10 19:28 JeasonBoy 阅读(675) 评论(0) 推荐(0)
摘要:Compute Shader 是一种高级功能,用于在 GPU 上执行并行计算任务。它非常适合处理大量数据,执行复杂的数学计算,或在高性能图形处理中使用。 常用于,需要密集的并行多线程计算,CPU不擅长并行计算,丢给GPU去算,然后把结果返回给CPU,或者直接渲染到屏幕上。 需要图形API,Vulka 阅读全文
posted @ 2024-06-28 19:14 JeasonBoy 阅读(920) 评论(0) 推荐(0)
摘要:一本比较牛的PBR书籍: kanition/pbrtbook: pbrt 中文整合翻译 基于物理的渲染:从理论到实现 Physically Based Rendering: From Theory To Implementation Unity 从 5.0 版本开始支持 PBR 材质(Standar 阅读全文
posted @ 2024-06-18 16:20 JeasonBoy 阅读(1255) 评论(0) 推荐(0)
摘要:unity官方的方案:Animation Instancing:高性能大规模动画解决方案 - 技术专栏 - Unity官方开发者社区 Unity-Technologies/Animation-Instancing: This technique is designed to instance Cha 阅读全文
posted @ 2024-06-10 23:21 JeasonBoy 阅读(1207) 评论(0) 推荐(0)
摘要:1.拷贝相机:利用额外的相机将反射的内容渲染到Render Target Texture上 参考:《Unity Shader入门精要》10.2.1节 原理很简单,以反射面(例如镜子)为中心,创建一个相机,处于主相机在镜子中反射的位置,用脚本实时更改相机位置与朝向 这个相机渲染的内容不直接输出到屏幕, 阅读全文
posted @ 2024-06-07 17:34 JeasonBoy 阅读(463) 评论(0) 推荐(0)
摘要:在渲染中实现阴影的方式有多种,具体取决于所使用的渲染引擎和技术。以下是一些常见的实现阴影的方法: 平面投影 (Planar Shadow):Planar Shadow 平面投影(假阴影),低开销的阴影实现方式 - JeasonBoy - 博客园 (cnblogs.com) 开销最低的方式,思路就是根 阅读全文
posted @ 2024-06-06 18:36 JeasonBoy 阅读(930) 评论(0) 推荐(0)