Поверхность 2x2 пикселей в Pygame - PullRequest
0 голосов
/ 22 августа 2011

Я пытаюсь разработать игру, похожую на 16-битную эпоху, с pygame. Я работал с FlashDevelop и Flixel, но я хотел попробовать что-то более солидное. У меня проблема с внешним видом игры, я хочу, чтобы каждый пиксель на экране был «больше», я имею в виду, что для каждого пикселя на поверхности 320x240 мне нужна проекция 2x2 пикселей на поверхности 640x480, чтобы получить вид таких игр, как Фрогатто. Отвечая здесь и там, я обнаружил, что это не так просто, как в Flixel.

Можете ли вы, ребята, вести меня?

Обновление

Я придумал, как добавить масштабированную поверхность в основную поверхность следующим образом

screenSize = width, height = 640, 480
mainScreen = pygame.display.set_mode(screenSize)
smallScreen = pygame.Surface((320, 240))
pygame.transform.scale(smallScreen, screenSize, mainScreen)

Если бы кто-то мог дать мне несколько советов в этой области, я был бы признателен.

Ответы [ 2 ]

0 голосов
/ 07 марта 2012

Если вы рисуете всю свою различную графику на растровом изображении в каждом кадре (например, что делает Flixel), вы можете просто установить масштаб растрового изображения на 2,0 вместо значения по умолчанию 1.

Из того, что я понимаюFlixel, основной класс имеет только один дочерний элемент, растровое изображение.Каждый показанный объект фликселя рисуется в каждом кадре с этим растровым изображением.Переменная масштаба Flixel - это просто масштаб этого растрового изображения.

0 голосов
/ 22 августа 2011

Не уверен, если вы спрашиваете конкретный совет по Pygame или как увеличить масштаб 320x240 -> 640x480 пикселей ...

Если последнее, то:

Есть параалгоритмов для улучшения пиксельной графики, используемых MAME - поиск hq2x, hq3x, hq4x;в качестве альтернативы взгляните на http://en.wikipedia.org/wiki/Hqx или, в более общем смысле, http://en.wikipedia.org/wiki/Pixel_art_scaling_algorithms.

Возможно, это немного не по теме для того, что вам нужно, но http://research.microsoft.com/en-us/um/people/kopf/pixelart/index.html показывает некоторые действительно интересные разработки в масштабировании пикселей.

...