//==============================================================================
Error ScriptManager::create(
	AllocAlignedCallback allocCb, 
	void* allocCbData, SceneGraph* scene)
{
	ANKI_LOGI("Initializing scripting engine...");

	m_scene = scene;
	m_alloc = ChainAllocator<U8>(allocCb, allocCbData, 1024, 1.0, 0);

	Error err = m_lua.create(m_alloc, this);
	if(err) return err;

	// Wrap stuff
	lua_State* l = m_lua.getLuaState();

	ANKI_SCRIPT_CALL_WRAP(Math);
	ANKI_SCRIPT_CALL_WRAP(Renderer);
	ANKI_SCRIPT_CALL_WRAP(Scene);

	ANKI_LOGI("Scripting engine initialized");
	return err;
}
示例#2
0
//==============================================================================
ScriptManager::ScriptManager(HeapAllocator<U8>& alloc)
	: LuaBinder(alloc)
{
	ANKI_LOGI("Initializing scripting engine...");

	// Global functions
	ANKI_SCRIPT_CALL_WRAP(Anki);

	// Math
	ANKI_SCRIPT_CALL_WRAP(Vec2);
	ANKI_SCRIPT_CALL_WRAP(Vec3);
	ANKI_SCRIPT_CALL_WRAP(Vec4);
	ANKI_SCRIPT_CALL_WRAP(Mat3);

	// Renderer
	ANKI_SCRIPT_CALL_WRAP(Dbg);
	ANKI_SCRIPT_CALL_WRAP(MainRenderer);

	// Scene
	ANKI_SCRIPT_CALL_WRAP(MoveComponent);
	ANKI_SCRIPT_CALL_WRAP(SceneNode);
	ANKI_SCRIPT_CALL_WRAP(ModelNode);
	ANKI_SCRIPT_CALL_WRAP(InstanceNode);
	ANKI_SCRIPT_CALL_WRAP(SceneGraph);

	ANKI_LOGI("Scripting engine initialized");
}