2012-10-13 30 views
1

我想在整个最终渲染器上应用颜色饱和度。在整个渲染器上应用颜色饱和度

有没有简单的方法来做到这一点,而不使用着色器? 我不知道有关DirectX什么:X

我看到了一个“效果”参数spriteBatch.Begin(),但我没有找到任何关于它的教程:■

希望你能指导我。

+0

“效果”是着色器。 –

+0

@andrew Q1:着色器意味着“DirectX效果”吗? Q2:那么,为了达到这个基本效果,我必须使用DirectX编码它? :(*害怕* – Sharpnel

+1

着色器代码是用HLSL编写的,它不是太难,你不需要关心DirectX的问题,看看这个示例:http://xbox.create.msdn.com/en-US/教育/目录/示例/ sprite_effects –

回答

1

你需要一个着色器来做到这一点。着色器是Effect

您可以通过右键单击内容项目,单击“添加新项目”并选择“效果”文件来创建新效果。生成的.fx文件采用HLSL语言。它会被内容管道进行编译,并且你有加载:

Effect myEffect = Content.Load<Effect>("myEffect"); 

有一个official example of how to use effects with SpriteBatch here(如果你想饱和,那里面有一个例子)。并且this blog post也可能有用。

我不会在这里重现饱和效应的代码,但您可以通过Google找到几个示例。 Here is one example on the GameDev site

+0

我修改了着色器示例以遵循我的代码逻辑(事实上,正如你所说,这并不难)它的工作原理与往常一样,thx很多Andrew。 – Sharpnel

相关问题