Page 1 of 1

ParticleEmitter invalid position. 5.5

Posted: Fri Oct 12, 2018 12:12 pm
by hodirt
After upgrading my project to 5.5 I've faced such a problem.
I have a Projectile entity component, which basically is a simple rigid body with some basic collider (a little bit more complicated than a standard's template Bullet component).
Also, to this projectile entity I attach a Default ParticleComponent

Code: Select all

Cry::DefaultComponents::CParticleComponent
All works fine, but when I remove my entity like

Code: Select all

gEnv->pEntitySystem->RemoveEntity(entityId)
I'm getting this kind of warning [Warning] I3DEngine::RegisterEntity: invalid entity position: Name: , Class: ParticleEmitter, Pos=(0.5,0.0,0.0), BoxMin=(71.9,109.6,15.2), BoxMax=(107.7,145.4,50.9)

I've tried pretty much everything:
- to create custom Particle component and to kill (method Kill()) ParticleEmitter
- to disable Physics after removing entity;
- to create separate entity for particle and attach it as a child to my projectile entity;
- to set render distance to like 20-30 units;
- to remove ParticleComponent before the whole entity remove;
- to set WorldTM to particle entity (in case if I detach particle entity as a child to projectile) before remove
- other little stuff

And nothing helps, In any case this error appears on remove entity, or on DetachAll(), or on Hide(true) ...


PS. The source of warning is Code/CryEngine/Cry3DEngine/3dEngine.cpp , line of code: 6692.

Can anyone help?

Re: ParticleEmitter invalid position. 5.5

Posted: Fri Oct 12, 2018 4:03 pm
by hodirt
I think, it's most likely a bug, because for some weird reason, after removing entity (or disabling physics, or killing emitter) Particle Emitter is being translated to 0, 0, 0 (or very close to it) by the engine and, as far as I tried, there is no possibility to prevent this from happening.