【问题标题】:XNA 4.0 Texture with a random colorXNA 4.0 具有随机颜色的纹理
【发布时间】:2014-06-11 14:24:49
【问题描述】:

您好 Stack Overflow 的用户, 我最近开始学习 XNA 4.0 和 C#,但是我遇到了这个问题:

我想编写一个简单的程序,该程序将是一些心不在焉的屏幕保护程序式图形显示。然而,作为程序的一部分,我想在屏幕上创建多个相同纹理的副本,但颜色不同。 (纹理类似于本教程http://rbwhitaker.wikidot.com/additive-sprites 中的彩色点,但颜色是随机的,而不仅仅是这三种颜色)我尝试在 spritebatch.draw() 方法中简单地为点着色,但这些点只是变暗。是否有某种类型的特殊纹理是在没有考虑颜色的情况下创建的,以便以后可以为其分配颜色?

感谢任何帮助,谢谢!

【问题讨论】:

  • 如果您使用浅灰色(非彩色)纹理,应该可以在 Spritebatch.Draw() 方法中指定颜色

标签: xna


【解决方案1】:

当您在 spriteBatch.Draw(...) 方法中使用不同于白色的颜色时,它会将您的纹理着色为该颜色,但不会将其原始颜色更改为所选颜色。

只有当你的原始纹理是白色或浅灰色时才能实现,在这种情况下;在调用中选择特定颜色时,生成的对象将拥有它(或看起来像它)。

我过去在我的项目中所做的只是在这些情况下使用白色、灰色和两者混合的 spritesheet,这样我就可以拥有 许多 个具有相同纹理但不同的对象颜色和看起来不错(在背景项目上对我特别有用)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-24
    • 1970-01-01
    • 2012-06-15
    相关资源
    最近更新 更多