godotengine / godot

Godot Engine – Multi-platform 2D and 3D game engine
https://godotengine.org
MIT License
90.83k stars 21.13k forks source link

GPUParticles2D does not emit particles on macOS with compatibility backend (Intel) #72960

Open phkeese opened 1 year ago

phkeese commented 1 year ago

Godot version

v4.0.rc1.official [8843d9ad3]

System information

macOS Ventura 13.1, Intel MacBook Air 2020, Intel Iris Plus Graphics

Issue description

When using the compatibility backend, GPUParticles2D does not show any particles. Changing to the mobile backend does show particles.

Steps to reproduce

  1. Create a new project using the Compatibility backend
  2. Add a 2D scene with a GPUParticles2D node and a texture assigned to that
  3. Observe no particles being emitted
  4. Change to Mobile backend and restart engine
  5. Observe particles being emitted

Minimal reproduction project

Minimal.zip

phkeese commented 1 year ago

This issue is not present on Windows 10 with an RX 580 8GB

clayjohn commented 1 year ago

Related https://github.com/godotengine/godot/issues/72469

clayjohn commented 1 year ago

I couldn't identify an acceptable solution that we could merge for 4.0. Unfortunately, that means this will have to wait for 4.1 when we add the ANGLE backend in https://github.com/godotengine/godot/pull/72831

dcrawl commented 1 year ago

On my M1 Macbook Air, adding a GPUParticles2D Node in Compatibility mode crashes Godot v4.0.3.stable.official [5222a99f5] every time. Even with just a new project and adding the Particles node to a Node2D will crash Godot.

It works fine in Forward+.

Calinou commented 1 year ago

On my M1 Macbook Air, adding a GPUParticles2D Node in Compatibility mode crashes Godot v4.0.3.stable.official [5222a99] every time. Even with just a new project and adding the Particles node to a Node2D will crash Godot.

It works fine in Forward+.

The crash on Apple Silicon GPUs is tracked in https://github.com/godotengine/godot/issues/72469.

bruvzg commented 1 year ago

For the reference, I can confirm crash with native GL on M1 Mac, and it is fixed by applying https://github.com/godotengine/godot/pull/72831 and using ANGLE over Metal renderer.

253820772-ecdcf18a-17b9-427d-ba0f-312ddef0db44