1
0
Fork 0
Commit graph

9 commits

Author SHA1 Message Date
4a95664342 main: Clean up, handle resize
Handle window resizes by resizing the view frame as well.

Clean up the event handling to allow interleaving other code between
different checks.
Remove early first frame, handle it like the others.
2024-01-24 23:09:59 +00:00
b47052aa4d Implement moving the player
Player: Add rotation and linear speeds, as well as their current state.
Player: Allow to move in the local coordinates and compute
    world-speed equivalent.
Player: Update movement axis while rotating.

World: Add a function to advance a step.
Main: Handle key events, add world step in the main loop.
2024-01-21 22:11:46 +00:00
cad775f88e World: Implement raycaster
Implement the basic raycaster, checking every block intersection and the block
linked to that position.
Split the screen uniformally along the width.
Add data needed for camera maths in the Player class
Specify constraints on the raycast parameters.

Render the screen using the raycasts.
Call the renderer in the main loop.
2024-01-21 22:08:44 +00:00
c6b09d668c World: Use nicer custom colors 2024-01-21 20:41:19 +00:00
be78434a9c Player: Fix rotate
Rotation wasn't handled properly at all.
Properly bound between 0 and 360, and use
a proper modulo for floats.

Switch to float to have a more fluid rotation
between frames.
2024-01-21 20:31:51 +00:00
bc9770e233 License as MIT 2023-12-30 14:56:26 +01:00
2d396269e0 Pick back up and comment
Clean placeholder code to get it running.
Add comments to clarify working, add TODOs in main,
add some references for the maths.
2023-12-30 14:50:35 +01:00
f21fc6f805 Ajout de la fonction render au monde
Joueur déplaçable
début du cast de rayon
Trop fatigué pour faire de la trigo
2019-06-01 06:42:29 +02:00
52a261de58 First commit, world map creation 2019-05-27 13:50:49 +02:00