Files | |
| room.cpp | |
walk_post is a first-person maze and post-processing shader browser. It keeps the procedural walls, pillars, collectibles, projectiles, gamepad support, and debug console from the walk sample, then renders the scene through a selectable full-screen post-processing shader.
Use it when testing fragment effects that need real scene input, mouse state, timing, frame count, and resolution uniforms instead of a static quad.
From the repository root:
--shader-path should point at a directory containing index.txt. Each non-empty, non-comment entry in that file should name a compiled .spv fragment shader. Entries may be direct .spv names, source-style names that resolve to matching .spv files, or files in a spv/ subdirectory.
If --shader-path is omitted, the maze still runs, but no post-processing effect is attached.
The inherited VK_IOWindow console exposes runtime tools for testing world state and shaders. Use the console help command to print the complete command list. walk_post adds or uses these commands heavily:
The example compiles its scene shaders from examples/walk_post/shaders into the build tree. Runtime scene shader commands resolve names such as wall.frag.spv, floor_swirl.frag.spv, or floor_twist.frag.spv from that compiled shader directory first.
Post-processing shaders are loaded from the user-provided --shader-path index and attached with VK_Window::attachPostProcessingShader(...). The post-processing sprite enables extended uniforms and updates elapsed time, frame delta, frame count, mouse state, and frame-rate values every frame, which makes it useful for Shadertoy-style effects adapted to MXVK's sprite shader interface.
examples/walk_post/data contains the sample models, manifests, textures, font, and runtime sprite/text shader assets used by the scene. The CMake target copies those assets and the compiled scene shaders into the example output directory during the build.