feat(render): implement Campaign AR and terrain fidelity

This commit is contained in:
Erik 2026-08-22 13:13:29 +02:00
parent 99cf26e00c
commit 7a5f96ede5
368 changed files with 50611 additions and 950 deletions

View file

@ -1,8 +1,9 @@
using AcDream.Plugin.Abstractions;
using AcDream.Plugin.Abstractions.Rendering;
namespace AcDream.Core.Tests.Fixtures.HelloPlugin;
public sealed class HelloPlugin : IAcDreamPlugin
public sealed class HelloPlugin : IAcDreamPlugin, IRenderPackPlugin, IRenderPackAssets
{
public int InitializeCount { get; private set; }
public int EnableCount { get; private set; }
@ -17,4 +18,39 @@ public sealed class HelloPlugin : IAcDreamPlugin
public void Enable() => EnableCount++;
public void Disable() => DisableCount++;
public void Register(IRenderPackRegistry registry)
{
ArgumentNullException.ThrowIfNull(registry);
_ = registry.Register(
new RenderPackDescriptor(
Id: "acdream.test.noop-pack",
DisplayName: "Test no-op pack",
PackVersion: new Version(1, 0, 0),
PackApiVersion: RenderPackApi.Current,
HighestTier: RenderPackTier.Tier1,
RequiredCapabilities: [],
OptionalCapabilities: [],
Resources: [],
Passes: [],
SceneReplays: [],
PipelineVariants: [],
QualityPresets: [],
Settings: [],
AtmospherePolicy: null)
{
FeatureSummary = "Test-only no-op render-pack fixture.",
},
this);
string? directory = Path.GetDirectoryName(typeof(HelloPlugin).Assembly.Location);
if (directory is not null
&& File.Exists(Path.Combine(directory, "throw-after-render-register")))
{
throw new InvalidOperationException(
"fixture render-pack registration failed after publishing a descriptor");
}
}
public Stream OpenRead(string assetKey) =>
new MemoryStream([], writable: false);
}