Commit graph

29 commits

Author SHA1 Message Date
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
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
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
c63f3a9727 -added some tests
-improved test runner
2020-04-04 22:11:52 +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
67a785f2dc Add betterC test runner 2020-03-21 23:13:08 +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
015783bf5c -remove '-defaultlib' from dub.json
-start working with WebAssembly
-modified .gitignore
-added meson build file (WIP)
2019-11-02 18:51:03 +01:00
d0c3926316 -betterC working on GDC
-added some attributes like export and nothrow
2019-10-12 14:54:13 +02:00
41f1c6474b -fully working betterC for windows
*replaced array[..] = array[ .. ] sclice copy with mempcy
 *added own std library (allocator, alloca, Mutex)
 *changed tamplates for collecting components for systems
-fixed issue with multiple optional components registering for system
2019-10-10 22:08:22 +02:00
f27e4c30ad -updated copyright 2019-06-27 16:53:51 +00:00
1396d0bf85 -removed -fvisibility=hidden (switch works only with betterC) 2019-06-02 11:05:38 +02:00
cb257a2360 -added export attribute 2019-05-15 08:47:30 +00:00
3bc5ff2423 -changes in gitignore
-changed "absent" to "excluded" everywhere
-added Events support:
 *systems are scanned by handleEvent() function
 *generate system callers for events
 *event sending have (untested) multithreaded support
 *EventInput structure in System has input components for event
2018-11-02 15:39:46 +01:00
16a5696840 -removed UpdateBySystems version switch (it's now default behaviour)
-beginRegister() and endRegister() was added (every register functions must be called between this calls, update calls can't be called there)
-SystemCallers and Systems dependecies is rebuild always in endRegister();
-beginRegister() clear all SystemCallers and Systems dependencies
-possibility to get System ID and execution state
-JobGroup has now pointer to it's parent (SystemCaller)
-SystemCaller clean up destructor
2018-10-27 17:34:27 +02:00
3a767babc0 -call update by Systems instead of EntityTypes (version UpdateBySystems)
-memory packing (every block in EntityType except last one are always full)
2018-10-10 18:35:20 +02:00
0e13fafefd -removed 'InputStruct' version switch (now it's default behaviour)
-checking if System struct has valid update(EntitiesData) prototype
2018-10-01 13:17:31 +02:00
ed589bbd71 -added absen components list to system
-added ECS uda attributes
-added InputStruct version switch (gets update() input as structure of arrays)
-initial (WIP) EntitiesData update() input structure compile time parsing
2018-09-29 23:10:31 +02:00
8468335b50 Merge branch 'master' of https://Mergul@bitbucket.org/mmcomando/ecs.git 2018-09-29 20:54:15 +02:00
bb3f07ac70 -removed LinearLayout switch (from now it's default behaviour) 2018-09-29 20:49:07 +02:00
cb9bac5dde -LinearLayout implemntation:
*Entity.getComponent works
 *adding/removing objects work
 *update work
2018-09-26 09:02:16 +02:00
78647977f9 -little change 2018-09-25 11:31:09 +02:00
535071ebb9 -added version to dub.json 2018-09-23 19:31:17 +02:00
4ad81fe116 -changes in EntityAlocator
* renamed to BlockAllocator
 * now it's template with compile time assingable block_size and block_in_allocation variables
-WIP Event management
 * probably working sendSelfEvent()
 * registerEvent()
-added win_dll.d as Windows DLL require functionality
2018-09-19 17:50:05 +02:00
d0fcdba6cd -registering same system multiple times only replace pointer for callback
-added export attributes (required by windows to make DLL library, not work at now due to DMD bugs)
-interface D files to import
2018-09-18 13:28:04 +02:00
6217aec6be -changed README
-license changed to BSD (maybe temporary)
-added configurations to dub.json
-initial ECS implementation (WIP):
	-Manager, System, Entity, Component
	-registering components
	-registering systems
	-calling update
2018-09-07 20:54:29 +02:00
a984824ec5 Design 2018-09-07 10:48:03 +02:00