This player accepts a totally different implementation of live2d model structure, it would be good if you implemented default one (like I have here) and specified missing components required for player to work. Loading model from .zip will be great too.
About shaders: a better implementation could be:
const player = await ModelPlayer.create(testPlayer.value, {
src: 'https://sample.site/model.zip' || 'https://sample.site/model.json',
shaders: 'https://sample.site/shaders.json',
shadersDir: 'https://sample.site/shaders/'
})
There's no need to fill the model with X shaders info when you can just load all the shaders or don't load them at all (cause model still can work).
Additional proposal: story itself already has cues info and such, so you can implement filling cues like:
sounds = {
10000001: `https://sample.site/sound/10000001.format`
}
Hopefully I explained everything well ^_^
This player accepts a totally different implementation of live2d model structure, it would be good if you implemented default one (like I have here) and specified missing components required for player to work. Loading model from .zip will be great too.
About shaders: a better implementation could be:
There's no need to fill the model with X shaders info when you can just load all the shaders or don't load them at all (cause model still can work).
Additional proposal: story itself already has cues info and such, so you can implement filling cues like:
Hopefully I explained everything well ^_^