Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/pmmp/ext-chunkutils2
PHP extension in C++ implementing performance-sensitive parts of the PocketMine-MP chunk system
https://github.com/pmmp/ext-chunkutils2
cpp github-actions-enabled php php-extension php81
Last synced: 3 months ago
JSON representation
PHP extension in C++ implementing performance-sensitive parts of the PocketMine-MP chunk system
- Host: GitHub
- URL: https://github.com/pmmp/ext-chunkutils2
- Owner: pmmp
- License: lgpl-3.0
- Created: 2018-04-27T10:29:52.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2024-02-02T11:27:19.000Z (11 months ago)
- Last Synced: 2024-09-27T09:43:38.366Z (3 months ago)
- Topics: cpp, github-actions-enabled, php, php-extension, php81
- Language: C++
- Homepage:
- Size: 358 KB
- Stars: 31
- Watchers: 12
- Forks: 12
- Open Issues: 10
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ext-chunkutils2
![CI](https://github.com/pmmp/ext-chunkutils2/workflows/CI/badge.svg)
## What is this?
This extension implements some performance-sensitive components of PocketMine-MP's internal chunk handling system in C++ for better performance and lower memory usage.## What's in the extension?
At the time of writing:- `\pocketmine\world\format\PalettedBlockArray`: This class implements paletted block-storages as per modern MCPE since 1.2.13.
- `\pocketmine\world\format\io\SubChunkConverter`: This class contains a series of helper methods for upgrading legacy world terrain.
- `\pocketmine\world\format\LightArray`: Implements a 16x16x16 nibble array used for light storage.## What's in the folders?
- `gsl`: Subtree merge of https://github.com/microsoft/GSL
- `lib`: Library code implementing various chunk components. The code in here is unfettered by PHP and can be used on its own.
- `src`: Binding code that glues together PHP and the C++ chunkutils2 components.
- `tests`: `.phpt` tests for the extension which can be run with PHP's `run-tests.php` tool (or `make test` when using PHP's build system)