首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >2D“游戏”开发:游戏逻辑和绘图的坐标

2D“游戏”开发:游戏逻辑和绘图的坐标
EN

Stack Overflow用户
提问于 2020-04-02 11:33:54
回答 1查看 234关注 0票数 1

我已经完成了游戏逻辑的实现,现在是可视化的时候了--为此我选择了SFML。然而,我陷入了一片混乱:--如何避免对游戏对象的硬编码坐标,使整个系统:

  • 可调整大小;
  • 在视觉部件和系统上舒适地移动;
  • 适合任何合理的屏幕大小?

此外,我想知道在“真实”游戏和其他应用程序中使用了哪些方法。我想出的最好的解决办法是:

  • class Screen_promille由游戏逻辑操作,用于将xy存储为屏幕使用部分的int程序(例如,{500, 500}是中心点,{999, 999}是右下角);
  • sf::Vector2<float> convert_to_pixels(Screen_promille const)函数,用于获取屏幕上的实际位置(可能就在绘图之前);或者可以使用Screen_promille::operator sf::Vector2<float>()代替;
  • sf::Rect<float> const used_screen为后者的实现。

应该是足够明智的

P. S.:

  • 我不使用任何游戏引擎:我希望当前的项目没有他们;
  • 我知道SFML的类型。)我把它们留给了更多的观众。
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-02 15:50:26

简单地说,当你考虑到你可能遇到的所有问题时,这是不值得的。直接对坐标进行硬编码要容易得多。

解决您提出的问题的最佳解决方案是实现信箱视图。一个信箱视图应该允许您调整您的游戏舒适,没有任何视觉扭曲,它应该自我适应任何屏幕大小。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60990606

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档