From 5d73943e584b1c0c0753dda85fbda34d27726986 Mon Sep 17 00:00:00 2001 From: "Somhairle H. Marisol" Date: Mon, 21 Sep 2026 23:47:42 +0800 Subject: feat(ship): HNX-02 Copernicus rework — continuous hull, few-large-element scale, Draco pipeline, side-on framing MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/SomhairlesDream.Server/Program.fs | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'src/SomhairlesDream.Server') diff --git a/src/SomhairlesDream.Server/Program.fs b/src/SomhairlesDream.Server/Program.fs index 53cfef6..b2ea8a8 100644 --- a/src/SomhairlesDream.Server/Program.fs +++ b/src/SomhairlesDream.Server/Program.fs @@ -6,6 +6,7 @@ open System.Threading.Tasks open Microsoft.AspNetCore.Builder open Microsoft.AspNetCore.Hosting open Microsoft.AspNetCore.Http +open Microsoft.AspNetCore.StaticFiles open Microsoft.Extensions.FileProviders open Microsoft.Extensions.Hosting open SomhairlesDream.Server @@ -57,7 +58,17 @@ let events (context: HttpContext) : Task = } :> Task) app.UseDefaultFiles() |> ignore -app.UseStaticFiles() |> ignore + +// Serve geometry and decoder binaries with correct MIME types: ASP.NET's +// default map has no entry for .glb/.wasm, so those requests would 404. +let staticFileOptions = + let provider = FileExtensionContentTypeProvider() + provider.Mappings.[".glb"] <- "model/gltf-binary" + provider.Mappings.[".gltf"] <- "model/gltf+json" + provider.Mappings.[".wasm"] <- "application/wasm" + StaticFileOptions(ContentTypeProvider = provider) + +app.UseStaticFiles(staticFileOptions) |> ignore app.MapGet("/health", Func(fun () -> Results.Ok({| status = "ok" |}))) |> ignore -- cgit v1.2.3