Vixen
02b45cc4
csharp
public sealed class AppConfig

Everything the host decides before the first frame.

Read the guide page for this →

Remarks

Handed to OnConfigure already filled in with the defaults and with any command-line overrides applied, so a game changes what it cares about and leaves the rest. Mutable and then frozen: after OnConfigure returns, the host reads it and nothing writes to it again.

Fields and properties (22)

  • public string Name

    The name used for the window, the log category and the data directories.

  • public string Organisation

    The publisher name used to place /data and /cache.

  • public BuildVariant Variant

    Which build this is.

  • public WindowOptions? Window

    The window to open, or for a head with no window at all.

  • public bool Headless

    Whether to run without a display server even where one exists.

  • public int? WorkerCount

    How many job-system workers to start, or null for one per available processor less the main thread.

  • public int FrameRateLimit

    Frames per second to aim for, or 0 for as fast as the machine will go.

  • public int UnfocusedFrameRateLimit

    Frames per second to aim for while no window has focus, or 0 to keep running at FrameRateLimit.

  • public bool ExitWhenAllWindowsClose

    Whether closing the last window ends the application.

  • public int MaxFrames

    How many frames to run before stopping, or 0 to run until asked to stop.

  • public LogLevel LogLevel

    The lowest level the log ring keeps.

  • public bool LogToConsole

    Whether the host also writes the log to the terminal.

  • public string? LogFileDirectory

    Where rolling JSON-line log files are written, or for none.

  • public string? LooseContentPath

    A directory of loose content to read instead of bundles, from --vixen-loose-content.

  • public string? StartupScene

    The address of the scene the host loads before OnInitialise, or for none.

  • public bool UseEngine

    Whether the host builds a world, its systems and its fixed-step accumulator.

  • public GraphicsOptions Graphics

    What the host draws the world with.

  • public TimeSpan? FixedStep

    How much simulated time one fixed step covers, or for sixty a second.

  • public string? VideoDriver

    Which SDL video driver to insist on, or to let it choose.

  • public IReadOnlyList<string> Arguments

    The arguments the host did not consume.

  • public IReadOnlyList<string> UnrecognisedArguments

    --vixen-* arguments the host did not recognise.

  • public string? HeadlessFallbackReason

    Why the host fell back to the headless platform, or if it did not.

Methods (1)

  • public void Apply(AppArguments arguments)

    Applies the command line over the defaults.

Used by (29)

  • PbrShowcaseGamePbrShowcase
  • ThirdPersonShooterGameThirdPersonShooter
  • TriangleGameHelloTriangle
  • VideoGameVideoPlayback
  • VirtualGeometryGameVirtualGeometry
  • AppBuilderVixen.App.Hosting
  • AppServicesVixen.App.Hosting
  • GameVixen.App.Hosting
  • IPlatformFactoryVixen.App.Hosting
  • VixenApplicationVixen.App.Hosting
  • AppBackendTestsVixen.App.Tests
  • BuildVariantTestsVixen.App.Tests
  • ChoosingGameVixen.App.Tests
  • EarlyServiceGameVixen.App.Tests
  • FactoryVixen.App
  • HeadlessVixen.App.Tests
  • NoEngineGameVixen.App.Tests
  • NoEngineGameVixen.App.Tests
  • NoGraphicsGameVixen.App.Tests
  • NoWindowGameVixen.App.Tests
  • PlatformHostVixen.App
  • RecordingGameVixen.App.Tests
  • SilentVixen.App.Tests
  • SilentGameVixen.App.Tests
  • SilentGameVixen.App.Tests
  • SlowStepGameVixen.App.Tests
  • StartupSceneTestsVixen.App.Tests
  • WindowedGameVixen.App.Tests
  • RealmVixen.Live.Realm