Unity3d Unity实例化命令工作不正常

Unity3d Unity实例化命令工作不正常,unity3d,instantiation,game-development,Unity3d,Instantiation,Game Development,每当我尝试在Unity 3D中实例化粒子系统时,该命令都会定位粒子,但不会播放/运行动画 这是我的密码 GameObject impactGO = Instantiate(impactEffect, hit.point, Quaternion.LookRotation(hit.normal)); Destroy(impactGO, sleep_); 统一版本-2021.1.1f1 定位粒子,但不播放/运行动画 如果您的代码成功实例化了粒子系统,它似乎就是这样做的。有多种方法可以确保它在创建时启

每当我尝试在Unity 3D中实例化粒子系统时,该命令都会定位粒子,但不会播放/运行动画

这是我的密码

GameObject impactGO = Instantiate(impactEffect, hit.point, Quaternion.LookRotation(hit.normal));
Destroy(impactGO, sleep_);
统一版本-2021.1.1f1

定位粒子,但不播放/运行动画

如果您的代码成功实例化了粒子系统,它似乎就是这样做的。有多种方法可以确保它在创建时启动


醒着玩:

然后,您需要确保粒子系统已设置为启用。因为这将确保粒子系统在场景中创建后立即开始播放


ParticleSystem.Play Altnervive:

或者,在创建粒子系统后,可以使用该函数在代码中启动粒子系统

ParticleSystem impactPS=实例化(impactEffect、hit.point、,
四元数旋转(击中法向)作为粒子系统;
Play();
销毁(impactPS.gameObjkect、sleep_u2;);

获取粒子系统的持续时间:

此外,如果要获取粒子系统的持续时间,可以使用
.main.duration
。以确保在粒子系统完成播放之前不会破坏
游戏对象

float sleep\=impactPS.main.duration;

您应该在粒子系统上显式调用
Play
,或者在激活粒子之前将
playOnAwake
设置为true。并确保
sleep\uu
足够大。