diff --git a/_drafts/2020-1-28-entity-component-system.md b/_drafts/2020-1-28-entity-component-system.md new file mode 100644 index 000000000..c4f98ade7 --- /dev/null +++ b/_drafts/2020-1-28-entity-component-system.md @@ -0,0 +1,16 @@ +--- +title: An introduction to Entity–component–systems +updated: 2020-6-8 +--- + +Recently, I created the fourth version of my game GetSquared. GetSquared is a game I have been working on and off of for the past 3 years, with this being it's fourth finished version, seventh attempt. +Before this all of the other versions had online networking, but that was proving to be a real challenge, so for this version it was local single player only. + +GetSquared version four was created using the Entity–component–system archecture. +The short and simple explaination is that ECS is an archecture in which the game entities are just UUIDs which get assigned to systems. +For instance "player" entity would get the Velocity system, MarkerSummoner, CharacterController2D system, etc. +Each system is meant to handle one thing in the game. +For instance the MarkerSummoner system handles summoning a marker when the user presses `space` to summon one, and the CharacterController2D handles converting player key presses into momentum to be applied to their velocity. +The velocity system turns uses the player's velocity to change the current position of the player. + + diff --git a/_posts/2020-1-28-GetSquaredv4.md b/_posts/2020-1-28-GetSquaredv4.md new file mode 100644 index 000000000..acbe9d3c5 --- /dev/null +++ b/_posts/2020-1-28-GetSquaredv4.md @@ -0,0 +1,7 @@ +--- +title: GetSquared Version Four +updated: 2020-1-28 +sitemap: false +externalURL: https://gsv4.hampton.pw/client/index.html +--- + diff --git a/feed.xml b/feed.xml index 458c3926a..42849249f 100644 --- a/feed.xml +++ b/feed.xml @@ -13,8 +13,17 @@ layout: null