【问题标题】:Alternative To PictureBoxes?替代图片框?
【发布时间】:2015-07-02 10:55:36
【问题描述】:

我想制作一款游戏,您可以在屏幕中间控制一个角色,然后成群结队的敌人从各个角度向您袭来。在以前的经验中,我发现同时在屏幕上显示多个图片框会导致巨大的延迟。我想知道是否有人知道在屏幕上显示图像的更好方法,这种方法不会造成太多延迟,并且我最好可以使用 .top 和 .left 表达式进行控制。谢谢!

【问题讨论】:

  • 您需要先渲染到离屏位图,然后再将最终位图渲染到屏幕上。不过,您应该将 DirectX 用于这类东西——Winforms 不是游戏的最佳选择。有几个库使 DirectX 更易于从 .Net 中使用。

标签: vb.net image picturebox


【解决方案1】:

DirectX 速度更快,通常用于游戏。

如果您更喜欢使用 PictureBox,请使用单个 PictureBox。您可以在 PictureBox 绘制事件中重绘动画游戏人物,在单个图片框上创建 GDI+ 图形实例,并将图片框的图像用作持久背景。

【讨论】:

  • GDI+ 对于任何类型的图形工作来说都是非常低效的。如果 OP 真的想使用 PictureBox,他应该使用普通的旧 GDI - 它要快一个数量级。
  • 如果您使用 32bppPArgb 位图,GDI+ 速度很快,并且可以使用更简单的代码。另一方面,使用旧 GDI 可以在 XOR 模式下进行绘制。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-14
  • 2017-04-16
  • 2023-03-11
  • 2012-05-20
  • 1970-01-01
相关资源
最近更新 更多