-added multiple new function to allocate template and add entity -updated README.md (complete initial version) -empty components now don't take memory -fixedd small bug with TestRunner -added many new tests (HashMap, Vector, EntityMeta, ...) -added default hashing function to HashMap -fixed critical bug with adding entities -fixed small bug with adding entity with remplacement components -added asserts into code to better bug detection -small performance improvement for events -added ComponentRef structure which contain data pointer and componentID -remove EntityID from Event structure -now events are handled before removing entiteis -fixed GDC compilation -fixed rendering of rotated sprites -added weapons as separate entities to space ship and others -added Tower enemy to SpaceInvaders demo -added Boss to SpaceInvaders demo (boss has four tower attached to it) -Boss towers shoot multiple bullets upon death -fixed critical bug with demos switching -fixed critical bug related to adding/removing entities form inside onAdd/onRemove entity callback -added animation support -added particles sypport and particles for firing and explostions, and more -multithreaded rendering now has same rendering order as singlethreaded -application automaticallu detect host CPU threads count -added upgrades to SPaceInvaders demo -fixed texture memory freeing -improved documentation -improved multithreaded performance -improve shader code -fixed registration issue -some additional performance improvements -added depth and colors to rendering parameters -jobs now has names corresponding to their systems -change execute() -> willExecute() -added EntityMeta structure to speedup getting fetching components form entity -improved multithreading rendering -added possibility tio change number of threads runtime -added bullets collision detection in SpaceInvaders demo -some CI changes -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 -added many new sprites to atlas -fixed critical bug with CPU usage in multithreaded mode -snake 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 -more minor code changes and cleanup
103 lines
No EOL
2.3 KiB
YAML
103 lines
No EOL
2.3 KiB
YAML
default:
|
|
artifacts:
|
|
expire_in: 1 day
|
|
|
|
stages:
|
|
- build
|
|
- test
|
|
- testcov
|
|
- build_emscripten
|
|
- deploy
|
|
|
|
build_code:
|
|
stage: build
|
|
image: "registry.gitlab.com/mergul/bubel-ecs:latest"
|
|
script:
|
|
- /bin/bash /compile_ecs.sh
|
|
artifacts:
|
|
expire_in: 1h
|
|
paths:
|
|
- binaries
|
|
allow_failure: true
|
|
|
|
test_dmd_debug:
|
|
stage: test
|
|
image: frolvlad/alpine-glibc
|
|
script:
|
|
- binaries/dmd_debug_unittest
|
|
artifacts:
|
|
reports:
|
|
junit: test_report.xml
|
|
test_dmd:
|
|
stage: test
|
|
image: frolvlad/alpine-glibc
|
|
script:
|
|
- binaries/dmd_release_unittest
|
|
artifacts:
|
|
reports:
|
|
junit: test_report.xml
|
|
test_dmd_betterC:
|
|
stage: test
|
|
image: frolvlad/alpine-glibc
|
|
script:
|
|
- binaries/dmd_release_unittest_bc
|
|
artifacts:
|
|
reports:
|
|
junit: test_report.xml
|
|
|
|
coverage_test_dmd:
|
|
stage: testcov
|
|
image: "registry.gitlab.com/mergul/bubel-ecs/curl:latest"
|
|
needs: ["test_dmd_debug", "build_code"]
|
|
dependencies:
|
|
- build_code
|
|
script:
|
|
- mkdir reports
|
|
- binaries/dmd_unittest_cov
|
|
after_script:
|
|
- bash <(curl -s https://codecov.io/bash) -s reports -t 1a0c0169-a721-4085-8252-fed4755dcd8c
|
|
|
|
build_wasm:
|
|
stage: build
|
|
image: "registry.gitlab.com/mergul/bubel-ecs:latest"
|
|
script:
|
|
- /bin/bash /compile_wasm.sh
|
|
- /bin/bash /gen_doc.sh
|
|
artifacts:
|
|
expire_in: 1h
|
|
paths:
|
|
- build
|
|
rules:
|
|
- if: '$CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "master"'
|
|
when: always
|
|
allow_failure: true
|
|
|
|
emscripten:
|
|
stage: build_emscripten
|
|
image: "registry.gitlab.com/mergul/bubel-ecs/emscripten:latest"
|
|
dependencies:
|
|
- build_wasm
|
|
script:
|
|
- /bin/bash /build.sh
|
|
rules:
|
|
- if: '$CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "master"'
|
|
when: always
|
|
artifacts:
|
|
expire_in: 1h
|
|
paths:
|
|
- wasm
|
|
|
|
pages:
|
|
stage: deploy
|
|
image: frolvlad/alpine-glibc
|
|
script:
|
|
- mkdir public
|
|
- cp -r wasm/* public/
|
|
- cp -r build/public/* public/
|
|
rules:
|
|
- if: '$CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "master"'
|
|
when: always
|
|
artifacts:
|
|
expire_in: 1h
|
|
paths:
|
|
- public |