1

我有一个在 libGDX(Android) 上运行的 3D 场景。我想使用粒子系统。当我使用在线找到的教程/示例(例如Particle System libGDX)创建一个时,我得到了一个运行良好的粒子系统。除了一件事:它是固定在屏幕上的。

当我在粒子系统周围移动相机时,它会停留在屏幕上的同一位置(如固定的 HUD 元素左右)。也许是因为 Sprite 的性质ParticleEffect

另一个相关的问题是该ParticleEffect.setPosition()方法采用的值不是世界坐标而是屏幕像素。这个对吗?我可以以像素为单位计算新的屏幕坐标并更新ParticleEffect每一帧的位置。但这对我来说似乎是一个黑客行为。

有没有更“正确”的方法让我的粒子系统表现得像我的 3D 场景中的其他对象一样而不是固定在屏幕上?

4

1 回答 1

1

粒子系统只是在 2D 系统中工作。这不是 3D 粒子系统,这就是为什么您不会将其带入您的世界的原因。这就是为什么它在g2d包装内(图形 2D)。这也是为什么它只需要 2D 线而不是 3D 线的原因。

此外,功能列表说它在 2D 高级 API 中。

专题列表

于 2013-09-04T06:49:03.790 回答