0

有人可以提供有关如何在 XTK 中使用 X.shaders 的示例吗?

我需要使用自定义着色器来应用纹理和颜色以及顶点的 alpha 分量。

4

2 回答 2

1

阅读代码后:暂时你不能。最初,着色器类并未公开,但我向 Haehn 提交了一个问题以将其导出为公共,以便您可以实例化一个着色器。此外,它需要 2 个用于片段和顶点源的设置器,并删除要在着色器源中使用的所有属性/制服的测试。

请注意,使用当前代码,您无法将参数添加到着色器(顺便说一句,应该足够用于任何用途,您可以在此处的“属性”和“制服”中看到它们)。

要使用它,在那之后,我会说:

 var r = new X.renderer3D(); //create a renderer
 r.init(); //initiate it
 var sh = new X.shaders(); // create a new par of shaders
 /* here use the futur setters to set sources from a string or a file */
 r.addShaders(sh); // this set the shaders for the renderer and try to compile them
 // DO NOT call init anymore or it would erase the current shaders and replace them by default ones
 /*
 Any code to fill the scene, etc...
 */
 r.render();

但它需要等待我在本文开头所说的 3 个更改。我在等海恩的消息。

于 2012-07-05T07:50:11.637 回答
0

@Ricola3D 是对的。

关于这个的讨论在这里:

https://github.com/xtk/X/issues/69

但是如果你想要一个顶点的 alpha 通道,你可以使用 X.object.opacity。

于 2012-07-05T14:08:49.827 回答