Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs

VacantShadeGames

1
Posts
2
Topics
A member registered Oct 07, 2016 · View creator page →

Creator of

Recent community posts

Thanks for the work around! I'll give it a try.

Sorry I was a little vague about the shader error.
When I mentioned shaders, I meant as in trying to call it in the draw event while a shader has been set, like so:

shader_set( shader_name );
draw_tile( ts_Enigma , 1 , 0 , 0 , 0 );
shader_reset();

That's when it throws the "Draw failed due to invalid input layout" error. Though this doesn't happen when not running GMLive.
Hope this helps!

(2 edits)

Came across an issue where GMLive doesn't seem to recognize Tilesets as resources.
This code executes fine without GMLive running:

draw_tile( ts_Enigma , 1 , 0 , 0 , 0 );

But with GMLive it fails to execute the code and puts this in the GMS2 Output Console:

Runtime error: RS_Draw_Cursor[L4,c12] `100169` (obj_Room_Studio) does not have a variable `ts_Enigma`

Code editor does recognize it however, and puts it in red type like all other resources.
As a note, this is not being called inside a shader. When called inside a shader, I get another error in addition to the above:

Draw failed due to invalid input layout
(1 edit)

So, GMS syntax will allow this with no problem:

repeat( 0 ){ do_something() }

with the result being that the function is not called, it simply skips over the block.


However, if you run GMLive in the script, it will instead always perform the block 1 time, even if your repeat value is 0.

I came across this because, whether good practice or not, I often use repeat blocks with variables, for example:

repeat( n_times ){ do_something() }

and that n_times can sometimes be 0.


An easy way to circumvent the issue is just to wrap any repeat blocks like that with an if statement to insure the value is above 0, but a fix to the extension to be in line with typical GMS syntax would be more convenient.