Войти
ПрограммированиеФорум2D графика и изометрия

Графика сильно нагружает процессор

#0
20:08, 28 мар. 2016

Приветствую. У нас возникла проблема с первой игрой на юнити (мы чайники - я и программист).
Дело в том, что уровни очень сильно нагружают процессор мобилок - вплоть до 100%.(тестировали на телефонах WindowsPhone и Android) Думаю, это из-за графики.
Использую для фона изображения размера около 20000х1500.  (5-7мб уровень) Выглядят они как сплошное полотно - фон. Без тайлов.
Пример уровня: https://goo.gl/photos/wfq1eoZ4EPrCVXBYA
Сначала мы пытались разделить большое изображение на несколько кусков по 4000 пикс. максимум, чтобы они подгружались друг за другом по мере прохождения уровней. Но это оказалось не эффективно, поэтому теперь используем большую картинку уровня, но опять же - все плохо. Подлагивает и сильно нагружает устройства.
Еще раз повторюсь, что мы новички и скорее всего допустили глупейшие ошибки по не знанию.
Хотелось бы получить совет, от знающих игроделов, как нам правильно сделать уровни. Спасибо.


#1
20:24, 28 мар. 2016

> Использую для фона изображения размера около 20000х1500. (5-7мб уровень)

да нет) это мегабайт 100 в распакованном виде, если хардварные текстуры не используются. Я удивлён, что это вообще заработало, ибо таких размеров текстуры видеокартами просто не поддерживаются. Кто-то (ваш движок) либо порубил за вас, либо заскейлил. Решение простое, резать кусками, подгружать и выгружать когда надо, да, в верном направлении пошли.

#2
21:50, 28 мар. 2016

MATov
> да нет) это мегабайт 100 в распакованном виде, если хардварные текстуры не
> используются. Я удивлён, что это вообще заработало, ибо таких размеров текстуры
> видеокартами просто не поддерживаются. Кто-то (ваш движок) либо порубил за вас,
> либо заскейлил. Решение простое, резать кусками, подгружать и выгружать когда
> надо, да, в верном направлении пошли.

Здесь не до конца написал. При этом методе на стыках кусков образуются несовпадения. Резали в ФШ и заливали в юнити.

#3
21:57, 28 мар. 2016

Lans1
ну пробуйте лучше, изучайте, на всё это есть ответы, которые лучше найти самим. вопрос этот обсосан десятки раз.

#4
22:03, 28 мар. 2016

Lans1

Использую для фона изображения размера около 20000х1500.  (5-7мб уровень) Выглядят они как сплошное полотно - фон. Без тайлов.

делать тайлы в фотошопе и запихивать их в юнити в виде текстуры длинной 20000 - отличная идея.
Даже странно что он тормозит,
Гавнодвижек потому что , наверноею Переходи на UE, там будет все ништяк. 

#5
22:33, 28 мар. 2016

MATov
> ну пробуйте лучше, изучайте, на всё это есть ответы, которые лучше найти самим.
> вопрос этот обсосан десятки раз.

Если не сильно затруднит, то могли бы дать ссылки на материал, для изучения? Буду благодарен. Сам, увы, именно по этому вопросу ничего не нашел...

#6
22:43, 28 мар. 2016

Lans1
Швы появляются, если коротко, из-за нескольких причин, основная из которых билинейная фильтрация, например.

#7
22:53, 28 мар. 2016

Ferr2D Terrain Tool вот купите в ассет стор всего 30 бакенов и тягайте свои спрайты. Либо тайл-мапу собственную пилите или тоже купите. А такие огромные спрайты больше не используйте, и даже не говорите, что пытались:) Заклюют.
И вообще фоны-бэки часто паралаксом тянут. Берут одну небольшую картинку по размеру экрана и она как бы растягивается на весь уровень.

#8
6:35, 29 мар. 2016

Lans1
> Сначала мы пытались разделить большое изображение на несколько кусков по 4000
> пикс
Оптимальнее резать по 4096 пикс. Возможно нестыковки как раз из-за размеров текстуры не кратных степени 2-ки.

#9
17:45, 29 мар. 2016

Если текстуры для спрайтов или уи, проверьте с каким максимальным разрешение импортируются текстуры.

#10
19:09, 29 мар. 2016

MATov
> основная из которых билинейная фильтрация, например.

Использовали букубическую фильтрацию

Vitorio
> Возможно нестыковки как раз из-за размеров текстуры не кратных степени 2-ки.

Действительно, высота кусков была 813 пикс. Исправим, спасибо.

k119_55524
> Если текстуры для спрайтов или уи, проверьте с каким максимальным разрешение
> импортируются текстуры.

Разрешение - 96 точек на дюйм.

#11
21:12, 29 мар. 2016

Вообще пробовали поставить текстуру 256*256? Вдруг это код тупит.

#12
1:39, 30 мар. 2016

Фига себе, юзать такую огромную текстуру в 2д, еще и на телефон... У нас в проекте на винду фулл-эйчди текстура тянется параллаксом за игроком.

#13
11:49, 31 мар. 2016

Battle Angel Alita
> Вообще пробовали поставить текстуру 256*256? Вдруг это код тупит.

Пробовали - все отлично работает.

#14
14:29, 31 мар. 2016

Жесть как оно ваще запустилось)http://docs.unity3d.com/ru/current/Manual/SparseTextures.html
Правда для 2д и мобилок наверное не пойдёт. А так почти самое быстрое

ПрограммированиеФорум2D графика и изометрия

Тема в архиве.