/
redgpu
/
ezEngine
Обзор
Документация
Войти
/
redgpu
/
ezEngine
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
dev
Code/EditorPlugins/ProcGen/EditorPluginProcGen/ProcGenGraphAsset/ProcGenGraphAsset.h
63 строки
3 KB
C-Core
Array usage cleanup (#1864)
11 мар 2026, 23:44
Не верифицирован
11 мар 2026, 23:44
f7cb730
Код
Авторство
О чём код?
#pragma once #include <EditorFramework/Assets/AssetDocument.h> #include <EditorPluginProcGen/ProcGenGraphAsset/ProcGenNodes.h> class ezVisualGraphPin; class ezProcGenGraphAssetProperties : public ezReflectedClass { EZ_ADD_DYNAMIC_REFLECTION(ezProcGenGraphAssetProperties, ezReflectedClass); public: ezString m_sDebugPrefab; ezString m_sDebugColorGradient; ezString m_sDebugSurface; float m_fDebugFootprint = 1.0f; float m_fDebugAlignToNormal = 1.0f; ezEnum<ezProcPlacementPattern> m_DebugPlacementPattern = ezProcPlacementPattern::RegularGrid; }; class ezProcGenGraphAssetDocument : public ezAssetDocument { EZ_ADD_DYNAMIC_REFLECTION(ezProcGenGraphAssetDocument, ezAssetDocument); public: ezProcGenGraphAssetDocument(ezStringView sDocumentPath); void SetDebugPin(const ezVisualGraphPin* pDebugPin); void UpdateDebugNode(); ezStatus WriteAsset(ezStreamWriter& inout_stream, const ezPlatformProfile* pAssetProfile, bool bAllowDebug) const; protected: virtual void InitializeAfterLoading(bool bFirstTimeCreation) override; virtual void UpdateAssetDocumentInfo(ezAssetDocumentInfo* pInfo) const override; virtual ezTransformStatus InternalTransformAsset(ezStreamWriter& stream, ezStringView sOutputTag, const ezPlatformProfile* pAssetProfile, const ezAssetFileHeader& AssetHeader, ezBitflags<ezTransformFlags> transformFlags) override; virtual void GetSupportedMimeTypesForPasting(ezDynamicArray<ezString>& out_mimeTypes) const override; virtual bool CopySelectedObjects(ezAbstractObjectGraph& out_objectGraph, ezStringBuilder& out_MimeType) const override; virtual bool Paste( const ezArrayPtr<PasteInfo>& info, const ezAbstractObjectGraph& objectGraph, bool bAllowPickedPosition, ezStringView sMimeType) override; virtual void AttachMetaDataBeforeSaving(ezAbstractObjectGraph& graph) const override; virtual void RestoreMetaDataAfterLoading(const ezAbstractObjectGraph& graph, bool bUndoable) override; void GetAllOutputNodes(ezDynamicArray<const ezDocumentObject*>& placementNodes, ezDynamicArray<const ezDocumentObject*>& vertexColorNodes) const; private: friend class ezProcGenAction; virtual void InternalGetMetaDataHash(const ezDocumentObject* pObject, ezUInt64& inout_uiHash) const override; struct GenerateContext; ezExpressionAST::Node* GenerateExpressionAST(const ezDocumentObject* outputNode, const char* szOutputName, GenerateContext& context, ezExpressionAST& out_Ast) const; ezExpressionAST::Node* GenerateDebugExpressionAST(GenerateContext& context, ezExpressionAST& out_Ast) const; void DumpSelectedOutput(bool bAst, bool bDisassembly) const; const ezVisualGraphPin* m_pDebugPin = nullptr; ezUniquePtr<ezProcGen_PlacementOutput> m_pDebugNode; };