百科.dev
全部条目在线工具AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
H

hextile-demo

> 编程语言
开源

演示了六边形拼接

1.0K stars0 点赞1 次浏览
访问官网GitHub

工具介绍

演示了六边形拼接

hextile-demo 在实时图形中,通常使用拼接纹理来表示大面积的表面,但重复性是显而易见的,如左侧所示。使用六边形拼接可以隐藏重复性,但需要解决相邻六边形之间的缝隙问题。本示例演示了论文《实用实时六边形拼接》Practical Real-Time Hex-Tiling。该方法是对Eric Heitz 和 Fabrice Neyret以及Thomas Deliot 和 Eric Heitz原始工作的改进。

原始方法使用一种保持直方图的方法来保留对比度,该方法需要先进行预计算,将源纹理转换为变换后的纹理和逆变换后的纹理,且在着色器中需要对这两种纹理进行采样,而非原始源纹理。因此,要使着色器和材质的作者无法察觉此方法,就需要深度集成到应用程序中。在我们的改进中,我们省略了保持直方图的步骤,并用一种新的混合方法取而代之,该方法允许我们对原始源纹理进行采样。

运行此演示时,请确保尝试旋转六边形图块。您可以在 m 键上切换 4 个不同的参数,以调整:图块速率、旋转、六边形图块边框对比度(用于颜色)和六边形图块边框对比度(用于正常映射)。按住滚轮并移动鼠标,以调整活动参数。按下 r 键可重置所有 4 个参数。

大多数 hex-tiling 特定的实用函数都在 hextiling.h 文件中,但如果您想在大级别上使用 hex-tiling 作为平面/三平面投影,则应查看 hextiling_rws.h,该文件提供了一种特殊变体,可在远离绝对世界空间中心时保持分数精度。在旋转 hex 瓦片以生成法线贴图时,一个重要的观察是,法线贴图的平均法线必须与 Z 轴(0,0,1) "对齐" 否则,倾斜在照明后的结果中会非常明显。

Issues· 0 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

C++

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言