【问题标题】:OpenFL/HTML5 Applying shader to bitmapOpenFL/HTML5 将着色器应用于位图
【发布时间】:2017-12-12 00:28:19
【问题描述】:

我正在尝试将着色器应用于位图,正如link 中所述。

这是代码:

var shader = new Shader ();
shader.glFragmentSource = "..."; <- this part is not important

shader.data.useAlphaImage = [ true ];
shader.data.uAlphaImage.input = alphaBitmapData;

bitmap.filters = [ new ShaderFilter (shader) ];

但如果我应用着色器,它会变得透明,没有错误。我必须配置一些东西才能让它工作吗?

我的目标是 HTML5。

【问题讨论】:

    标签: html5-canvas haxe openfl


    【解决方案1】:

    ShaderFilter 在当前的 OpenFL 版本中被部分禁用。最初的实现太慢了,无法在移动设备上运行;有计划以不同的方式重新编写该功能。

    与此同时,您可以尝试一个测试版 API:

    bitmap.shader = shader;
    

    另外,请注意 OpenFL 使用 预乘 alpha,因此在涉及 alpha 值时请在着色器中牢记这一点。这应该在默认着色器代码中表示。

    【讨论】:

    • 谢谢!那行得通:D ...有什么地方可以找到有关此类事情的信息吗?我不觉得 openfl 文档真的有用
    • 在文档更新之前,最好的选择是询问(并查看论坛)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-10-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-18
    相关资源
    最近更新 更多