Demo Changelog
2024-08-15
- Fixed bullets not going through fences.
- Removed navmesh ray queries.
- Removed friendly fire.
2024-08-15
- Added bullets to netcode.
- Added client-side prediction and reconciliation.
- Added network input queue drain.
- Fixed memory leak from NPC nav paths.
- Fixed netcode unicode crash.
- Fixed stale data bug in audio netcode.
- Removed excess data from client input message.
- Replaced OS-specific thread functions with SDL equivalents.
2024-07-17
- Added GUI text entry fields.
- Added multiplayer host GUI.
- Added multiplayer join GUI.
2024-07-13
2024-06-19
- Added GUI rectangles.
- Fixed bullet traces starting from the wrong place.
- Updated help text.
2024-06-18
- Added text colors.
- Moved GUI elements into uniform buffer.
2024-06-17
- Added debug graphics API.
- Added trails.
- Various small improvements.
2024-06-16
- Added particle emitters.
- Added particles.
- Fixed map mesh memory leak.
- Improved initialization time by removing unneeded GPU uploads.
- Improved rendering performance by disabling binary transparency.
2024-06-15
- Cleaned up graphics code.
2024-06-12
- Added code path for
GL_ARB_draw_indirect
.
- Moved more stuff into uniform buffers.
- Removed lazy debug graphics.
2024-06-08
- Added code path for
GL_ARB_base_instance
.
- Downgraded GLIBC symbol versions for greater portability.
- Did a sanity check on graphics resource loading/freeing.
2024-06-07
- Added player continuous collision detection.
- Combined model vertex/index buffers into one.
- Moved entity transform data into UBO.
2024-06-04
- Made screencapper create directory if missing.
2024-06-03
- Replaced flags
--hotload
and --test-map
with --map
.
2024-05-31
- Added commandline flag
--disable-npcs
: Removes all NPCs on map load.
- Added commandline flag
--hotload
: Converts and reloads map source file automatically.
- Added commandline flag
--test-map
: Loads development test map.
2024-05-30
- Added commandline flag
--godmode
.
- Added respawning.
- Added simple viewmodel.
- Changed FOV to horizontal to match Blender.
- Modified demo map.
2024-05-28
- Added sound attenuation.
- Added sound spatialization.
- Enabled vector instruction optimizations.
2024-05-27
- Added NPC enemy discovery, no longer hardcoded to be the player.
2024-05-26
- Added commandline flag to force silence
--silent
.
- Added entity
class
property to map files, initial options are prop_static
and npc
.
- Added hitscan bullets.
- Added simple enemy.
- Enabled debug overlays for web demo.
- Fixed NPC being able to die.
- Fixed NPC vision check.
2024-05-25
- Added more 3D assets.
- Added texture sharing between models.
- Cleaned up code.
2024-05-24
- Added pathfinding post-processing, now there are less nodes in final path.
- Added separate export from Blender for navmesh source.
- Cleaned up code.
- Fixed entity collision bug.
2024-05-23
- Added
meshoptimizer
to asset converter.
- Added some more logging.
- Compressed vertex formats.
- Major code cleanup: removed hacky code, streamlined APIs, moved some data around.
2024-05-22
- Added custom Emscripten shell.
- Fixed crash bug resulting from null-dereference in footstep code.
- Fixed debug overlay log spam.
- Fixed player entity still receiving user input in freecam.
- Made web demo run at a constant 720p resolution.
2024-05-21
- Added asset ID enums for models and sounds.
- Added func_npc_spawn entity.
- Added simple very simple AI.
- Combined
resource.h
, world.h
, phys.h
into game.h
because of inter-dependency problems.
- Changed debug meshes to GL_LINES.
- Made web demo use Emcripten log functions.
- Packaged textures as JPEGs at 25% resolution for web demo..
- Removed unnecessary graphics calls.
2024-05-20
- Added controls list to pause menu.
- Added navmesh pathfinding.
- Added navmnesh overlay.
- Added screenshots.
- Added simple navmesh generation. (Doesn't check whether NPC would really fit there.)
- Fixed collision detection rotation bug.
- Fixed dynamic light selection algorithm.
- Fixed race condition in
build.sh
.
- Stopped interpolation when paused.
2024-05-19
- Added entity collision hulls.
- Added log file for native builds.
- Added log filter.
- Added physics API.
- gfx: Added entity collision hull overlay.
- gfx: Added OBB visualization.
- restool: Added OBB generation.
2024-05-18
- build.sh: Added sound asset enum generator, although usability is dubious.
- build.sh: Cleaned up.
- client: Added toggle for debug display.
2024-05-17
- core: Made sc_nanotime better for Windows.
- gfx: Added simple static lights for entities.
- gfx: Optimized some assets with Blender auto-smooth.
- gfx: Stopped renderer from trying to draw models with no entities.
- web: Cleaned up and normalized sound effects.
- web: Fixed mouse focus double-click bug.
- web: Tested on Chromium. It's much better than Firefox for WebGL.
2024-05-16
- Added entity models.
- Added fullscreen button.
common.blend
: Now contains all materials, models, and gameplay pieces.
demo.map
: Started working on the demo map.
- bug: Fixed mesh offset bug.
- gfx: Added entity model batching.
- restool: Made model converter use
jkuhlmann/cgltf.h
too.
- web: Made UI more web-friendly.
- web: Reduced number of draw calls.
2024-05-09
- Added collision filters.
- Added entity array to map format.
- Added simple player movement, need to generalize into
world.c
.
- Moved world, graphics, and audio code from
exe_client.c
into their own files.
2024-05-01
- restool: Made a
jkuhlmann/cgltf.h
-based map converter, as the JSON library was too cumbersome.
2024-04-30
- Added audio API.
- Added ray-entity query.
- Added sound effects.
build.sh
: Added sound effect silence trimming.
- restool: Started replacing Assimp with
sheredom/json.h
, due to custom material properties missing from Assimp.
2024-04-28
- Added mouse look.
- gfx: Added frustum culling of entities.
- Set architecture level to x86-64-v2.
2024-02-22
- Added font loading.
- Added gfx API.
2024-02-10
- Added error API.
- Added file API.
- Added log API.
- Added string API.
- Added vector type and functions.