8 Bit Color Cycling

Started by Perpetuall, Fri 02/08/2024 20:03:12

Previous topic - Next topic

Perpetuall

I've been literally kept up at night trying to figure out what type of style I want in my RPG. There were so many different styles that appealed to me that I didn't know where to begin.

Then I saw this.
http://www.effectgames.com/demos/canvascycle/

Mark Ferrari did a lot of the art for LucasArts back when 8 bit games were made, and he used this technique called "color cycling". I've always loved that style of pixel art, but had no idea that this kind of thing was possible with it-the play of movement and light in these is just genius. Instead of using seperate frames for each animation, you just change the color palette so that the pixels change color and look like movement.

Now I'm certain I would like to focus on making this style of art.

There are other amazing things he did with it it, too, that he called "palette shifting", like using the same background to make several different scenes just by changing the palette-With one image, he could create a forest, a mountain range, a cloudscape, and a city, all with day and night cycles.

Spoiler: Longwinded philosophical rant
Spoiler
Older technologies, like typewriters, pixel art, pen and ink and stick and poke appeal to me more than the more "efficient" tools at our disposal.

And I think the reason that is is because, for a naturally more "impulsive" personality like myself, speed tends to get messy.

In contrast, these tools force me to slow down and really think about my every move.

Every dot becomes deliberate, a small detail making up a larger picture. Nothing is without purpose or meaning.

And that is what I am trying to capture in my work, whether it be writing, art, tattoos or games: I want to convey meaning and purpose behind every insignificant detail.

That's more than just an aesthetic, it's a philosophy, somewhat akin to what the Symbolist art movement believed, or Pavel Filonov with his analytical art method of working from the particular to the general, and what impressionism achieved with its simplicity portraying larger scenes, what pointillism does, and what Rasquachismo also seeks to do with its motto of "Do the most with the least" through recycling old trash into beauty-that nothing should be without meaning, purpose and deliberation, every dot matters. And now I finally understand why each of those art movements appealed to me, no matter how different their style, because they all have this in common.

And I like that as a founding principle not just of art but of my whole worldview. It's symbolic of a greater truth, I believe-that although we are all very small, we all matter on some grand scale, each dot taking part in the whole.

I love to be challenged as an artist, as a human being, and be resourceful with what little I have to work with. I find that motivates me more than when I have everything at my disposal and find that I am discontent with what I have because it will never be "enough". That's more defeating than any limitation placed upon me, because it dashes hope.

Hope is what drives us to create, to imagine something better and feel the joy in that anticipation. The idealism of Romanticism and Fantasy appealed to me because that kind of perfection is not real; it only exists in our imaginations. I think that's why the surrealism of artwork and the escapism of video games give us this sort of otherworldly feeling of peace, especially nostalgic ones that bring us back to our childhoods when we had the kind of unrelenting hope of a future wide ahead of us. No matter how boring or lame our childhoods might have been, they were rarely without hope, without dreams of something better.

//end of philosophical rant
[close]

What do you think about 8 bit pixel art?

Since my game is centered in the clouds and deals with supernatural entities, and currently I'm using the older version of AGS to create it, it's a natural fit to make extensive use of these color cycling techniques. I know it's not recommended to use 8 bit to make games because of the limitations and problems running them with newer computers, and I do like the idea of being able to implement more detailed fantasy art into the game (maybe when you look at a sprite, or when you are in dialog or battle mode), so I'm wondering whether I can/should do this in 32 bit somehow, or find some workaround way to implement certain scenes that are in true color.

Have you ever tried to make anything with color cycling before? Has anybody actually done something like this in AGS?

EDIT: Here's a video where he explains in detail how he achieves these effects:
https://www.youtube.com/watch?v=aMcJ1Jvtef0

Cassiebsg

Scavenger is our 8-bit resident, he might have some tips for you. :)
There are those who believe that life here began out there...

Scavenger

Quote from: Cassiebsg on Fri 02/08/2024 23:07:23Scavenger is our 8-bit resident, he might have some tips for you. :)

Haha, I have been summoned.

All of my games are 8-bit, the engine handles 8bit surprisingly well on modern computers. There are a few caveats like needing to make certain palette slots the correct colours (slot 16 has to be pure black). I haven't made anything nearly as complex as what you've linked but palette cycling is completely possible, and with clever palette use 256 colour games can look very lush and colourful. I've done day/night cycles stuff, and even more complex things:






So yeah, it's perfectly possible in AGS. I recommend having 16-32 colours at the end of your palette for the interface that doesn't change, and use the rest to create lighting effects and stuff.

eri0o

@Perpetuall you can use the latest version of AGS for 8-bit color games, it will work the same. The only restrictions for 8-bit color games in AGS are the following

- Allegro remaining internals that are still in the engine actually uses a 63 color palette, so that is the actual maximum number of colors (this has been lifted to all 255 colors in AGS 4).

- Palette shifting requires the graphical driver be set for Software. It's possible to one day implement this in the hardware accelerated ones using shaders or something, but it's not as trivial once you actually try your hand at the entirety of the details of AGS. In the end someone has to actually sit and write, test and provide such feature integrated with everything else.

There's some other details but I don't remember everything well right now...

Crimson Wizard

#4
Quote from: eri0o on Sat 03/08/2024 04:33:54- Allegro remaining internals that are still in the engine actually uses a 63 color palette, so that is the actual maximum number of colors (this has been lifted to all 255 colors in AGS 4).

That is a misunderstanding. Palette is not limited to 63 colors, it has full 256 colors.
What is limited is color precision. Instead of having all 256 variants of R, G and B, it supports only 64 variants, with gaps in between, so you cannot have, for example, Red values 0,1,2,3,4,5,6 etc, but will effectively have them clamped to 0,4,8,12 etc.
In theory, this has been fixed in AGS 4.


As for 32-bit color games, the equivalent for these are shaders, but AGS does not support user-defined shaders at the moment.

Perpetuall

#5
@Scavenger wow, your work is awesome. Thank you for the tips and the inspiration  :) I'll be sure to check out your games. I am very psyched about the possibilities of using it to create day/night cycles, as well as seasons in my game. I want to see how far I can stretch the capabilities of this... Also @Scavenger what program do you use for making your sprites?

As far as all that technical stuff goes... it sounds rather overwhelming to me tbh haha. I don't know a lot about the hardware side of it. I am sure I will figure it out as I go, though. I guess one step at a time. I'm going to start simple and then work out any problems as they come. Thanks for the input, everyone :)

Scavenger

Quote from: Perpetuall on Sun 04/08/2024 19:33:48@Scavenger wow, your work is awesome. Thank you for the tips and the inspiration  :) I'll be sure to check out your games. I am very psyched about the possibilities of using it to create day/night cycles, as well as seasons in my game. I want to see how far I can stretch the capabilities of this... Also @Scavenger what program do you use for making your sprites?

Hey thanks! I use Aseprite for my sprites nowadays, though at the time of that project I used MSPaint. I don't recommend that.

SMF spam blocked by CleanTalk