feat(asset): asset manager + registration generator
Add runtime AssetManager and AssetHandlerRegistrationGenerator source generator. Update editor asset handler types and services to work with new registration mechanism and asset catalog. Remove legacy contracts ICloneable and IReleasable. Files added: - src/Runtime/Ghost.Engine/AssetManager.cs - src/Runtime/Ghost.Generator/AssetHandlerRegistrationGenerator.cs Major edits: - Editor asset handler classes and services (Asset*, Texture*, Registry) - Runtime Handle.cs and project files - Render graph executor and tests updated accordingly This commit introduces the foundation for the modern asset pipeline including generated registration of asset handlers and a centralized runtime AssetManager that will drive asset lifecycle.
This commit is contained in:
@@ -72,6 +72,7 @@ public partial class App : Application
|
||||
|
||||
services.AddTransient<ProjectBrowserViewModel>();
|
||||
|
||||
// TODO: Use source generators to generate this code at compile time instead of using reflection at runtime.
|
||||
foreach (var type in TypeCache.GetTypes())
|
||||
{
|
||||
var data = type.GetCustomAttributesData().FirstOrDefault(a => a.AttributeType == typeof(EditorInjectionAttribute));
|
||||
|
||||
@@ -39,7 +39,7 @@
|
||||
<PackageReference Include="CommunityToolkit.WinUI.Controls.Primitives" Version="8.2.251219" />
|
||||
<PackageReference Include="CommunityToolkit.WinUI.Controls.Sizers" Version="8.2.251219" />
|
||||
<PackageReference Include="CommunityToolkit.WinUI.Controls.TabbedCommandBar" Version="8.2.251219" />
|
||||
<PackageReference Include="Microsoft.Extensions.Hosting" Version="10.0.5" />
|
||||
<PackageReference Include="Microsoft.Extensions.Hosting" Version="10.0.6" />
|
||||
<PackageReference Include="Microsoft.Windows.CsWinRT" Version="2.2.0" />
|
||||
<PackageReference Include="Microsoft.Windows.SDK.BuildTools" Version="10.0.28000.1721" />
|
||||
<PackageReference Include="Microsoft.WindowsAppSDK" Version="1.8.260317003" />
|
||||
|
||||
Reference in New Issue
Block a user