Skip to content

On a GPUParticles2D, when using Compatibility renderer, "reverse lifetime" draw order and non-local coords don't play nice. #95042

@L4Vo5

Description

@L4Vo5

Tested versions

Tested in:
v4.2.2.stable.official [15073af]
v4.3.rc2.official [3978628]

System information

Godot v4.3.rc2 - Manjaro Linux #1 SMP PREEMPT_DYNAMIC Mon Jul 15 21:39:34 UTC 2024 - X11 - GLES3 (Compatibility) - NVIDIA GeForce GTX 1070 Ti (nvidia; 550.100) - Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz (8 Threads)

Issue description

Particles belonging to a GPUParticles2D node with draw_order set to "reverse lifetime", and local_coords set to false, don't properly stay in place when the node is moved around. This happens only in the Compatibility renderer.

particles.bug.mp4

Steps to reproduce

  • Using the Compatibility renderer, make a GPUParticles2D node with a basic particle material and these settings:
    image
  • Move it around, either in the editor or in-game.
    (or open the MRP)

Minimal reproduction project (MRP)

MRP reverse lifetime bug.zip

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions