gpt4 book ai didi

c# - 在 Silverlight(或 WPF)中构建 Roguelike

转载 作者:行者123 更新时间:2023-11-30 14:43:31 25 4
gpt4 key购买 nike

我一直在考虑使用 Silverlight 构建基于 Web 的 Roguelike 游戏(或者可能只是使用 WPF 的桌面游戏)。

如果您不知道 Roguelike 是什么,它是一种图形角色扮演游戏,其中图形是使用文本呈现的。由于图形引擎相对简单,您可以花时间在游戏中构建功能,并且一个人可以快速构建一些有趣的东西。

例如,典型的屏幕可能看起来像这样(@ 是玩家,# 是墙,其他角色是怪物、楼梯和元素之类的东西):


(来源:thangorodrim.net)

我是一位经验丰富的 ASP.Net 开发人员,我才刚刚开始使用 Silverlight。我应该为此采取一种特殊的方法吗?

为了提供一些背景知识,在 Winforms 中,大多数标准方法都太慢了——文本最终以可见的、丑陋的闪烁结束更新。我在想与 Canvas 相关的东西可能是合适的,但更好的方法是以某种方式将屏幕绘制到缓冲区中,然后立即将其翻转到屏幕上,以便它立即可见。

但我现在真的不想乱用 DirectX - 我希望 WPF 可以让我到达我需要去的地方,而不需要很大的学习曲线。

有什么想法吗?

更新:结果证明这非常具有挑战性。我尝试了很多不同的方法,我终于能够让它实际渲染得足够快,但我认为要让它快速变得炙手可热,你应该构建一个你想要使用的字体的 Sprite 图,然后从中开始工作尝试使用任何内置字体渲染的东西。我没有那样做。

当我完成核心渲染引擎时,我最终得到了一些与字体渲染怪癖相关的烦人的工件(即使是固定宽度的字体有时也有点宽......),当我最终解决这个问题时我发现libtcod ,这是一个非常令人印象深刻的 roguelike 引擎,具有 C# 包装器。这都是基于控制台的。我玩了一下它,我被震撼了。

从 1.5.1 开始,我在 libtcod 中接触到的一切都很好用,除了鼠标输入和一种键盘输入模式(我认为他们最近放弃了),但是制作 roguelike 所需的一切都在在那里,其中包括几种视线、寻路甚至地牢生成算法。视觉上还是挺高级的。你见过这样的RL吗?

http://doryen.eptalys.net/files/screenshot0014.png

简而言之,可以使用 silverlight 构建 roguelike,但除非您已经拥有强大的 silverlight 或游戏开发背景,否则我不会期望它会很容易。您将重新发明一些严肃的轮子,即使有了可以专注于游戏玩法的强大工具包,也不乏要做的事情。

最佳答案

这是迄今为止我见过的唯一在 .NET 中完成的流氓 - 看起来基于 WPF

http://roguedotnet.com

关于c# - 在 Silverlight(或 WPF)中构建 Roguelike,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1884150/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com