メモリ

Xtalはゲーム用途に使われることを想定しています。
ゲーム開発者の方々が気にすることの一つに「メモリはどこから確保されるのか」というのがあると思います。
昨今はメモリが増えたといっても、やはり断片化等で足りなくなる状況はありますので、気にする方がいるのは不思議ではありません。


Xtalでは、デフォルトではmalloc, freeを使ってメモリを確保、開放しますが、次の関数をxtal::initializeの前に呼び出すことで、あなたの自作のメモリ確保関数を使わせることが出来るようになります。

void set_user_malloc(void* (*malloc)(size_t), void (*free)(void*));


mallocとか作るのは面倒だ。でも特定のメモリ領域を使って欲しい」という場合は、次のメモリ領域を登録する関数をやはりxtal::initializeの前に呼び出してください。Xtalは内部に簡単なオリジナルのメモリ管理機構も持っていて、その機構がそのメモリ領域でやりくりします。

void set_memory(void* memory, size_t size);