0

我目前正在使用 XNA 框架开发 RPG 游戏。

目前,当确定文本在屏幕上的显示位置时,我正在使用试错法来查找 Y 坐标,即加载然后修改坐标以改变位置。

下面的代码示例显示了我如何处理“对话”文本

titleString = Fonts.SplitTextIntoLines(Conversation.CurrentNode.Text, Fonts.Font, new Vector2(maxWidth, 0));
titlePosition.X = (viewport.Width - Fonts.Font.MeasureString(titleString).X) / 2;
titlePosition.Y = backgroundPosition.Y + 200f;

Fonts.SplitTextIntoLines 根据使用的字体和指定的最大宽度将输入分成多行,这与我的问题无关

titlePosition.X:这里我将文本在屏幕上居中

titlePosition.Y:这是我困扰的那一行

如果有某种工具可以让我有一个空白窗口,我可以在上面放置一段文本或图像,然后查看坐标,那将是一个巨大的帮助。

如果有人知道这样的工具,你能告诉我吗?:)

这是一个屏幕截图,可以更好地说明我的问题 http://img836.imageshack.us/img836/1929/i86g.png

4

1 回答 1

0

简单的答案是让您实现一个非常基本的工具来帮助您在场景中定位对象。大多数游戏引擎都会有一个编辑器供您执行此操作,但由于 XNA 只是一个框架,您可以使用键盘和箭头实现一个非常简单的系统来移动文本并在屏幕上输出 X 和 Y 位置。它并不完美,但它应该可以为您节省一些时间。

还:

Vector2 mousePosition = new Vector2(Mouse.GetState().X,Mouse.GetState().Y);

Console.WriteLine("My Cursor is at: " + mousePosition);

不要忘记 Game 的 IsMouseVisible 成员才能真正看到您的鼠标光标。

希望能帮助到你!

于 2013-07-10T01:37:03.337 回答