Muito obrigado Markituh e Gonzo pelas respostas.
Vendo a solução do Markituh, pensei em uma lógica e estruturei ela e funcionou bem
Como o Tululoo Trabalha nativamente no Javascript, alterei pelo objeto a estrutura de funcionamento do sistema
porque não tive a paciência de saber o porque da função instance_deactive e a instance_destroy dar bugs esquisitos
.
Ficou assim, criando o objeto obj_otimizar...
CREATE
Código: Selecionar todos
listar = [obj_parede, obj_chao];
window.$objetos = [];
for( i in listar ){
lista = instance_list( listar[i] );
for( j in lista ){
$objetos.push({
depth_coord: [lista[j].depthstart, tu_depth[lista[j].depthstart].indexOf(lista[j])],
type_coord: [lista[j]._object_index_,tu_types[lista[j]["_object_index_"]].indexOf(lista[j])],
object: lista[j],
position: [lista[j].xstart, lista[j].ystart],
visibility: lista[j].visible
});
}
}
border = 2;
STEP
Código: Selecionar todos
for( i in $objetos ){
var obj = $objetos[i],
active = (
obj.position[0] > room_viewport_x - border &&
obj.position[0] < room_viewport_x + room_viewport_width + border &&
obj.position[1] > room_viewport_y - border &&
obj.position[1] < room_viewport_y + room_viewport_height + border
);
if( active ){
tu_types[obj.type_coord[0]][obj.type_coord[1]] = obj.object;
/*tu_types[obj.type_coord[0]][obj.type_coord[1]]["x"] = tu_types[obj.type_coord[0]][obj.type_coord[1]]["xstart"] = obj.position[0];
tu_types[obj.type_coord[0]][obj.type_coord[1]]["y"] = tu_types[obj.type_coord[0]][obj.type_coord[1]]["ystart"] = obj.position[1];
tu_depth[obj.depth_coord[0]][obj.depth_coord[1]].visible = obj.visibility;*/
tu_depth[obj.depth_coord[0]][obj.depth_coord[1]].visible = obj.visibility;
} else {
tu_types[obj.type_coord[0]][obj.type_coord[1]] = {};
tu_depth[obj.depth_coord[0]][obj.depth_coord[1]].visible = 0;
}
}
Claro o código ainda precisa ser otimizado kk, mas está rodando. Ainda estou realizando testes também. Na internet nao achei qualquer material que fosse uma real resolução para esse problema, pois me parece que devido aos bugs da engine, ela foi abandonada. Está sendo bem didático fazer ela funcionar sem bugar kkk
Obrigado pela ajuda, e se alguém for utilizar e estiver com o mesmo problema, esse código resolve muito a questão de "lentidao" que acontece quando convertido para APK. O Jogo está rodando bem agora
A propósito, quando ele estiver mais estruturado, compartilho ele aqui