Зрештою, спрайти та текстури - це просто зображення - блоки растрових кольорових даних (хоча іноді ми трохи підштовхуємо межі, щоб вставити в них не-зображення). Відмінність багато в чому полягає в тому, як ми їх використовуємо.
Зазвичай ми називаємо зображення (або частину зображення, що містить безліч окремих фрагментів) "спрайтом", якщо його передбачувана мета візуалізації має бути намальована прямо до двовимірної сітки екрану, без викривлення в перспективі. Отже, те, що ви бачите в запущеній грі, це в основному те, що ви бачите в самому файлі зображень (крім ефектів тонування кольорів / зміни палітри / ефектів прозорості). Це стосується фонових плиток та символів / інтерактивних об’єктів у двовимірних іграх, картки «білборд», як частинки та старі стилі рендерингу дерев та чагарників, а також елементів та піктограм користувальницького інтерфейсу у 3D-іграх.
І навпаки, якщо ми використовуємо зображення для надання деталей поверхні для полігонів 3D-об’єкта, які можуть бути намальовані в перспективі, ми зазвичай називаємо це зображення "текстурою". Це ім'я перейшло до інших видів використання зображень для модулювання візуалізації чогось іншого, навіть якщо вони вже не стосуються текстури в тому сенсі, який ви могли відчути кінчиками пальців - таких речей, як відображення, карти викривлення, накладки, маски чи будь-які інші використання зображень загального призначення, які ми не відчуваємо, як називати конкретніше, має тенденцію потрапляти під "текстуру" в нашій вільній номенклатурі.
Це робить межу між двома нечіткими і не особливо суворими. Якщо у мене є зображення, що містить послідовність вогню та диму, які слід використовувати для малювання білбордових частинок для вибухового ефекту, я можу називати це "спрайтом" або "текстурою фліпбука" як взаємозамінний. Або якщо у мене є зображення набору плиток, що містить усі фонові плитки для 2D-гри, я можу назвати це "атлас текстури" сьогодні, за аналогією з текстурами атласу, розробленими для 3D-ігор, навіть незважаючи на те, що його дані та використання в моїй 2D грі є невідрізною. з того, що хтось ще назвав би спрайтом. Якщо у мене є прямокутник геометрії, метою якого є подання єдиного зображення на екран, я можу назвати це "текстурованим квадроциклом" або "спрайтом" залежно від того, що я хочу наголосити щодо його використання.
(Зверніть увагу на цьому останньому прикладі, що "спрайт" означає як сегмент вихідного зображення в наших ігрових активах, так і екземпляр візуалізованої ігрової сутності, яка використовує цей сегмент зображення - інший спосіб, коли ми використовуємо цю термінологію трохи непослідовно)
Ви знайдете деякі двигуни та бібліотеки, що кодують це відмінність при наданні намірів у власну номенклатуру. Наприклад, в Unity ви можете імпортувати об’єкт зображення як "спрайт" - це дозволяє отримати додатковий набір параметрів, які зазвичай бажані для зображень інтерфейсу користувача або двома ігровими активами, як-отрізання та упаковка spritesheet, а також можливість посилання частини зображення як дискретні об'єкти у вашій сцені та об'єкті. У цих випадках "Спрайт" часто означає "зображення (текстуру) плюс метадані " - але він все одно відображається так само, як звичайні текстури під капотом. Додаткова упаковка - це зручність, тому нам не потрібно проводити мікрофіксацію зміщення ультрафіолетового випромінювання тощо, де ми хочемо використовувати зображення;