From f8817e2e753bc71d083ed67d6e8149ea67ca3819 Mon Sep 17 00:00:00 2001 From: Ralph Kuepper Date: Sun, 21 Jun 2026 15:12:21 +0200 Subject: [PATCH] feat(windows): embed Bloom in a host window via bloom_attach_hwnd (Perry UI BloomView, #2395) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Lets Bloom render into a host-provided child window instead of always creating its own top-level window — the engine side of the Perry UI `BloomView` widget (PerryTS/perry#5518), analogous to Flame inside Flutter. - native/windows/src/lib.rs: factor the wgpu surface + engine init out of bloom_init_window into init_engine_for_hwnd, shared with a new FFI bloom_attach_hwnd(hwnd, w, h). It builds the surface on the host HWND and classic-subclasses it (WM_SIZE/keyboard/mouse → engine). Add bloom_resize, an EMBEDDED flag (begin_drawing skips its own message pump; should_close reports "stay open" since the host owns the loop). - src/core/index.ts: attachToHwnd / resize TS wrappers (+ src/index.ts export). - package.json: declare bloom_attach_hwnd / bloom_resize in the native-library function manifest. - embed-perry/: a demo Perry UI app embedding a live Bloom 3D scene (requires the BloomView Perry build from PerryTS/perry#5518 to compile/run). Windows only for now; per-platform attach (NSView/UIView/dmabuf) is a follow-up. --- embed-perry/.gitignore | 4 + embed-perry/README.md | 49 ++++++++++++ embed-perry/bloomFull.png | Bin 0 -> 150814 bytes embed-perry/build-windows.sh | 26 ++++++ embed-perry/package.json | 14 ++++ embed-perry/src/main.ts | 85 ++++++++++++++++++++ native/windows/src/lib.rs | 149 ++++++++++++++++++++++++++++++++--- package.json | 19 +++++ src/core/index.ts | 20 +++++ src/index.ts | 2 +- 10 files changed, 357 insertions(+), 11 deletions(-) create mode 100644 embed-perry/.gitignore create mode 100644 embed-perry/README.md create mode 100644 embed-perry/bloomFull.png create mode 100644 embed-perry/build-windows.sh create mode 100644 embed-perry/package.json create mode 100644 embed-perry/src/main.ts diff --git a/embed-perry/.gitignore b/embed-perry/.gitignore new file mode 100644 index 0000000..5fe4327 --- /dev/null +++ b/embed-perry/.gitignore @@ -0,0 +1,4 @@ +node_modules/ +*.exe +*.o +dist/ diff --git a/embed-perry/README.md b/embed-perry/README.md new file mode 100644 index 0000000..b62a53b --- /dev/null +++ b/embed-perry/README.md @@ -0,0 +1,49 @@ +# Bloom × Perry UI — embedded render view (issue #2395) + +A normal Perry UI app that embeds the Bloom game engine as a live render view +(`BloomView`), the way the issue asks for — "a BloomView that renders a Bloom +scene directly inside a Perry UI app", similar to Flame inside Flutter. + +![screenshot](bloomFull.png) + +## How it works + +`BloomView(width, height)` is a Perry UI widget that reserves a native child +window in the view tree. Perry UI does **not** link or know about Bloom — it +only owns the window and exposes its handle: + +```ts +import { App, VStack, Text, BloomView, bloomViewGetHwnd } from 'perry/ui'; +import { attachToHwnd, beginDrawing, endDrawing, clearBackground, /* … */ } from 'bloom'; + +const view = BloomView(820, 480); + +let attached = 0; +setInterval(() => { + if (!attached) { attachToHwnd(bloomViewGetHwnd(view), 820, 480); attached = 1; } + beginDrawing(); + clearBackground({ r: 18, g: 22, b: 34, a: 255 }); + // …draw a 3D scene… + endDrawing(); +}, 16); + +App({ title: "Perry UI × Bloom", width: 880, height: 600, + body: VStack(10, [Text("…"), view]) }); +``` + +User TypeScript hands the `BloomView`'s HWND to Bloom via `attachToHwnd`. Bloom +builds its wgpu (DX12/Vulkan) surface on that window, subclasses it for +resize/input, and renders into it. The host (Perry UI) owns the message loop, so +the app drives Bloom's frame loop itself (`beginDrawing` → draw → `endDrawing`) +from a `setInterval` tick — `runGame` is not used (it would block). + +This keeps `perry-ui-windows` free of any Bloom dependency: apps that never call +`BloomView` pull in nothing extra. + +## Build & run (Windows) + +```bash +PERRY=/path/to/perry-with-bloomview/perry.exe ./build-windows.sh --run +``` + +Currently implemented on the Windows target. diff --git a/embed-perry/bloomFull.png b/embed-perry/bloomFull.png new file mode 100644 index 0000000000000000000000000000000000000000..6acd26c7488e6b32b4d9effea4622574601e5de3 GIT binary patch literal 150814 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
`Q+&6>~i5nP68D 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 z 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

3EWy;(M`W7*=6$>b?iOnZ< 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 F{{yU>V4DB{ literal 0 HcmV?d00001 diff --git a/embed-perry/build-windows.sh b/embed-perry/build-windows.sh new file mode 100644 index 0000000..e884b79 --- /dev/null +++ b/embed-perry/build-windows.sh @@ -0,0 +1,26 @@ +#!/bin/bash +# Build the "Bloom inside Perry UI" demo for Windows (issue #2395). +# +# Requires a Perry build that includes the `BloomView` widget (perry-ui-windows +# + the BloomView dispatch/manifest wiring). Point $PERRY at it, or have a +# matching `perry` on PATH. +set -e + +PERRY="${PERRY:-perry}" + +"$PERRY" compile --target windows src/main.ts -o BloomEmbed +mv -f BloomEmbed BloomEmbed.exe 2>/dev/null || true + +# Cranelift doesn't emit __chkstk stack probes, so large functions can skip the +# guard page and crash. Pre-commit a 1MB stack (same fix the Bloom games use). +EDITBIN="/c/Program Files (x86)/Microsoft Visual Studio/18/BuildTools/VC/Tools/MSVC/14.50.35717/bin/Hostx64/x64/editbin.exe" +if [ -f "$EDITBIN" ]; then + "$EDITBIN" /STACK:67108864,1048576 BloomEmbed.exe +else + echo "Warning: editbin not found; skipping stack fix. App may crash on launch." +fi + +echo "Built BloomEmbed.exe" +if [ "$1" = "--run" ]; then + cmd //c "$(cygpath -w "$(pwd)/BloomEmbed.exe")" +fi diff --git a/embed-perry/package.json b/embed-perry/package.json new file mode 100644 index 0000000..716700d --- /dev/null +++ b/embed-perry/package.json @@ -0,0 +1,14 @@ +{ + "name": "bloom-embed-perry", + "version": "1.0.0", + "description": "Demo: the Bloom engine rendering inside a normal Perry UI app (issue #2395)", + "main": "src/main.ts", + "dependencies": { + "bloom": "file:../engine/" + }, + "perry": { + "allow": { + "nativeLibrary": ["bloom"] + } + } +} diff --git a/embed-perry/src/main.ts b/embed-perry/src/main.ts new file mode 100644 index 0000000..149e6cc --- /dev/null +++ b/embed-perry/src/main.ts @@ -0,0 +1,85 @@ +// Bloom engine embedded inside a normal Perry UI app — issue #2395. +// +// The window chrome (title label, vertical stack) is plain Perry UI. The large +// viewport is a `BloomView`: Perry UI reserves a native child window and hands +// its HWND to the Bloom engine via `attachToHwnd`. From then on Bloom owns that +// surface and we drive a 3D scene every tick, while the surrounding Perry UI +// stays fully interactive. + +import { App, VStack, Text, BloomView, bloomViewGetHwnd } from 'perry/ui'; +import { + attachToHwnd, + beginDrawing, endDrawing, clearBackground, + beginMode3D, endMode3D, + drawCube, drawSphere, + setAmbientLight, setDirectionalLight, + getTime, vec3, +} from 'bloom'; + +const VIEW_W = 820; +const VIEW_H = 480; + +// Perry UI reserves the child window; Bloom renders into it. +const view = BloomView(VIEW_W, VIEW_H); + +// Drive Bloom's frame loop from the Perry UI run loop. We attach lazily on the +// first tick: by then App() has shown the window and laid the BloomView child +// out at its final size and parent, so Bloom builds its surface on a stable, +// visible window. +let attached = 0; +setInterval(() => { + if (attached === 0) { + attachToHwnd(bloomViewGetHwnd(view), VIEW_W, VIEW_H); + setAmbientLight({ r: 120, g: 140, b: 180, a: 255 }, 0.40); + setDirectionalLight(vec3(0.6, 0.9, 0.4), { r: 255, g: 235, b: 205, a: 255 }, 0.85); + attached = 1; + } + + const t = getTime(); + const cx = Math.cos(t * 0.6) * 9.0; + const cz = Math.sin(t * 0.6) * 9.0; + + beginDrawing(); + clearBackground({ r: 18, g: 22, b: 34, a: 255 }); + + beginMode3D({ + position: vec3(cx, 6.0, cz), + target: vec3(0, 0.5, 0), + up: vec3(0, 1, 0), + fovy: 45.0, + projection: 0.0, + }); + + // Ground plane. + drawCube(vec3(0, -0.6, 0), 40.0, 0.4, 40.0, { r: 40, g: 50, b: 70, a: 255 }); + + // A spinning ring of cubes around a glowing core. + const N = 8; + for (let i = 0; i < N; i++) { + const a = (i / N) * Math.PI * 2.0 + t; + const x = Math.cos(a) * 4.0; + const z = Math.sin(a) * 4.0; + const h = 1.2 + Math.sin(t * 2.0 + i) * 0.6; + drawCube( + vec3(x, h * 0.5, z), + 0.9, h, 0.9, + { r: 120 + i * 14, g: 200 - i * 10, b: 240, a: 255 }, + ); + } + + drawSphere(vec3(0, 1.4, 0), 1.1, { r: 255, g: 210, b: 120, a: 255 }); + drawSphere(vec3(0, 1.4, 0), 1.6, { r: 255, g: 180, b: 90, a: 60 }); + + endMode3D(); + endDrawing(); +}, 16); + +App({ + title: "Perry UI × Bloom", + width: 880, + height: 600, + body: VStack(10, [ + Text("🌸 Bloom engine rendering inside a Perry UI app — issue #2395"), + view, + ]), +}); diff --git a/native/windows/src/lib.rs b/native/windows/src/lib.rs index 6e7d8b9..eceb9fa 100644 --- a/native/windows/src/lib.rs +++ b/native/windows/src/lib.rs @@ -7,6 +7,13 @@ use std::sync::OnceLock; static mut ENGINE: OnceLock = OnceLock::new(); +/// True when the engine renders into a host-provided child window (a Perry UI +/// `BloomView`) rather than a Bloom-owned top-level window. In embedded mode +/// the host owns the Win32 message loop, so `bloom_begin_drawing` must not pump +/// messages itself and `bloom_window_should_close` always reports "stay open". +#[cfg(windows)] +static mut EMBEDDED: bool = false; + fn engine() -> &'static mut EngineState { unsafe { ENGINE.get_mut().expect("Engine not initialized") } } @@ -298,6 +305,68 @@ mod win32 { } } } + + // ---- Embedded mode (Perry UI BloomView host window) ---- + // + // When Bloom renders into a Perry UI child window, that window already has + // Perry's own WNDPROC. We classic-subclass it so Bloom sees the WM_SIZE / + // keyboard / mouse it needs (its own `wndproc` above never runs for a + // foreign-class window), then chain to the original proc. The host's + // message loop dispatches these — Bloom never pumps in embedded mode. + static mut EMBED_ORIG_WNDPROC: isize = 0; + + unsafe extern "system" fn embedded_wndproc( + hwnd: HWND, + msg: u32, + wparam: WPARAM, + lparam: LPARAM, + ) -> LRESULT { + match msg { + 0x0005 /* WM_SIZE */ => { + let phys_w = (lparam.0 & 0xFFFF) as u32; + let phys_h = ((lparam.0 >> 16) & 0xFFFF) as u32; + if phys_w > 0 && phys_h > 0 { + if let Some(eng) = ENGINE.get_mut() { + if phys_w != eng.renderer.physical_width() + || phys_h != eng.renderer.physical_height() + { + let scale = dpi_scale(hwnd); + let log_w = ((phys_w as f64) / scale).round() as u32; + let log_h = ((phys_h as f64) / scale).round() as u32; + eng.renderer.resize(phys_w, phys_h, log_w, log_h); + } + } + } + } + WM_KEYDOWN => { + let k = map_keycode(wparam.0 as u32); + if k > 0 { if let Some(eng) = ENGINE.get_mut() { eng.input.set_key_down(k); } } + } + WM_KEYUP => { + let k = map_keycode(wparam.0 as u32); + if k > 0 { if let Some(eng) = ENGINE.get_mut() { eng.input.set_key_up(k); } } + } + WM_MOUSEMOVE => { + let x = (lparam.0 & 0xFFFF) as i16 as f64; + let y = ((lparam.0 >> 16) & 0xFFFF) as i16 as f64; + if let Some(eng) = ENGINE.get_mut() { eng.input.set_mouse_position(x, y); } + } + WM_LBUTTONDOWN => { if let Some(eng) = ENGINE.get_mut() { eng.input.set_mouse_button_down(0); } } + WM_LBUTTONUP => { if let Some(eng) = ENGINE.get_mut() { eng.input.set_mouse_button_up(0); } } + WM_RBUTTONDOWN => { if let Some(eng) = ENGINE.get_mut() { eng.input.set_mouse_button_down(1); } } + WM_RBUTTONUP => { if let Some(eng) = ENGINE.get_mut() { eng.input.set_mouse_button_up(1); } } + _ => {} + } + let orig: WNDPROC = std::mem::transmute(EMBED_ORIG_WNDPROC); + CallWindowProcW(orig, hwnd, msg, wparam, lparam) + } + + /// Subclass a host-provided child window so Bloom receives resize/input. + pub unsafe fn attach_subclass(hwnd: HWND) { + let prev = SetWindowLongPtrW(hwnd, GWLP_WNDPROC, embedded_wndproc as usize as isize); + EMBED_ORIG_WNDPROC = prev; + HWND_GLOBAL = Some(hwnd); + } } #[no_mangle] @@ -307,7 +376,31 @@ pub extern "C" fn bloom_init_window(width: f64, height: f64, title_ptr: *const u #[cfg(windows)] { let (hwnd, phys_w, phys_h) = win32::create_window(width, height, title); + unsafe { init_engine_for_hwnd(hwnd, width as u32, height as u32, phys_w, phys_h); } + if fullscreen != 0.0 { + win32::set_fullscreen(true); + } + } + + #[cfg(not(windows))] + { + let _ = (width, height, title, fullscreen); + panic!("bloom-windows can only run on Windows"); + } +} +/// Build the wgpu surface + engine on an existing HWND (top-level window or +/// host-provided child). Shared by `bloom_init_window` (Bloom owns the window) +/// and `bloom_attach_hwnd` (a Perry UI `BloomView` child window). `logical_*` +/// are DPI-independent sizes; `phys_*` are the surface's physical client size. +#[cfg(windows)] +unsafe fn init_engine_for_hwnd( + hwnd: windows::Win32::Foundation::HWND, + logical_w: u32, + logical_h: u32, + phys_w: u32, + phys_h: u32, +) { let instance = wgpu::Instance::new(wgpu::InstanceDescriptor { backends: wgpu::Backends::DX12 | wgpu::Backends::VULKAN, ..wgpu::InstanceDescriptor::new_without_display_handle() @@ -396,25 +489,58 @@ pub extern "C" fn bloom_init_window(width: f64, height: f64, title_ptr: *const u }; surface.configure(&device, &surface_config); - let renderer = Renderer::new(device, queue, surface, surface_config, width as u32, height as u32); - unsafe { let _ = ENGINE.set(EngineState::new(renderer)); } + let renderer = Renderer::new(device, queue, surface, surface_config, logical_w, logical_h); + let _ = ENGINE.set(EngineState::new(renderer)); +} - if fullscreen != 0.0 { - win32::set_fullscreen(true); +#[no_mangle] +pub extern "C" fn bloom_close_window() {} + +/// Attach the engine to a host-provided child window (a Perry UI `BloomView`). +/// `hwnd_bits` is the raw HWND value as an integer (from `bloomViewGetHwnd`). +/// `width`/`height` are the logical viewport size. The engine builds its wgpu +/// surface on this window and subclasses it for resize/input; the host drives +/// frames via `bloom_begin_drawing` / `bloom_end_drawing`. +#[no_mangle] +pub extern "C" fn bloom_attach_hwnd(hwnd_bits: f64, width: f64, height: f64) { + #[cfg(windows)] + unsafe { + use windows::Win32::Foundation::{HWND, RECT}; + use windows::Win32::UI::WindowsAndMessaging::GetClientRect; + let hwnd = HWND(hwnd_bits as i64 as isize as *mut core::ffi::c_void); + let mut rect = RECT::default(); + let _ = GetClientRect(hwnd, &mut rect); + let phys_w = (rect.right - rect.left).max(1) as u32; + let phys_h = (rect.bottom - rect.top).max(1) as u32; + if ENGINE.get().is_none() { + init_engine_for_hwnd(hwnd, width as u32, height as u32, phys_w, phys_h); } + EMBEDDED = true; + win32::attach_subclass(hwnd); } - #[cfg(not(windows))] - { - panic!("bloom-windows can only run on Windows"); - } + { let _ = (hwnd_bits, width, height); } } +/// Resize the engine's surface. `phys_*` are physical pixels, `log_*` logical. +/// Embedded `BloomView`s resize automatically via the subclassed WM_SIZE; this +/// is exposed for hosts that need to drive the size explicitly. #[no_mangle] -pub extern "C" fn bloom_close_window() {} +pub extern "C" fn bloom_resize(phys_w: f64, phys_h: f64, log_w: f64, log_h: f64) { + #[cfg(windows)] + unsafe { + if let Some(eng) = ENGINE.get_mut() { + eng.renderer.resize(phys_w as u32, phys_h as u32, log_w as u32, log_h as u32); + } + } + #[cfg(not(windows))] + { let _ = (phys_w, phys_h, log_w, log_h); } +} #[no_mangle] pub extern "C" fn bloom_window_should_close() -> f64 { + #[cfg(windows)] + unsafe { if EMBEDDED { return 0.0; } } if engine().should_close { 1.0 } else { 0.0 } } @@ -475,7 +601,10 @@ fn poll_xinput_gamepad() { pub extern "C" fn bloom_begin_drawing() { #[cfg(windows)] { - win32::poll_events(); + // In embedded mode the host (Perry UI) owns the message loop and + // dispatches our subclassed window's messages — pumping here would + // steal messages from the host. Only poll when Bloom owns the window. + unsafe { if !EMBEDDED { win32::poll_events(); } } poll_xinput_gamepad(); } engine().begin_frame(); diff --git a/package.json b/package.json index 17dbcbd..0f78379 100644 --- a/package.json +++ b/package.json @@ -112,6 +112,25 @@ "params": [], "returns": "void" }, + { + "name": "bloom_attach_hwnd", + "params": [ + "f64", + "f64", + "f64" + ], + "returns": "void" + }, + { + "name": "bloom_resize", + "params": [ + "f64", + "f64", + "f64", + "f64" + ], + "returns": "void" + }, { "name": "bloom_window_should_close", "params": [], diff --git a/src/core/index.ts b/src/core/index.ts index ad2880e..669097b 100644 --- a/src/core/index.ts +++ b/src/core/index.ts @@ -7,6 +7,8 @@ export { Key, MouseButton } from './keys'; // FFI declarations declare function bloom_init_window(width: number, height: number, title: number, fullscreen: number): void; declare function bloom_close_window(): void; +declare function bloom_attach_hwnd(hwnd: number, width: number, height: number): void; +declare function bloom_resize(physW: number, physH: number, logW: number, logH: number): void; declare function bloom_window_should_close(): number; declare function bloom_begin_drawing(): void; declare function bloom_end_drawing(): void; @@ -133,6 +135,24 @@ export function closeWindow(): void { bloom_close_window(); } +/** + * Embed Bloom inside a host-provided native window — e.g. a Perry UI + * `BloomView` widget. Pass the window handle from `bloomViewGetHwnd(view)` + * and the logical viewport size. Bloom builds its render surface on that + * window and subclasses it for resize/input; the host owns the message loop, + * so drive frames yourself with `beginDrawing()` / `update` / `endDrawing()` + * (do NOT call `runGame`, which blocks). Call once, after the host window is + * shown and laid out (e.g. on the first `onFrame` tick). + */ +export function attachToHwnd(hwnd: number, width: number, height: number): void { + bloom_attach_hwnd(hwnd, width, height); +} + +/** Resize the embedded surface explicitly (physical + logical pixels). */ +export function resize(physW: number, physH: number, logW: number, logH: number): void { + bloom_resize(physW, physH, logW, logH); +} + export function windowShouldClose(): boolean { return bloom_window_should_close() !== 0; } diff --git a/src/index.ts b/src/index.ts index 60e443d..f93db0b 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,5 +1,5 @@ export { - initWindow, closeWindow, windowShouldClose, + initWindow, closeWindow, windowShouldClose, attachToHwnd, resize, beginDrawing, endDrawing, takeScreenshot, clearBackground, setEnvClearFromHdr, setTargetFPS, getDeltaTime, getFPS, getTime, getScreenWidth, getScreenHeight,