改进GUI&图像

时间:2009-07-20 21:55:58

标签: c# gdi+

参考游戏当前状态的图片:http://h.imagehost.org/0524/td.jpg

我正在用C#开发一个简单的2D爱好(个人)游戏,它使用GDI +进行渲染,因为我决定将重点放在游戏玩法上,而不是沉浸式和图形/ UI。然而,现在,我已经准备好了大部分游戏玩法,并且我希望改进在当前状态下非常难看和非用户友好的图形和UI。

所以,我正在寻找有关如何改善游戏视觉印象的建议。目前屏幕上根本没有动画,除了在屏幕上移动的图像(子弹/小怪)。

应该注意的是,我对图形完全失败了,对于大多数部分我都无法自己创建它们。我目前正在重复使用现有游戏中的纹理和免费提供的在线文本。

我希望改进各种各样的事情,但不太清楚如何做到这一点:

  1. 动画:像箭头/子弹一样旋转它们面对的方式,怪物有动画等等。
  2. 纹理混合:不是让整个游戏都是基于平铺的,而是在不同类型的地形之间进行一些混合将是一个很好的接触。
  3. 也许为游戏增加透明度。
  4. 您对改进游戏和用户界面中的图形元素有何建议?你会建议我继续使用GDI +,还是应该升级并使用更“强大”的库进行渲染?

    编辑:我并不是特别想要一个新的渲染库(虽然我正在研究XNA),但更多的效果和东西会改善整个外观,例如:“你可以找到在www.somesite.com上有令人敬畏的免费动画/纹理“,或者”在UI上使用基于主题的背景和那种东西“。

5 个答案:

答案 0 :(得分:1)

对于这样的游戏,我会查看XNA。它可以帮助您简化很多这些方面。

答案 1 :(得分:1)

Torque Engine拥有大约100美元的独立许可证。你可以尝试一个免费的演示。它是一个完整的游戏引擎,所以您可能会发现,如果您正确设计了项目,您可以非常轻松地交换它并立即获得高效的结果。作为奖励,您甚至可以用它制作Wii或iPhone游戏!

答案 2 :(得分:1)

啊拍了。我只是写下了整个下面的答案,然后回去重读这个问题你说你使用GDI +。好吧......如果您决定使用OpenGL,那么请查看:


Yay纹理混合!我刚刚经历了一个为期一周的OpenGL学习纹理组合的旅程。以下是我按时间顺序排列的一些问题,你可以查看我的答案和评论,看看我的去处:

最终结果令人惊叹。我还没有任何截图,因为它实际上很难看,因为我现在正在随机生成地形并拥有糟糕的示例纹理,但相信我,这是最好的方法。 :)

答案 3 :(得分:1)

首先,如果你坚持使用GDI +进行游戏,那么除非你有一个非常静态(即基于回合制)的游戏,否则几乎可以肯定这将是一个关注点。确保你准备好使用脏的和类似的哲学来尽可能地消除重新涂漆。

如果要混合,只需在绘制位图时使用颜色矩阵。这是here的相当不错的代码示例。使用alpha混合,您可以通过叠加alpha混合精灵(例如爆炸或粒子效果)来实现地形混合和一些非常好的效果。 GDI +支持带有alpha通道的PNG,所以我建议使用这些来创建你的精灵。

答案 4 :(得分:1)

商业电子游戏如此吸引人的一大部分原因是他们对过渡的使用;例如,检查在商业游戏中更改菜单屏幕时会发生什么。我花了很长时间才弄明白这一部分。

你可能还想改变你的瓷砖图形;用一堆不同的瓷砖替换那个刚性的方形路径,包括那些带有“软角”的瓷砖,会让事情看起来更好。人类不喜欢几何角度,或者至少不是九十度转弯。 Here是你能做的极端例子;下载此套装,看看如何将不同的瓷砖拼接在一起以制作场景。

我建议继续使用GDI +,因为它很慢;我自己使用OpenGL。