godotengine / godot

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

GPUParticles3D gets culled for unknown reason #68145

Closed Mikeysax closed 2 years ago

Mikeysax commented 2 years ago

Godot version

4.0beta3

System information

PopOS 22.04, 5.19.0-76051900-generic kernel, Ryzen 6800h, Radeon 6700m, amdgpu, Vulkan

Issue description

GPUParticles3D keeps getting culled unless I increase the cull margin, but this causes other issues.

Without cull margin:

image

image

image

With cull margin:

image

image

image

Steps to reproduce

Place a plane on the ground and gpu particles above it.

This project can likely reproduce if gpu particles are added:

https://github.com/Mikeysax/example-project-for-godot-bug-67807

Minimal reproduction project

No response

Calinou commented 2 years ago

If you haven't adjusted the visibility AABB, this is expected, as the default AABB is too small depending on what your particle simulation looks like (and the size of the mesh used). Unlike CPUParticles3D, the visibility AABB for GPUParticles3D must be manually specified for performance reasons. You need to generaate an emission AABB using the menu at the top of the 3D editor viewport after selecting the GPUParticles3D node.

If this is already done, then you may be encountering transparency sorting issues instead. Try making your particles' rendering material use alpha cut transparency instead of alpha blend transparency.