Як я можу досягти 8-бітової графіки?


10

У мене є сильний фон програмування, не від розробки ігор. У середній школі я лише робив понг і змію, а в коледжі я робив деякі OpenGL.

Я хочу зробити свій ігровий движок. Нічого не фантазії, просто простий 2D ігровий движок. Але тому, що я якось стара школа і відчуваю себе ретро. Я хочу, щоб графіка виглядала як старі 8-бітові ігри (мегаман, контра, супер маріо, ...).

То як тоді були зроблені старі ігри? Я хочу найпростішого підходу. Чи використовували вони також активи (зображення), як це роблять новіші двигуни? Як ви досягаєте такого виду рендерінгу за допомогою OpenGL?

Мати на увазі. Найпростіше рішення. Я хочу знати, як це було зроблено тоді і як я можу це повторити. Навіть не повинно бути OpenGL. Я можу малювати на віконному полотні. Я хочу зробити це з нуля в основному.


6
8-бітна графіка є предметом, а не програмуванням, я гадаю, ви могли б обмежити свою колірну палітру в коді, але це звучить трохи занадто просто для старої школи.
Лука Б.

Якщо ви хочете 8-бітової графіки, обмежте кольорову палітру, коли ви створюєте свої художні активи, і завжди використовуйте фільтрування найближчого сусіда за текстурами.
Роберт Рухані

3
З чого почати та до якої технології використовувати питання, це поза темою для сайту. Див. FAQ, щоб дізнатися, які типи питань тут можна задати. Ви можете спробувати переформулювати своє запитання, щоб просто запитати про те, як візуалізувати 8-бітну графіку та видалити все про створення ігрового двигуна.
MichaelHouse

1
Що сказав Byte56 - це може бути чудовим і корисним питанням, якщо ви переробляєте його, щоб бути більш конкретним до точної теми.
Максим Мінімус

Змінено. Сподіваюся, що зараз краще.
Матьяж Мухич

Відповіді:


7

То як тоді були зроблені старі ігри?

Зовсім інакше - більше схоже на те, що ми зараз би назвали "вбудованим системним програмуванням". Графіки на основі режиму з 8-бітових консолей та аркадних коробок керувались апаратним забезпеченням, а не програмним забезпеченням. Код гри (як правило, збірний) висуває спеціалізовану пам'ять у графіку інструкцій (наприклад, X інструкцій на сканер).

Як ви досягаєте такого виду рендерінгу за допомогою OpenGL?

Текстурна карта - квадратик із вимкненою фільтрацією. А ще краще, з'єднайте кілька квадроциклів разом та атласуйте активи для кращої продуктивності.


"атлас" активів? Що це означає?
Матьяж Мухич

Вставлення декількох зображень на одне текстурне зображення та "вибір", який потрібно показати, використовуючи УФ-квадратики. Наприклад, наприклад, всі фонові плитки можуть перекидатися на один аркуш текстури, і тоді вам потрібно лише зв'язати одну текстуру, перш ніж відображати фонові шари.
Макс

Ой. Щось на кшталт спрайтів?
Матьяж Мухич

@Matjaz: Дуже подобається спрайт. Це слово означало щось інше задовго до появи 3D-прискорювачів графіки.
Ільмарі Каронен
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.