实现在小游戏 WebGL2 上渲染 SVG?svg-webgl-loader 正式开源!
摘要
大家平时可能接触过 SVG,但是可能对 WebGL 不是很了解,SVG 主要是一种矢量图格式,给定对应的数据就可以绘制点、线和图形等,基于 XML 标记语言编写,可以在很小的体积下就能得到高清晰度图形,且支持任意形式的放大缩小而不失真;而 WebGL 是 HTML5 之后浏览器支持的一套图形的 API。
而 SVG 要么通过 DOM 支持,要么通过 Canvas Path2D 支持,在只有 WebGL2 的 Context 下却因为缺少相应的 API,所以无法支持 SVG,但团队成员在平时研究 3D / Threejs 源码时,发现源码中有类似将 SVG 渲染到 WebGL2 Context 上的逻辑,很感兴趣,所以就花时间抽出一个库,提供方便的 API 实现 SVG 在 WebGL2 Context 上的渲染:「svg-webgl-loader」。
欢迎在评论区写下你对这篇文章的看法。