feat(render): implement Campaign AR and terrain fidelity
This commit is contained in:
parent
99cf26e00c
commit
7a5f96ede5
368 changed files with 50611 additions and 950 deletions
|
|
@ -92,7 +92,10 @@ internal sealed record InteractionRetainedUiDependencies(
|
|||
// needed. gmMapUI::Update @0x004a1eb0 reads GameTime::current_game_time
|
||||
// every 5s — MapPageController owns that cadence, this just supplies the
|
||||
// current reading.
|
||||
Func<AcDream.Core.World.DerethDateTime.Calendar> CurrentCalendar)
|
||||
Func<AcDream.Core.World.DerethDateTime.Calendar> CurrentCalendar,
|
||||
AcDream.App.Rendering.Packs.RenderPackCatalogSource? RenderPackCatalog = null,
|
||||
Func<AcDream.App.Rendering.Packs.RenderPackDiagnosticsSnapshot>?
|
||||
RenderPackDiagnostics = null)
|
||||
{
|
||||
public RuntimeActionState Actions => Runtime.ActionOwner;
|
||||
|
||||
|
|
@ -643,7 +646,8 @@ internal sealed class RetailInteractionRetainedUiCompositionFactory
|
|||
screenshots = new FrameScreenshotController(
|
||||
d.BackbufferReader,
|
||||
Path.Combine(artifactDirectory, "screenshots"),
|
||||
ProbeLog);
|
||||
ProbeLog,
|
||||
d.RenderPackDiagnostics);
|
||||
}
|
||||
checkpoint(InteractionRetainedUiCompositionPoint.UiProbeCreated);
|
||||
|
||||
|
|
@ -949,7 +953,53 @@ internal sealed class RetailInteractionRetainedUiCompositionFactory
|
|||
LoadDisplay: () => d.Settings.Display,
|
||||
SaveDisplay: d.Settings.SaveDisplay,
|
||||
LoadAudio: () => d.Settings.Audio,
|
||||
SaveAudio: d.Settings.SaveAudio),
|
||||
SaveAudio: d.Settings.SaveAudio,
|
||||
LoadRenderPackChoices: d.RenderPackCatalog is null
|
||||
? null
|
||||
: () => d.RenderPackCatalog.Snapshot().Entries
|
||||
.Select(entry =>
|
||||
new ConfigOptionsPageController.RenderPackChoice(
|
||||
entry.Descriptor.Id,
|
||||
entry.Descriptor.DisplayName,
|
||||
entry.Descriptor.PackVersion.ToString(),
|
||||
entry.IsCompatible,
|
||||
entry.IncompatibilityReason,
|
||||
entry.Descriptor.QualityPresets
|
||||
.Select(preset =>
|
||||
{
|
||||
entry.PresetIncompatibilityReasons.TryGetValue(
|
||||
preset.Id,
|
||||
out string? reason);
|
||||
return new ConfigOptionsPageController.RenderPackPresetChoice(
|
||||
preset.Id,
|
||||
preset.DisplayName,
|
||||
entry.IsCompatible && reason is null,
|
||||
reason ?? entry.IncompatibilityReason)
|
||||
{
|
||||
SettingOverrides = preset.SettingOverrides,
|
||||
MaxResidentGpuBytes = preset.MaxResidentGpuBytes,
|
||||
MaxIncrementalGpuMillisecondsP50 =
|
||||
preset.MaxIncrementalGpuMillisecondsP50,
|
||||
MaxIncrementalGpuMillisecondsP99 =
|
||||
preset.MaxIncrementalGpuMillisecondsP99,
|
||||
MaxIncrementalCpuMillisecondsP50 =
|
||||
preset.MaxIncrementalCpuMillisecondsP50,
|
||||
MaxIncrementalCpuMillisecondsP99 =
|
||||
preset.MaxIncrementalCpuMillisecondsP99,
|
||||
};
|
||||
})
|
||||
.ToArray())
|
||||
{
|
||||
FeatureSummary = entry.Descriptor.FeatureSummary,
|
||||
Settings = entry.Descriptor.Settings,
|
||||
})
|
||||
.ToArray(),
|
||||
LoadRenderPackCatalogRevision: d.RenderPackCatalog is null
|
||||
? null
|
||||
: () => d.RenderPackCatalog.Revision,
|
||||
LoadRenderPackFailureNotice: d.RenderPackDiagnostics is null
|
||||
? null
|
||||
: () => d.RenderPackDiagnostics().FailureReason),
|
||||
// Campaign FA slice FA3: the social panel's own bindings —
|
||||
// FA2's typed Fellowship/Allegiance snapshot readers off the
|
||||
// GameRuntime views, plus J4.1's Friends/Squelch owners
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue