basic refactor of assets (#6467)
Signed-off-by: carlitosan <82187351+carlitosan@users.noreply.github.com>
This commit is contained in:
@@ -59,7 +59,7 @@ namespace ScriptCanvasBuilder
|
||||
CorrectGraphVariableVersion,
|
||||
ReflectEntityIdNodes,
|
||||
FixExecutionStateNodeableConstruction,
|
||||
|
||||
SwitchAssetsToBinary,
|
||||
// add new entries above
|
||||
Current,
|
||||
};
|
||||
|
||||
@@ -521,7 +521,7 @@ namespace ScriptCanvasBuilder
|
||||
{
|
||||
AZ::Data::Asset<ScriptCanvas::SubgraphInterfaceAsset> runtimeAsset;
|
||||
runtimeAsset.Create(AZ::Data::AssetId(input.assetID.m_guid, AZ_CRC("SubgraphInterface", 0xdfe6dc72)));
|
||||
runtimeAsset.Get()->SetData(subgraphInterface);
|
||||
runtimeAsset.Get()->m_interfaceData = subgraphInterface;
|
||||
|
||||
AZStd::vector<AZ::u8> byteBuffer;
|
||||
AZ::IO::ByteContainerStream<decltype(byteBuffer)> byteStream(&byteBuffer);
|
||||
@@ -557,7 +557,7 @@ namespace ScriptCanvasBuilder
|
||||
{
|
||||
AZ::Data::Asset<ScriptCanvas::RuntimeAsset> runtimeAsset;
|
||||
runtimeAsset.Create(AZ::Data::AssetId(input.assetID.m_guid, AZ_CRC("RuntimeData", 0x163310ae)));
|
||||
runtimeAsset.Get()->SetData(runtimeData);
|
||||
runtimeAsset.Get()->m_runtimeData = runtimeData;
|
||||
|
||||
AZStd::vector<AZ::u8> byteBuffer;
|
||||
AZ::IO::ByteContainerStream<decltype(byteBuffer)> byteStream(&byteBuffer);
|
||||
|
||||
@@ -41,6 +41,7 @@ namespace EditorScriptCanvasComponentCpp
|
||||
PrefabIntegration = 10,
|
||||
InternalDev,
|
||||
AddSourceHandle,
|
||||
RefactorAssets,
|
||||
// add description above
|
||||
Current
|
||||
};
|
||||
|
||||
@@ -30,8 +30,8 @@ namespace ScriptCanvasEditor
|
||||
// over to the override data to simulate build step that does this when building prefabs
|
||||
AZ_INLINE void CopyAssetEntityIdsToOverrides(RuntimeDataOverrides& runtimeDataOverrides)
|
||||
{
|
||||
runtimeDataOverrides.m_entityIds.reserve(runtimeDataOverrides.m_runtimeAsset->GetData().m_input.m_entityIds.size());
|
||||
for (auto& varEntityPar : runtimeDataOverrides.m_runtimeAsset->GetData().m_input.m_entityIds)
|
||||
runtimeDataOverrides.m_entityIds.reserve(runtimeDataOverrides.m_runtimeAsset->m_runtimeData.m_input.m_entityIds.size());
|
||||
for (auto& varEntityPar : runtimeDataOverrides.m_runtimeAsset->m_runtimeData.m_input.m_entityIds)
|
||||
{
|
||||
runtimeDataOverrides.m_entityIds.push_back(varEntityPar.second);
|
||||
}
|
||||
@@ -281,14 +281,14 @@ namespace ScriptCanvasEditor
|
||||
#endif //////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
loadResult.m_scriptAsset = luaAssetResult.m_scriptAsset;
|
||||
loadResult.m_runtimeAsset.Get()->GetData().m_script = loadResult.m_scriptAsset;
|
||||
loadResult.m_runtimeAsset.Get()->GetData().m_input = luaAssetResult.m_runtimeInputs;
|
||||
loadResult.m_runtimeAsset.Get()->GetData().m_debugMap = luaAssetResult.m_debugMap;
|
||||
loadResult.m_runtimeAsset.Get()->m_runtimeData.m_script = loadResult.m_scriptAsset;
|
||||
loadResult.m_runtimeAsset.Get()->m_runtimeData.m_input = luaAssetResult.m_runtimeInputs;
|
||||
loadResult.m_runtimeAsset.Get()->m_runtimeData.m_debugMap = luaAssetResult.m_debugMap;
|
||||
loadResult.m_runtimeComponent = loadResult.m_entity->CreateComponent<ScriptCanvas::RuntimeComponent>();
|
||||
CopyAssetEntityIdsToOverrides(runtimeDataOverrides);
|
||||
loadResult.m_runtimeComponent->TakeRuntimeDataOverrides(AZStd::move(runtimeDataOverrides));
|
||||
Execution::Context::InitializeActivationData(loadResult.m_runtimeAsset->GetData());
|
||||
Execution::InitializeInterpretedStatics(loadResult.m_runtimeAsset->GetData());
|
||||
Execution::Context::InitializeActivationData(loadResult.m_runtimeAsset->m_runtimeData);
|
||||
Execution::InitializeInterpretedStatics(loadResult.m_runtimeAsset->m_runtimeData);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -932,7 +932,7 @@ namespace ScriptCanvasEditor::Nodes
|
||||
|
||||
if (asset)
|
||||
{
|
||||
GraphCanvas::NodeTitleRequestBus::Event(graphCanvasNodeId, &GraphCanvas::NodeTitleRequests::SetTitle, asset->GetData().m_name);
|
||||
GraphCanvas::NodeTitleRequestBus::Event(graphCanvasNodeId, &GraphCanvas::NodeTitleRequests::SetTitle, asset->m_interfaceData.m_name);
|
||||
}
|
||||
|
||||
GraphCanvas::NodeTitleRequestBus::Event(graphCanvasNodeId, &GraphCanvas::NodeTitleRequests::SetPaletteOverride, "MethodNodeTitlePalette");
|
||||
|
||||
@@ -456,7 +456,7 @@ namespace ScriptCanvasEditor
|
||||
return;
|
||||
}
|
||||
|
||||
if (!data->m_runtimeData.m_interface.HasAnyFunctionality())
|
||||
if (!data->m_interfaceData.m_interface.HasAnyFunctionality())
|
||||
{
|
||||
// check for deleting the old entry
|
||||
return;
|
||||
@@ -517,7 +517,7 @@ namespace ScriptCanvasEditor
|
||||
return;
|
||||
}
|
||||
|
||||
const ScriptCanvas::Grammar::SubgraphInterface& graphInterface = data->m_runtimeData.m_interface;
|
||||
const ScriptCanvas::Grammar::SubgraphInterface& graphInterface = data->m_interfaceData.m_interface;
|
||||
if (!graphInterface.HasAnyFunctionality())
|
||||
{
|
||||
return;
|
||||
@@ -566,7 +566,7 @@ namespace ScriptCanvasEditor
|
||||
return;
|
||||
}
|
||||
|
||||
const ScriptCanvas::Grammar::SubgraphInterface& graphInterface = data->m_runtimeData.m_interface;
|
||||
const ScriptCanvas::Grammar::SubgraphInterface& graphInterface = data->m_interfaceData.m_interface;
|
||||
if (!graphInterface.HasAnyFunctionality())
|
||||
{
|
||||
return;
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
#include <AzCore/Component/Entity.h>
|
||||
#include <AzCore/Asset/AssetSerializer.h>
|
||||
|
||||
namespace ScriptCanvasRuntimeAssetCpp
|
||||
namespace DoNotVersionRuntimeAssetsBumpTheBuilderVersionInstead
|
||||
{
|
||||
enum class RuntimeDataVersion
|
||||
{
|
||||
@@ -72,7 +72,7 @@ namespace ScriptCanvas
|
||||
if (auto serializeContext = azrtti_cast<AZ::SerializeContext*>(reflectContext))
|
||||
{
|
||||
serializeContext->Class<RuntimeData>()
|
||||
->Version(static_cast<int>(ScriptCanvasRuntimeAssetCpp::RuntimeDataVersion::Current))
|
||||
->Version(static_cast<int>(DoNotVersionRuntimeAssetsBumpTheBuilderVersionInstead::RuntimeDataVersion::Current))
|
||||
->Field("input", &RuntimeData::m_input)
|
||||
->Field("debugMap", &RuntimeData::m_debugMap)
|
||||
->Field("script", &RuntimeData::m_script)
|
||||
@@ -146,7 +146,7 @@ namespace ScriptCanvas
|
||||
if (auto serializeContext = azrtti_cast<AZ::SerializeContext*>(context))
|
||||
{
|
||||
serializeContext->Class<RuntimeDataOverrides>()
|
||||
->Version(static_cast<unsigned int>(ScriptCanvasRuntimeAssetCpp::RuntimeDataOverridesVersion::Current))
|
||||
->Version(static_cast<unsigned int>(DoNotVersionRuntimeAssetsBumpTheBuilderVersionInstead::RuntimeDataOverridesVersion::Current))
|
||||
->Field("runtimeAsset", &RuntimeDataOverrides::m_runtimeAsset)
|
||||
->Field("variables", &RuntimeDataOverrides::m_variables)
|
||||
->Field("variableIndices", &RuntimeDataOverrides::m_variableIndices)
|
||||
@@ -195,7 +195,7 @@ namespace ScriptCanvas
|
||||
if (auto serializeContext = azrtti_cast<AZ::SerializeContext*>(reflectContext))
|
||||
{
|
||||
serializeContext->Class<SubgraphInterfaceData>()
|
||||
->Version(static_cast<int>(ScriptCanvasRuntimeAssetCpp::FunctionRuntimeDataVersion::Current))
|
||||
->Version(static_cast<int>(DoNotVersionRuntimeAssetsBumpTheBuilderVersionInstead::FunctionRuntimeDataVersion::Current))
|
||||
->Field("name", &SubgraphInterfaceData::m_name)
|
||||
->Field("interface", &SubgraphInterfaceData::m_interface)
|
||||
;
|
||||
|
||||
@@ -106,65 +106,20 @@ namespace ScriptCanvas
|
||||
void EnforcePreloadBehavior();
|
||||
};
|
||||
|
||||
class RuntimeAssetBase
|
||||
class RuntimeAsset
|
||||
: public AZ::Data::AssetData
|
||||
{
|
||||
public:
|
||||
|
||||
AZ_RTTI(RuntimeAssetBase, "{19BAD220-E505-4443-AA95-743106748F37}", AZ::Data::AssetData);
|
||||
AZ_CLASS_ALLOCATOR(RuntimeAssetBase, AZ::SystemAllocator, 0);
|
||||
RuntimeAssetBase(const AZ::Data::AssetId& assetId = AZ::Data::AssetId(), AZ::Data::AssetData::AssetStatus status = AZ::Data::AssetData::AssetStatus::NotLoaded)
|
||||
: AZ::Data::AssetData(assetId, status)
|
||||
{
|
||||
|
||||
}
|
||||
};
|
||||
template <typename DataType>
|
||||
class RuntimeAssetTyped
|
||||
: public RuntimeAssetBase
|
||||
{
|
||||
public:
|
||||
AZ_RTTI(RuntimeAssetBase, "{C925213E-A1FA-4487-831F-9551A984700E}", RuntimeAssetBase);
|
||||
AZ_CLASS_ALLOCATOR(RuntimeAssetBase, AZ::SystemAllocator, 0);
|
||||
|
||||
RuntimeAssetTyped(const AZ::Data::AssetId& assetId = AZ::Data::AssetId(), AZ::Data::AssetData::AssetStatus status = AZ::Data::AssetData::AssetStatus::NotLoaded)
|
||||
: RuntimeAssetBase(assetId, status)
|
||||
{
|
||||
|
||||
}
|
||||
AZ_RTTI(RuntimeAsset, "{3E2AC8CD-713F-453E-967F-29517F331784}", AZ::Data::AssetData);
|
||||
|
||||
static const char* GetFileExtension() { return "scriptcanvas_compiled"; }
|
||||
static const char* GetFileFilter() { return "*.scriptcanvas_compiled"; }
|
||||
|
||||
const DataType& GetData() const { return m_runtimeData; }
|
||||
DataType& GetData() { return m_runtimeData; }
|
||||
void SetData(const DataType& runtimeData)
|
||||
{
|
||||
m_runtimeData = runtimeData;
|
||||
// When setting data instead of serializing, immediately mark the asset as ready.
|
||||
m_status = AZ::Data::AssetData::AssetStatus::Ready;
|
||||
}
|
||||
|
||||
DataType m_runtimeData;
|
||||
|
||||
protected:
|
||||
friend class RuntimeAssetHandler;
|
||||
RuntimeAssetTyped(const RuntimeAssetTyped&) = delete;
|
||||
|
||||
};
|
||||
|
||||
class RuntimeAsset : public RuntimeAssetTyped<RuntimeData>
|
||||
{
|
||||
public:
|
||||
|
||||
AZ_RTTI(RuntimeAsset, "{3E2AC8CD-713F-453E-967F-29517F331784}", RuntimeAssetTyped<RuntimeData>);
|
||||
RuntimeData m_runtimeData;
|
||||
|
||||
RuntimeAsset(const AZ::Data::AssetId& assetId = AZ::Data::AssetId(), AZ::Data::AssetData::AssetStatus status = AZ::Data::AssetData::AssetStatus::NotLoaded)
|
||||
: RuntimeAssetTyped<RuntimeData>(assetId, status)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
: AZ::Data::AssetData(assetId, status)
|
||||
{}
|
||||
};
|
||||
|
||||
class SubgraphInterfaceAsset;
|
||||
@@ -212,24 +167,19 @@ namespace ScriptCanvas
|
||||
};
|
||||
|
||||
class SubgraphInterfaceAsset
|
||||
: public RuntimeAssetTyped<SubgraphInterfaceData>
|
||||
: public AZ::Data::AssetData
|
||||
{
|
||||
public:
|
||||
AZ_RTTI(SubgraphInterfaceAsset, "{E22967AC-7673-4778-9125-AF49D82CAF9F}", RuntimeAssetTyped<SubgraphInterfaceData>);
|
||||
AZ_RTTI(SubgraphInterfaceAsset, "{E22967AC-7673-4778-9125-AF49D82CAF9F}", AZ::Data::AssetData);
|
||||
AZ_CLASS_ALLOCATOR(SubgraphInterfaceAsset, AZ::SystemAllocator, 0);
|
||||
|
||||
SubgraphInterfaceAsset(const AZ::Data::AssetId& assetId = AZ::Data::AssetId(), AZ::Data::AssetData::AssetStatus status = AZ::Data::AssetData::AssetStatus::NotLoaded)
|
||||
: RuntimeAssetTyped<SubgraphInterfaceData>(assetId, status)
|
||||
{}
|
||||
|
||||
void SetData(const SubgraphInterfaceData& runtimeData)
|
||||
{
|
||||
m_runtimeData = runtimeData;
|
||||
}
|
||||
|
||||
static const char* GetFileExtension() { return "scriptcanvas_fn_compiled"; }
|
||||
static const char* GetFileFilter() { return "*.scriptcanvas_fn_compiled"; }
|
||||
|
||||
friend class SubgraphInterfaceAssetHandler;
|
||||
SubgraphInterfaceData m_interfaceData;
|
||||
|
||||
SubgraphInterfaceAsset(const AZ::Data::AssetId& assetId = AZ::Data::AssetId(), AZ::Data::AssetData::AssetStatus status = AZ::Data::AssetData::AssetStatus::NotLoaded)
|
||||
: AZ::Data::AssetData(assetId, status)
|
||||
{}
|
||||
};
|
||||
}
|
||||
|
||||
@@ -81,7 +81,6 @@ namespace ScriptCanvas
|
||||
{
|
||||
(void)type;
|
||||
AZ_Assert(type == AZ::AzTypeInfo<RuntimeAsset>::Uuid(), "This handler deals only with the Script Canvas Runtime Asset type!");
|
||||
|
||||
return aznew RuntimeAsset(id);
|
||||
}
|
||||
|
||||
@@ -93,7 +92,7 @@ namespace ScriptCanvas
|
||||
{
|
||||
RuntimeAsset* runtimeAsset = asset.GetAs<RuntimeAsset>();
|
||||
AZ_Assert(runtimeAsset, "RuntimeAssetHandler::InitAsset This should be a Script Canvas runtime asset, as this is the only type this handler processes!");
|
||||
Execution::Context::InitializeActivationData(runtimeAsset->GetData());
|
||||
Execution::Context::InitializeActivationData(runtimeAsset->m_runtimeData);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -116,7 +115,10 @@ namespace ScriptCanvas
|
||||
AZ_Assert(runtimeAsset, "This should be a Script Canvas runtime asset, as this is the only type we process!");
|
||||
if (runtimeAsset && m_serializeContext)
|
||||
{
|
||||
AZ::ObjectStream* binaryObjStream = AZ::ObjectStream::Create(stream, *m_serializeContext, AZ::ObjectStream::ST_XML);
|
||||
AZ::ObjectStream* binaryObjStream = AZ::ObjectStream::Create(stream, *m_serializeContext
|
||||
, g_saveRuntimeAssetsAsPlainTextForDebug
|
||||
? AZ::ObjectStream::ST_XML
|
||||
: AZ::ObjectStream::ST_BINARY);
|
||||
bool graphSaved = binaryObjStream->WriteClass(&runtimeAsset->m_runtimeData);
|
||||
binaryObjStream->Finalize();
|
||||
return graphSaved;
|
||||
@@ -128,7 +130,7 @@ namespace ScriptCanvas
|
||||
void RuntimeAssetHandler::DestroyAsset(AZ::Data::AssetPtr ptr)
|
||||
{
|
||||
RuntimeAsset* runtimeAsset = azrtti_cast<RuntimeAsset*>(ptr);
|
||||
Execution::Context::UnloadData(runtimeAsset->GetData());
|
||||
Execution::Context::UnloadData(runtimeAsset->m_runtimeData);
|
||||
delete ptr;
|
||||
}
|
||||
|
||||
|
||||
@@ -93,7 +93,7 @@ namespace ScriptCanvas
|
||||
if (runtimeFunctionAsset && m_serializeContext)
|
||||
{
|
||||
stream->Seek(0U, AZ::IO::GenericStream::ST_SEEK_BEGIN);
|
||||
bool loadSuccess = AZ::Utils::LoadObjectFromStreamInPlace(*stream, runtimeFunctionAsset->m_runtimeData, m_serializeContext, AZ::ObjectStream::FilterDescriptor(assetLoadFilterCB));
|
||||
bool loadSuccess = AZ::Utils::LoadObjectFromStreamInPlace(*stream, runtimeFunctionAsset->m_interfaceData, m_serializeContext, AZ::ObjectStream::FilterDescriptor(assetLoadFilterCB));
|
||||
return loadSuccess ? AZ::Data::AssetHandler::LoadResult::LoadComplete : AZ::Data::AssetHandler::LoadResult::Error;
|
||||
}
|
||||
return AZ::Data::AssetHandler::LoadResult::Error;
|
||||
@@ -105,8 +105,11 @@ namespace ScriptCanvas
|
||||
AZ_Assert(runtimeFunctionAsset, "This should be a Script Canvas runtime asset, as this is the only type we process!");
|
||||
if (runtimeFunctionAsset && m_serializeContext)
|
||||
{
|
||||
AZ::ObjectStream* binaryObjStream = AZ::ObjectStream::Create(stream, *m_serializeContext, AZ::ObjectStream::ST_XML);
|
||||
bool graphSaved = binaryObjStream->WriteClass(&runtimeFunctionAsset->m_runtimeData);
|
||||
AZ::ObjectStream* binaryObjStream = AZ::ObjectStream::Create(stream, *m_serializeContext
|
||||
, ScriptCanvas::g_saveEditorAssetsAsPlainTextForDebug
|
||||
? AZ::ObjectStream::ST_XML
|
||||
: AZ::ObjectStream::ST_BINARY);
|
||||
bool graphSaved = binaryObjStream->WriteClass(&runtimeFunctionAsset->m_interfaceData);
|
||||
binaryObjStream->Finalize();
|
||||
return graphSaved;
|
||||
}
|
||||
|
||||
@@ -20,6 +20,12 @@
|
||||
|
||||
namespace ScriptCanvas
|
||||
{
|
||||
AZ_CVAR(bool, g_saveRuntimeAssetsAsPlainTextForDebug, false, {}, AZ::ConsoleFunctorFlags::Null
|
||||
, "Save runtime assets as plain text rather than binary for debug purposes.");
|
||||
|
||||
AZ_CVAR(bool, g_saveEditorAssetsAsPlainTextForDebug, false, {}, AZ::ConsoleFunctorFlags::Null
|
||||
, "Save editor assets as plain text rather than binary for debug purposes.");
|
||||
|
||||
ScopedAuxiliaryEntityHandler::ScopedAuxiliaryEntityHandler(AZ::Entity* buildEntity)
|
||||
: m_buildEntity(buildEntity)
|
||||
, m_wasAdded(false)
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
#include <AzCore/std/hash.h>
|
||||
#include <Core/NamedId.h>
|
||||
#include <ScriptCanvas/Grammar/PrimitivesDeclarations.h>
|
||||
#include <AzCore/Console/IConsole.h>
|
||||
|
||||
#define OBJECT_STREAM_EDITOR_ASSET_LOADING_SUPPORT_ENABLED
|
||||
|
||||
@@ -42,6 +43,9 @@ namespace AZ
|
||||
|
||||
namespace ScriptCanvas
|
||||
{
|
||||
AZ_CVAR_EXTERNED(bool, g_saveRuntimeAssetsAsPlainTextForDebug);
|
||||
AZ_CVAR_EXTERNED(bool, g_saveEditorAssetsAsPlainTextForDebug);
|
||||
|
||||
// A place holder identifier for the AZ::Entity that owns the graph.
|
||||
// The actual value in each location initialized to GraphOwnerId is populated with the owning entity at editor-time, Asset Processor-time, or runtime, as soon as the owning entity is known.
|
||||
using GraphOwnerIdType = AZ::EntityId;
|
||||
|
||||
@@ -41,7 +41,7 @@ namespace ScriptCanvas
|
||||
{
|
||||
ActivationData::ActivationData(const RuntimeDataOverrides& variableOverrides, ActivationInputArray& storage)
|
||||
: variableOverrides(variableOverrides)
|
||||
, runtimeData(variableOverrides.m_runtimeAsset->GetData())
|
||||
, runtimeData(variableOverrides.m_runtimeAsset->m_runtimeData)
|
||||
, storage(storage)
|
||||
{}
|
||||
|
||||
|
||||
@@ -22,7 +22,7 @@ namespace ScriptCanvas
|
||||
ExecutionStateConfig::ExecutionStateConfig(AZ::Data::Asset<RuntimeAsset> runtimeAsset, RuntimeComponent& component)
|
||||
: asset(runtimeAsset)
|
||||
, component(component)
|
||||
, runtimeData(runtimeAsset.Get()->GetData())
|
||||
, runtimeData(runtimeAsset.Get()->m_runtimeData)
|
||||
{}
|
||||
|
||||
ExecutionState::ExecutionState(const ExecutionStateConfig& config)
|
||||
|
||||
+2
-2
@@ -509,9 +509,9 @@ namespace ScriptCanvas
|
||||
|
||||
for (auto& dependency : runtimeData.m_requiredAssets)
|
||||
{
|
||||
if (!dependency.Get()->GetData().m_areStaticsInitialized)
|
||||
if (!dependency.Get()->m_runtimeData.m_areStaticsInitialized)
|
||||
{
|
||||
InitializeInterpretedStatics(dependency.Get()->GetData());
|
||||
InitializeInterpretedStatics(dependency.Get()->m_runtimeData);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+10
-10
@@ -49,9 +49,9 @@ namespace ScriptCanvas
|
||||
, config.asset.GetId().ToString<AZStd::string>().data());
|
||||
#endif
|
||||
|
||||
if (!runtimeAsset->GetData().m_areStaticsInitialized)
|
||||
if (!runtimeAsset->m_runtimeData.m_areStaticsInitialized)
|
||||
{
|
||||
Execution::InitializeInterpretedStatics(runtimeAsset->GetData());
|
||||
Execution::InitializeInterpretedStatics(runtimeAsset->m_runtimeData);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -70,8 +70,8 @@ namespace ScriptCanvas
|
||||
const Grammar::DebugExecution* ExecutionStateInterpreted::GetDebugSymbolIn(size_t index, const AZ::Data::AssetId& id) const
|
||||
{
|
||||
auto asset = ExecutionStateInterpretedCpp::GetSubgraphAssetForDebug(id);
|
||||
return asset && asset.Get() && index < asset.Get()->GetData().m_debugMap.m_ins.size()
|
||||
? &(asset.Get()->GetData().m_debugMap.m_ins[index])
|
||||
return asset && asset.Get() && index < asset.Get()->m_runtimeData.m_debugMap.m_ins.size()
|
||||
? &(asset.Get()->m_runtimeData.m_debugMap.m_ins[index])
|
||||
: nullptr;
|
||||
}
|
||||
|
||||
@@ -85,8 +85,8 @@ namespace ScriptCanvas
|
||||
const Grammar::DebugExecution* ExecutionStateInterpreted::GetDebugSymbolOut(size_t index, const AZ::Data::AssetId& id) const
|
||||
{
|
||||
auto asset = ExecutionStateInterpretedCpp::GetSubgraphAssetForDebug(id);
|
||||
return asset && asset.Get() && index < asset.Get()->GetData().m_debugMap.m_outs.size()
|
||||
? &(asset.Get()->GetData().m_debugMap.m_outs[index])
|
||||
return asset && asset.Get() && index < asset.Get()->m_runtimeData.m_debugMap.m_outs.size()
|
||||
? &(asset.Get()->m_runtimeData.m_debugMap.m_outs[index])
|
||||
: nullptr;
|
||||
}
|
||||
|
||||
@@ -100,8 +100,8 @@ namespace ScriptCanvas
|
||||
const Grammar::DebugExecution* ExecutionStateInterpreted::GetDebugSymbolReturn(size_t index, const AZ::Data::AssetId& id) const
|
||||
{
|
||||
auto asset = ExecutionStateInterpretedCpp::GetSubgraphAssetForDebug(id);
|
||||
return asset && asset.Get() && index < asset.Get()->GetData().m_debugMap.m_returns.size()
|
||||
? &(asset.Get()->GetData().m_debugMap.m_returns[index])
|
||||
return asset && asset.Get() && index < asset.Get()->m_runtimeData.m_debugMap.m_returns.size()
|
||||
? &(asset.Get()->m_runtimeData.m_debugMap.m_returns[index])
|
||||
: nullptr;
|
||||
}
|
||||
|
||||
@@ -115,8 +115,8 @@ namespace ScriptCanvas
|
||||
const Grammar::DebugDataSource* ExecutionStateInterpreted::GetDebugSymbolVariableChange(size_t index, const AZ::Data::AssetId& id) const
|
||||
{
|
||||
auto asset = ExecutionStateInterpretedCpp::GetSubgraphAssetForDebug(id);
|
||||
return asset && asset.Get() && index < asset.Get()->GetData().m_debugMap.m_variables.size()
|
||||
? &(asset.Get()->GetData().m_debugMap.m_variables[index])
|
||||
return asset && asset.Get() && index < asset.Get()->m_runtimeData.m_debugMap.m_variables.size()
|
||||
? &(asset.Get()->m_runtimeData.m_debugMap.m_variables[index])
|
||||
: nullptr;
|
||||
}
|
||||
|
||||
|
||||
@@ -71,7 +71,7 @@ namespace ScriptCanvas
|
||||
|
||||
const RuntimeData& RuntimeComponent::GetRuntimeAssetData() const
|
||||
{
|
||||
return m_runtimeOverrides.m_runtimeAsset->GetData();
|
||||
return m_runtimeOverrides.m_runtimeAsset->m_runtimeData;
|
||||
}
|
||||
|
||||
ExecutionMode RuntimeComponent::GetExecutionMode() const
|
||||
|
||||
@@ -261,11 +261,11 @@ namespace ScriptCanvas
|
||||
, const ScriptCanvas::Grammar::FunctionSourceId& sourceId
|
||||
, const SlotExecution::Map& previousMap)
|
||||
{
|
||||
const Grammar::SubgraphInterface& subgraphInterface = runtimeAsset.Get()->m_runtimeData.m_interface;
|
||||
const Grammar::SubgraphInterface& subgraphInterface = runtimeAsset.Get()->m_interfaceData.m_interface;
|
||||
|
||||
if (subgraphInterface.IsUserNodeable() && Grammar::IsFunctionSourceIdNodeable(sourceId) && subgraphInterface.HasIn(sourceId))
|
||||
{
|
||||
m_prettyName = runtimeAsset.Get()->m_runtimeData.m_name;
|
||||
m_prettyName = runtimeAsset.Get()->m_interfaceData.m_name;
|
||||
BuildUserNodeableNode(subgraphInterface, previousMap);
|
||||
}
|
||||
else if ((!Grammar::IsFunctionSourceIdNodeable(sourceId)) && subgraphInterface.HasIn(sourceId))
|
||||
@@ -477,7 +477,7 @@ namespace ScriptCanvas
|
||||
return true;
|
||||
}
|
||||
|
||||
const Grammar::SubgraphInterface* latestAssetInterface = asset ? &asset.Get()->GetData().m_interface : nullptr;
|
||||
const Grammar::SubgraphInterface* latestAssetInterface = asset ? &asset.Get()->m_interfaceData.m_interface : nullptr;
|
||||
if (!latestAssetInterface)
|
||||
{
|
||||
AZ_Warning("ScriptCanvas", false, "FunctionCallNode %s failed to load latest interface from the source asset.", m_prettyName.data());
|
||||
@@ -517,7 +517,7 @@ namespace ScriptCanvas
|
||||
DataSlotMap dataSlotMap;
|
||||
if (m_slotExecutionMap.IsEmpty())
|
||||
{
|
||||
const Grammar::SubgraphInterface& subgraphInterface = assetData.Get()->m_runtimeData.m_interface;
|
||||
const Grammar::SubgraphInterface& subgraphInterface = assetData.Get()->m_interfaceData.m_interface;
|
||||
RemoveInsFromInterface(subgraphInterface.GetIns(), executionSlotMap, dataSlotMap, k_DoNotRemoveConnections, k_DoNotWarnOnMissingDataSlots);
|
||||
RemoveOutsFromInterface(subgraphInterface.GetLatentOuts(), executionSlotMap, dataSlotMap, k_DoNotRemoveConnections, k_DoNotWarnOnMissingDataSlots);
|
||||
}
|
||||
@@ -806,7 +806,7 @@ namespace ScriptCanvas
|
||||
return;
|
||||
}
|
||||
|
||||
m_prettyName = assetData.Get()->m_runtimeData.m_name;
|
||||
m_prettyName = assetData.Get()->m_interfaceData.m_name;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -153,11 +153,10 @@ TEST_F(ScriptCanvasBuilderTests, ScriptCanvasWithAssetReference_GatherProductDep
|
||||
graphEntity->AddComponent(assetComponent);
|
||||
|
||||
ScriptCanvas::RuntimeData runtimeData;
|
||||
//runtimeData.m_graphData.m_nodes.emplace(graphEntity);
|
||||
|
||||
|
||||
AZ::Data::Asset<ScriptCanvas::RuntimeAsset> runtimeAsset;
|
||||
runtimeAsset.Create(AZ::Uuid::CreateRandom());
|
||||
runtimeAsset.Get()->SetData(runtimeData);
|
||||
runtimeAsset.Get()->m_runtimeData = runtimeData;
|
||||
|
||||
AZStd::vector<AssetBuilderSDK::ProductDependency> productDependencies;
|
||||
AssetBuilderSDK::ProductPathDependencySet productPathDependencySet;
|
||||
|
||||
Reference in New Issue
Block a user