ezVariant ezVariant::ConvertTo(Type::Enum type, ezResult* out_pConversionStatus /* = NULL*/) const { if (!CanConvertTo(type)) { if (out_pConversionStatus != NULL) *out_pConversionStatus = EZ_FAILURE; return ezVariant(); // creates an invalid variant } if (m_Type == type) { if (out_pConversionStatus != NULL) *out_pConversionStatus = EZ_SUCCESS; return *this; } ConvertFunc convertFunc; convertFunc.m_pThis = this; convertFunc.m_bSuccessful = true; DispatchTo(convertFunc, type); if (out_pConversionStatus != NULL) *out_pConversionStatus = convertFunc.m_bSuccessful ? EZ_SUCCESS : EZ_FAILURE; return convertFunc.m_Result; }
ezVariant ezQtPropertyWidget::GetCommonValue(const ezHybridArray<ezPropertySelection, 8>& items, const ezAbstractProperty* pProperty) { ezVariant value; // check if we have multiple values for (const auto& item : items) { if (!value.IsValid()) { m_pObjectAccessor->GetValue(item.m_pObject, pProperty, value, item.m_Index); } else { ezVariant valueNext; m_pObjectAccessor->GetValue(item.m_pObject, pProperty, valueNext, item.m_Index); if (value != valueNext) { value = ezVariant(); break; } } } return value; }
void ezDecalComponentManager::Initialize() { m_hDecalAtlas = ezDecalAtlasResource::GetDecalAtlasResource(); } ////////////////////////////////////////////////////////////////////////// // clang-format off EZ_BEGIN_DYNAMIC_REFLECTED_TYPE(ezDecalRenderData, 1, ezRTTIDefaultAllocator<ezDecalRenderData>) EZ_END_DYNAMIC_REFLECTED_TYPE; EZ_BEGIN_COMPONENT_TYPE(ezDecalComponent, 3, ezComponentMode::Static) { EZ_BEGIN_PROPERTIES { EZ_ACCESSOR_PROPERTY("Extents", GetExtents, SetExtents)->AddAttributes(new ezDefaultValueAttribute(ezVec3(1.0f)), new ezClampValueAttribute(ezVec3(0.01), ezVariant(25.0f))), EZ_ACCESSOR_PROPERTY("SizeVariance", GetSizeVariance, SetSizeVariance)->AddAttributes(new ezClampValueAttribute(0.0f, 1.0f)), EZ_ACCESSOR_PROPERTY("Color", GetColor, SetColor)->AddAttributes(new ezExposeColorAlphaAttribute()), EZ_ACCESSOR_PROPERTY("Decal", GetDecalFile, SetDecalFile)->AddAttributes(new ezAssetBrowserAttribute("Decal")), EZ_ACCESSOR_PROPERTY("SortOrder", GetSortOrder, SetSortOrder)->AddAttributes(new ezClampValueAttribute(-64.0f, 64.0f)), EZ_ACCESSOR_PROPERTY("WrapAround", GetWrapAround, SetWrapAround), EZ_ACCESSOR_PROPERTY("InnerFadeAngle", GetInnerFadeAngle, SetInnerFadeAngle)->AddAttributes(new ezClampValueAttribute(ezAngle::Degree(0.0f), ezAngle::Degree(90.0f)), new ezDefaultValueAttribute(ezAngle::Degree(50.0f))), EZ_ACCESSOR_PROPERTY("OuterFadeAngle", GetOuterFadeAngle, SetOuterFadeAngle)->AddAttributes(new ezClampValueAttribute(ezAngle::Degree(0.0f), ezAngle::Degree(90.0f)), new ezDefaultValueAttribute(ezAngle::Degree(80.0f))), EZ_MEMBER_PROPERTY("FadeOutDelay", m_FadeOutDelay), EZ_MEMBER_PROPERTY("FadeOutDuration", m_FadeOutDuration), EZ_ENUM_MEMBER_PROPERTY("OnFinishedAction", ezOnComponentFinishedAction, m_OnFinishedAction), } EZ_END_PROPERTIES; EZ_BEGIN_ATTRIBUTES { new ezCategoryAttribute("Effects"),
#include <Core/WorldSerializer/WorldReader.h> #include <Core/WorldSerializer/WorldWriter.h> #include <RendererCore/Lights/Implementation/ShadowPool.h> #include <RendererCore/Lights/PointLightComponent.h> #include <RendererCore/Pipeline/View.h> // clang-format off EZ_BEGIN_DYNAMIC_REFLECTED_TYPE(ezPointLightRenderData, 1, ezRTTIDefaultAllocator<ezPointLightRenderData>) EZ_END_DYNAMIC_REFLECTED_TYPE; EZ_BEGIN_COMPONENT_TYPE(ezPointLightComponent, 2, ezComponentMode::Static) { EZ_BEGIN_PROPERTIES { EZ_ACCESSOR_PROPERTY("Range", GetRange, SetRange)->AddAttributes(new ezClampValueAttribute(0.0f, ezVariant()), new ezDefaultValueAttribute(0.0f), new ezSuffixAttribute(" m"), new ezMinValueTextAttribute("Auto")), //EZ_ACCESSOR_PROPERTY("ProjectedTexture", GetProjectedTextureFile, SetProjectedTextureFile)->AddAttributes(new ezAssetBrowserAttribute("Texture Cube")), } EZ_END_PROPERTIES; EZ_BEGIN_MESSAGEHANDLERS { EZ_MESSAGE_HANDLER(ezMsgExtractRenderData, OnExtractRenderData), } EZ_END_MESSAGEHANDLERS; EZ_BEGIN_ATTRIBUTES { new ezSphereManipulatorAttribute("Range"), new ezPointLightVisualizerAttribute("Range", "Intensity", "LightColor"), } EZ_END_ATTRIBUTES; }
#include <Core/WorldSerializer/ResourceHandleReader.h> #include <Core/WorldSerializer/ResourceHandleWriter.h> #include <Foundation/DataProcessing/Stream/ProcessingStreamGroup.h> #include <Foundation/Math/Float16.h> #include <Foundation/Math/Random.h> #include <Foundation/Profiling/Profiling.h> #include <GameEngine/Curves/Curve1DResource.h> #include <ParticlePlugin/Initializer/ParticleInitializer_RandomSize.h> #include <ParticlePlugin/System/ParticleSystemInstance.h> // clang-format off EZ_BEGIN_DYNAMIC_REFLECTED_TYPE(ezParticleInitializerFactory_RandomSize, 1, ezRTTIDefaultAllocator<ezParticleInitializerFactory_RandomSize>) { EZ_BEGIN_PROPERTIES { EZ_MEMBER_PROPERTY("Size", m_Size)->AddAttributes(new ezDefaultValueAttribute(1.0f), new ezClampValueAttribute(0.0f, ezVariant())), EZ_ACCESSOR_PROPERTY("SizeCurve", GetSizeCurveFile, SetSizeCurveFile)->AddAttributes(new ezAssetBrowserAttribute("Curve1D")), } EZ_END_PROPERTIES; } EZ_END_DYNAMIC_REFLECTED_TYPE; EZ_BEGIN_DYNAMIC_REFLECTED_TYPE(ezParticleInitializer_RandomSize, 1, ezRTTIDefaultAllocator<ezParticleInitializer_RandomSize>) EZ_END_DYNAMIC_REFLECTED_TYPE; // clang-format on const ezRTTI* ezParticleInitializerFactory_RandomSize::GetInitializerType() const { return ezGetStaticRTTI<ezParticleInitializer_RandomSize>(); }