java - Android LibGDX 粒子系统固定在屏幕上

标签 java android opengl-es libgdx particle-system

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

当我围绕粒子系统移动相机时,粒子系统会停留在屏幕上的同一位置(类似于固定的 HUD 元素等)。可能是因为 ParticleEffect 的 Sprite 特性。

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

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

最佳答案

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

功能列表还说它在 2D 高级 API 中。

Featurelist

关于java - Android LibGDX 粒子系统固定在屏幕上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18598667/

相关文章:

java - Java 中的构造函数问题

android - 使用 ListView 在下一个 Activity 中显示数据库详细信息

javascript - 将向量数组传递给制服

java - 电话管理器的 getvoicemessagecount api 无法访问

java - 在给定的行和列位置设置给定的元素

android - 如何在android上上传大文件?

android - 背景图片崩溃android

android - OpenGL,如何将单色纹理设置为彩色形状?

java - 从 Open GL 保存图像

java - Hibernate:左连接中的 where 子句无法正常工作