@@ -25,9 +25,20 @@ namespace FlaxEditor.CustomEditors.Dedicated
|
|||||||
get
|
get
|
||||||
{
|
{
|
||||||
// All selected particle effects use the same system
|
// All selected particle effects use the same system
|
||||||
var effect = (ParticleEffect)Values[0];
|
var effect = Values[0] as ParticleEffect;
|
||||||
var system = effect.ParticleSystem;
|
var system = effect ? effect.ParticleSystem : null;
|
||||||
return system != null && Values.TrueForAll(x => (x as ParticleEffect)?.ParticleSystem == system);
|
if (system && Values.TrueForAll(x => x is ParticleEffect fx && fx && fx.ParticleSystem == system))
|
||||||
|
{
|
||||||
|
// All parameters can be accessed
|
||||||
|
var parameters = effect.Parameters;
|
||||||
|
foreach (var parameter in parameters)
|
||||||
|
{
|
||||||
|
if (!parameter)
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -402,7 +402,7 @@ SceneRenderTask* ParticleEffect::GetRenderTask() const
|
|||||||
|
|
||||||
#if USE_EDITOR
|
#if USE_EDITOR
|
||||||
|
|
||||||
Array<ParticleEffect::ParameterOverride> ParticleEffect::GetParametersOverrides()
|
Array<ParticleEffect::ParameterOverride>& ParticleEffect::GetParametersOverrides()
|
||||||
{
|
{
|
||||||
CacheModifiedParameters();
|
CacheModifiedParameters();
|
||||||
return _parametersOverrides;
|
return _parametersOverrides;
|
||||||
@@ -461,7 +461,6 @@ void ParticleEffect::CacheModifiedParameters()
|
|||||||
{
|
{
|
||||||
if (_parameters.IsEmpty())
|
if (_parameters.IsEmpty())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
_parametersOverrides.Clear();
|
_parametersOverrides.Clear();
|
||||||
auto& parameters = GetParameters();
|
auto& parameters = GetParameters();
|
||||||
for (auto& param : parameters)
|
for (auto& param : parameters)
|
||||||
|
|||||||
@@ -382,7 +382,7 @@ public:
|
|||||||
#if USE_EDITOR
|
#if USE_EDITOR
|
||||||
protected:
|
protected:
|
||||||
// Exposed parameters overrides for Editor Undo.
|
// Exposed parameters overrides for Editor Undo.
|
||||||
API_PROPERTY(Attributes="HideInEditor, Serialize") Array<ParticleEffect::ParameterOverride> GetParametersOverrides();
|
API_PROPERTY(Attributes="HideInEditor, Serialize") Array<ParticleEffect::ParameterOverride>& GetParametersOverrides();
|
||||||
API_PROPERTY() void SetParametersOverrides(const Array<ParticleEffect::ParameterOverride>& value);
|
API_PROPERTY() void SetParametersOverrides(const Array<ParticleEffect::ParameterOverride>& value);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user