Разработка и ромхакинг > Ромхакинг и программирование
[NES] Учебник по ромхакингу
<< < (9/13) > >>
lancuster:
Написать статью про сжатие картинок для последующего внедрения их в ром?
neoborg:
lancuster, сжатие картинок? интересно, давай
lancuster:

--- Цитата: neoborg от 14 Октябрь 2016, 23:43:47 ---lancuster, сжатие картинок? интересно, давай

--- Конец цитаты ---
Хорошо, завтра попробую. :)
neoborg:
Был занят в последнее время хаками и организацией турниров для нашей группы. Поэтому релиз учебника переносится на конец ноября. Если вдруг че, к новому году 100% успею  ^_^
lancuster:
Ну так чё, про оптимизацию картинок нужно писать?
neoborg:
lancuster, да, я же уже писал что жду)
lancuster:
Лады. Выкрою сегодня время для этого дела. :)
lancuster:
[NES Ромхакинг] Урок № 6: Оптимизация графики в 8 bit (2bpp)

Итак, ранее вы узнали, как пользоваться графическим редактором YY-CHR. В этом уроке я научу вас оптимизировать графику для дальнейшего использования в играх.
Для чего это нужно, спросите вы? Предположим, вы хотите сделать хороший хак с полностью изменённой графикой. Но вы не умеете рисовать графику с нуля (если всё-таки умеете – то всё равно прочитайте данную статью, она вам пригодится). В таких случаях многие предпочитают бросать хаки, так и не доведя их до конца. Увы, но такое происходит довольно нередко – ромхакеры просто не хотят портить исходную графику невнятными каракулями...  Так что да, эта статья поможет вам справляться с этой задачей и делать неплохие графические навыки даже без навыков рисования.
Помимо вышеуказанной программы YY-CHR, вам также понадобится программа Irfanview. Это наполовину просмотрщик файлов, наполовину – утилита для работы с графикой. Она не обладает теми мощными инструментами, что и Фотошоп, и в ней нельзя нарисовать графику с нуля, как в Paint. Но зато в ней мы можем поворачивать картинки на произвольный угол, обрезать, растягивать, сжимать, а также менять цветовую насыщенность. Собственно, ради этого она нам и понадобится. 
В этой статье я только объясню, что делать с этой программой, чтобы добиться желаемого результата, остальное вы уже сможете сделать сами. Скрины прикреплять, думаю, нет надобности, ибо тут всё предельно просто. Допустим, вам нужна графика поезда для заставки или катсцены. Вы залезаете в Интернет, ищете более-менее сносную (желательно не слишком цветастую и не больших размеров) картинку, скачиваете её. Далее открываете уже скачанную и установленную прогу Irfanview и открываете эту картинку в ней. Вы также можете скопировать нужную часть графики и вставить её в прогу клавишами CTRL-V. После этого вы заходите в Файл->Сохранить для Интернета… (плагин). Откроется новое окошко, в котором вы должны выбрать формат PNG, Color reduction:  Optimal 16 Colors Palette, Reduce Colors to - 4 (выставляете вручную). Интерполяцию и лучшее сжатие можете также выставить, если хотите (у меня лично галочка стоит на Interlaced). Удобство заключается и в том, что вы можете сразу посмотреть результат и сравнить его с оригинальной картинкой. Также вы можете сжать либо растянуть картинку каким угодно образом при помощи кнопки Resample (справа возле Compress to size). Последняя опция справа позволяет уменьшить вес самой картинки с минимальной потерей качества, но эта опция вам вряд ли понадобится.
Что касается самого сжатия картинки. Очень важно (подчёркиваю!) знать точный размер картинки, которую вы планируете использовать в вашем будущем хаке. Если вам, допустим, нужна картинка размером 24x32 (3 тайла в ширину и 4 в высоту) – вы должны сжать её в эти рамки. Не обязательно один в один, но не вылезая за ограничения. Вы можете снять галочку с Keep aspect ratio и подогнать картинку под нужный размер, но в таком случае конечный результат может быть не совсем удачным, и его придётся переделывать. Особенно, если картинка будет иметь совсем иные ширину и высоту. Также вы можете выставить самый лучший Resample filter для получения лучшего результата. Но если полученный результат вас не устроит, или картинка будет выглядеть слишком убого – попробуйте указать большее количество цветов (5, 6, 7 или 8 – больше не стоит).
После всего этого вы нажимаете File->Save as… и сохраняете картинку. Но это ещё не всё. Дальше вы должны открыть эту же картинку в Paint и скопировать её в буфер обмена (CTRL-C). Затем вставляете эту картинку в YY-CHR и уже начинаете смотреть результат. Если у картинки перепутаны цвета, вы можете поменять их местами при помощи Замены цвета (иконка с соответствующим рисунком). В случае, если есть явно лишние пиксели – вы их можете легко стереть, тем самым улучшив качество картинки.
Собственно, это всё, что вам необходимо было знать об оптимизации графики под ограничения восьмибитной приставки NES. Упражняйтесь, оттачивайте навыки сжатия графики. Пусть вы даже умеете рисовать с нуля, но… зачем терять кучу времени на рисунок, если можно без особых усилий сжать готовую графику и вставить её в ром, сэкономив немало времени?!. Данный способ хоть и не является панацеей, но во многом облегчит процесс создания пиксельной графики.
Благодарю за внимание!
neoborg:
lancuster, клево, надо самому попробовать
lancuster:
Да не вопрос. Я ведь для того и написал статью, чтоб и другие тоже учились. :)
Skay:
lancuster, а я думал что там будет про оптимизацию кодирования и на лету. А тут... разве про эжто не все знают О.О я так делал еще во времена первых версий QIP (2005 что ли) когда на аватарки было жесткое ограничение по размерам. правда я это все делал в фотошоп 7.0 )
lancuster:

--- Цитата: Skay от 13 Ноябрь 2016, 15:56:03 ---lancuster, а я думал что там будет про оптимизацию кодирования и на лету. А тут... разве про эжто не все знают О.О я так делал еще во времена первых версий QIP (2005 что ли) когда на аватарки было жесткое ограничение по размерам. правда я это все делал в фотошоп 7.0 )

--- Конец цитаты ---
И глубину цвета понижал, что ли? :D
Skay:
lancuster, всё делал, тогда как только не извращался :) там же были ограничения варварские просто. ни пейнтом ни чем другим сохранить не получалось так. И вот в фотошопе дорвался, наэксперементировался :) ничего другого больше небыло
там ограничения были: 54х54 пикселя (как я помню) и то ли 5 то ли 8 килобайт. Но у меня в итоге всегда были  около 1 кб аватарки. но можно было и еще дожать, но результат уже страдал внешне. Оставлял 54х54х24BPP
lancuster:

--- Цитата: Skay от 13 Ноябрь 2016, 16:11:41 ---lancuster, всё делал, тогда как только не извращался :) там же были ограничения варварские просто. ни пейнтом ни чем другим сохранить не получалось так. И вот в фотошопе дорвался, наэксперементировался :) ничего другого больше небыло
там ограничения были: 54х54 пикселя (как я помню) и то ли 5 то ли 8 килобайт. Но у меня в итоге всегда были  около 1 кб аватарки. но можно было и еще дожать, но результат уже страдал внешне

--- Конец цитаты ---
Дык эта прога специально для этого создавалась. Я про ту, о которой статья. Фотошоп, конечно, рулит, но, как ты уже писал, приходится извращаться, чтобы получить файл нужного размера и с минимальными потерями качества. А тут всё упрощено, минимум телодвижений. :)
Skay:
lancuster, зато там есть макросы. На одном файле показываешь что делать, и фотошоп потом так же любое количество перелопатит :)
lancuster:

--- Цитата: Skay от 13 Ноябрь 2016, 16:29:33 ---lancuster, зато там есть макросы. На одном файле показываешь что делать, и фотошоп потом так же любое количество перелопатит :)

--- Конец цитаты ---
Ну, с пиксель-артом ты такое провернуть не сможешь. Точнее, результат будет не ахти.
Skay:
lancuster, Само собой :) не все можно в макросах заделать (хотя будь они как в офисе, полноценный бейсик бгг, яб может и поспорил) или просто не хватает знаний как. Для простых однотипных действия можно и в фоотшопе, чтоб руками все не делать.
Глупый:
А ещё есть XnView который умеет всё что и irfan + ещё чуть-чуть, ну и пакетная обработка была в обоих насколько я помню.
Идёт Xn с nconvert на борту, а там такой список преобразовываемых друг в друга форматов графики что просто lol.
Но разве это ромхакинг?
lancuster:

--- Цитата: Глупый от 13 Ноябрь 2016, 17:20:09 --- А ещё есть XnView который умеет всё что и irfan + ещё чуть-чуть, ну и пакетная обработка была в обоих насколько я помню.
Идёт Xn с nconvert на борту, а там такой список преобразовываемых друг в друга форматов графики что просто lol.
Но разве это ромхакинг?
--- Конец цитаты ---
Потом картинку в ром вставляешь. Вот тогда и начинается ромхакинг. :)
M3tro ™:

--- Цитата: Lancuster от 13 Ноябрь 2016, 02:03:01 ---[NES Ромхакинг] Урок № 6: Оптимизация графики в 8 bit (2bpp)

Итак, ранее вы узнали, как пользоваться графическим редактором YY-CHR. В этом уроке я научу вас оптимизировать графику для дальнейшего использования в играх.
Для чего это нужно, спросите вы? Предположим, вы хотите сделать хороший хак с полностью изменённой графикой. Но вы не умеете рисовать графику с нуля (если всё-таки умеете – то всё равно прочитайте данную статью, она вам пригодится). В таких случаях многие предпочитают бросать хаки, так и не доведя их до конца. Увы, но такое происходит довольно нередко – ромхакеры просто не хотят портить исходную графику невнятными каракулями...  Так что да, эта статья поможет вам справляться с этой задачей и делать неплохие графические навыки даже без навыков рисования.
Помимо вышеуказанной программы YY-CHR, вам также понадобится программа Irfanview. Это наполовину просмотрщик файлов, наполовину – утилита для работы с графикой. Она не обладает теми мощными инструментами, что и Фотошоп, и в ней нельзя нарисовать графику с нуля, как в Paint. Но зато в ней мы можем поворачивать картинки на произвольный угол, обрезать, растягивать, сжимать, а также менять цветовую насыщенность. Собственно, ради этого она нам и понадобится. 
В этой статье я только объясню, что делать с этой программой, чтобы добиться желаемого результата, остальное вы уже сможете сделать сами. Скрины прикреплять, думаю, нет надобности, ибо тут всё предельно просто. Допустим, вам нужна графика поезда для заставки или катсцены. Вы залезаете в Интернет, ищете более-менее сносную (желательно не слишком цветастую и не больших размеров) картинку, скачиваете её. Далее открываете уже скачанную и установленную прогу Irfanview и открываете эту картинку в ней. Вы также можете скопировать нужную часть графики и вставить её в прогу клавишами CTRL-V. После этого вы заходите в Файл->Сохранить для Интернета… (плагин). Откроется новое окошко, в котором вы должны выбрать формат PNG, Color reduction:  Optimal 16 Colors Palette, Reduce Colors to - 4 (выставляете вручную). Интерполяцию и лучшее сжатие можете также выставить, если хотите (у меня лично галочка стоит на Interlaced). Удобство заключается и в том, что вы можете сразу посмотреть результат и сравнить его с оригинальной картинкой. Также вы можете сжать либо растянуть картинку каким угодно образом при помощи кнопки Resample (справа возле Compress to size). Последняя опция справа позволяет уменьшить вес самой картинки с минимальной потерей качества, но эта опция вам вряд ли понадобится.
Что касается самого сжатия картинки. Очень важно (подчёркиваю!) знать точный размер картинки, которую вы планируете использовать в вашем будущем хаке. Если вам, допустим, нужна картинка размером 24x32 (3 тайла в ширину и 4 в высоту) – вы должны сжать её в эти рамки. Не обязательно один в один, но не вылезая за ограничения. Вы можете снять галочку с Keep aspect ratio и подогнать картинку под нужный размер, но в таком случае конечный результат может быть не совсем удачным, и его придётся переделывать. Особенно, если картинка будет иметь совсем иные ширину и высоту. Также вы можете выставить самый лучший Resample filter для получения лучшего результата. Но если полученный результат вас не устроит, или картинка будет выглядеть слишком убого – попробуйте указать большее количество цветов (5, 6, 7 или 8 – больше не стоит).
После всего этого вы нажимаете File->Save as… и сохраняете картинку. Но это ещё не всё. Дальше вы должны открыть эту же картинку в Paint и скопировать её в буфер обмена (CTRL-C). Затем вставляете эту картинку в YY-CHR и уже начинаете смотреть результат. Если у картинки перепутаны цвета, вы можете поменять их местами при помощи Замены цвета (иконка с соответствующим рисунком). В случае, если есть явно лишние пиксели – вы их можете легко стереть, тем самым улучшив качество картинки.
Собственно, это всё, что вам необходимо было знать об оптимизации графики под ограничения восьмибитной приставки NES. Упражняйтесь, оттачивайте навыки сжатия графики. Пусть вы даже умеете рисовать с нуля, но… зачем терять кучу времени на рисунок, если можно без особых усилий сжать готовую графику и вставить её в ром, сэкономив немало времени?!. Данный способ хоть и не является панацеей, но во многом облегчит процесс создания пиксельной графики.
Благодарю за внимание!

--- Конец цитаты ---

--- Цитата: Глупый от 13 Ноябрь 2016, 17:20:09 --- А ещё есть XnView который умеет всё что и irfan + ещё чуть-чуть, ну и пакетная обработка была в обоих насколько я помню.
Идёт Xn с nconvert на борту, а там такой список преобразовываемых друг в друга форматов графики что просто lol.
Но разве это ромхакинг?
--- Конец цитаты ---
A y меня XnView ещё и на русском :lol:)).
Навигация
Главная страница сообщений
Следующая страница
Предыдущая страница

Перейти к полной версии