1

我已经阅读并查看了很多有关 Win2D 的信息,发现我可以使用自定义像素和顶点着色器

我找到了如何创建自定义像素着色器资源

        var bitmapTiger = await CanvasBitmap.LoadAsync(sender, "imageTiger.jpg");
        tigerSize = bitmapTiger.Size.ToVector2();

        effect = new PixelShaderEffect(await Utils.ReadAllBytes("my_pixel_shader.fxo"))
        {
            Source1 = bitmapTiger,
            Source1BorderMode = EffectBorderMode.Hard,
            Source1Mapping = SamplerCoordinateMapping.Offset,
            MaxSamplerOffset = 1
        };

但我找不到如何通过 Win2D 创建顶点着色器资源。

提前致谢

4

1 回答 1

3

正如您链接的网站所述:

不幸的是,现在无法向 Win2D 添加自定义图像效果。

现在这是错误的!
但不幸的是,目前 Win2D 只是提供了一种使用像素着色器的方法。如果要使用顶点着色器,则必须使用 Direct3D。有一个示例库,其中包含如何将 Direct3D 与 Win2D 混合的示例(带有茶壶的示例),您可以在 GitHub 上找到代码。我不知道这是否会帮助你,但我能找到的就这些。

于 2015-12-22T08:12:41.507 回答