~/talk

From Hell tp Heaven: Porting Doom to MAUI

Talkat DevConf 2023 · 2023-11-08..11-10· [dotnet, game-development]
slides:none on file

Porting the C# Doom WPF port to .NET MAUI uses MAUI + .NET, a SkiaSharp SKBitmap replacement for the missing WritableBitmap, and embedding the WAD files into the app package instead of loading arbitrary files. Major hurdles: no built‑in index‑8 pallet support (solved with managed conversion then sped up by an unsafe C# block), platform differences in color ordering, and MAUI swallowing Windows key events (fixed by adding a Windows-only keyboard behavior that traverses the visual tree). Outcome: a playable cross‑platform Doom with some duplicated platform-specific wiring.

AI-written summary · about

  1. 0:00Introduction and setup
  2. 3:22What is MAUI
  3. 7:01Starting the MAUI port
  4. 15:31Replacing WPF components
  5. 24:21First MAUI build attempt
  6. 32:10Performance fixes and platform quirks
  7. 34:20Extending MAUI controls
  8. 39:25Hardware keyboard support
  9. 45:18Summary and Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.