Size: a a a

2020 June 08

GV

Gleb Vorontcov in unity3d.ru
Alexey Gordiychuk
Чтобы на сцене этот миллион мелких тайлов не лежал и не тормозил, а была одна большая картинка на спрайте
я бы написал editor инструмент, который делает компоновку и генерирует одну текстуру, правда это не для realtime, так как в нем создание текстуры дороговато обходится (хотя можно использовать вычислительные шейдеры, если не мобилки)
источник

IL

Ilya Lataria in unity3d.ru
Alexey Gordiychuk
у меня будет атлас из тайлов, а мне нужно собрать единую картинку
Стоп, я не понял. Ты если умеешь делать текстуры, то чтобы они группировались в рантайме
источник

IL

Ilya Lataria in unity3d.ru
тебе батчинг нужен
источник

IL

Ilya Lataria in unity3d.ru
и не будет у тебя на сцене "миллионов" тайлов
источник

AG

Alexey Gordiychuk in unity3d.ru
Gleb Vorontcov
я бы написал editor инструмент, который делает компоновку и генерирует одну текстуру, правда это не для realtime, так как в нем создание текстуры дороговато обходится (хотя можно использовать вычислительные шейдеры, если не мобилки)
Для эдитора не нужно
источник

GV

Gleb Vorontcov in unity3d.ru
ну или да, старый добрый батчинг
источник

AG

Alexey Gordiychuk in unity3d.ru
Ilya Lataria
Стоп, я не понял. Ты если умеешь делать текстуры, то чтобы они группировались в рантайме
Не умею, вот и спрашиваю
источник

IL

Ilya Lataria in unity3d.ru
ща
источник

IL

Ilya Lataria in unity3d.ru
гуглится на раз, короче
источник

AG

Alexey Gordiychuk in unity3d.ru
типа создал в памяти одну большую текстуру и на ней рисую маленькие, а потом её на спрайт и маску применяю
источник

IL

Ilya Lataria in unity3d.ru
Тебе для чего одна большая текстура, на которой ты рисуешь остальные
источник

AG

Alexey Gordiychuk in unity3d.ru
Это как бы фон для фишек в игре
источник

IL

Ilya Lataria in unity3d.ru
мне кажется затея у тебя причудливая, возможно у нее есть прикладная область, но я не знаю.
Если хочешь сэкономить, используй батчинг, группируй обьекты отрисовки
источник

AG

Alexey Gordiychuk in unity3d.ru
Фактически, у меня есть поле из клеток, я должен собрать картинку по этой инфе
источник

IL

Ilya Lataria in unity3d.ru
понимаешь, например, у тебя 10 картинок в рантайме, с батчингом, условно, получишь 1. Это ведь тебе и нужно?
источник

IL

Ilya Lataria in unity3d.ru
ЭТо оптимизация на уровне видюхи, оптимизация в памяти идет еще при построении текстуры
источник

AG

Alexey Gordiychuk in unity3d.ru
Ну да, но на сцене будет миллион объектов)
источник

IL

Ilya Lataria in unity3d.ru
смотри в сторону паттерна Легковес. Я знаю как можно рисовать по текстуре, но идея такая себе
источник

GJ

Gaster Jnecovich in unity3d.ru
Добрый вечер! Вопрос : помогите распознать ошибку в моем коде
Ошибка : NullReferenceException: Object reference not set to an instance of an object
Код : void Attack()
   {
       if (time2attack <= 0)
       {
           if (joybutton.Pressed)
           {
               Collider2D[] enemiesToDamage = Physics2D.OverlapCircleAll(attackCheck.position, attackRadius, whatIsEnemy);
               for (int i = 0; i < enemiesToDamage.Length; i++)
               {
                   enemiesToDamage[i].GetComponent<enemy>().TakeDamage(damage);
               }
           }

           time2attack = start2attack;
       }
       else
       {
           time2attack -= Time.deltaTime;
       }
   }
источник

AG

Alexey Gordiychuk in unity3d.ru
Я видел как работает этот батчинг - за один дравколл рисуются сразу несколько спрайтов, но с рисованием единой текстуры тоже хотелось бы вариант рассмотреть
источник