Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

it seemed like the live2d was functioning a lot more than the gamespeed is why

In the Step event of the object that controls Live2D playback, there should be a line of code like this:

UltraModelUpdate(model, delta_time / 1000000);

If you feel that the Live2D animations are playing too fast, you can adjust the update delta time value to slow them down.

i was hoping to reduce memory usage, not change the speed

Sorry, I misunderstood your request. Could you clarify what you mean by reducing memory usage? Are you asking me to optimize the extension’s memory usage, or do you need to use UltraDestroyModel to unload models you aren’t currently using? Keeping multiple models loaded at once can use quite a lot of memory, especially when they have a large number of vertices.

I just wondered if there was a way to change how many times the live2d is updated without changing the speed of animations

If you want to update the model once every two or three game steps without changing the animation speed, you can try this:

Create event:

updateModel = 0;
time_begin = current_time;

Step event:

if (updateModel == 0) {
    UltraModelUpdate(model, (current_time - time_begin) / 1000);
    time_begin = current_time;
}

updateModel += 1;
if (updateModel == 2) { // Change 2 to 3 to update every three steps
    updateModel = 0;
}

This passes the time elapsed since the previous update, so the animation should keep roughly the same playback speed while updating less often.