@@ -10,7 +10,7 @@ Please send bug reports for nuBASIC and nuBASIC IDE to:
1010The Win32/64 build created with Visual Studio 2022 requires the
1111"Visual C++ Redistributable Packages for Visual Studio 2022".
1212
13- 2026 (WIP)
13+ June 2026
1414* Released nuBASIC 2.0
1515- Added SELECT CASE / End Select statement: multi-branch dispatch on any scalar
1616 expression. Supported arm forms: Case value, Case v1, v2, ..., Case v1 To v2,
@@ -103,6 +103,19 @@ The Win32/64 build created with Visual Studio 2022 requires the
103103 allocation path; struct/object metadata is boxed; struct payload copies use
104104 copy-on-write; and struct field storage preserves declaration order for FFI
105105 and runtime introspection.
106+ - Added the integrated WinRayCast pseudo-3D engine on Windows: a lightweight
107+ raycaster for Wolfenstein 3D-style first-person scenes, driven from BASIC via
108+ the `raycast` module (the Ray* built-in functions: RayInit, RaySetBaseDir,
109+ RayLoadWorld, RayLoadProject, RayUpdate, RayRender, RayPresent, plus player,
110+ camera, map, sprite, weapon, combat, input and layer-transition queries).
111+ RayAvailable() reports whether the engine is compiled in. It is enabled by
112+ default on Windows builds via the NUBASIC_WITH_RAYCAST CMake option (off on
113+ other platforms), where only RayAvailable() exists and returns 0. The
114+ raycast-release / raycast-debug CMake presets enable it explicitly.
115+ - Added examples/raycast/eclipse_protocol.bas, a complete tutorial-style FPS
116+ demo built on WinRayCast (multi-weapon combat, energy/health, HUD and minimap,
117+ key/lock doors, autosave checkpoints, and elevator transitions between levels),
118+ together with its raycast_demo project assets.
106119- Added `examples/native_open_file_dialog.bas`, demonstrating a Win32
107120 `GetOpenFileNameA` call using `Declare Function`, native buffers, and a
108121 manually laid-out `OPENFILENAMEA` structure.
0 commit comments