Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error "getornull: Condition !id_map.has(p_rid.get_data())" showing up when changing property of a sprite 3D with a deleted light source #48118

Closed
Pantabrah opened this issue Apr 22, 2021 · 6 comments

Comments

@Pantabrah
Copy link

Pantabrah commented Apr 22, 2021

The error message :

getornull: Condition "!id_map.has(p_rid.get_data())" is true. Returned: __null
   At: ./core/rid.h:160 @ getornull()

Is displayed everytime you change a property of a sprite3D (Like the current frame or the opacity) that has been touched by a light source that no longer exist until another light source touch it.
Even if the sprite is out of range of the light source when it get removed, the moment the light stop existing the error will begin showing up.
Only spotlights or omnilights trigger the problem.

Tested on 3.3-stable as well as on a 3.2.4RC1 that was laying around.

Here is a small project displaying the issue :

test_light.zip

@Calinou
Copy link
Member

Calinou commented Apr 22, 2021

Can you reproduce this after disabling BVH in the Project Settings?

@Pantabrah
Copy link
Author

Yes, disabling BVH does not solve the issue.

@akien-mga
Copy link
Member

akien-mga commented Apr 23, 2021

Tested on the lastest stable release as well as on a 3.2.4RC1 that was laying around.

Please clarify what "latest stable release" means, in a few weeks time this will be different from what you mean today and contributors shouldn't have to look up the chronology of releases to infer this information. (That's why the issue template you deleted asks for this explicitly.)

@akien-mga
Copy link
Member

akien-mga commented Apr 23, 2021

Tested a few releases, this appears to be a regression in 3.2.3-stable (compared to 3.2.2-stable which does not produce the error). Happens as early as 3.2.3-beta1.

Probably related to #39867.

@clayjohn
Copy link
Member

clayjohn commented May 6, 2021

Error is coming from this line:

LightInstance *li = light_instance_owner.getornull(lights[i]);

Still can't figure out why Sprite3D is triggering the error.

@akien-mga
Copy link
Member

Fixed by #48499.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants