Делаем качественные игровые ассеты, при этом не умея рисовать

от автора

В жизни каждого геймдева наступает этот самый момент: хоть святых выноси, но игру надо запилить в одну каску. В такой ситуации нейронки действительно выручают и Nano Banana — это настоящий клад.

Здравствуй, нано-бананан

Я рисую отвратительно, не дал Бог таланта, увы. А ассеты в игре — это не ведь не просто рисунки летающих тарелок, контрфорсов и разных какодемонов. При создании отдельно взятого ассета нужно учесть кучу нюансов, которые вдыхают в него правдоподобность: сочетание света и тени, текстуры, объем, и все остальное. 

А еще есть такая страшная вещь как микро-детализация, которая придает изображению тот самый характер в виде царапин, потертостей или ржавчины.

В общем для меня бы это был темный лес и на обучение всем премудростям ассет-мейкинга ушел бы не один год. Но я хочу начать работу над игрой здесь и сейчас! На помощь ко мне придут Nano Banana 2 и самый обычный MS Paint.

Чувак, ты не видел мой космический корабль?

Я ретроман и пиксельная графика пробуждает во мне обостренное чувство прекрасного. Скажем, я хочу сделать ретрошутер, вдохновленный СНЕСовским Градиусом. Вот что за приблизительная картинка корабля у меня в голове, простите патологические отсутствие таланта:

Открываем Нано Банана 2 и прописываем простейший промт: 

Turn the image attached into a pixel-art game asset depicting a spaceship.

И вуаля! Банан творит свою нейромагию, выдавая полноценный корабль на основе аляповатенького наброска:

Только почему-то корабль смотрит в другую сторону, а внизу у него должно быть некое подобие установки, стреляющей ракетами, а не полозья для санного спорта. Ну да не беда, к тому же он сразу отделил наш свежеиспеченный ассет от фона, добавив серобелую ПНГ-матрицу. Я хочу чуть допилить корабль. Поэтому выбираю функцию “редактировать” и пишу следующий промт:

Remove the engine flames, turn its lowest part into a missile launcher (it must be empty, no missile inside). Put two laser guns, one on each side. Keep the same visual aesthetics.

Банан старательно выдает такой результат, недурно.

Правда цветовая палитра корабля слегка сбилась, видимо нужно напоминать ему, чтобы он соблюдал заданную тональность цвета в каждой генерации.

Каждому кораблю требуются достаточный боезапас и огневая мощь, чтобы успешно ликвидировать ястребов межпланетного империализма. В нашем случае это будут куски разумной слизи, вдохновленные мозговыми слизнями из Футурамы. Поэтому прошу Банану добавить кое-что еще, снова в режиме редактирования. 

Put 4 missiles in its rocket launcher, so their tips would be observable only.

Итоговый результат:

Конечно набросок корабля должен сразу включать все необходимые для эстетики и геймплея элементы, чтобы не тратить токены на ненужное допиливание, но в данном случае это делается для демонстрации возможностей Нано Бананы. Теперь попробуем сделать более точечные ассеты!

Ввожу следующий промт:

Explore the attached image and based on its proportions and aesthetics make a pixel-art game asset of a missile that the ship stores in its rocket launcher. 

Ракета для особенно разуплотнительных ударов по космическим супостатам готова!

Теперь нам нужно пламя маршевого двигателя, которое я генерю сразу в виде 6-кадрового спрайта по этому промту (Я подключил Дипсик, чтобы он причепурил промты, сделав их понятнее для Банана с помощью узко-профессиональных уточнений):

Скрытый текст

A dynamic, pixel art sprite of a spaceship engine flame, designed for a retro 2D arcade shooter. The flame has a classic ‘V’ or cone shape, extending outward from the ship’s exhaust nozzle. The pixel art is crisp and unblurred, using a vibrant, high-contrast palette of electric blue and bright white at the core, fading into hot pink and magenta at the edges. The animation suggests a powerful, steady thrust. It features a ‘dithering’ texture to simulate heat and a classic 8-bit aesthetic with a transparent background. 32-bit retro video game style, 16-bit sprite.

Огня без дыма почти не бывает, поэтому добавляем еще такой запрос, снова на 6-кадровый спрайт:

A sprite sheet with 6 frames of a smoke puff expanding and dissipating, 2D animation, 512×64 pixels per frame. Frame 1: Small dense white cloud. Frame 2: Expanding gray cloud, becoming lighter. Frame 3: Wide cloud, light gray. Frame 4: Very wide, semi-transparent. Frame 5: Thin, almost transparent wisps. Frame 6: Fully transparent (empty). Soft, round, cloud-like shapes with no sharp edges. Alpha channel increases transparency over time. Transparent background. Style: stylized cartoon smoke, smooth animation loop.

По стилистике все вроде консистентно, единственное: у фона постоянно меняется градиент, но это вроде не беда — фон легко удаляется и ладно.

Враги и босс

Нашими врагами будут зловещие космические слизни, их праобраз:

Просим превратить примитивную живопись во что-то более удобоваримое Промт:

Скрытый текст

A complete sprite sheet for a recurring NPC enemy — a space slime, 2D side view, 128×128 pixels per frame. The slime is the base template for all variations in the game. It should be easily recolorable and modular. Include 8 frames covering all core animations: 1. Idle (slight wobble) 2. Squash (pre-jump compression) 3. Launch (stretching upward) 4. In Air (floating, relaxed) 5. Falling (teardrop shape) 6. Landing (squash with impact) 7. Hurt/Flashing (taking damage) 8. Death (melting into a puddle) Style: Clean, crisp 16-bit retro pixel art with visible pixel grid. Colors: Neutral gray-green (placeholder base color). Distinctive features: Two glowing eyes, small antennae, a tiny mouth, and a visible gelatinous texture with bubbles inside. Transparent background. The design must be modular and simple enough to easily change colors and add accessories later. 

У них два глаза, хотя я хотел один, но в принципе, выглядят интересно. По моему замыслу, данные слизни должны распространять депрессию и хандру в галактике, поэтому у них подходящие выражения их аморфных лиц. Теперь генерируем босса.

Босс слизней не так прост: сначала он прячется в огромном космическом корабле, который нужно разобрать на запчасти нашими лазерами и ракетами.

Ввожу промт:

Make a 2D, side-view alien boss space ship game asset. Make it look scary and ominous with AK-74s attached to its front protruding parts. Visual aesthetics: retro, 16-bit pixel art visuals.

И по запросу корявый рисунок превращается вот в такое монструозное нечто:

И теперь спрайт:

Скрытый текст

Use the initial image to create a 6-frame sprite.

The prompt for the sprite:

A complete sprite sheet for a retro pixel art boss spaceship, 2D side view.
The ship is massive, intimidating, and clearly the main antagonist for a level.

The sheet must include the following 4 key animations, with the specified frames:
— Idle (2 frames): A slight, slow hover/pulse.
— Attack (4 frames): The ship charging up and firing a large, devastating laser or a spread of missiles.
— Taking Damage (2 frames): The ship flashing white/red and displaying minor explosions or sparks on its hull.
— Explosion/Death (6 frames): A massive, multi-stage explosion sequence where the ship breaks apart.

Design Specifications:
— Style: Sharp, crisp, 16-bit retro pixel art with a clear pixel grid and no anti-aliasing [citation:2][citation:9].
— Perspective: Strict 2D side view, suitable for a classic arcade shooter [citation:1][citation:12].
— Visual Theme: A sci-fi flagship, armed with heavy cannons, glowing engine cores, and a dark, menacing color palette.
— Size: Each frame should be at least 256×256 pixels to clearly show the boss’s scale and detail.
— Background: Transparent, for easy integration into a game engine.

Вуаля: корабль слизне-босса получает повреждения и разлетается на осколки.

Дополнительные элементы

Затем пробуем сделать палитру дополнительных спрайтов для стрельбы и взрывов. На мой начинающий и неискушенный глаз, вроде, выглядит неплохо:

Промт:

Скрытый текст

A sprite sheet containing all visual effects for a sci-fi shooter game, 2D flat pixel art, 16-bit retro style.

The sheet MUST contain the following elements, each with a transparent background:

LASER BEAM (player) — 3 frames:

Frame 1: Thin bright cyan line with white core, small glow.

Frame 2: Medium width, intense cyan with electric sparks.

Frame 3: Maximum width, bright white core with cyan edges, overdriven glow.

LASER BEAM (enemy/boss) — 3 frames:

Frame 1: Thin red line with dark red edges.

Frame 2: Medium width, intense crimson with orange sparks.

Frame 3: Maximum width, bright red-orange core with dark red edges, menacing glow.

MUZZLE FLASH (shooting effect) — 2 frames:

Frame 1: Small bright white/cyan starburst (for player).

Frame 2: Small bright red/orange starburst (for enemy).

IMPACT SPARKS (laser hitting a target) — 4 frames:

Frame 1: Bright white flash, expanding.

Frame 2: White center with cyan/red sparks flying outward.

Frame 3: Sparks fading, small smoke clouds.

Frame 4: Dissipating sparks, light smoke.

EXPLOSION (small, for enemy ships) — 6 frames:

Frame 1: White flash, expanding.

Frame 2: Yellow-orange fireball, expanding.

Frame 3: Orange-red fireball, maximum size.

Frame 4: Red fireball with dark smoke edges.

Frame 5: Dark gray smoke, fading.

Frame 6: Fully transparent (end of animation).

EXPLOSION (large, for bosses) — 8 frames:

Frame 1: Massive white flash.

Frame 2-3: Expanding yellow-orange fireball with shockwave ring.

Frame 4-5: Red-orange fireball with debris fragments flying outward.

Frame 6-7: Dark gray-black smoke clouds.

Frame 8: Dissipating smoke, fully transparent.

SMOKE TRAIL (for missiles or afterburners) — 4 frames:

Frame 1: Dense white cloud, compact.

Frame 2: Expanding light gray cloud.

Frame 3: Wide medium gray cloud.

Frame 4: Dissipating dark gray cloud, semi-transparent.

SHIELD IMPACT (hit effects) — 3 frames:

Frame 1: White-blue hexagonal flash.

Frame 2: Expanding blue-white ripples.

Frame 3: Fading energy shimmer.

All elements must be:

— Strict 2D side view.

— 16-bit retro pixel art with visible pixel grid.

— Sharp edges, high contrast, vibrant colors.

— Each individual sprite: 64×64 pixels.

— Transparent background (PNG format).

— Organized in a clean grid for easy cutting.

Также, я не удержался и в Seedance 2.0 создал закольцованную анимацию говорящего слизне-босса, уж очень люблю катсцены из старых игр! Внизу можно добавить субтитры, в которых он оглашает свои мерзопакостные требования-угрозы или пересказывает первые три сезона “Званого ужина”.

Промт был следующий (написан вручную):

Make a looped choppy animation of the alien slug moving its mouth as if it was talking. Make him retain the same body position throughout the entire animation loop. Only its mouth should move and its eye should blink choppily. The background of the ship can blink like an alien spacecraft with random, colorful lights in a haptic manner. 

seedance_video_2026_07_14_19_03_44(1).mp4 [video-to-gif output image]

Затем были сгенерированы иконки статусов и индикаторов с дополнительной броней, ускорением, режимом “невидимости”, Мега Бомбой и т.д. Ниже прибывали строчку индикатора жизни.

Промты:

Для строчки здоровья:

Скрытый текст

A 2D pixel art health bar for a space shooter, horizontal, 128×16 pixels.

Empty state: Dark gray/black rectangle with metallic border and rivets.

Full state: Bright green gradient (dark green to bright neon green), filling from left to right.

Include a small red cross or heart icon (16×16) on the left side.

Style: 16-bit retro pixel art, sharp edges, transparent background.

Чтобы получить спрайт я просто написал “Make it a sprite”.

Для дополнительных индикаторов:

Скрытый текст

A 2D pixel art icon sheet for abilities, 16×16 pixels each, transparent background.

Include icons for:

1. Shield (blue hexagonal symbol).

2. Speed Boost (yellow lightning bolt).

3. Mega Bomb (red circle with explosion shape).

4. Laser Overcharge (cyan starburst).

5. Cloak (purple semi-transparent ghost shape).

Style: 16-bit retro pixel art, sharp edges, vibrant colors. 

Но вообще, если токенов маловато, можно прошерстить платформы где неплохие ассеты раздают бесплатно, например Magnific, Kenney или Itch.io.

Ну и конечно я не удержался, чтобы не сделать еще одну псевдо-дендиевскую катсцену, где главгад получает по заслугам, а его дредноут гибнет в фееричной детонации.

seedance_video_2026_07_14_19_34_06(1).mp4 [video-to-gif output image]

Промт:

Скрытый текст

Create a choppy, low-framerate cutscene animation in the style of a classic 16-bit retro pixel art game (SNES/Genesis era).
The animation shows the spaceship from the reference image exploding after receiving critical damage.

Key requirements:
— Animation style: Choppy, low framerate (like 8-12 FPS), with visible pixel grid and no anti-aliasing.
— Background: Solid flat green (#2D8B2D or similar retro green).
— NO extra elements: No additional ships, no text, no UI, no debris clouds, no planets, no stars.
— ONLY the ship and its explosion.
— The ship must remain recognizable as the ship from the reference image.
— Explosion sequence: Ship flashes white/red → Hull cracks appear → Ship breaks apart → Fireball expands → Smoke fades.
— Explosion colors: Bright white, yellow, orange, red, dark gray smoke.
— The animation must be a SINGLE sprite sheet with 8-10 frames, arranged in a horizontal row.
— Frame size: 128×128 pixels each.
— Transparent background (PNG).
— Style: Authentic retro pixel art, sharp edges, limited color palette (16 colors max).

С задачей Seedance справился вполне себе ничего, хотя я бы подкрутил эффекты немного больше в сторону ретро.

Smack that Asset

Я не дизайнер и не игродел, хотя меня всегда увлекало это искусство. Возможно в будущем что-нибудь попробую сделать в ретро-стиле, когда подучу теорию игровой механики и освою Джаву на достаточном уровне. Эти две нейронки точно пригодятся — они показывают прекрасную последовательность, хорошо следуют заданным промтам и лишь иногда подглючивают, выдавая не восем то с мелкими огрехами — видимо это неизбежное зло. Катсцены стали отдельным поводом влюбиться. 

Но, конечно, чтобы результат был именно таким, каким он видится в воображении лучше подтянуть навык рисования и запастись референсами, а также терпением загодя. Это сэкономит время и, конечно же, токены с нервами. 

ссылка на оригинал статьи https://habr.com/ru/articles/1059596/