1

我需要显示一个动画,由 2 个具有 alpha 透明度的图层组成。我需要这个,所以我可以决定并即时显示正确的组合。

  • 我们可以使用 png 序列、带 alpha 的视频或其他任何东西。
  • 动画很短,8 秒,15 fps,320x120 像素,没有音频。

预渲染每个组合是不可行的,因为我们有 2 层,每层 100 个变化,需要在固定的静态背景上混合;这将需要 100x100 = 10000 个序列。

所以; 是否可以在 Delphi 中合成 2 个动画层,而不会造成太多同步损失?

鸭子

4

2 回答 2

3

您可以使用 3rd 方图形库,例如Graphics32。您可以将每一帧构建到内存中的位图中,然后将其传送到屏幕上。在 320x120 下实现 15fps 无闪烁将很容易——我认为您可以轻松获得 10 倍以上的帧速率。

另一方面,我认为用普通的 GDI 命令将它绘制到 TPaintBox 上并不难。

于 2010-12-25T19:36:10.417 回答
1

让它在两个面板中。并使用 GDI+ 让 Panels 具有透明度。或者你可以使用 RaizeComponents 的 RzPanel,它有 alpha 属性。

于 2010-12-25T19:23:08.243 回答