Commit graph

221 commits

Author SHA1 Message Date
5411e97cb1 Move ECS to Bubel module 2020-05-05 16:56:51 +02:00
a7a63f6a20 Merge branch 'Demos' of https://gitlab.com/Mergul/bubel-ecs.git into Demos 2020-05-04 16:17:54 +02:00
167ad5437a CI changes 2020-05-04 16:17:40 +02:00
109775af87 Update README.md 2020-05-04 10:33:54 +00:00
7bc07666d0 Initial release README.md 2020-05-02 21:11:22 +00:00
b21e2b0109 Merge branch 'master' of https://gitlab.com/Mergul/bubel-ecs.git into Demos
# Conflicts:
#	demos/compile_wasm.py
#	source/ecs/manager.d
2020-05-01 21:36:21 +02:00
2ddb97e9ce Merge branch 'ci-update' into 'master'
Ci update

See merge request Mergul/bubel-ecs!6
2020-05-01 19:26:21 +00:00
54a6d5dec2 CI and common update:
-added webpage deploymnet stage
-added separate build stage which build all binaries and generate documentation
-added Emscripten build stage for merge to master only
-added VBO batch rendering (current default, no render mode switch yet)
-fixed camera positioning calculation
-fixed buffer issue with WebGL
-added viewport scalling (at least 300 pixels height). Pixels are scalled if screen is bigger.
-center demos gameplay area
-added fullpage html template for Emscripten build
2020-05-01 19:26:21 +00:00
50715fbc40 Demos update:
-modified texture atlas
-fixed bug with high CPU usage (use pthread instead of builtin D multithreading)
-added new graphics
-snake now render tile coresponding to body part
-snake is destroyed after collision and emit some particles
-added some functionality to vectors
-fixed documentation issue in Manager.d
2020-04-28 14:13:55 +02:00
f67eb452cc Merge branch 'ci-update' into 'master'
CI update

See merge request Mergul/bubel-ecs!5
2020-04-25 11:09:35 +00:00
b434d851ed CIUpdate
- added build test
 - probably fixed some trash
- coverage test should only wait for test_dmd_debug
2020-04-25 11:09:35 +00:00
d47a5c3e5c Merge branch 'TestRunner' into 'master'
Test runner

See merge request Mergul/bubel-ecs!4
2020-04-25 08:19:16 +00:00
c609b45a3d Merge branch 'master' of https://gitlab.com/Mergul/bubel-ecs.git into TestRunner 2020-04-25 10:13:53 +02:00
d68eecf272 Add LICENSE 2020-04-24 20:10:23 +00:00
8381ac166b Common update:
-added VBo batch rendering (current default, no render mode switch yet)
-fixed camera positioning calculation
-fixed buffer issue with WebGL
-added viewport scalling (at least 300 pixels height). Pixels are scalled if screen is bigger.
-center demos gameplay area
-added fullpage html template for Emscripten build
2020-04-24 20:55:25 +02:00
7c263d3ed4 SimpleVector test improvement 2020-04-24 20:47:42 +02:00
f7a1e9bd05 More test and fixes:
-added test for addEntityCopy
-test order of onAddEntity, onRemoveEntity, onChangeEntity callbacks calls
-testing onAddEntity, onRemoveEntity, onChangeEntity callback
-test callEntityFunction call
-fixed bug with crashing ECS (setting callers for entity change callbacks)
-commented debug asserts conering duplicated components ids (to further consideration)
2020-04-22 16:23:42 +02:00
cb9eaad123 More tests:
-removed some unused code
-fixed bug with struct destructors (Mallocator called __dtor instead of __xdtor)
-added unittests for events
-addded _d_eh_personality null implementation as LDC betterC bug workaround
2020-04-18 19:16:45 +02:00
d0b7138f9f More tests:
-fixed bug in EntityManger.addComponents
-added many new tests
2020-04-17 17:17:37 +02:00
84e04191c8 Unittests and demos update
-fixed bug in EntityManager
-added better support for non-betterC unittests
-added many new unittests
-slightly improved JUnit xml output
-fixed WASM compile script
-added new textures
-fixed model texture coordinaes in demos
-some minor bug fixes in demo
TODO: demos cpu usage in non-betterC mode
2020-04-16 22:16:20 +02:00
72617bc2a5 Added pipeline status indicator to README.md 2020-04-14 18:37:00 +00:00
46530ff45b Merge branch 'WebAssembly' into 'master'
Web assembly

See merge request Mergul/bubel-ecs!3
2020-04-14 15:44:26 +00:00
14839b3765 Better assertion infos and formatted code 2020-04-14 17:39:52 +02:00
0670aed506 BetterC improvement
-fixed some bugs
-non betterC code has better assertion messages
-fixed limited count of components in system
-small dub.json fix
2020-04-14 17:29:49 +02:00
2aef76d75a Unitests update
-unittest runner works for non betterC build
-working unittest coverage generation
-unittest runner support for named tests. Simple regex is supported (* as any substring) and two list of expressions are used, one for include regex and one for exclude regex
2020-04-14 13:41:39 +02:00
998240f7be Template allocation update and some tests
-test runner support before/after everty test callback funcion
-added some basic tests for template allocation
-added function to allocate new template from different template and list of addition and removed components
2020-04-09 22:14:51 +02:00
8f5f2f3baf Removed unused code and failure test 2020-04-05 21:23:12 +02:00
7b053a6abc Added better formating 2020-04-05 21:16:11 +02:00
d485824ab5 -better JUnit generation
-testing unittest failure
2020-04-05 21:11:38 +02:00
09633d1056 -removed not used code and testing (failure) unittest 2020-04-04 22:20:08 +02:00
c63f3a9727 -added some tests
-improved test runner
2020-04-04 22:11:52 +02:00
19687b9f88 -fixed critical bug with adding components
-some fixes
-minor optimization
-added debug assert test
2020-04-04 13:58:31 +02:00
913cf1aef8 Merge branch 'WebAssembly' of https://gitlab.com/Mergul/bubel-ecs.git into WebAssembly 2020-03-28 22:42:19 +01:00
a080a6d415 -fixed bug with adding components
-optimize adding and removing components
2020-03-28 22:34:11 +01:00
3c4f2be9c6 Update .gitlab-ci.yml 2020-03-21 22:18:38 +00:00
dcc48116c5 Merge branch 'WebAssembly' of https://gitlab.com/Mergul/bubel-ecs.git into WebAssembly 2020-03-21 23:14:39 +01:00
67a785f2dc Add betterC test runner 2020-03-21 23:13:08 +01:00
7fcf0462db Merge branch 'mmcomando-master-patch-70881' into 'WebAssembly'
Update .gitlab-ci.yml

See merge request Mergul/bubel-ecs!1
2020-03-21 19:07:09 +00:00
3eb124ae46 Add GitLab CI script 2020-03-21 19:07:09 +00:00
845f468d59 -added more documentation
-remove update() function from entity
-currently max supported components count is 64 per type
2020-03-21 13:27:14 +01:00
546b73c567 -fixed events bug with calls for unsupported systems
-now empty systems can't handle events and listeners
2020-03-07 13:21:29 +01:00
d6b53425dd -added EmptySystem supprort (called once per frame, sholud be once per jobs)
-EntitiesData can contain "thread_id" which is filled with ID of current thread
2020-03-06 14:01:46 +01:00
5399b584dd -IDManager reserve EntityID(0) as empty
-fixed bug with events called on destroyed entities (crash)
-don't call event on system for unsupported entity
-added "entity_id" property to EntitiesData
2020-03-06 10:12:52 +01:00
87e9a31d7f -PageSize and PagesInBlock values can be adjust in runtime (at initialization time)
-added support for calling custon delegate function for all entities supported by selected system
2020-02-09 21:53:17 +01:00
1f78f2506c -Events system update order is now choosen according to system priority
-added mixin for adding exluded components using it's type
-demos:
 *added GUI for selecting templates and choosing tools
 *change SpaceInvades SideMove system to not using events for better performance and multithreading
 *added Entites spawning support
 *fixed some Snake demo bugs
 *GUI work's better now
2020-02-09 15:24:26 +01:00
19fc440ed6 -updated meson.build 2019-11-25 21:15:44 +00:00
946fbf2934 -updated tests:
*updated build scripts
 *removed tls variables from code (needed to support WebAssembly)
 *some mmutils tweaks
 *some fixes
 *pthread TLS thread ID implementation
-added Atomic file (reimplementation of atomics templates for emscripten)
-added emscripten support to ecs.std
2019-11-25 20:06:16 +00:00
46de0f6adb -builded demos on linux
-small gitingore fix
2019-11-20 16:43:53 +00:00
5894e76540 -updated wasm build scripts
-multitheaded wasm tests
-updated dub.json
-fixed thread pool assert issue
-added windows libraries
-added demos:
 *launcher
 *simple
 *snake
 *space invaders (WIP)
 *statistics window
 *changable gui styles
 *tips window
 *profile window
 *demo window with automatic generation
 *multithreaded job updater
2019-11-19 10:37:34 +01:00
cb7609dcaa -Demos:
*added ImGUI styles
 *added new assets (fonts, shaders)
 *added cimgui.dll
 *added imports for bindbc-sdl (for WASM)
 *added simple demo
 *added demo launcher
 *added snake demo
 *impoved demo utils
 *added cimgui.bc library for WASM
-improved wasm build script
-small change in vector
2019-11-12 20:33:31 +01:00