一、坐标系统概述 本文类容见 "LearnOpenGL CN" 。直接copy过来留个存档。 OpenGL希望每次顶点着色后,我们的可见顶点都为标准化设备坐标(Normalized Device Coordinate,NDC)。也就是说每个顶点的$z,y,z$都应该在$ 1$到$1$之间,超出这个范 ...
分类:
其他好文 时间:
2017-12-25 20:58:14
阅读次数:
161
HLSL 交叉编译器 这个库将 高级着色语言 (HLSL) 着色器源代码编译成高级中间表示法,执行独立于设备的优化,并生成 OpenGL 着色语言 (GLSL) 兼容源代码。这个库在很大程度上基于 Mesa 的 GLSL 编译器。前端已进行大量重新编写,以解析 HLSL 并根据 HLSL 抽象语法树 ...
分类:
其他好文 时间:
2017-12-25 19:39:07
阅读次数:
221
1079: [SCOI2008]着色方案 Description 有n个木块排成一行,从左到右依次编号为1~n。你有k种颜色的油漆,其中第i种颜色的油漆足够涂ci个木块。所有油漆刚好足够涂满所有木块,即c1+c2+...+ck=n。相邻两个木块涂相同色显得很难看,所以你希望统计任意两个相邻木块颜色不 ...
分类:
其他好文 时间:
2017-12-25 19:39:00
阅读次数:
168
图形编程 引擎中的渲染器模块管理并渲染场景,而场景拥有和每个世界场景相关的可渲染信息。它包括所有绘制规则和着色器的定义。 RHI 模块是渲染 API 的接口,是图形编程的另一个关键组件。图形编程总览 包含许多可研究的键类、设置和变量,以下 子页面包含详细的渲染要点。 FShaderCache 图形编 ...
分类:
其他好文 时间:
2017-12-25 19:37:49
阅读次数:
178
着色器开发 快速入门 处理着色器时,请务必将 r.ShaderDevelopmentMode 设置为 1,以将其启用。最简单的方法是编辑 ConsoleVariables.ini,以便每次加载时都进行启用。这将启用“出错时重试”以及与着色器开发相关的日志和警告。 将更改保存到 .usf 文件之后,使 ...
分类:
其他好文 时间:
2017-12-25 19:36:31
阅读次数:
232
FShaderCache 总览 FShaderCache 提供的机制可减少游戏中着色器的卡顿。它支持 OpenGLDrv 和 MetalRHI RHIs,可在 Mac、Linux 和 Windows 平台上使用。 可通过多个控制台命令启用或禁用 FShaderCache 功能。 控制台命令 描述 r ...
分类:
系统相关 时间:
2017-12-25 19:30:18
阅读次数:
287
异步计算(AsyncCompute) 渲染硬件接口(RHI)现支持 Xbox One 的异步计算(AsyncCompute)。此法可运行与渲染异步的 dispatch() 调用,有效利用未使用的 GPU 资源(计算单元(CU)、寄存器和带宽)。异步计算使用单独的上下文,我们通过 RHI 函数同步渲染 ...
分类:
其他好文 时间:
2017-12-25 19:29:11
阅读次数:
557
渲染流水线的起点是CPU,即应用阶段。 1)把数据加载到显存中 2)设置渲染状态,通俗说这些状态定义了场景中的网格是怎样被渲染的。 3)调用DrawCall,一个命令,CPU通知GPU。(这个命令仅仅会指向一个需要被渲染的图元列表,并不会包含材质信息,因为在上一阶段已经完成) CPU流水线 GPU从 ...
分类:
其他好文 时间:
2017-12-21 17:21:57
阅读次数:
91
题目描述 给一棵m个结点的无根树,你可以选择一个度数大于1的结点作为根,然后给一些结点(根、内部结点和叶子均可)着以黑色或白色。你的着色方案应该保证根结点到每个叶子的简单路径上都至少包含一个有色结点(哪怕是这个叶子本身)。 对于每个叶结点u,定义c[u]为从根结点从U的简单路径上最后一个有色结点的颜 ...
分类:
其他好文 时间:
2017-12-19 01:35:25
阅读次数:
92
前言:刚从Python转到U3D时,第一个项目涉及到画线,刚开始想那还不简单吗,不就是获取位置后着色吗,H5中的Canvas就能实现,当我看了Unity的文档后一脸懵逼,居然没有相关的方法。没办法只能在网上找,涉及到画线的很多,各种坑。 Unity画线最简单的实现方法LineRender组件: Li ...
分类:
编程语言 时间:
2017-12-03 13:56:46
阅读次数:
1493