Оптимизация

Помечено: 

В этой теме 6 ответов, 3 участника, последнее обновление  Deffoe 2 мес., 1 неделя назад.

Просмотр 7 сообщений - с 1 по 7 (из 7 всего)
  • Автор
    Сообщения
  • #4462

    Deffoe
    Участник
    Сообщений:9

    Зарегистрирован:
    16.10.2016

    Репутация:1

    Возникла проблема при создании игры. При создании мапы 500 х 500 клеток, игра начинает лагать.

    Пк не слабый, лагает не из за текстур (пробовал их убирать).  При создании мапы использую двумерный массив.

    Что можно сделать для оптимизации игры? И что если мне нужно в будущем делать мапы не 500 на 500, а, например, 10000 на 10000 (или чуть меньше)?

    #4465

    Serge
    Участник
    Сообщений:13

    Зарегистрирован:
    16.01.2017

    Репутация:2

    Здесь может быть много вариантов, скиньте код. Возможно лаги из-за того, что создаёте карту в цикле, и да, игра будет становиться всё медленнее и медленнее, так как строки кода увеличиваются, при этом будет лагать, а в процессах всё в порядке, памяти мало занимает. Чтобы код читался быстрее, нужно использовать потоки, чтобы параллельно выполнялось, тогда и скорость быстрей будет. Но всё же скиньте код, а то так не понятно, что там

    #4466
    Heisenberg
    Heisenberg
    Участник
    Сообщений:323

    Зарегистрирован:
    01.04.2015

    Репутация:144

    Чтобы помочь, нужно увидеть код вашей программы.
    Первое что пришло на ум, это никому не нужная отрисовка объектов вне камеры вида.

    #4487

    Deffoe
    Участник
    Сообщений:9

    Зарегистрирован:
    16.10.2016

    Репутация:1

    Именно, прорисовка вне камеры вида. А вы не могли бы подкинуть идею, как прорисовывать только то, что я вижу?

    В коде смотреть нечего, просто цикл который проходит по всем элементам массива, чекая id каждой клетки карты. Дальше в связи с id рисует определенный объект. Впрочем все.

    #4488
    Heisenberg
    Heisenberg
    Участник
    Сообщений:323

    Зарегистрирован:
    01.04.2015

    Репутация:144
    #4497

    Deffoe
    Участник
    Сообщений:9

    Зарегистрирован:
    16.10.2016

    Репутация:1

    Это было так очевидно 😀

    Спасибо большое, сам бы не дошел до этого)

     

    #4500

    Deffoe
    Участник
    Сообщений:9

    Зарегистрирован:
    16.10.2016

    Репутация:1

    В общем, сделал по своему, но за идею огромное спасибо. Не сделал так как вы предложили, только из за того что не опытен и не  очень знаю, как это правильно написать. Но суть понял.

    Итак, если кому то понадобится, вот мой код реализации прорисовки карты, только “в” камере вида:

     

     

Просмотр 7 сообщений - с 1 по 7 (из 7 всего)

Для ответа в этой теме необходимо авторизоваться.