From 7958fabd00a29b736a68946e99dbdd76cd6fa2b3 Mon Sep 17 00:00:00 2001 From: Ed_ Date: Wed, 11 Oct 2023 00:56:16 -0400 Subject: [PATCH] Day 33 complete. Man... --- .vscode/settings.json | 3 +- README.md | 4 +- docs/Day 001-025.md | 298 ++++++++ docs/Day 001.md | 7 - docs/Day 002.md | 9 - docs/Day 003.md | 4 - docs/Day 004.md | 2 - docs/Day 011.md | 12 - docs/Day 012.md | 13 - docs/Day 013.md | 96 --- docs/Day 014.md | 29 - docs/Day 015.md | 11 - docs/Day 016.md | 3 - docs/Day 017.md | 13 - docs/Day 019.md | 20 - docs/Day 020.md | 18 - docs/Day 021.md | 15 - docs/Day 022.md | 4 - docs/Day 023.md | 11 - docs/Day 024.md | 5 - docs/Day 032.md | 2 +- docs/Day 033.md | 3 + .../handmade_win32_2023-10-10_13-13-14.gif | Bin 0 -> 104167 bytes .../handmade_win32_2023-10-11_00-47-19.gif | Bin 0 -> 369804 bytes project/engine/engine.cpp | 680 +++++++----------- project/engine/engine.hpp | 51 +- project/engine/state_and_replay.cpp | 196 +++++ project/handmade.hpp | 2 +- project/platform/intrinsics.hpp | 12 +- scripts/build.ps1 | 66 +- scripts/handmade.rdbg | Bin 551 -> 801 bytes scripts/helpers/configure_toolchain.ps1 | 22 +- 32 files changed, 881 insertions(+), 730 deletions(-) create mode 100644 docs/Day 001-025.md delete mode 100644 docs/Day 001.md delete mode 100644 docs/Day 002.md delete mode 100644 docs/Day 003.md delete mode 100644 docs/Day 004.md delete mode 100644 docs/Day 011.md delete mode 100644 docs/Day 012.md delete mode 100644 docs/Day 013.md delete mode 100644 docs/Day 014.md delete mode 100644 docs/Day 015.md delete mode 100644 docs/Day 016.md delete mode 100644 docs/Day 017.md delete mode 100644 docs/Day 019.md delete mode 100644 docs/Day 020.md delete mode 100644 docs/Day 021.md delete mode 100644 docs/Day 022.md delete mode 100644 docs/Day 023.md delete mode 100644 docs/Day 024.md create mode 100644 docs/Day 033.md create mode 100644 docs/imgs/handmade_win32_2023-10-10_13-13-14.gif create mode 100644 docs/imgs/handmade_win32_2023-10-11_00-47-19.gif create mode 100644 project/engine/state_and_replay.cpp diff --git a/.vscode/settings.json b/.vscode/settings.json index 9c527e9..a1c481c 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -83,5 +83,6 @@ "C_Cpp.files.exclude": { "**/.vscode": true, "**/.vs": true, - } + }, + "dimmer.enabled": true } diff --git a/README.md b/README.md index b73db17..5c06ce6 100644 --- a/README.md +++ b/README.md @@ -33,7 +33,7 @@ Module build order: ## Milestone -Day 30 : Moving Between Tile Maps +Day 33 : Virtualized Tile Maps Features Done so far: @@ -61,6 +61,8 @@ Features Done so far: ## Gallery +![img](docs/imgs/handmade_win32_2023-10-11_00-47-19.gif) +![img](docs/imgs/handmade_win32_2023-10-10_13-13-14.gif) ![img](docs/imgs/handmade_win32_2023-10-06_12-43-47.gif) ![img](docs/imgs/handmade_win32_2023-10-01_20-22-20.gif) ![img](docs/imgs/Code_2023-10-01_19-20-56.gif) diff --git a/docs/Day 001-025.md b/docs/Day 001-025.md new file mode 100644 index 0000000..8fd149b --- /dev/null +++ b/docs/Day 001-025.md @@ -0,0 +1,298 @@ +# Days 1-25 + +Initial setup and platform layer bootstrapping. + +## Day 1 + +Project initially setup. Followed the video and the book. + +I went extra since I already have a perferred setup I've recently grown accoustmed to and I'm going to take advantage of the metaprogramming library I've recently made for myself. Although I doubt it'll see much action... + +I'll be keeping the code pretty C like as Casey does in the series. Main purpose is to be able to use whitebox. + +## Day 2 + +Pretty smooth so far, modular header library is showing its limitations... + +I have enough practice messsing with forwards and library linkage now that it wasn't much of a show stopper at least. All the mess is quarantined in the in win32.h and so far it looks like it will be enough to keep it all there. + +I added extra stuff in `grime.h`, `macros.h`, and `types.h` that he will either go over soon from my vauge memory last time I just watched him (instead of doing) + stuff from gencpp's version of the zpl library. + +![img](https://files.catbox.moe/wxasgz.png) + +## Day 3 + +Was able to follow along just fine, lots of more `Gdi32`` stuff to forward in `win32.h`. + +## Day 11 + +Architecture discussion was great. Did some diagramming of it. + +I'm going to use a 3 layer approach to the architecture: + +* Platform +* Engine +* Game (Handmade) + +It will be style 2 so they each will provide a service to the layer below it and platform will provide an API to both engine and game. + +## Day 12 + +This day was a mess to follow along. + +> Always write the usage code first if you can, when designing something like an API. + +Casey decided to do some heavy hits the audio (makes sense) due to the use of DirectSound. +I'm going to preserve his implmentation as is for the most part since I rather keep things simple so that this project actually gets done. + +> Only introduce added complexity when you need it. + +There are two reasons you allow for a more complex interface, you ***NEED*** the feature. It actually is required for the project to have for the UX to preserve the user-level features. Or, there is a performance bottleneck that you need to address. + +## Day 13 + +Started to lifting input, not happy about my abstraction to gamepad state in hindsight. Which is kinda lead by how Casey is doing it. + +The reality of how input is actually done in the games; that I've worked on; is we don't abstract the gamepad. +We just make a layout per device we decide to support (Dualsense/shock, xinput, nintendo, etc) and then just see what device is mapped to what player. This allows us to have a tailored layout to the device. Doing otherwise usually leads to some discrepancy in the UX for that layout for the user. + +Casey has no concept of a player nor a device beyond xinput for this engine (at least up to this point), which is most likely fine for the scope of this project. + +For the purposes of my version of Handmade I will make 3 devices that could be mapped to a `Controller` struct: `Keyboard & Mouse`, `Dualsense`, and `XInput`. +This is to retain implementation Casey is already making while also natively supporting the Dualsense controller from sony which I personally perfer to use. + +From the 3 layer abstraction (platform/engine/game): +Platform will deal with the raw polling (and most likely down the line have a thread dedicated to running it as fast as possible). +It will provide the engine layer the pad states in the following struct: + +```cpp +struct InputState +{ + ControllerState Controllers[4]; +}; +``` + +There can only be four controllers available at a time and are equivalnet to the input aspect of a local player in Unreal. +(Sort of) +Each controller can be assigned the following: + +```cpp +struct ControllerState +{ + KeyboardState* Keyboard; + MousesState* Mouse; + XInputPadState* XPad; + DualsensePadState* DSPad; +}; +``` + +If any are null that means the controller has no assignment. +Each pad state is the latest state but the platform keeps a record of the previous frame's state to compare against. + +Exmaple for Dualsense: + +```cpp +struct DualsensePadState +{ + struct + { + AnalogStick Left; + AnalogStick Right; + } Stick; + + AnalogAxis L2; + AnalogAxis R2; + + union { + DigitalBtn Btns[14]; + struct { + struct { + DigitalBtn Up; + DigitalBtn Down; + DigitalBtn Left; + DigitalBtn Right; + } DPad; + DigitalBtn X; + DigitalBtn Circle; + DigitalBtn Square; + DigitalBtn Triangle; + DigitalBtn Share; + DigitalBtn Options; + DigitalBtn L1; + DigitalBtn R1; + }; + }; + + b32 using_analog() + { + return true; + }; +}; +``` + +The game layer handles mapping an input state of a controller to an action binding. +Possible action binding when we get to that point: + +```cpp +struct ActionBinding +{ + String InternalName; + StringCached LocalizedName; + + DigitalBtnBinding* BtnBinds; + AxisBinding* AxisBinds; + StickBinding* StickBinds; + MouseBinding* MouseBinds; +}; +``` + +## Day 14 + +The `game_state` example felt like a forced way to start doing memory management but thats fine. +I'm not making any design changes to it other than setting it as engine::Memory instead of game_memory (since I'm doing 3 api layers instead of the 2 hes doing). + +Learning about the virtual memory mapping was nice, it was something on a backburner for me to learn about but I never got around to it. +The address setting was quite awesome to see. + +### Some thoughts on platform API + +I like Casey's one call idea he emphasized in the Q&A, don't really want to detract from that. + +Instead I just want to change it so that by the time you enter the engine loop you are guaranteed to have all the engine data provided by the platform layer. +But, without having to shove everything in the procedure captures. Instead, just have an global engine context thats invalid until engine initialization is done by the platfomr layer. + + +So it might end up something like this: + +![img](https://files.catbox.moe/u1q1au.png) + +It ends up making two api paths, one for engine to do initialization when platform provides all the critical data engine needs, and another where the platform provides the engine update function. + +It will be known to the user and engine that platform will update some of the engine data ( like input, render, sound, etc ), which will be done in the platform update function. +This is already the case, just need to convey it more strongly if I'm decoupling it from the procedure captures. + +This is so that I don't have to do insane chaining to pass these captures when I know some of this data should be contextually known to all procedures within the engine. +I have a feeling Casey may already aleivate this or show that it's not a problem in the future so we'll see and I'll adjust accordingly. + +I premtively also did the boxes for an 'editor' and 'game' api. Where there could be possible `n` amount of api layers. I'm not sure if I'll do this, but I'm leaving it open for now. What will most likely happen is they'll still be priority to keep it to a very minimal amount, and not give the game or editor the ability to poke at the engine much at all (which leads to the circular API Casey is warning about). + +## Day 15 + +Casey decides to restrict File IO to 32 bit limits for file size (under 4 gigs). This is due to a limitation do the win32 API in how much it can read into a provided buffer to `ReadFile` by the size of DWORD (4-bytes). For the purposes of this engine and problably almost all applications this is alright. + +IF somehow more is needed, just reading in chunks of 4 gigs at a time is fine. + +I ended up watching a vod earlier recommended: Mysteries of Memory Management Revealed,with Mark Russinovich +[Part 1](https://www.youtube.com/watch?v=TrFEgHr72Yg&t) +[Part 2](https://www.youtube.com/watch?v=RsQyc4xiJeo) + +Was really nice, I got some of the equivalent info for linux. + +## Day 16 + +Finding out about the linker's map file was nice. + +## Day 17 + +Talks about functional programming. Mostly an emphasis of not abusing global state fields or constricting the interface a state may be musted from. With the 'ideal' if performance is not heavily impacted is to use a pure function. + +Like I said in Day 14 however I do want to setup a less stack-spam way to pass around data for ergonomics, so instead I'll be using static analysis with gencpp to make sure they are only used in the correct places (there will be a list of function names that are allowed to use the global state, and if it is used in any other function it will throw an error, preventing handmade from compiling). + +I wish Casey used the `GetAsyncKeyState` instead of this window messaging. +(I'll be using it, not a fan of getting input callbacks from the window) + +I didn't do iteration accross all controllers, I'll worry about that when I setup multiple players. +When it comes to the "controller stick averaging" and abstracting that to actions (like he did) hes bleeding into what should really be an input system with bounded actions, but he doesn't want to make an input system (so its just rapid hardcoding). + +I'll do the averaging on the platform layer (for now) since it simple, but like said previously, I will not be allowing the engine layer to abstract what API devices are assigned to a "controller". + +## Day 19 + +I started to do some cleanup while also following along. +`handmade_win32.cpp` now just holds the cpp build order when running the build script for unity builds. + +I want to eventually support segemnted builds as well, that way I can make sure there isn't some unhandled usaged of a global or some other symbol in one of the source files. +Evetually I can also use gencpp perform some static analysis to make sure differnt layers are not accessing symbols that they should not. + +I started to setup also pulling the polling of input out to a different function. +There are a few routes to go about it: + +* Make a separate function per input type: ( poll_keyboard, poll_xinput, poll_jsl ). +* Make a single function that handles all input polling (poll_input or process_input). +* (problably more...) + +I'm gravitating toward the second option, the amount of content is not that large, and would keep the code all together along with its control flow. + +Overall this was pretty brutual to follow along with for the vod. Thankfully handmade-notes exists.. +Reading the end of the notes page for the episode showed a forum link to mmozeiko discussing use of the Windows Core Audio API to alleviate the large amount of latency required to operate with DirectSound. +I'm going to wait until after day 20 since Casey has that one titled "Debugging the Aduio Sync" + +## Day 20 + +This stream was easier to follow than the last. I'm starting to gain some intuition on his style. + +### Archtecture wise + +I'm deciding to cause some more complexity leakage to the API layers.. + +I'll restrict it to on-demand but I want to have the engine have configurable options modern games tend to have, if I find it fullfilling todo so I may also expose some configuration for aspects of the engine, most games do not allow the user to mess with. + +This was something I wanted to do with my previous attempt and constructing a "probeable" game engine, however, that attempt failed because I kept the API granularity far to high resolution.. and it was *Modern C++* which is the project I learned the hardway was not worth the mental effort to maintain or engage with. +(I also dove straight into graphics programming with Vulkan... making my own vulkan wrapper library... At least I learned a good chunk of the driver's graphics pipeline..) + +Debug visualization for the audio was great. + +## Day 21 + +So I learned today the good reason why he doesn't use static variables; So that when he makes this library dynamically loaded we don't lose the state of the game on reload. + +This day was extremely gratifying to get working. + +I went the extra mile than what Casey did and allow for name mangled symbols (for both clang and msvc). +It took a few more steps than his solution but I get to keep the eronomics of namespaces. + +After the linker finishes emitting, I use the build script to parse the .map file and extract the decorated symbols I need to load in the platform layer. Those are exported to a file called `handmade_engine.symbols` and then in the platform layer I load them up using an enum as the lookup table for the line the symbol will be in the file. From there its just loading up the symbol with GetProcAddress! + +![img](https://files.catbox.moe/sdebtc.png) +![img](https://files.catbox.moe/ufkacl.png) +![img](https://files.catbox.moe/zr52au.png) +![img](https://files.catbox.moe/g3f1vv.png) + +## Day 22 + +There is an issue with the hot-reload on vscode, does not show up in vs2022 debugger nor remedybg so I won't bother with it. +(Debugging hot-reloaded module doesn't work with vscode's debugger) + +## Day 23 + +Getting state saving was nice. + +I decided to expose the file inteface through the platform API permanently, so that I can use it for other things later on. + +I'm changing my varaible naming convention in structus from UpperCamel to lower_snake_case. +I realized that semantic highlighting covers any contextual issues along with editor intellisense. +Even at worst case with public/protected/private specifers intellisense covers it. + +So I'm going with the option that keeps my naming convention consistent and more flexible to use with Casey's exploratory programming style. + +## Day 24 + +Did lots of cleanup & refactoring on my side. + +Started to use gencpp to generate the engne module symbol constants for the platform layer. + +## Day 25 + +Him doing replay save states at the platform layer is causing issues for me... +I'm going to most likely end up doing two categories of save states, one for engine level and one for platform level. + +The engine level can just store it in the memory struct, and the game memory can just stay where it is. +I want to use the same "save state" slots for both engine and game since there is no need different memory buckets for that. They will at worst case be ofcourse the size of engine's memory block. + +So if there is 4, we are looking at 5x the actual memory size. This is fine for now since the engine block is 2 gigs. +Snapshots of of memory are are handled using take and load snapshot functions. They can be used separate from the replay looping functionality. +Replay looping however is dependent on snapshots so if a replay is save/loaded it will use the same snapshot slot of memory to do that state management. + +Feels great to be past the platform layer bulk!!! + + diff --git a/docs/Day 001.md b/docs/Day 001.md deleted file mode 100644 index af559ce..0000000 --- a/docs/Day 001.md +++ /dev/null @@ -1,7 +0,0 @@ -# Day 1 - -Project initially setup. Followed the video and the book. - -I went extra since I already have a perferred setup I've recently grown accoustmed to and I'm going to take advantage of the metaprogramming library I've recently made for myself. Although I doubt it'll see much action... - -I'll be keeping the code pretty C like as Casey does in the series. Main purpose is to be able to use whitebox. diff --git a/docs/Day 002.md b/docs/Day 002.md deleted file mode 100644 index 5eccb56..0000000 --- a/docs/Day 002.md +++ /dev/null @@ -1,9 +0,0 @@ -# Day 2 - -Pretty smooth so far, modular header library is showing its limitations... - -I have enough practice messsing with forwards and library linkage now that it wasn't much of a show stopper at least. All the mess is quarantined in the in win32.h and so far it looks like it will be enough to keep it all there. - -I added extra stuff in `grime.h`, `macros.h`, and `types.h` that he will either go over soon from my vauge memory last time I just watched him (instead of doing) + stuff from gencpp's version of the zpl library. - -![img](https://files.catbox.moe/wxasgz.png) diff --git a/docs/Day 003.md b/docs/Day 003.md deleted file mode 100644 index f37e400..0000000 --- a/docs/Day 003.md +++ /dev/null @@ -1,4 +0,0 @@ -# Day 3 - -Was able to follow along just fine, lots of more `Gdi32`` stuff to forward in `win32.h`. - diff --git a/docs/Day 004.md b/docs/Day 004.md deleted file mode 100644 index 5c6c0db..0000000 --- a/docs/Day 004.md +++ /dev/null @@ -1,2 +0,0 @@ -# Day 4 - diff --git a/docs/Day 011.md b/docs/Day 011.md deleted file mode 100644 index 9479f32..0000000 --- a/docs/Day 011.md +++ /dev/null @@ -1,12 +0,0 @@ -# Day 11 - -Architecture discussion was great. Did some diagramming of it. - -I'm going to use a 3 layer approach to the architecture: - -* Platform -* Engine -* Game (Handmade) - -It will be style 2 so they each will provide a service to the layer below it and platform will provide an API to both engine and game. - diff --git a/docs/Day 012.md b/docs/Day 012.md deleted file mode 100644 index f77df5a..0000000 --- a/docs/Day 012.md +++ /dev/null @@ -1,13 +0,0 @@ -# Day 12 - -This day was a mess to follow along. - -> Always write the usage code first if you can, when designing something like an API. - -Casey decided to do some heavy hits the audio (makes sense) due to the use of DirectSound. -I'm going to preserve his implmentation as is for the most part since I rather keep things simple so that this project actually gets done. - -> Only introduce added complexity when you need it. - -There are two reasons you allow for a more complex interface, you ***NEED*** the feature. It actually is required for the project to have for the UX to preserve the user-level features. Or, there is a performance bottleneck that you need to address. - diff --git a/docs/Day 013.md b/docs/Day 013.md deleted file mode 100644 index 3696862..0000000 --- a/docs/Day 013.md +++ /dev/null @@ -1,96 +0,0 @@ -# Day 13 - -Started to lifting input, not happy about my abstraction to gamepad state in hindsight. Which is kinda lead by how Casey is doing it. - -The reality of how input is actually done in the games; that I've worked on; is we don't abstract the gamepad. -We just make a layout per device we decide to support (Dualsense/shock, xinput, nintendo, etc) and then just see what device is mapped to what player. This allows us to have a tailored layout to the device. Doing otherwise usually leads to some discrepancy in the UX for that layout for the user. - -Casey has no concept of a player nor a device beyond xinput for this engine (at least up to this point), which is most likely fine for the scope of this project. - -For the purposes of my version of Handmade I will make 3 devices that could be mapped to a `Controller` struct: `Keyboard & Mouse`, `Dualsense`, and `XInput`. -This is to retain implementation Casey is already making while also natively supporting the Dualsense controller from sony which I personally perfer to use. - -From the 3 layer abstraction (platform/engine/game): -Platform will deal with the raw polling (and most likely down the line have a thread dedicated to running it as fast as possible). -It will provide the engine layer the pad states in the following struct: - -```cpp -struct InputState -{ - ControllerState Controllers[4]; -}; -``` - -There can only be four controllers available at a time and are equivalnet to the input aspect of a local player in Unreal. -(Sort of) -Each controller can be assigned the following: - -```cpp -struct ControllerState -{ - KeyboardState* Keyboard; - MousesState* Mouse; - XInputPadState* XPad; - DualsensePadState* DSPad; -}; -``` - -If any are null that means the controller has no assignment. -Each pad state is the latest state but the platform keeps a record of the previous frame's state to compare against. - -Exmaple for Dualsense: - -```cpp -struct DualsensePadState -{ - struct - { - AnalogStick Left; - AnalogStick Right; - } Stick; - - AnalogAxis L2; - AnalogAxis R2; - - union { - DigitalBtn Btns[14]; - struct { - struct { - DigitalBtn Up; - DigitalBtn Down; - DigitalBtn Left; - DigitalBtn Right; - } DPad; - DigitalBtn X; - DigitalBtn Circle; - DigitalBtn Square; - DigitalBtn Triangle; - DigitalBtn Share; - DigitalBtn Options; - DigitalBtn L1; - DigitalBtn R1; - }; - }; - - b32 using_analog() - { - return true; - }; -}; -``` - -The game layer handles mapping an input state of a controller to an action binding. -Possible action binding when we get to that point: - -```cpp -struct ActionBinding -{ - String InternalName; - StringCached LocalizedName; - - DigitalBtnBinding* BtnBinds; - AxisBinding* AxisBinds; - StickBinding* StickBinds; - MouseBinding* MouseBinds; -}; -``` diff --git a/docs/Day 014.md b/docs/Day 014.md deleted file mode 100644 index b301120..0000000 --- a/docs/Day 014.md +++ /dev/null @@ -1,29 +0,0 @@ -# Day 14 - -The `game_state` example felt like a forced way to start doing memory management but thats fine. -I'm not making any design changes to it other than setting it as engine::Memory instead of game_memory (since I'm doing 3 api layers instead of the 2 hes doing). - -Learning about the virtual memory mapping was nice, it was something on a backburner for me to learn about but I never got around to it. -The address setting was quite awesome to see. - -## Some thoughts on platform API - -I like Casey's one call idea he emphasized in the Q&A, don't really want to detract from that. - -Instead I just want to change it so that by the time you enter the engine loop you are guaranteed to have all the engine data provided by the platform layer. -But, without having to shove everything in the procedure captures. Instead, just have an global engine context thats invalid until engine initialization is done by the platfomr layer. - - -So it might end up something like this: - -![img](https://files.catbox.moe/u1q1au.png) - -It ends up making two api paths, one for engine to do initialization when platform provides all the critical data engine needs, and another where the platform provides the engine update function. - -It will be known to the user and engine that platform will update some of the engine data ( like input, render, sound, etc ), which will be done in the platform update function. -This is already the case, just need to convey it more strongly if I'm decoupling it from the procedure captures. - -This is so that I don't have to do insane chaining to pass these captures when I know some of this data should be contextually known to all procedures within the engine. -I have a feeling Casey may already aleivate this or show that it's not a problem in the future so we'll see and I'll adjust accordingly. - -I premtively also did the boxes for an 'editor' and 'game' api. Where there could be possible `n` amount of api layers. I'm not sure if I'll do this, but I'm leaving it open for now. What will most likely happen is they'll still be priority to keep it to a very minimal amount, and not give the game or editor the ability to poke at the engine much at all (which leads to the circular API Casey is warning about). diff --git a/docs/Day 015.md b/docs/Day 015.md deleted file mode 100644 index 90485b2..0000000 --- a/docs/Day 015.md +++ /dev/null @@ -1,11 +0,0 @@ -# Day 15 - -Casey decides to restrict File IO to 32 bit limits for file size (under 4 gigs). This is due to a limitation do the win32 API in how much it can read into a provided buffer to `ReadFile` by the size of DWORD (4-bytes). For the purposes of this engine and problably almost all applications this is alright. - -IF somehow more is needed, just reading in chunks of 4 gigs at a time is fine. - -I ended up watching a vod earlier recommended: Mysteries of Memory Management Revealed,with Mark Russinovich -[Part 1](https://www.youtube.com/watch?v=TrFEgHr72Yg&t) -[Part 2](https://www.youtube.com/watch?v=RsQyc4xiJeo) - -Was really nice, I got some of the equivalent info for linux. diff --git a/docs/Day 016.md b/docs/Day 016.md deleted file mode 100644 index b1644cc..0000000 --- a/docs/Day 016.md +++ /dev/null @@ -1,3 +0,0 @@ -# Day 16 - -Finding out about the linker's map file was nice. diff --git a/docs/Day 017.md b/docs/Day 017.md deleted file mode 100644 index 8de6986..0000000 --- a/docs/Day 017.md +++ /dev/null @@ -1,13 +0,0 @@ -# Day 17 - -Talks about functional programming. Mostly an emphasis of not abusing global state fields or constricting the interface a state may be musted from. With the 'ideal' if performance is not heavily impacted is to use a pure function. - -Like I said in Day 14 however I do want to setup a less stack-spam way to pass around data for ergonomics, so instead I'll be using static analysis with gencpp to make sure they are only used in the correct places (there will be a list of function names that are allowed to use the global state, and if it is used in any other function it will throw an error, preventing handmade from compiling). - -I wish Casey used the `GetAsyncKeyState` instead of this window messaging. -(I'll be using it, not a fan of getting input callbacks from the window) - -I didn't do iteration accross all controllers, I'll worry about that when I setup multiple players. -When it comes to the "controller stick averaging" and abstracting that to actions (like he did) hes bleeding into what should really be an input system with bounded actions, but he doesn't want to make an input system (so its just rapid hardcoding). - -I'll do the averaging on the platform layer (for now) since it simple, but like said previously, I will not be allowing the engine layer to abstract what API devices are assigned to a "controller". diff --git a/docs/Day 019.md b/docs/Day 019.md deleted file mode 100644 index 5a298d4..0000000 --- a/docs/Day 019.md +++ /dev/null @@ -1,20 +0,0 @@ -# Day 19 - -I started to do some cleanup while also following along. -`handmade_win32.cpp` now just holds the cpp build order when running the build script for unity builds. - -I want to eventually support segemnted builds as well, that way I can make sure there isn't some unhandled usaged of a global or some other symbol in one of the source files. -Evetually I can also use gencpp perform some static analysis to make sure differnt layers are not accessing symbols that they should not. - -I started to setup also pulling the polling of input out to a different function. -There are a few routes to go about it: - -* Make a separate function per input type: ( poll_keyboard, poll_xinput, poll_jsl ). -* Make a single function that handles all input polling (poll_input or process_input). -* (problably more...) - -I'm gravitating toward the second option, the amount of content is not that large, and would keep the code all together along with its control flow. - -Overall this was pretty brutual to follow along with for the vod. Thankfully handmade-notes exists.. -Reading the end of the notes page for the episode showed a forum link to mmozeiko discussing use of the Windows Core Audio API to alleviate the large amount of latency required to operate with DirectSound. -I'm going to wait until after day 20 since Casey has that one titled "Debugging the Aduio Sync" diff --git a/docs/Day 020.md b/docs/Day 020.md deleted file mode 100644 index f7877d9..0000000 --- a/docs/Day 020.md +++ /dev/null @@ -1,18 +0,0 @@ -# Day 20 - -This stream was easier to follow than the last. I'm starting to gain some intuition on his style. - - - - - -## Archtecture wise - -I'm deciding to cause some more complexity leakage to the API layers.. - -I'll restrict it to on-demand but I want to have the engine have configurable options modern games tend to have, if I find it fullfilling todo so I may also expose some configuration for aspects of the engine, most games do not allow the user to mess with. - -This was something I wanted to do with my previous attempt and constructing a "probeable" game engine, however, that attempt failed because I kept the API granularity far to high resolution.. and it was *Modern C++* which is the project I learned the hardway was not worth the mental effort to maintain or engage with. -(I also dove straight into graphics programming with Vulkan... making my own vulkan wrapper library... At least I learned a good chunk of the driver's graphics pipeline..) - -Debug visualization for the audio was great. diff --git a/docs/Day 021.md b/docs/Day 021.md deleted file mode 100644 index ef9b6a7..0000000 --- a/docs/Day 021.md +++ /dev/null @@ -1,15 +0,0 @@ -# Day 21 - -So I learned today the good reason why he doesn't use static variables; So that when he makes this library dynamically loaded we don't lose the state of the game on reload. - -This day was extremely gratifying to get working. - -I went the extra mile than what Casey did and allow for name mangled symbols (for both clang and msvc). -It took a few more steps than his solution but I get to keep the eronomics of namespaces. - -After the linker finishes emitting, I use the build script to parse the .map file and extract the decorated symbols I need to load in the platform layer. Those are exported to a file called `handmade_engine.symbols` and then in the platform layer I load them up using an enum as the lookup table for the line the symbol will be in the file. From there its just loading up the symbol with GetProcAddress! - -![img](https://files.catbox.moe/sdebtc.png) -![img](https://files.catbox.moe/ufkacl.png) -![img](https://files.catbox.moe/zr52au.png) -![img](https://files.catbox.moe/g3f1vv.png) diff --git a/docs/Day 022.md b/docs/Day 022.md deleted file mode 100644 index fe11d5b..0000000 --- a/docs/Day 022.md +++ /dev/null @@ -1,4 +0,0 @@ -# Day 22 - -There is an issue with the hot-reload on vscode, does not show up in vs2022 debugger nor remedybg so I won't bother with it. -(Debugging hot-reloaded module doesn't work with vscode's debugger) diff --git a/docs/Day 023.md b/docs/Day 023.md deleted file mode 100644 index 72537ad..0000000 --- a/docs/Day 023.md +++ /dev/null @@ -1,11 +0,0 @@ -# Day 23 - -Getting state saving was nice. - -I decided to expose the file inteface through the platform API permanently, so that I can use it for other things later on. - -I'm changing my varaible naming convention in structus from UpperCamel to lower_snake_case. -I realized that semantic highlighting covers any contextual issues along with editor intellisense. -Even at worst case with public/protected/private specifers intellisense covers it. - -So I'm going with the option that keeps my naming convention consistent and more flexible to use with Casey's exploratory programming style. diff --git a/docs/Day 024.md b/docs/Day 024.md deleted file mode 100644 index 06fca40..0000000 --- a/docs/Day 024.md +++ /dev/null @@ -1,5 +0,0 @@ -# Day 24 - -Did lots of cleanup & refactoring on my side. - -Started to use gencpp to generate the engne module symbol constants for the platform layer. diff --git a/docs/Day 032.md b/docs/Day 032.md index 0226527..681c559 100644 --- a/docs/Day 032.md +++ b/docs/Day 032.md @@ -2,4 +2,4 @@ Vod was more of a pain to follow along than usual... -I updated the scripts to only bild each module if it detects changes (just using md5 hash on the files). +I updated the scripts to only build each module if it detects changes (just using md5 hash on the files). diff --git a/docs/Day 033.md b/docs/Day 033.md new file mode 100644 index 0000000..8b19baa --- /dev/null +++ b/docs/Day 033.md @@ -0,0 +1,3 @@ +# Day 033 + +I thought the last few vods were not great to follow... That was just training for today. diff --git a/docs/imgs/handmade_win32_2023-10-10_13-13-14.gif b/docs/imgs/handmade_win32_2023-10-10_13-13-14.gif new file mode 100644 index 0000000000000000000000000000000000000000..9616ab9bfc42a80e923330e2fb240c9cbd4f7607 GIT binary patch literal 104167 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

mHj4hP?#_wnpw^3FLN4GKv~ACF3TTx%5;O*i!Y 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%0ANlR{?BHer$x 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 OomESjJ-jgimiZq7fl~Sa literal 0 HcmV?d00001 diff --git a/docs/imgs/handmade_win32_2023-10-11_00-47-19.gif b/docs/imgs/handmade_win32_2023-10-11_00-47-19.gif new file mode 100644 index 0000000000000000000000000000000000000000..48100980b949ef44e13dd6beed26d16c2eca5bc4 GIT binary patch literal 369804 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

7`+wFkMgATtzFqrwsF?Y$P*LVzp(5o!Lq)59 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

W&WfXO3sYF$6yXGMpzO))r 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 memory->persistent, memory->total_size() - , memory->snapshots[ memory->active_snapshot_slot ].memory ); -} - -internal -void load_game_snapshot( Memory* memory, platform::ModuleAPI* platform_api ) -{ - s32 slot = memory->active_snapshot_slot; - EngineState* state = rcast( EngineState*, memory->persistent ); - - void* persistent_slot = memory->snapshots[ slot ].memory; - void* transient_slot = rcast( Byte*, memory->snapshots[ slot ].memory ) + state->game_memory.persistent_size; - - platform_api->memory_copy( state->game_memory.persistent, state->game_memory.persistent_size, persistent_slot ); - platform_api->memory_copy( state->game_memory.transient, state->game_memory.transient_size, transient_slot ); -} - -internal -void take_engine_snapshot( Memory* memory, platform::ModuleAPI* platform_api ) -{ - platform_api->memory_copy( memory->snapshots[ memory->active_snapshot_slot ].memory, memory->total_size(), memory->persistent ); - memory->snapshots[ memory->active_snapshot_slot ].age = platform_api->get_wall_clock(); -} - -internal -void take_game_snapshot( Memory* memory, platform::ModuleAPI* platform_api ) -{ - s32 slot = memory->active_snapshot_slot; - EngineState* state = rcast( EngineState*, memory->persistent ); - - void* persistent_slot = memory->snapshots[ slot ].memory; - void* transient_slot = rcast( Byte*, memory->snapshots[ slot ].memory ) + state->game_memory.persistent_size; - - platform_api->memory_copy( persistent_slot, state->game_memory.persistent_size, state->game_memory.persistent ); - platform_api->memory_copy( transient_slot, state->game_memory.transient_size, state->game_memory.transient ); - memory->snapshots[ memory->active_snapshot_slot ].age = platform_api->get_wall_clock(); -} - -internal -void begin_recording_input( Memory* memory, InputState* input, platform::ModuleAPI* platform_api ) -{ - Str file_name = str_ascii("test_input_"); - StrPath file_path = {}; - file_path.concat( platform_api->path_scratch, file_name ); - snprintf( file_path.ptr, file_path.len, "%s%d.hm_replay", file_name.ptr, memory->active_snapshot_slot ); - - memory->active_input_replay_file.path = file_path; - platform_api->file_delete( memory->active_input_replay_file.path ); - memory->replay_mode = ReplayMode_Record; -} - -internal -void end_recording_input( Memory* memory, InputState* input, platform::ModuleAPI* platform_api ) -{ - memory->replay_mode = ReplayMode_Off; - platform_api->file_close( & memory->active_input_replay_file ); -} - -internal -void begin_playback_input( Memory* memory, InputState* input, platform::ModuleAPI* platform_api ) -{ - Str file_name = str_ascii("test_input_"); - StrPath file_path = {}; - file_path.concat( platform_api->path_scratch, file_name ); - snprintf( file_path.ptr, file_path.len, "%s%d.hm_replay", file_name.ptr, memory->active_snapshot_slot ); - - // TODO(Ed - From Casey): Recording system still seems to take too long - // on record start - find out what Windows is doing and if - // we can speed up / defer some of that processing. - - if ( platform_api->file_check_exists( file_path ) ) - { - memory->active_input_replay_file.path = file_path; - memory->replay_mode = ReplayMode_Playback; - } - else - { - // TODO(Ed) : Logging - } -} - -internal -void end_playback_input( Memory* memory, InputState* input, platform::ModuleAPI* platform_api ) -{ - memory->replay_mode = ReplayMode_Off; - platform_api->file_close( & memory->active_input_replay_file ); -} - -InputStateSnapshot input_state_snapshot( InputState* input ) -{ - InputStateSnapshot snapshot = {}; - for ( s32 idx = 0; idx < array_count( snapshot.controllers ); ++ idx ) - { - ControllerState* controller = & input->controllers[idx]; - if ( controller == nullptr ) - continue; - - if ( controller->ds_pad ) - snapshot.controllers[idx].ds_pad = *controller->ds_pad; - - if ( controller->xpad ) - snapshot.controllers[idx].xpad = *controller->xpad; - - if ( controller->keyboard ) - { - snapshot.controllers[idx].keyboard = *controller->keyboard; - } - - if ( controller->mouse ) - snapshot.controllers[idx].mouse = *controller->mouse; - } - return snapshot; -} - -internal -void record_input( Memory* memory, InputState* input, platform::ModuleAPI* platform_api ) -{ - InputStateSnapshot snapshot = input_state_snapshot( input ); - if ( platform_api->file_write_stream( & memory->active_input_replay_file, sizeof(snapshot), &snapshot ) == 0 ) - { - // TODO(Ed) : Logging - } -} - -internal -void play_input( SnapshotFn* load_snapshot, Memory* memory, InputState* input, platform::ModuleAPI* platform_api ) -{ - InputStateSnapshot new_input; - if ( platform_api->file_read_stream( & memory->active_input_replay_file, sizeof(InputStateSnapshot), & new_input ) == 0 ) - { - load_snapshot( memory, platform_api ); - platform_api->file_rewind( & memory->active_input_replay_file ); - return; - } - - for ( s32 idx = 0; idx < array_count( new_input.controllers ); ++ idx ) - { - ControllerState* controller = & input->controllers[idx]; - if ( controller == nullptr ) - continue; - - if ( controller->ds_pad ) - *controller->ds_pad = new_input.controllers[idx].ds_pad; - - if ( controller->xpad ) - *controller->xpad = new_input.controllers[idx].xpad; - - if ( controller->keyboard ) - { - *controller->keyboard = new_input.controllers[idx].keyboard; - } - - if ( controller->mouse ) - *controller->mouse = new_input.controllers[idx].mouse; - } -} - -void process_loop_mode( SnapshotFn* take_snapshot, SnapshotFn* load_snapshot - , Memory* memory, EngineState* state, InputState* input, platform::ModuleAPI* platform_api ) -{ - if ( memory->replay_mode == ReplayMode_Off ) - { - take_snapshot( memory, platform_api ); - begin_recording_input( memory, input, platform_api ); - } - else if ( memory->replay_mode == ReplayMode_Playback ) - { - end_playback_input( memory, input, platform_api ); - load_snapshot( memory, platform_api ); - } - else if ( memory->replay_mode == ReplayMode_Record ) - { - end_recording_input( memory, input, platform_api ); - load_snapshot( memory, platform_api ); - begin_playback_input( memory, input, platform_api ); - } -} +#include "state_and_replay.cpp" // Build_Development #endif +NS_ENGINE_BEGIN + internal void input_poll_engine_actions( InputState* input, EngineActions* actions ) { @@ -357,10 +178,10 @@ void draw_rectangle( OffscreenBuffer* buffer , f32 max_x, f32 max_y , f32 red, f32 green, f32 blue ) { - s32 min_x_32 = round_f32_to_s32( min_x ); - s32 min_y_32 = round_f32_to_s32( min_y ); - s32 max_x_32 = round_f32_to_s32( max_x ); - s32 max_y_32 = round_f32_to_s32( max_y ); + s32 min_x_32 = round( min_x ); + s32 min_y_32 = round( min_y ); + s32 max_x_32 = round( max_x ); + s32 max_y_32 = round( max_y ); s32 buffer_width = buffer->width; s32 buffer_height = buffer->height; @@ -374,9 +195,9 @@ void draw_rectangle( OffscreenBuffer* buffer if ( max_y_32 > buffer_height ) max_y_32 = buffer_height; - s32 red_32 = round_f32_to_s32( 255.f * red ); - s32 green_32 = round_f32_to_s32( 255.f * green ); - s32 blue_32 = round_f32_to_s32( 255.f * blue ); + s32 red_32 = round( 255.f * red ); + s32 green_32 = round( 255.f * green ); + s32 blue_32 = round( 255.f * blue ); s32 color = (scast(s32, red_32) << 16) @@ -401,6 +222,125 @@ void draw_rectangle( OffscreenBuffer* buffer } } +inline +void cannonicalize_coord( World* world, u32* tile_coord, f32* pos_coord ) +{ + f32 tile_size = scast(f32, world->tile_size_in_meters); + + // Note(Ed) : World is assumed to be a "torodial topology" + s32 offset = floor( (* pos_coord) / tile_size ); + u32 new_tile_coord = (* tile_coord) + offset; + f32 new_pos_coord = (* pos_coord) - scast(f32, offset) * tile_size; + + assert( new_pos_coord >= 0 ); + assert( new_pos_coord <= tile_size ); + + (* tile_coord) = new_tile_coord; + (* pos_coord) = new_pos_coord; +} + +inline +WorldPosition recannonicalize_position( World* world, WorldPosition pos ) +{ + WorldPosition result = pos; + cannonicalize_coord( world, & result.tile_x, & result.x ); + cannonicalize_coord( world, & result.tile_y, & result.y ); + return result; +} + +inline + u32 TileChunk_tile_value( TileChunk* tile_chunk, World* world, u32 x, u32 y ) +{ + assert( world != nullptr ); + assert( tile_chunk != nullptr ); + assert( x < world->chunk_dimension ); + assert( y < world->chunk_dimension ); + + u32 value = tile_chunk->tiles[ (y * world->chunk_dimension) + x ]; + return value; +} + +// TODO(Ed) : Review if this is needed anymore? +#if 0 +inline +b32 TileChunk_is_tile_empty( TileChunk* tile_chunk, World* world, u32 tile_x, u32 tile_y ) +{ + //assert( tile_chunk != nullptr ); + assert( world != nullptr ); + + // Assume space is occupied if there is bad data + if ( tile_chunk == nullptr ) + return false; + + b32 is_empty = false; + u32 tile_value = TileChunk_tile_value( tile_chunk, world, tile_x, tile_y ); + is_empty = tile_value == 0; + return is_empty; +} +#endif + +inline +TileChunk* World_get_tile_chunk( World* world, s32 tile_chunk_x, s32 tile_chunk_y ) +{ + TileChunk* chunk = nullptr; + + if ( tile_chunk_x >= 0 && tile_chunk_x < scast(s32, world->tile_chunks_num_x) + && tile_chunk_y >= 0 && tile_chunk_y < scast(s32, world->tile_chunks_num_y) ) + { + chunk = & world->tile_chunks[ tile_chunk_y * world->tile_chunks_num_x + tile_chunk_x ]; + } + + return chunk; +} + +inline +TileChunkPosition get_tile_chunk_position_for( World* world, u32 abs_tile_x, u32 abs_tile_y ) +{ + TileChunkPosition chunk_pos {}; + chunk_pos.tile_chunk_x = abs_tile_x >> world->chunk_shift; + chunk_pos.tile_chunk_y = abs_tile_y >> world->chunk_shift; + chunk_pos.tile_x = abs_tile_x & world->chunk_mask; + chunk_pos.tile_y = abs_tile_y & world->chunk_mask; + + return chunk_pos; +} + +internal // TODO(Ed) : Review if he keeps this crap. +u32 piggy_get_tile_value( World* world, u32 tile_x, u32 tile_y ) +{ + assert( world != nullptr ); + + u32 value = 0; + + TileChunkPosition chunk_pos = get_tile_chunk_position_for( world, tile_x, tile_y ); + TileChunk* chunk = World_get_tile_chunk( world, chunk_pos.tile_chunk_x, chunk_pos.tile_chunk_y ); + + if ( chunk ) + value = TileChunk_tile_value( chunk, world, chunk_pos.tile_x, chunk_pos.tile_y ); + return value; +} + +internal +b32 world_is_point_empty( World* world, WorldPosition position ) +{ + assert( world != nullptr ); + + u32 chunk_value = piggy_get_tile_value( world, position.tile_x, position.tile_y ); + b32 is_empty = chunk_value == 0; + return is_empty; +} + +inline +void draw_debug_point(OffscreenBuffer* back_buffer, World* world, WorldPosition pos, f32 red, f32 green, f32 blue) +{ + draw_rectangle(back_buffer, + pos.x * world->tile_meters_to_pixels + world->tile_lower_left_x + scast(f32, pos.tile_x * world->tile_size_in_pixels), + pos.y * world->tile_meters_to_pixels + world->tile_lower_left_y + scast(f32, pos.tile_y * world->tile_size_in_pixels), + (pos.x + 0.1f) * world->tile_meters_to_pixels + world->tile_lower_left_x + scast(f32, pos.tile_x * world->tile_size_in_pixels), + (pos.y + 0.1f) * world->tile_meters_to_pixels + world->tile_lower_left_y + scast(f32, pos.tile_y * world->tile_size_in_pixels), + red, green, blue); +} + Engine_API void on_module_reload( Memory* memory, platform::ModuleAPI* platfom_api ) { @@ -449,8 +389,6 @@ void startup( Memory* memory, platform::ModuleAPI* platform_api ) assert( sizeof(hh::GameState) <= state->game_memory.persistent_size ); hh::PlayerState* player = & game_state->player_state; - player->position.tile_map_x = 0; - player->position.tile_map_y = 0; player->position.tile_x = 3; player->position.tile_y = 3; player->position.x = 0.f; @@ -465,107 +403,6 @@ void shutdown( Memory* memory, platform::ModuleAPI* platform_api ) { } -inline -void cannonicalize_coord( World* world, s32 num_tiles, s32* tile_map_coord, s32* tile_coord, f32* pos_coord ) -{ - s32 new_tile_map_coord = *tile_map_coord; - f32 tile_size = scast(f32, world->tile_size_in_meters); - - // TODO(Ed) : Need to use an alt method for reconnonicalizing because this can end up rounding back up to the tile. - // TODO(Ed) : Add bounds checking to prevent wrapping - s32 offset = floor_f32_to_s32( (* pos_coord) / tile_size ); - s32 new_tile_coord = (* tile_coord) + offset; - f32 new_pos_coord = (* pos_coord) - scast(f32, offset) * tile_size; - - assert( new_pos_coord >= 0.f ); - assert( new_pos_coord < tile_size ); - - if ( new_tile_coord < 0 ) - { - new_tile_coord += num_tiles; - -- new_tile_map_coord; - } - if ( new_tile_coord >= num_tiles ) - { - new_tile_coord -= num_tiles; - ++ new_tile_map_coord; - } - - (* tile_map_coord) = new_tile_map_coord; - (* tile_coord) = new_tile_coord; - (* pos_coord) = new_pos_coord; -} - -inline -CanonPosition recannonicalize_position( World* world, CanonPosition pos ) -{ - CanonPosition result = pos; - cannonicalize_coord( world, world->num_tiles_x, & result.tile_map_x, & result.tile_x, & result.x ); - cannonicalize_coord( world, world->num_tiles_y, & result.tile_map_y, & result.tile_y, & result.y ); - return result; -} - -inline -u32 tilemap_tile_value( TileMap* tile_map, World* world, s32 x, s32 y ) -{ - assert( tile_map != nullptr ); - assert( world != nullptr ); - assert( x >= 0 && x < scast(s32, world->num_tiles_x) ); - assert( y >= 0 && y < scast(s32, world->num_tiles_y) ); - return tile_map->tiles[ (y * world->num_tiles_x) + x ]; -} - -inline -b32 tilemap_is_point_empty( TileMap* tile_map, World* world, s32 tile_x, s32 tile_y ) -{ - assert( tile_map != nullptr ); - assert( world != nullptr ); - - // Assume space is occupied if there is bad data - if ( tile_map == nullptr ) - return false; - - b32 is_empty = false; - if ( tile_x >= 0 && tile_x < world->num_tiles_x - && tile_y >= 0 && tile_y < world->num_tiles_y ) - { - u32 tile_value = tilemap_tile_value( tile_map, world, tile_x, tile_y ); - is_empty = tile_value == 0; - } - return is_empty; -} - -inline -TileMap* world_get_tilemap( World* world, s32 tile_map_x, s32 tile_map_y ) -{ - assert( tile_map_x >= 0 && tile_map_x < world->tilemaps_num_x ); - assert( tile_map_y >= 0 && tile_map_y < world->tilemaps_num_y ); - return & world->tile_maps[ (tile_map_y * world->tilemaps_num_x) + tile_map_x ]; -} - -internal -b32 world_is_point_empty( World* world, CanonPosition position ) -{ - assert( world != nullptr ); - - b32 is_empty = false; - - TileMap* tile_map = world_get_tilemap( world, position.tile_map_x, position.tile_map_y ); - is_empty = tilemap_is_point_empty( tile_map, world, position.tile_x, position.tile_y ); - - return is_empty; -} - -void draw_debug_point(OffscreenBuffer* back_buffer, World* world, CanonPosition pos, f32 red, f32 green, f32 blue) -{ - draw_rectangle(back_buffer, - pos.x * world->tile_meters_to_pixels + world->tile_upper_left_x + scast(f32, pos.tile_x * world->tile_size_in_pixels), - pos.y * world->tile_meters_to_pixels + world->tile_upper_left_y + scast(f32, pos.tile_y * world->tile_size_in_pixels), - (pos.x + 0.1f) * world->tile_meters_to_pixels + world->tile_upper_left_x + scast(f32, pos.tile_x * world->tile_size_in_pixels), - (pos.y + 0.1f) * world->tile_meters_to_pixels + world->tile_upper_left_y + scast(f32, pos.tile_y * world->tile_size_in_pixels), - red, green, blue); -} - Engine_API void update_and_render( f32 delta_time, InputState* input, OffscreenBuffer* back_buffer , Memory* memory, platform::ModuleAPI* platform_api, ThreadContext* thread ) @@ -712,83 +549,53 @@ void update_and_render( f32 delta_time, InputState* input, OffscreenBuffer* back f32 x_offset_f = scast(f32, state->x_offset); f32 y_offset_f = scast(f32, state->y_offset); - constexpr s32 tile_map_num_x = 16; - constexpr s32 tile_map_num_y = 9; + constexpr s32 tile_map_num_x = 256; + constexpr s32 tile_map_num_y = 256; // tiles_XY - u32 tiles_00 [tile_map_num_y][tile_map_num_x] = { - { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }, - { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, - { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, - { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, - { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, - { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, - { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, - { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, - { 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1 }, + u32 temp_tiles [tile_map_num_y][tile_map_num_x] = { + { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }, + { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, + { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, + { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, + { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, + { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, + { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, + { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, + { 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }, + { 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }, + { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, + { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, + { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, + { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, + { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, + { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, + { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, + { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }, }; - u32 tiles_10 [tile_map_num_y][tile_map_num_x] = { - { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }, - { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, - { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, - { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, - { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, - { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, - { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, - { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, - { 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }, - }; - u32 tiles_01 [tile_map_num_y][tile_map_num_x] = { - { 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1 }, - { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, - { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, - { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, - { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, - { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, - { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, - { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, - { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }, - }; - u32 tiles_11 [tile_map_num_y][tile_map_num_x] = { - { 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }, - { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, - { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, - { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, - { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, - { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, - { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, - { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, - { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }, - }; - - TileMap tile_maps[2][2] {}; - tile_maps[0][0].tiles = rcast(u32*, tiles_00); - tile_maps[0][1].tiles = rcast(u32*, tiles_10); - tile_maps[1][0].tiles = rcast(u32*, tiles_01); - tile_maps[1][1].tiles = rcast(u32*, tiles_11); World world; - world.tile_size_in_meters = 1.4f; - world.tile_size_in_pixels = 85; + world.chunk_shift = 8; + world.chunk_mask = (1 << world.chunk_shift) - 1; + world.chunk_dimension = 256; + + world.tile_chunks_num_x = 1; + world.tile_chunks_num_y = 1; + + TileChunk temp_chunk; + temp_chunk.tiles = rcast( u32*, & temp_tiles ); + world.tile_chunks = & temp_chunk; + + world.tile_size_in_meters = 1.4f; + world.tile_size_in_pixels = 85; world.tile_meters_to_pixels = scast(f32, world.tile_size_in_pixels) / world.tile_size_in_meters; f32 tile_size_in_pixels = scast(f32, world.tile_size_in_pixels); - world.num_tiles_x = tile_map_num_x; - world.num_tiles_y = tile_map_num_y; - f32 scale = 85; - world.tile_upper_left_x = -( tile_size_in_pixels * 0.5f); - world.tile_upper_left_y = -( tile_size_in_pixels * 0.25f); - - world.tilemaps_num_x = 2; - world.tilemaps_num_y = 2; - - world.tile_maps = rcast(TileMap*, tile_maps); - - TileMap* current_tile_map = world_get_tilemap( & world, player->position.tile_map_x, player->position.tile_map_y ); - assert( current_tile_map != nullptr ); + world.tile_lower_left_x = -( tile_size_in_pixels * 0.5f); + world.tile_lower_left_y = +( tile_size_in_pixels * 0.25f) + scast(f32, back_buffer->height); player->height = 1.4f; player->width = player->height * 0.7f; @@ -798,82 +605,70 @@ void update_and_render( f32 delta_time, InputState* input, OffscreenBuffer* back input_poll_player_actions( input, & player_actions ); { - f32 move_speed = 6.f; + f32 move_speed = 4.f; f32 new_player_pos_x = player->position.x; f32 new_player_pos_y = player->position.y; if ( player_actions.player_x_move_analog || player_actions.player_y_move_analog ) { new_player_pos_x += scast(f32, player_actions.player_x_move_analog * delta_time * move_speed); - new_player_pos_y -= scast(f32, player_actions.player_y_move_analog * delta_time * move_speed); + new_player_pos_y += scast(f32, player_actions.player_y_move_analog * delta_time * move_speed); } else { new_player_pos_x += scast(f32, player_actions.player_x_move_digital) * delta_time * move_speed; - new_player_pos_y -= scast(f32, player_actions.player_y_move_digital) * delta_time * move_speed; + new_player_pos_y += scast(f32, player_actions.player_y_move_digital) * delta_time * move_speed; } new_player_pos_y += sinf( player->jump_time * TAU ) * 10.f * delta_time; b32 valid_new_pos = true; { - //RawPosition test_pos = { - // new_player_pos_x - player_half_width, new_player_pos_y - player_quarter_height, - // player->position.tile_map_x, player->position.tile_map_y - //}; - - CanonPosition test_pos = { + WorldPosition test_pos = { new_player_pos_x, new_player_pos_y, - player->position.tile_map_x, player->position.tile_map_y, player->position.tile_x, player->position.tile_y }; - test_pos = recannonicalize_position( & world, test_pos ); + test_pos = recannonicalize_position( & world, test_pos ); // TODO(Ed) : Need a delta-function that auto-reconnonicalizes. - CanonPosition test_pos_nw { + WorldPosition test_pos_nw { new_player_pos_x - player_half_width, new_player_pos_y - player_quarter_height, - player->position.tile_map_x, player->position.tile_map_y, player->position.tile_x, player->position.tile_y }; test_pos_nw = recannonicalize_position( & world, test_pos_nw ); valid_new_pos &= world_is_point_empty( & world, test_pos_nw ); - CanonPosition test_pos_ne { + WorldPosition test_pos_ne { new_player_pos_x + player_half_width, new_player_pos_y - player_quarter_height, - player->position.tile_map_x, player->position.tile_map_y, player->position.tile_x, player->position.tile_y }; - test_pos_ne = recannonicalize_position( & world, test_pos_ne ); + test_pos_ne = recannonicalize_position( & world, test_pos_ne ); valid_new_pos &= world_is_point_empty( & world, test_pos_ne ); - CanonPosition test_pos_sw { + WorldPosition test_pos_sw { new_player_pos_x - player_half_width, new_player_pos_y, - player->position.tile_map_x, player->position.tile_map_y, player->position.tile_x, player->position.tile_y }; - test_pos_sw = recannonicalize_position( & world, test_pos_sw ); + test_pos_sw = recannonicalize_position( & world, test_pos_sw ); valid_new_pos &= world_is_point_empty( & world, test_pos_sw ); - CanonPosition test_pos_se { + WorldPosition test_pos_se { new_player_pos_x + player_half_width, new_player_pos_y, - player->position.tile_map_x, player->position.tile_map_y, player->position.tile_x, player->position.tile_y }; - test_pos_se = recannonicalize_position( & world, test_pos_se ); + test_pos_se = recannonicalize_position( & world, test_pos_se ); valid_new_pos &= world_is_point_empty( & world, test_pos_se ); } if ( valid_new_pos ) { - CanonPosition new_pos = { + WorldPosition new_pos = { new_player_pos_x, new_player_pos_y, - player->position.tile_map_x, player->position.tile_map_y, player->position.tile_x, player->position.tile_y }; player->position = recannonicalize_position( & world, new_pos ); } - // player_tile_x if ( player->jump_time > 0.f ) { @@ -898,12 +693,19 @@ void update_and_render( f32 delta_time, InputState* input, OffscreenBuffer* back , 1.f, 0.24f, 0.24f ); - // Draw tilemap - for ( s32 row = 0; row < 9; ++ row ) +// Scrolling shitshow +#if 1 + f32 center_x = 0.5f * scast(f32, back_buffer->width); + f32 center_y = 0.5f * scast(f32, back_buffer->height); + + for ( s32 relative_row = -10; relative_row < +10; ++ relative_row ) { - for ( s32 col = 0; col < 16; ++ col ) + for ( s32 relative_col = -20; relative_col < +20; ++ relative_col ) { - u32 tileID = tilemap_tile_value( current_tile_map, & world, col, row ); + u32 col = player->position.tile_x + relative_col; + u32 row = player->position.tile_y + relative_row; + + u32 tileID = piggy_get_tile_value( & world, col, row ); f32 color[3] = { 0.15f, 0.15f, 0.15f }; if ( tileID == 1 ) @@ -920,17 +722,15 @@ void update_and_render( f32 delta_time, InputState* input, OffscreenBuffer* back color[2] = 0.3f; } - f32 min_x = world.tile_upper_left_x + scast(f32, col) * tile_size_in_pixels; - f32 min_y = world.tile_upper_left_y + scast(f32, row) * tile_size_in_pixels; - // f32 min_x = scast(f32, col) * tile_size_in_pixels; - // f32 min_y = scast(f32, row) * tile_size_in_pixels; - f32 max_x = min_x + tile_size_in_pixels; - f32 max_y = min_y + tile_size_in_pixels; + f32 min_x = center_x + scast(f32, relative_col) * tile_size_in_pixels; + f32 min_y = center_y - scast(f32, relative_row) * tile_size_in_pixels; + f32 max_x = min_x + tile_size_in_pixels; + f32 max_y = min_y - tile_size_in_pixels; draw_rectangle( back_buffer - , min_x, min_y - , max_x, max_y - , color[0], color[1], color[2] ); + , min_x, max_y + , max_x, min_y + , color[0], color[1], color[2] ); } } @@ -939,16 +739,88 @@ void update_and_render( f32 delta_time, InputState* input, OffscreenBuffer* back f32 player_green = 0.7f; f32 player_blue = 0.3f; - f32 player_tile_x_offset = scast(f32, player->position.tile_x * world.tile_size_in_pixels); - f32 player_tile_y_offset = scast(f32, player->position.tile_y * world.tile_size_in_pixels); + f32 player_tile_x_offset = center_x + scast(f32, player->position.tile_x) * world.tile_meters_to_pixels; + f32 player_tile_y_offset = center_y - scast(f32, player->position.tile_y) * world.tile_meters_to_pixels; - f32 player_screen_pos_x = world.tile_upper_left_x + player_tile_x_offset + player->position.x * world.tile_meters_to_pixels; - f32 player_screen_pos_y = world.tile_upper_left_y + player_tile_y_offset + player->position.y * world.tile_meters_to_pixels; + f32 player_screen_pos_x = center_x + player->position.x * world.tile_meters_to_pixels; + f32 player_screen_pos_y = center_y - player->position.y * world.tile_meters_to_pixels; + +// player_min_x = player_tile_x_offset - player_half_width * world; draw_rectangle( back_buffer - , player_screen_pos_x - player_half_width * world.tile_meters_to_pixels, player_screen_pos_y - player->height * world.tile_meters_to_pixels - , player_screen_pos_x + player_half_width * world.tile_meters_to_pixels, player_screen_pos_y - , player_red, player_green, player_blue ); + , player_screen_pos_x - player_half_width * world.tile_meters_to_pixels, player_screen_pos_y - player->height * world.tile_meters_to_pixels + , player_screen_pos_x + player_half_width * world.tile_meters_to_pixels, player_screen_pos_y + , player_red, player_green, player_blue ); +#endif + +// Non-scrolling screen +#if 0 + // Draw TileChunk + for ( u32 row = 0; row < 9; ++ row ) + { + for ( u32 col = 0; col < 16; ++ col ) + { + u32 tileID = piggy_get_tile_value( & world, col, row ); + f32 color[3] = { 0.15f, 0.15f, 0.15f }; + + if ( tileID == 1 ) + { + color[0] = 0.22f; + color[1] = 0.22f; + color[2] = 0.22f; + } + + if ( row == player->position.tile_y && col == player->position.tile_x ) + { + color[0] = 0.44f; + color[1] = 0.3f; + color[2] = 0.3f; + } + + #if 0 + // Was able to flip Y properly but not get the center alignemnt with the world.tile_lower_left that I wanted.. + f32 min_x = world.tile_lower_left_x + scast(f32, col) * tile_size_in_pixels; + f32 min_y = scast(f32, row) * tile_size_in_pixels; + f32 max_x = min_x + tile_size_in_pixels; + f32 max_y = min_y + tile_size_in_pixels; + + draw_rectangle( back_buffer + , min_x, min_y + , max_x, max_y + //, min_x, max_y + //, max_x, min_y + , color[0], color[1], color[2] ); + #else + f32 min_x = world.tile_lower_left_x + scast(f32, col) * tile_size_in_pixels; + f32 min_y = world.tile_lower_left_y - scast(f32, row) * tile_size_in_pixels; + f32 max_x = min_x + tile_size_in_pixels; + f32 max_y = min_y - tile_size_in_pixels; + + draw_rectangle( back_buffer + , min_x, max_y + , max_x, min_y + , color[0], color[1], color[2] ); + #endif + } + } + + // Player + f32 player_red = 0.7f; + f32 player_green = 0.7f; + f32 player_blue = 0.3f; + + f32 player_tile_x_offset = scast(f32, player->position.tile_x * world.tile_size_in_pixels); + f32 player_tile_y_offset = -scast(f32, player->position.tile_y * world.tile_size_in_pixels); + + f32 player_screen_pos_x = world.tile_lower_left_x + player_tile_x_offset + player->position.x * world.tile_meters_to_pixels; + f32 player_screen_pos_y = world.tile_lower_left_y + player_tile_y_offset - player->position.y * world.tile_meters_to_pixels; + + draw_rectangle( back_buffer + , player_screen_pos_x - player_half_width * world.tile_meters_to_pixels, player_screen_pos_y - player->height * world.tile_meters_to_pixels + , player_screen_pos_x + player_half_width * world.tile_meters_to_pixels, player_screen_pos_y + , player_red, player_green, player_blue ); +#endif + // Auto-Snapshot percent bar if (1) diff --git a/project/engine/engine.hpp b/project/engine/engine.hpp index 8de08a0..0ad6644 100644 --- a/project/engine/engine.hpp +++ b/project/engine/engine.hpp @@ -282,46 +282,59 @@ struct RecordedInput }; #endif -struct TileMap +struct TileChunk { u32* tiles; }; struct World { + // TODO(Ed) : Remove + f32 tile_lower_left_x; + f32 tile_lower_left_y; + + + u32 chunk_shift; + u32 chunk_mask; + f32 tile_size_in_meters; s32 tile_size_in_pixels; f32 tile_meters_to_pixels; - f32 tile_upper_left_x; - f32 tile_upper_left_y; - - s32 num_tiles_x; // Number of tiles on the x-axis for a tilemap. - s32 num_tiles_y; // Number of tiles on the y-axis for a tilemap. + u32 chunk_dimension; // TODO(Ed) : Beginner's sparseness - s32 tilemaps_num_x; - s32 tilemaps_num_y; + s32 tile_chunks_num_x; + s32 tile_chunks_num_y; - TileMap* tile_maps; + TileChunk* tile_chunks; }; -struct CanonPosition +/* + This is a "backend" transient datatype for handling lookup of tile data from "chunks" of tiles. +*/ +struct TileChunkPosition +{ + u32 tile_chunk_x; + u32 tile_chunk_y; + + // "Chunk-relative (x, y) + + u32 tile_x; + u32 tile_y; +}; + +struct WorldPosition { // TODO(Ed) : Should this be from the center of the tile? + f32 x; f32 y; - /* TODO(Ed) : - Take the tile map x & y and the tile x & y - where there is some low bits for the tile index - and the high bits are the tile "page". - */ - s32 tile_map_x; - s32 tile_map_y; + // "World-relative (x, y), AKA: Absolute Position, etc - s32 tile_x; - s32 tile_y; + u32 tile_x; + u32 tile_y; }; NS_ENGINE_END diff --git a/project/engine/state_and_replay.cpp b/project/engine/state_and_replay.cpp new file mode 100644 index 0000000..29f23ea --- /dev/null +++ b/project/engine/state_and_replay.cpp @@ -0,0 +1,196 @@ +/* TODO(Ed) : Do this properly later +I shoved this in here to depollute the mess Casey is making in engine.cpp. +I'll set this up more properly later when I see a good time to clean things up. + +Doing my best to follow his advice to leave cleaning to when things are more "cemented". +*/ +#if INTELLISENSE_DIRECTIVES +#include "engine.hpp" +#endif + +NS_ENGINE_BEGIN + +using SnapshotFn = void ( Memory* memory, platform::ModuleAPI* platform_api ); + +internal +void load_engine_snapshot( Memory* memory, platform::ModuleAPI* platform_api ) +{ + platform_api->memory_copy( memory->persistent, memory->total_size() + , memory->snapshots[ memory->active_snapshot_slot ].memory ); +} + +internal +void load_game_snapshot( Memory* memory, platform::ModuleAPI* platform_api ) +{ + s32 slot = memory->active_snapshot_slot; + EngineState* state = rcast( EngineState*, memory->persistent ); + + void* persistent_slot = memory->snapshots[ slot ].memory; + void* transient_slot = rcast( Byte*, memory->snapshots[ slot ].memory ) + state->game_memory.persistent_size; + + platform_api->memory_copy( state->game_memory.persistent, state->game_memory.persistent_size, persistent_slot ); + platform_api->memory_copy( state->game_memory.transient, state->game_memory.transient_size, transient_slot ); +} + +internal +void take_engine_snapshot( Memory* memory, platform::ModuleAPI* platform_api ) +{ + platform_api->memory_copy( memory->snapshots[ memory->active_snapshot_slot ].memory, memory->total_size(), memory->persistent ); + memory->snapshots[ memory->active_snapshot_slot ].age = platform_api->get_wall_clock(); +} + +internal +void take_game_snapshot( Memory* memory, platform::ModuleAPI* platform_api ) +{ + s32 slot = memory->active_snapshot_slot; + EngineState* state = rcast( EngineState*, memory->persistent ); + + void* persistent_slot = memory->snapshots[ slot ].memory; + void* transient_slot = rcast( Byte*, memory->snapshots[ slot ].memory ) + state->game_memory.persistent_size; + + platform_api->memory_copy( persistent_slot, state->game_memory.persistent_size, state->game_memory.persistent ); + platform_api->memory_copy( transient_slot, state->game_memory.transient_size, state->game_memory.transient ); + memory->snapshots[ memory->active_snapshot_slot ].age = platform_api->get_wall_clock(); +} + +internal +void begin_recording_input( Memory* memory, InputState* input, platform::ModuleAPI* platform_api ) +{ + Str file_name = str_ascii("test_input_"); + StrPath file_path = {}; + file_path.concat( platform_api->path_scratch, file_name ); + snprintf( file_path.ptr, file_path.len, "%s%d.hm_replay", file_name.ptr, memory->active_snapshot_slot ); + + memory->active_input_replay_file.path = file_path; + platform_api->file_delete( memory->active_input_replay_file.path ); + memory->replay_mode = ReplayMode_Record; +} + +internal +void end_recording_input( Memory* memory, InputState* input, platform::ModuleAPI* platform_api ) +{ + memory->replay_mode = ReplayMode_Off; + platform_api->file_close( & memory->active_input_replay_file ); +} + +internal +void begin_playback_input( Memory* memory, InputState* input, platform::ModuleAPI* platform_api ) +{ + Str file_name = str_ascii("test_input_"); + StrPath file_path = {}; + file_path.concat( platform_api->path_scratch, file_name ); + snprintf( file_path.ptr, file_path.len, "%s%d.hm_replay", file_name.ptr, memory->active_snapshot_slot ); + + // TODO(Ed - From Casey): Recording system still seems to take too long + // on record start - find out what Windows is doing and if + // we can speed up / defer some of that processing. + + if ( platform_api->file_check_exists( file_path ) ) + { + memory->active_input_replay_file.path = file_path; + memory->replay_mode = ReplayMode_Playback; + } + else + { + // TODO(Ed) : Logging + } +} + +internal +void end_playback_input( Memory* memory, InputState* input, platform::ModuleAPI* platform_api ) +{ + memory->replay_mode = ReplayMode_Off; + platform_api->file_close( & memory->active_input_replay_file ); +} + +InputStateSnapshot input_state_snapshot( InputState* input ) +{ + InputStateSnapshot snapshot = {}; + for ( s32 idx = 0; idx < array_count( snapshot.controllers ); ++ idx ) + { + ControllerState* controller = & input->controllers[idx]; + if ( controller == nullptr ) + continue; + + if ( controller->ds_pad ) + snapshot.controllers[idx].ds_pad = *controller->ds_pad; + + if ( controller->xpad ) + snapshot.controllers[idx].xpad = *controller->xpad; + + if ( controller->keyboard ) + { + snapshot.controllers[idx].keyboard = *controller->keyboard; + } + + if ( controller->mouse ) + snapshot.controllers[idx].mouse = *controller->mouse; + } + return snapshot; +} + +internal +void record_input( Memory* memory, InputState* input, platform::ModuleAPI* platform_api ) +{ + InputStateSnapshot snapshot = input_state_snapshot( input ); + if ( platform_api->file_write_stream( & memory->active_input_replay_file, sizeof(snapshot), &snapshot ) == 0 ) + { + // TODO(Ed) : Logging + } +} + +internal +void play_input( SnapshotFn* load_snapshot, Memory* memory, InputState* input, platform::ModuleAPI* platform_api ) +{ + InputStateSnapshot new_input; + if ( platform_api->file_read_stream( & memory->active_input_replay_file, sizeof(InputStateSnapshot), & new_input ) == 0 ) + { + load_snapshot( memory, platform_api ); + platform_api->file_rewind( & memory->active_input_replay_file ); + return; + } + + for ( s32 idx = 0; idx < array_count( new_input.controllers ); ++ idx ) + { + ControllerState* controller = & input->controllers[idx]; + if ( controller == nullptr ) + continue; + + if ( controller->ds_pad ) + *controller->ds_pad = new_input.controllers[idx].ds_pad; + + if ( controller->xpad ) + *controller->xpad = new_input.controllers[idx].xpad; + + if ( controller->keyboard ) + { + *controller->keyboard = new_input.controllers[idx].keyboard; + } + + if ( controller->mouse ) + *controller->mouse = new_input.controllers[idx].mouse; + } +} + +void process_loop_mode( SnapshotFn* take_snapshot, SnapshotFn* load_snapshot + , Memory* memory, EngineState* state, InputState* input, platform::ModuleAPI* platform_api ) +{ + if ( memory->replay_mode == ReplayMode_Off ) + { + take_snapshot( memory, platform_api ); + begin_recording_input( memory, input, platform_api ); + } + else if ( memory->replay_mode == ReplayMode_Playback ) + { + end_playback_input( memory, input, platform_api ); + load_snapshot( memory, platform_api ); + } + else if ( memory->replay_mode == ReplayMode_Record ) + { + end_recording_input( memory, input, platform_api ); + load_snapshot( memory, platform_api ); + begin_playback_input( memory, input, platform_api ); + } +} + +NS_ENGINE_END diff --git a/project/handmade.hpp b/project/handmade.hpp index b04a3b1..65ccebe 100644 --- a/project/handmade.hpp +++ b/project/handmade.hpp @@ -78,7 +78,7 @@ struct PlayerState //f32 pos_x; //f32 pos_y; - engine::CanonPosition position; + engine::WorldPosition position; b32 mid_jump; f32 jump_time; diff --git a/project/platform/intrinsics.hpp b/project/platform/intrinsics.hpp index bb7ca01..98003a7 100644 --- a/project/platform/intrinsics.hpp +++ b/project/platform/intrinsics.hpp @@ -6,22 +6,28 @@ // TODO(Ed) : Convert all of these to platform-efficient versions +//inline +//s32 abs( s32 value ) +//{ +// return ; +//} + inline -s32 floor_f32_to_s32( f32 value ) +s32 floor( f32 value ) { s32 result = scast(s32, floorf( value )); return result; } inline -s32 round_f32_to_s32( f32 value ) +s32 round( f32 value ) { s32 result = scast(s32, value + 0.5f); return result; } inline -s32 truncate_f32_to_s32( f32 value ) +s32 truncate( f32 value ) { s32 result = scast(s32, value); return result; diff --git a/scripts/build.ps1 b/scripts/build.ps1 index 0e2966d..0a03fad 100644 --- a/scripts/build.ps1 +++ b/scripts/build.ps1 @@ -157,11 +157,11 @@ function build-engine $should_build = check-ModuleForChanges $path_engine if ( $should_build -eq $false ) { write-host "No changes detected in engine module, skipping build" -ForegroundColor Yellow - return + return $true } $path_pdb_lock = Join-Path $path_binaries 'handmade_engine.pdb.lock' - New-Item $path_pdb_lock -ItemType File -Force + New-Item $path_pdb_lock -ItemType File -Force > $null # Delete old PDBs [Array]$pdb_files = Get-ChildItem -Path $path_binaries -Filter "handmade_engine_*.pdb" @@ -191,12 +191,17 @@ function build-engine $unit = Join-Path $path_project 'handmade_engine.cpp' $dynamic_library = Join-Path $path_binaries 'handmade_engine.dll' - build-simple $path_build $includes $compiler_args $linker_args $unit $dynamic_library + $build_result = build-simple $path_build $includes $compiler_args $linker_args $unit $dynamic_library Remove-Item $path_pdb_lock -Force + if ( $build_result -eq $false ) { + return $false + } + #region CodeGen Post-Build - if ( -not $handmade_process_active ) { + if ( -not $handmade_process_active -and $build_result ) + { $path_engine_symbols = Join-Path $path_build 'handmade_engine.symbols' # Create the symbol table @@ -285,36 +290,45 @@ function build-engine $unit = Join-Path $path_codegen 'engine_postbuild_gen.cpp' $executable = Join-Path $path_build 'engine_postbuild_gen.exe' - build-simple $path_build $local:includes $compiler_args $linker_args $unit $executable - - Push-Location $path_build - $time_taken = Measure-Command { - & $executable 2>&1 | ForEach-Object { - write-host `t $_ -ForegroundColor Green + if ( build-simple $path_build $local:includes $compiler_args $linker_args $unit $executable ) + { + Push-Location $path_build + $time_taken = Measure-Command { + & $executable 2>&1 | ForEach-Object { + write-host `t $_ -ForegroundColor Green + } } - } - Pop-Location + Pop-Location - $path_generated_file = Join-Path $path_build 'engine_symbol_table.hpp' - move-item $path_generated_file (join-path $path_gen (split-path $path_generated_file -leaf)) -Force - $should_format_gen = $true + $path_generated_file = Join-Path $path_build 'engine_symbol_table.hpp' + move-item $path_generated_file (join-path $path_gen (split-path $path_generated_file -leaf)) -Force + $should_format_gen = $true + + return $true + } + + return $false } } if ( $engine ) { - build-engine + $build_result = build-engine + if ( $build_result -eq $false ) { + $path_csv = Join-Path $path_build 'engine_module_hashes.csv' + Remove-Item $path_csv -Force + } } function build-platform { if ( $handmade_process_active ) { write-host "Handmade process is active, skipping platform build" -ForegroundColor Yellow - return + return $true } $should_build = check-ModuleForChanges $path_platform if ( $should_build -eq $false ) { write-host "No changes detected in platform module, skipping build" -ForegroundColor Yellow - return + return $true } # CodeGen Pre-Build @@ -330,7 +344,7 @@ function build-platform $path_platform_gen = Join-Path $path_platform 'gen' if ( -not (Test-Path $path_platform_gen) ) { - New-Item $path_platform_gen -ItemType Directory + New-Item $path_platform_gen -ItemType Directory > $null } $local:includes = $script:includes @@ -346,7 +360,10 @@ function build-platform $unit = Join-Path $path_codegen 'platform_gen.cpp' $executable = Join-Path $path_build 'platform_gen.exe' - build-simple $path_build $includes $compiler_args $linker_args $unit $executable $path_build + $build_result = build-simple $path_build $includes $compiler_args $linker_args $unit $executable $path_build + if ( $build_result -eq $false ) { + return $false + } Push-Location $path_platform $time_taken = Measure-Command { @@ -384,10 +401,15 @@ function build-platform $unit = Join-Path $path_project 'handmade_win32.cpp' $executable = Join-Path $path_binaries 'handmade_win32.exe' - build-simple $path_build $includes $compiler_args $linker_args $unit $executable + return build-simple $path_build $includes $compiler_args $linker_args $unit $executable + } if ( $platform ) { - build-platform + $build_result = build-platform + if ( -not $build_result ) { + $path_csv = Join-Path $path_build 'platform_module_hashes.csv' + Remove-Item $path_csv -Force + } } $path_jsl_dll = Join-Path $path_binaries 'JoyShockLibrary.dll' diff --git a/scripts/handmade.rdbg b/scripts/handmade.rdbg index 07fd563ac9c71881bd833bd3c1cfd86f03a6f090..c6f7cf120981477e2f862a9d3ce2684c2fa28a5e 100644 GIT binary patch delta 219 zcmZ3^vXE^;J|{Z^1A`6_Cr{ibAyJ%Mlvz+x98;8hPRBcsCP4UF8A_cOAxasVY^B7BntnZy7op+Ry0 delta 80 zcmZ3;wwz@`J}WZ=1B27#0!Ed|GE9n-^BK(;O`$wa&f=1y%)Insy^P5(8ACYQ8G%ZH aU~(dp+vJT*3Tz-gBgf>2Ov;nFnZ*Dq{u1*5 diff --git a/scripts/helpers/configure_toolchain.ps1 b/scripts/helpers/configure_toolchain.ps1 index f57baad..7ea5478 100644 --- a/scripts/helpers/configure_toolchain.ps1 +++ b/scripts/helpers/configure_toolchain.ps1 @@ -46,11 +46,13 @@ function run-compiler } } - if ( Test-Path($unit) ) { + if ( $LASTEXITCODE -eq 0 ) { write-host "$unit compile finished in $($time_taken.TotalMilliseconds) ms`n" + return $true } else { write-host "Compile failed for $unit`n" -ForegroundColor Red + return $false } } @@ -77,11 +79,13 @@ function run-linker } } - if ( Test-Path($binary) ) { + if ( $LASTEXITCODE -eq 0 ) { write-host "$binary linking finished in $($time_taken.TotalMilliseconds) ms`n" + return $true } else { write-host "Linking failed for $binary`n" -ForegroundColor Red + return $false } } @@ -160,6 +164,7 @@ if ( $vendor -match "clang" ) function build-simple { param( [string]$path_output, [array]$includes, [array]$compiler_args, [array]$linker_args, [string]$unit, [string]$binary ) + $result = $false #Write-Host "build-simple: clang" $object = $unit -replace '\.cpp', '.obj' @@ -205,7 +210,9 @@ if ( $vendor -match "clang" ) $compiler_args += $includes | ForEach-Object { $flag_include + $_ } $compiler_args += $flag_compile, $unit - run-compiler $compiler $unit $compiler_args + if ( (run-compiler $compiler $unit $compiler_args) -eq $false ) { + return $false + } $linker_args += @( $flag_link_win_machine_64, @@ -222,7 +229,7 @@ if ( $vendor -match "clang" ) } $linker_args += $object - run-linker $linker $binary $linker_args + return run-linker $linker $binary $linker_args # $compiler_args += $unit # $linker_args | ForEach-Object { @@ -285,6 +292,7 @@ if ( $vendor -match "msvc" ) function build-simple { param( [string]$path_output, [array]$includes, [array]$compiler_args, [array]$linker_args, [string]$unit, [string]$binary ) + $result = $false #Write-Host "build-simple: msvc" $object = $unit -replace '\.(cpp)$', '.obj' @@ -336,7 +344,9 @@ if ( $vendor -match "msvc" ) $compiler_args += $includes | ForEach-Object { $flag_include + $_ } $compiler_args += $flag_compile, $unit - run-compiler $compiler $unit $compiler_args + if ( (run-compiler $compiler $unit $compiler_args) -eq $false ) { + return $false; + } $linker_args += @( $flag_nologo, @@ -353,7 +363,7 @@ if ( $vendor -match "msvc" ) } $linker_args += $object - run-linker $linker $binary $linker_args + return run-linker $linker $binary $linker_args # $compiler_args += $unit # $compiler_args += $flag_linker