/
redgpu
/
ezEngine
Обзор
Документация
Войти
/
redgpu
/
ezEngine
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
dev
Code/EnginePlugins/ParticlePlugin/Resources/ParticleEffectResource.cpp
88 строк
2 KB
Jan Krassnigg
TexConv.exe can now do image comparison and output diff images and HTML (#1157)
14 янв 2024, 13:50
Не верифицирован
14 янв 2024, 13:50
5f162b0
Код
Авторство
О чём код?
#include <ParticlePlugin/ParticlePluginPCH.h> #include <Foundation/Utilities/AssetFileHeader.h> #include <ParticlePlugin/Resources/ParticleEffectResource.h> // clang-format off EZ_BEGIN_DYNAMIC_REFLECTED_TYPE(ezParticleEffectResource, 1, ezRTTIDefaultAllocator<ezParticleEffectResource>) EZ_END_DYNAMIC_REFLECTED_TYPE; EZ_RESOURCE_IMPLEMENT_COMMON_CODE(ezParticleEffectResource); // clang-format on ezParticleEffectResource::ezParticleEffectResource() : ezResource(DoUpdate::OnAnyThread, 1) { } ezParticleEffectResource::~ezParticleEffectResource() = default; ezResourceLoadDesc ezParticleEffectResource::UnloadData(Unload WhatToUnload) { /// \todo Clear something // m_Desc.m_System1 ezResourceLoadDesc res; res.m_uiQualityLevelsDiscardable = 0; res.m_uiQualityLevelsLoadable = 0; res.m_State = ezResourceState::Unloaded; return res; } ezResourceLoadDesc ezParticleEffectResource::UpdateContent(ezStreamReader* Stream) { ezResourceLoadDesc res; res.m_uiQualityLevelsDiscardable = 0; res.m_uiQualityLevelsLoadable = 0; res.m_State = ezResourceState::Loaded; if (Stream == nullptr) { res.m_State = ezResourceState::LoadedResourceMissing; return res; } ezStringBuilder sAbsFilePath; (*Stream) >> sAbsFilePath; ezAssetFileHeader AssetHash; AssetHash.Read(*Stream).IgnoreResult(); m_Desc.Load(*Stream); return res; } void ezParticleEffectResource::UpdateMemoryUsage(MemoryUsage& out_NewMemoryUsage) { /// \todo Better statistics out_NewMemoryUsage.m_uiMemoryCPU = sizeof(ezParticleEffectResource) + sizeof(ezParticleEffectResourceDescriptor); out_NewMemoryUsage.m_uiMemoryGPU = 0; } EZ_RESOURCE_IMPLEMENT_CREATEABLE(ezParticleEffectResource, ezParticleEffectResourceDescriptor) { m_Desc = descriptor; ezResourceLoadDesc res; res.m_State = ezResourceState::Loaded; res.m_uiQualityLevelsDiscardable = 0; res.m_uiQualityLevelsLoadable = 0; return res; } void ezParticleEffectResourceDescriptor::Save(ezStreamWriter& inout_stream) const { m_Effect.Save(inout_stream); } void ezParticleEffectResourceDescriptor::Load(ezStreamReader& inout_stream) { m_Effect.Load(inout_stream); } EZ_STATICLINK_FILE(ParticlePlugin, ParticlePlugin_Resources_ParticleEffectResource);