From 9b167a17843bf16d4d247f00669785e5bf3fde14 Mon Sep 17 00:00:00 2001 From: Victor Giers Date: Thu, 30 Apr 2026 00:16:25 +0200 Subject: [PATCH] Add player climbing surface resolution logic to RuntimeHost --- src/runtime-three/runtime-host.ts | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/runtime-three/runtime-host.ts b/src/runtime-three/runtime-host.ts index e849312b..c8bd70a6 100644 --- a/src/runtime-three/runtime-host.ts +++ b/src/runtime-three/runtime-host.ts @@ -236,6 +236,7 @@ import { resolvePlayerStartLookInput, resolvePlayerStartPauseInput } from "./player-input-bindings"; +import { resolvePlayerClimbSurface } from "./player-climbing"; interface CachedMaterialTexture { signature: string; @@ -972,6 +973,21 @@ export class RuntimeHost { }, canOccupyPlayerShape: (feetPosition, shape) => this.collisionWorld?.canOccupyPlayerShape(feetPosition, shape) ?? true, + resolvePlayerClimbSurface: ( + feetPosition, + facingDirection, + shape, + previousSurface + ) => + this.runtimeScene === null + ? null + : resolvePlayerClimbSurface({ + runtimeScene: this.runtimeScene, + feetPosition, + facingDirection, + shape, + previousSurface + }), resolvePlayerVolumeState: (feetPosition) => this.resolvePlayerVolumeState(feetPosition), resolveThirdPersonCameraCollision: (