【发布时间】:2019-08-13 08:12:15
【问题描述】:
我正在使用 JS 和 <canvas> 来渲染等距场景。我正在使用这个 SVG 过滤器,以便瓷砖具有清晰的像素边缘:
<svg width="0" height="0" style="position:absolute;z-index:-1;">
<defs>
<filter id="remove-alpha" x="0" y="0" width="100%" height="100%">
<feComponentTransfer>
<feFuncA type="linear" slope="255"></feFuncA>
</feComponentTransfer>
</filter>
</defs>
</svg>
这会强制任何半透明像素呈现为不透明。但它也略微改变了受影响像素的颜色,因此它们与图块的其余部分明显不同。我才刚刚开始弄乱 svg 过滤器,有没有办法修改它,使其不会改变像素的颜色?
【问题讨论】:
-
这很有趣。是什么让您想到将 SVG 用于 3D 环境?这是来玩游戏的吗?到目前为止看起来真的很不错。
-
谢谢!它不是真正的 3d 环境,只是因为平铺绘制顺序而产生了这种效果。我正在使用 SVG 过滤器,以便在渲染到画布时瓷砖边缘不会得到抗锯齿,我正在寻找一种清晰、像素级的感觉。
标签: svg-filters