-
-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ECS & Networking Refactoring #170
Merged
PowerfulBacon
merged 32 commits into
main
from
Changes-the-way-we-modify-component-values
Sep 13, 2023
Merged
ECS & Networking Refactoring #170
PowerfulBacon
merged 32 commits into
main
from
Changes-the-way-we-modify-component-values
Sep 13, 2023
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This allows arbitrary actions to be called on a system without the requirement of a signal. This means that we can set the value of a variable on the thread which has ownership of that value. Note that these will not be networked and cannot be networked unlike signals. Hopefully this can be abstracted away when we introduce proper CVars and thread ownership management.
…lling methods though)
Depreciating networking for the time being, until we can sort something out that is easier to use. |
PowerfulBacon
added a commit
that referenced
this pull request
May 12, 2024
commit 20586d0 Author: PowerfulBacon <[email protected]> Date: Sat Sep 16 22:15:29 2023 +0100 Optimisations commit 3c287ec Author: PowerfulBacon <[email protected]> Date: Sat Sep 16 21:33:53 2023 +0100 Fixes rendering commit f9f3a1d Author: PowerfulBacon <[email protected]> Date: Fri Sep 15 15:53:17 2023 +0100 Some more stuff to get compilation working commit 2b889fd Author: PowerfulBacon <[email protected]> Date: Fri Sep 15 14:57:03 2023 +0100 Update PlaneRenderer.cs commit 861e9ba Merge: 5e5ad70 5eb6aa4 Author: PowerfulBacon <[email protected]> Date: Fri Sep 15 14:56:57 2023 +0100 Merge branch 'main' into Render-Core-Rework commit 5e5ad70 Author: PowerfulBacon <[email protected]> Date: Fri Sep 15 14:37:27 2023 +0100 Render core reworks commit 924bde2 Author: PowerfulBacon <[email protected]> Date: Thu Sep 14 22:16:16 2023 +0100 Updates the project manifest, merges render cores and renderers commit 5eb6aa4 Author: PowerfulBacon <[email protected]> Date: Thu Sep 14 21:30:24 2023 +0100 Update EULA (#179) commit 58010e2 Author: PowerfulBacon <[email protected]> Date: Thu Sep 14 21:27:51 2023 +0100 Adds the EULA (#178) commit e8efb77 Author: PowerfulBacon <[email protected]> Date: Wed Sep 13 19:15:10 2023 +0100 ECS & Networking Refactoring (#170) * Implements CVar * Fixes a few things that didnt work * Adds NetVar * NetVar framework * Some messy netvars * Adds the ability to queue arbitrary actions to run on a system thread This allows arbitrary actions to be called on a system without the requirement of a signal. This means that we can set the value of a variable on the thread which has ownership of that value. Note that these will not be networked and cannot be networked unlike signals. Hopefully this can be abstracted away when we introduce proper CVars and thread ownership management. * Contents no longer uses this module which doesn't exist * Cvars * Implements world to act as a container for static instances * Implements entity system setup * Implements processing systems * Implements world specific events, down to 8 failing tests * Fixes a failing test case * Optimises signal call from 30000 => 7000000 (Still only 1% of just calling methods though) * Fixes network initialisation order issues * Fixes processing systems constantly firing if control was relinquished * Fixes entity systems becoming deadlocked * Processing systems * Fixes entity system processing * Disables processing system debug * Adds in a rendering scaling mode, fixes button test * Update ExampleRenderCore.cs * Update NetCVar.cs * Fixes CVAR network communications. Deletes automap * Render Core Depth Output * Adds the ability to fetch the depth texture and render texture from render cores * Implements proper depth drawing across render core layers * Removes the depth program * Fixes the tests not compiling * Update RenderCore.cs * Update NetworkingTest.cs commit eb22330 Author: PowerfulBacon <[email protected]> Date: Thu Apr 6 22:53:06 2023 +0100 Adds my discord link to the readme (#174) commit 52d56d5 Author: PowerfulBacon <[email protected]> Date: Thu Apr 6 22:47:39 2023 +0100 Create FUNDING.yml (#172)
PowerfulBacon
added a commit
that referenced
this pull request
May 12, 2024
commit 20586d0 Author: PowerfulBacon <[email protected]> Date: Sat Sep 16 22:15:29 2023 +0100 Optimisations commit 3c287ec Author: PowerfulBacon <[email protected]> Date: Sat Sep 16 21:33:53 2023 +0100 Fixes rendering commit f9f3a1d Author: PowerfulBacon <[email protected]> Date: Fri Sep 15 15:53:17 2023 +0100 Some more stuff to get compilation working commit 2b889fd Author: PowerfulBacon <[email protected]> Date: Fri Sep 15 14:57:03 2023 +0100 Update PlaneRenderer.cs commit 861e9ba Merge: 5e5ad70 5eb6aa4 Author: PowerfulBacon <[email protected]> Date: Fri Sep 15 14:56:57 2023 +0100 Merge branch 'main' into Render-Core-Rework commit 5e5ad70 Author: PowerfulBacon <[email protected]> Date: Fri Sep 15 14:37:27 2023 +0100 Render core reworks commit 924bde2 Author: PowerfulBacon <[email protected]> Date: Thu Sep 14 22:16:16 2023 +0100 Updates the project manifest, merges render cores and renderers commit 5eb6aa4 Author: PowerfulBacon <[email protected]> Date: Thu Sep 14 21:30:24 2023 +0100 Update EULA (#179) commit 58010e2 Author: PowerfulBacon <[email protected]> Date: Thu Sep 14 21:27:51 2023 +0100 Adds the EULA (#178) commit e8efb77 Author: PowerfulBacon <[email protected]> Date: Wed Sep 13 19:15:10 2023 +0100 ECS & Networking Refactoring (#170) * Implements CVar * Fixes a few things that didnt work * Adds NetVar * NetVar framework * Some messy netvars * Adds the ability to queue arbitrary actions to run on a system thread This allows arbitrary actions to be called on a system without the requirement of a signal. This means that we can set the value of a variable on the thread which has ownership of that value. Note that these will not be networked and cannot be networked unlike signals. Hopefully this can be abstracted away when we introduce proper CVars and thread ownership management. * Contents no longer uses this module which doesn't exist * Cvars * Implements world to act as a container for static instances * Implements entity system setup * Implements processing systems * Implements world specific events, down to 8 failing tests * Fixes a failing test case * Optimises signal call from 30000 => 7000000 (Still only 1% of just calling methods though) * Fixes network initialisation order issues * Fixes processing systems constantly firing if control was relinquished * Fixes entity systems becoming deadlocked * Processing systems * Fixes entity system processing * Disables processing system debug * Adds in a rendering scaling mode, fixes button test * Update ExampleRenderCore.cs * Update NetCVar.cs * Fixes CVAR network communications. Deletes automap * Render Core Depth Output * Adds the ability to fetch the depth texture and render texture from render cores * Implements proper depth drawing across render core layers * Removes the depth program * Fixes the tests not compiling * Update RenderCore.cs * Update NetworkingTest.cs commit eb22330 Author: PowerfulBacon <[email protected]> Date: Thu Apr 6 22:53:06 2023 +0100 Adds my discord link to the readme (#174) commit 52d56d5 Author: PowerfulBacon <[email protected]> Date: Thu Apr 6 22:47:39 2023 +0100 Create FUNDING.yml (#172)
PowerfulBacon
added a commit
that referenced
this pull request
May 12, 2024
* Implements CVar * Fixes a few things that didnt work * Adds NetVar * NetVar framework * Some messy netvars * Adds the ability to queue arbitrary actions to run on a system thread This allows arbitrary actions to be called on a system without the requirement of a signal. This means that we can set the value of a variable on the thread which has ownership of that value. Note that these will not be networked and cannot be networked unlike signals. Hopefully this can be abstracted away when we introduce proper CVars and thread ownership management. * Contents no longer uses this module which doesn't exist * Cvars * Implements world to act as a container for static instances * Implements entity system setup * Implements processing systems * Implements world specific events, down to 8 failing tests * Fixes a failing test case * Optimises signal call from 30000 => 7000000 (Still only 1% of just calling methods though) * Fixes network initialisation order issues * Fixes processing systems constantly firing if control was relinquished * Fixes entity systems becoming deadlocked * Processing systems * Fixes entity system processing * Disables processing system debug * Adds in a rendering scaling mode, fixes button test * Update ExampleRenderCore.cs * Update NetCVar.cs * Fixes CVAR network communications. Deletes automap * Render Core Depth Output * Adds the ability to fetch the depth texture and render texture from render cores * Implements proper depth drawing across render core layers * Removes the depth program * Fixes the tests not compiling * Update RenderCore.cs * Update NetworkingTest.cs * Update DmiIconConversionUtility.csproj * Squashed commit of the following: commit 20586d0 Author: PowerfulBacon <[email protected]> Date: Sat Sep 16 22:15:29 2023 +0100 Optimisations commit 3c287ec Author: PowerfulBacon <[email protected]> Date: Sat Sep 16 21:33:53 2023 +0100 Fixes rendering commit f9f3a1d Author: PowerfulBacon <[email protected]> Date: Fri Sep 15 15:53:17 2023 +0100 Some more stuff to get compilation working commit 2b889fd Author: PowerfulBacon <[email protected]> Date: Fri Sep 15 14:57:03 2023 +0100 Update PlaneRenderer.cs commit 861e9ba Merge: 5e5ad70 5eb6aa4 Author: PowerfulBacon <[email protected]> Date: Fri Sep 15 14:56:57 2023 +0100 Merge branch 'main' into Render-Core-Rework commit 5e5ad70 Author: PowerfulBacon <[email protected]> Date: Fri Sep 15 14:37:27 2023 +0100 Render core reworks commit 924bde2 Author: PowerfulBacon <[email protected]> Date: Thu Sep 14 22:16:16 2023 +0100 Updates the project manifest, merges render cores and renderers commit 5eb6aa4 Author: PowerfulBacon <[email protected]> Date: Thu Sep 14 21:30:24 2023 +0100 Update EULA (#179) commit 58010e2 Author: PowerfulBacon <[email protected]> Date: Thu Sep 14 21:27:51 2023 +0100 Adds the EULA (#178) commit e8efb77 Author: PowerfulBacon <[email protected]> Date: Wed Sep 13 19:15:10 2023 +0100 ECS & Networking Refactoring (#170) * Implements CVar * Fixes a few things that didnt work * Adds NetVar * NetVar framework * Some messy netvars * Adds the ability to queue arbitrary actions to run on a system thread This allows arbitrary actions to be called on a system without the requirement of a signal. This means that we can set the value of a variable on the thread which has ownership of that value. Note that these will not be networked and cannot be networked unlike signals. Hopefully this can be abstracted away when we introduce proper CVars and thread ownership management. * Contents no longer uses this module which doesn't exist * Cvars * Implements world to act as a container for static instances * Implements entity system setup * Implements processing systems * Implements world specific events, down to 8 failing tests * Fixes a failing test case * Optimises signal call from 30000 => 7000000 (Still only 1% of just calling methods though) * Fixes network initialisation order issues * Fixes processing systems constantly firing if control was relinquished * Fixes entity systems becoming deadlocked * Processing systems * Fixes entity system processing * Disables processing system debug * Adds in a rendering scaling mode, fixes button test * Update ExampleRenderCore.cs * Update NetCVar.cs * Fixes CVAR network communications. Deletes automap * Render Core Depth Output * Adds the ability to fetch the depth texture and render texture from render cores * Implements proper depth drawing across render core layers * Removes the depth program * Fixes the tests not compiling * Update RenderCore.cs * Update NetworkingTest.cs commit eb22330 Author: PowerfulBacon <[email protected]> Date: Thu Apr 6 22:53:06 2023 +0100 Adds my discord link to the readme (#174) commit 52d56d5 Author: PowerfulBacon <[email protected]> Date: Thu Apr 6 22:47:39 2023 +0100 Create FUNDING.yml (#172) * Squashed commit of the following: commit 20586d0 Author: PowerfulBacon <[email protected]> Date: Sat Sep 16 22:15:29 2023 +0100 Optimisations commit 3c287ec Author: PowerfulBacon <[email protected]> Date: Sat Sep 16 21:33:53 2023 +0100 Fixes rendering commit f9f3a1d Author: PowerfulBacon <[email protected]> Date: Fri Sep 15 15:53:17 2023 +0100 Some more stuff to get compilation working commit 2b889fd Author: PowerfulBacon <[email protected]> Date: Fri Sep 15 14:57:03 2023 +0100 Update PlaneRenderer.cs commit 861e9ba Merge: 5e5ad70 5eb6aa4 Author: PowerfulBacon <[email protected]> Date: Fri Sep 15 14:56:57 2023 +0100 Merge branch 'main' into Render-Core-Rework commit 5e5ad70 Author: PowerfulBacon <[email protected]> Date: Fri Sep 15 14:37:27 2023 +0100 Render core reworks commit 924bde2 Author: PowerfulBacon <[email protected]> Date: Thu Sep 14 22:16:16 2023 +0100 Updates the project manifest, merges render cores and renderers commit 5eb6aa4 Author: PowerfulBacon <[email protected]> Date: Thu Sep 14 21:30:24 2023 +0100 Update EULA (#179) commit 58010e2 Author: PowerfulBacon <[email protected]> Date: Thu Sep 14 21:27:51 2023 +0100 Adds the EULA (#178) commit e8efb77 Author: PowerfulBacon <[email protected]> Date: Wed Sep 13 19:15:10 2023 +0100 ECS & Networking Refactoring (#170) * Implements CVar * Fixes a few things that didnt work * Adds NetVar * NetVar framework * Some messy netvars * Adds the ability to queue arbitrary actions to run on a system thread This allows arbitrary actions to be called on a system without the requirement of a signal. This means that we can set the value of a variable on the thread which has ownership of that value. Note that these will not be networked and cannot be networked unlike signals. Hopefully this can be abstracted away when we introduce proper CVars and thread ownership management. * Contents no longer uses this module which doesn't exist * Cvars * Implements world to act as a container for static instances * Implements entity system setup * Implements processing systems * Implements world specific events, down to 8 failing tests * Fixes a failing test case * Optimises signal call from 30000 => 7000000 (Still only 1% of just calling methods though) * Fixes network initialisation order issues * Fixes processing systems constantly firing if control was relinquished * Fixes entity systems becoming deadlocked * Processing systems * Fixes entity system processing * Disables processing system debug * Adds in a rendering scaling mode, fixes button test * Update ExampleRenderCore.cs * Update NetCVar.cs * Fixes CVAR network communications. Deletes automap * Render Core Depth Output * Adds the ability to fetch the depth texture and render texture from render cores * Implements proper depth drawing across render core layers * Removes the depth program * Fixes the tests not compiling * Update RenderCore.cs * Update NetworkingTest.cs commit eb22330 Author: PowerfulBacon <[email protected]> Date: Thu Apr 6 22:53:06 2023 +0100 Adds my discord link to the readme (#174) commit 52d56d5 Author: PowerfulBacon <[email protected]> Date: Thu Apr 6 22:47:39 2023 +0100 Create FUNDING.yml (#172)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This refactors a large portion of the ECS and networking systems.
Todo
Once this major refactoring is completed and stable, the first official version of CorgEng will be released.