C# 改善图形用户界面&;绘图

C# 改善图形用户界面&;绘图,c#,gdi+,C#,Gdi+,游戏当前状态的参考图片: 我正在用C#开发一个简单的2D业余爱好(个人)游戏,它使用GDI+进行渲染,因为我决定主要关注游戏性,而不是沉浸感和图形/UI。不过,现在我已经准备好了大部分游戏,我想改进图形和用户界面,它们在当前状态下非常难看而且不友好 因此,我正在寻找如何改善游戏视觉印象的建议。目前,除了在屏幕上移动的图像(子弹/怪物),屏幕上根本没有动画 应该注意的是,我在图形方面完全失败了,在大多数情况下,我无法自己创建图形。我目前正在重新使用现有游戏和免费在线纹理的纹理 我想改进很多方面,但

游戏当前状态的参考图片:

我正在用C#开发一个简单的2D业余爱好(个人)游戏,它使用GDI+进行渲染,因为我决定主要关注游戏性,而不是沉浸感和图形/UI。不过,现在我已经准备好了大部分游戏,我想改进图形和用户界面,它们在当前状态下非常难看而且不友好

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

应该注意的是,我在图形方面完全失败了,在大多数情况下,我无法自己创建图形。我目前正在重新使用现有游戏和免费在线纹理的纹理

我想改进很多方面,但不知道如何改进:

  • 动画:像箭头/子弹旋转他们面对的方向,怪物有一个骰子动画等等
  • 纹理混合:与整个游戏都是基于瓷砖的不同,在不同类型的地形之间进行一点混合会是一个不错的选择
  • 也许会增加游戏的透明度
  • 您对改进游戏和UI中的图形元素有什么建议?你会建议我继续使用GDI+吗?还是应该升级并使用更“有能力”的库进行渲染


    编辑:我并不是特别想要一个新的渲染库(虽然我正在寻找XNA),而是需要更多的效果和东西来改善整体外观,比如:“你可以在www.somesite.com上找到很棒的免费动画/纹理”,或者“在UI上使用基于主题的背景等等”.

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

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

    该公司的独立音乐许可证售价约为100美元。你可以尝试一个免费的演示。这是一个完整的游戏引擎,所以你可能会发现,如果你已经正确地设计了你的项目,你可以很容易地交换它,并立即获得有成效的结果。作为奖励,你甚至可以用它制作Wii或iPhone游戏

    该公司拥有独立音乐许可证,价格约为100美元。你可以尝试一个免费的演示。这是一个完整的游戏引擎,所以你可能会发现,如果你已经正确地设计了你的项目,你可以很容易地交换它,并立即获得有成效的结果。作为奖励,你甚至可以用它制作Wii或iPhone游戏

    啊,开枪吧。我只写了下面的全部答案,然后回去重读这个问题,你说你使用GDI+。好。。。如果您决定改用OpenGL,请查看以下内容:


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


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

    啊,开枪吧。我只写了下面的全部答案,然后回去重读这个问题,你说你使用GDI+。好。。。如果您决定改用OpenGL,请查看以下内容:


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


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

    首先,如果您在游戏中坚持使用GDI+,请意识到性能几乎肯定会是一个问题,除非您有一个非常静态的(即基于回合的)游戏。确保你已经准备好使用脏rects和类似的哲学来尽可能地避免重新喷漆


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

    首先,如果您在游戏中坚持使用GDI+,请意识到性能几乎肯定会是一个问题,除非您有一个非常静态(即基于回合的)游戏。确保你已经准备好使用脏rects和类似的哲学来尽可能地避免重新喷漆


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

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

    您可能还想改变您的平铺图形;用一堆不同的瓷砖(包括带有“软角”的瓷砖)替换那条僵硬的方形路径将使事情看起来更好。人类不喜欢几何角度,或者至少不喜欢90度