• Hello [name]! Thanks for joining the GMC. Before making any posts in the Tech Support forum, can we suggest you read the forum rules? These are simple guidelines that we ask you to follow so that you can get the best help possible for your issue.

Question - IDE Room editor gets very laggy when map is bigger than 15000x15000

Z

zakthdrgnslyer

Guest
How can I fix the lag in the room editor when my map is big? It takes 20 seconds to delete or add a layer, zooming out is very laggy, the tile editor select tool takes 30 seconds to load. My computer is decent and can run almost every game above 60 fps. Please help.
 

sp202

Member
I highly doubt room size is to blame, the issue is likely that you have an ungodly amount of objects or tiles in the room. How many layers are you using?
 

Pencil

Member
How many objects are in the room? More that the raw size of the room. what causes slowdown is the amount of objects taking up memory.
That being said maybe there's a size where rooms start to chug, but I havent experienced, and there's games out there with pretty big levels.

If you aren't already, you should call most of your dynamic objects through code, instead of placing them in the room through the IDE.
A simple way of doing this at the start of a room would be

GML:
//On your game controller's room start event


if (asset_get_index(<roomName> +"_init") != -1)

{
    script_execute(<roomName> + "init");
}
Inside the _init script you create all your instances and set up the room as needed.
 
Z

zakthdrgnslyer

Guest
I highly doubt room size is to blame, the issue is likely that you have an ungodly amount of objects or tiles in the room. How many layers are you using?
I don't think the layers and objects is a problem. I don't have much objects at all.
This is a test I did. I only had my objects and tiles in the corner of the room, and I resized the room to be as the corner, and the lag was completely gone.
I have 5 tileset layers, 7 instance layers, and 1 asset layer. Each layer barely has much at all.
 
Z

zakthdrgnslyer

Guest
How many objects are in the room? More that the raw size of the room. what causes slowdown is the amount of objects taking up memory.
That being said maybe there's a size where rooms start to chug, but I havent experienced, and there's games out there with pretty big levels.

If you aren't already, you should call most of your dynamic objects through code, instead of placing them in the room through the IDE.
A simple way of doing this at the start of a room would be

GML:
//On your game controller's room start event


if (asset_get_index(<roomName> +"_init") != -1)

{
    script_execute(<roomName> + "init");
}
Inside the _init script you create all your instances and set up the room as needed.
I'll try that, but I literally don't have much objects at all. I even tested it in a room with barely any objects and I increased the size, and same thing.
 

sp202

Member
If you post the project or an example project where you've recreated the issue, I can have a look. Not sure what else anyone can do otherwise.
 
Z

zakthdrgnslyer

Guest
If you post the project or an example project where you've recreated the issue, I can have a look. Not sure what else anyone can do otherwise.
How many objects are in the room? More that the raw size of the room. what causes slowdown is the amount of objects taking up memory.
That being said maybe there's a size where rooms start to chug, but I havent experienced, and there's games out there with pretty big levels.

If you aren't already, you should call most of your dynamic objects through code, instead of placing them in the room through the IDE.
A simple way of doing this at the start of a room would be

GML:
//On your game controller's room start event


if (asset_get_index(<roomName> +"_init") != -1)

{
    script_execute(<roomName> + "init");
}
Inside the _init script you create all your instances and set up the room as needed.
So I figured out the problem. My tileset is causing the lag, but I have no idea why. The format is 16x16 and the tileset size is 2048 x 512. Any idea what could be the problem?
 
Top