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
This commit is contained in:
parent
f67eb452cc
commit
54a6d5dec2
29 changed files with 1167 additions and 322 deletions
|
|
@ -1,7 +1,10 @@
|
|||
/************************************************************************************************************************
|
||||
*It's internal code.
|
||||
*
|
||||
*Module contain memory allocator.
|
||||
It's internal code.
|
||||
|
||||
Module contain memory allocator.
|
||||
|
||||
Copyright: Copyright © 2018-2019, Dawid Masiukiewicz, Michał Masiukiewicz
|
||||
License: BSD 3-clause, see LICENSE file in project root folder.
|
||||
*/
|
||||
module ecs.block_allocator;
|
||||
|
||||
|
|
@ -9,14 +12,14 @@ import ecs.manager;
|
|||
import ecs.std;
|
||||
|
||||
/************************************************************************************************************************
|
||||
*Allocator allocate large blocks and return smaller blocks. When there is no more blocks then next large block is allocated.
|
||||
*By default freeing memory only returns it to allocator. To free large memory chunks freeMemory function is used.
|
||||
*freeMemory function return to system memory even if chunk blocks wasn't freed.
|
||||
Allocator allocate large blocks and return smaller blocks. When there is no more blocks then next large block is allocated.
|
||||
By default freeing memory only returns it to allocator. To free large memory chunks freeMemory function is used.
|
||||
freeMemory function return to system memory even if chunk blocks wasn't freed.
|
||||
*/
|
||||
struct BlockAllocator
|
||||
{
|
||||
/************************************************************************************************************************
|
||||
*Get new block. Allocator automatically allocate next memory chunk if needed.
|
||||
Get new block. Allocator automatically allocate next memory chunk if needed.
|
||||
*/
|
||||
void* getBlock() nothrow @nogc
|
||||
{
|
||||
|
|
@ -28,7 +31,7 @@ struct BlockAllocator
|
|||
}
|
||||
|
||||
/************************************************************************************************************************
|
||||
*Return block to allocator for further use.
|
||||
Return block to allocator for further use.
|
||||
*/
|
||||
void freeBlock(void* block) nothrow @nogc
|
||||
{
|
||||
|
|
@ -37,7 +40,7 @@ struct BlockAllocator
|
|||
}
|
||||
|
||||
/************************************************************************************************************************
|
||||
*Free whole used memory. This function return to system all memory chunks even if not every black was freed.
|
||||
Free whole used memory. This function return to system all memory chunks even if not every black was freed.
|
||||
*/
|
||||
void freeMemory() nothrow @nogc
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue