Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines
(1 edit)

This error turned out to be simpler than I was expecting - if you search the project scripts (including GMLive’s) for live_shader_updated(, there are two calls to the function a few lines apart - one that has 3 arguments and one that has 1.

var l_sh = asset_get_index(l_name);
live_shader_updated(l_sh, ds_map_find_value(l_sup, "vertex"), ds_map_find_value(l_sup, "fragment"));
live_log_script("Reloaded " + l_name + ".", 0);
live_shader_updated(l_sh); // <- problem

The latter (with 1 argument) is a name collision and should be removed - this causes GM to pass nullptr instead of strings to the DLL, which is not anticipated (and also I have not been previously aware that undefined becomes nullptr - isn’t that what pointer_null is for?)