Resources and Support
 Pixel Joint Forum : The Lounge : Resources and Support
Message Icon Topic: Palette Generator 4.1-me like! Post Reply Post New Topic
Author Message
Pixel_Outlaw
Commander
Commander
Avatar

Joined: 01 September 2005
Online Status: Offline
Posts: 3829
Quote Pixel_Outlaw Replybullet Topic: Palette Generator 4.1-me like!
    Posted: 01 September 2005 at 7:41am

Hi

This is my first post but i have programmed a nice little application to create color paletts and then you may add them to a sprite or other image! It can even figure out light source color blending. It was made with an execellent program called Game Maker. It takes three colors and gradually fades them into the light colors. It currently supports 10 shades per color. This is a bit excessive though.I originally planned this to be a tool for the Game Maker Community but thought you guys might love it as much as they did! It adds a movable minimap to the loaded sprite and it is saved on top for later coloring.

FIXED THE LINK!

http://www.spaceness.com/uploader/uploaded/Palette_Generator _4.1.exe

It is still in developement.

This is an older version screen, the color palette on the sprite is much smaller! I hope this picture encourages posts!!!!

noth that it DOES support colored lightsources, this was not supported when this tree was made...

Please reply if you download my program.



Edited by Pixel_Outlaw
IP IP Logged
PixelSnader
Commander
Commander
Avatar
Not a troll!

Joined: 05 June 2014
Online Status: Offline
Posts: 3194
Quote PixelSnader Replybullet Posted: 01 September 2005 at 1:58pm

yeah sorry, but i pick my shades by hand and that seems to work superbly (well imho anyways)

allso, you should not just make the colours lighter and darker
simply put, your creator provides boring colourschemes because there is no hue difference between light and dark

look up some lighting and colouring tutorials for some deeper explanation of what i mean


▄▄█     ▄▄█
▄█▄     ▄█▄

IP IP Logged
Pixel_Outlaw
Commander
Commander
Avatar

Joined: 01 September 2005
Online Status: Offline
Posts: 3829
Quote Pixel_Outlaw Replybullet Posted: 01 September 2005 at 2:12pm

"allso, you should not just make the colours lighter and darker
simply put, your creator provides boring colourschemes because there is no hue difference between light and dark"

Yes it does, you can set the light color using the "Light" button. Did you TRY it or just look at the tree image i posted?



Edited by Pixel_Outlaw
IP IP Logged
PixelSnader
Commander
Commander
Avatar
Not a troll!

Joined: 05 June 2014
Online Status: Offline
Posts: 3194
Quote PixelSnader Replybullet Posted: 02 September 2005 at 2:34am

i just looked at the picture, so sorry, i guess youre right.
but still, the scheme is a bit too linear for my tastes

and why didnt you use hue changes in your tree? you should have done, at least to show viewers the possibilitties


▄▄█     ▄▄█
▄█▄     ▄█▄

IP IP Logged
Pixel_Outlaw
Commander
Commander
Avatar

Joined: 01 September 2005
Online Status: Offline
Posts: 3829
Quote Pixel_Outlaw Replybullet Posted: 02 September 2005 at 9:15pm
This program was designed with spriters in mind. There are 75 views and no replys. If you're going to use my bandwidth please reply!! I really spent alot of time on it....
IP IP Logged
Shark
Commander
Commander
Avatar
a.k.a. Feron

Joined: 02 July 2005
Online Status: Offline
Posts: 2136
Quote Shark Replybullet Posted: 03 September 2005 at 10:50am
id love to try this but im on a mac, any chance of making an edition
for OS X
IP IP Logged
Pixel_Outlaw
Commander
Commander
Avatar

Joined: 01 September 2005
Online Status: Offline
Posts: 3829
Quote Pixel_Outlaw Replybullet Posted: 03 September 2005 at 6:39pm

Sorry the programming ;language i used is Windows spacific.

Has anyone else tested it, i made it special for you fellow spriters/pixel artists!

FREEWARE NO REGESTRATION REQUIRED FREEEE Could someone do a decent drawing with it using the colored light sources so people could see what i mean, i don't really have time... This is a limited time offer. This is due to limited bandwidth. If you are not a qguest to the forum and use the program post. I've worked for a month on it, and get 3 replys...please if you take the time to reply it would mean the world to me!



Edited by Pixel_Outlaw
IP IP Logged
1ucas
Commander
Commander
Avatar

Joined: 27 June 2005
Location: Brazil
Online Status: Offline
Posts: 174
Quote 1ucas Replybullet Posted: 03 September 2005 at 9:59pm
Uhm... Hint: If you make the subtones in a logarithmic scale, you'll get better and more useful tones.

(I did a pallete generator once, but it's kinda... cheating, I dunno, and it never looked good to be honest)
IP IP Logged
Pixel_Outlaw
Commander
Commander
Avatar

Joined: 01 September 2005
Online Status: Offline
Posts: 3829
Quote Pixel_Outlaw Replybullet Posted: 04 September 2005 at 6:45pm

Originally posted by 1ucas

Uhm... Hint: If you make the subtones in a logarithmic scale, you'll get better and more useful tones.

(I did a pallete generator once, but it's kinda... cheating, I dunno, and it never looked good to be honest)

It uses this command to make the colors

color=make_color_hsv(hue,sat,val)

 

or it can use

color=make_colorrgb(red,green,blue)

what are you saying, i'm not familiar with logarithmic colors....

IP IP Logged
PixelSnader
Commander
Commander
Avatar
Not a troll!

Joined: 05 June 2014
Online Status: Offline
Posts: 3194
Quote PixelSnader Replybullet Posted: 05 September 2005 at 10:44am

logaritmis aint got nuffin ter do wif rgb/hsl kiddo

i dunnono how ter explain in english well, so ill just be lazy and let this site do the talking.. (im more of a walker anyways)

http://mathworld.wolfram.com/Logarithm.html


▄▄█     ▄▄█
▄█▄     ▄█▄

IP IP Logged
1ucas
Commander
Commander
Avatar

Joined: 27 June 2005
Location: Brazil
Online Status: Offline
Posts: 174
Quote 1ucas Replybullet Posted: 05 September 2005 at 12:40pm
Logarithms are mathematical functions that are the inverse from exponentials [f(x) = n^x]. You can use exponentials to get a curve too, but the transition is too "explosive" and you can't really control the "useful range" of it as easy as logs.

So, anyway, for logarithms if you have:

b^x = a (^ = power function)
Then: log_b a = x (read _b as a subscribed b [same as <sub> in html]

So suppose you have 5^x = 10. How much is x? Well, that's where logs come in, x = log_5 10. This value can be easily calculated with some iterated functions and integrals.

Logarithmic functions look like this:



The log bases for each color:
blue = 2 \ green = 4 \ red = 8 \ pink = 16

Now, how you use this to make color curves? Well, I use a proportion method... There are probably better ways of doing things but I guess the result would be about the same.

Ok, suppose we have 2 colors, with RGB (or whatever, really) values R1,G1,B1 and R2,G2,B2, and we want to make a logarithmic transition between the two. The deciding factors here are the range you'll use and the number of colors you'll get from it (the number of divisions). Base is pretty much irrelevant because we'll use natural logarithms (base is e = 2.718281828...) and we can get all the effects we need from it.

Remember x^0 = 1? Well, this is useful because I use my range on [1,n], and since all logarithms are 0 when x is 1, we could change the base to whatever we want and we'll just get different curves coming out of that point.

-- the range (n) --
The range is the section of the logarithm we will be using to calculate each color between the original two. This is what we use to extract the proportion bit. Remember this value must be over 1, because it's the number where we'll stop getting logs from.

Since we don't count 1, 1 will be considered the first color, so make your code avoid calculating it. The second color will be on n.

-- the function --
Now it's the fun part (haha, to me at least!). Here's how we use this to calculate the transitional values.

We pick one of the channels\values. The function is the same to whatever you're using, R, G, B, H, S, V, whatever. I'll use R here. (note: if you use different ranges for each channel, you can get really cool effects. You could even do it like logarithmic hue and saturation [with their own ranges] along with linear brightness... stuff like that)

[F1] R_i = R1 + (R2-R1) * (log(i) / log(n))

i - the value in the x axis for the logarithm function. This value must be in the range [1,n], and it's the only value we change to get a sub-tone
R_i - the value of that channel for this specific subtone
R1,R2 - explained before
(R2-R1) - the difference between the two shades. This is what we add to R1 so we get R2.
log(i) - the logarithm of i (in the natural base, e)
log(n) - the logarithm of n (the maximum value for the logarithm in our range)
(log(i) / log(n)) - this is the proportion that the current log value represents in within the range we picked. This will obviously go from 0 (the first color) to 1 (the last color)

Now, we just have to use a loop to get the several subtones. BUT, how many subtones you want? That's easy, we just have to change the way we change i. If we divide the range [1,n] in 5 parts, we'll get 5 shades.
Here's the function:

[F2] i = 1 + (s * (n - 1) / m)

s - the number of the shade. 0 = the first color, m-1 = last color (you'll obviously skip 0, because it leads to log(1) which is original color anyway, so why calculate it? same with the last color)
m - the total number of shades
n - our previously mentioned range limit. We used (n-1) here because we're calculating the position AFTER 1, which is our start point.

Just calculate this before you shove the i in the function [F1] and you're done, really. The rest is just optmization and code fixing to avoid calculating irrelevant values. That's up to you :|

It's also a good idea to use logarithmic scales in other places to get even more interesting transitions. For example, in [F2] we changed i with a linear function (s*(n-1)/m). We could use logarithms here as well, hehe ;)

So yeah, that's all you'll get from me. I'm typing this on the fly (because I pretty much know all these stuff by heart), so if you spot mistakes and stuff let me know :/

NOW, enough talk, let's see this in action:

Color #C8A46D to #427520, range=3, shades=6

Using your colors:
Color #FF4184 to #FFFF84, r=6, s=10
Same, but range 8 (little diff)

Comparison:


#FF4184 to #FFFF84, r=8, s=6

#FF8200 to FFFF84, r=8, s=6

#602020 to #F0C42C, r=3, s=5

These were all done in the RGB space. The HSV would probably allow cooler stuff like hue shifts. Also, it's a good idea to make a pallete based on not only two, but three colors. Just make two transitions like this.

Edit: also, note that the logarithmic funtion is more towards one side, so swapping colors would bring a different pallete.

I would code a program for this if I had the patience to program GUIs. :| Well, one day.

Edited by 1ucas
IP IP Logged
Wannahlakujuu
Commander
Commander
Avatar

Joined: 02 April 2005
Online Status: Offline
Posts: 205
Quote Wannahlakujuu Replybullet Posted: 05 September 2005 at 1:36pm
Wow, that has got to be the longest post I have ever seen. I actually understood it too, wow.
IP IP Logged
Pixel_Outlaw
Commander
Commander
Avatar

Joined: 01 September 2005
Online Status: Offline
Posts: 3829
Quote Pixel_Outlaw Replybullet Posted: 05 September 2005 at 7:26pm

This looks good but i failed hy highschool trig class and was unable to continuein math. So it's all greek to me. I really wish i could make sence of your post. I feel bad you spent that time for nothing...

My program uses objects' positions and a blend command. That's about as complex as it's gonna get. Would you people like me to provide a command to open up ms paint with a button click? How could this be made more useful? Like i said it's still under developement.

IP IP Logged
1ucas
Commander
Commander
Avatar

Joined: 27 June 2005
Location: Brazil
Online Status: Offline
Posts: 174
Quote 1ucas Replybullet Posted: 05 September 2005 at 8:21pm
Originally posted by Pixel_Outlaw

This looks good but i failed hy highschool trig class and was unable to continuein math. So it's all greek to me. I really wish i could make sence of your post. I feel bad you spent that time for nothing...


My program uses objects' positions and a blend command. That's about as complex as it's gonna get. Would you people like me to provide a command to open up ms paint with a button click? How could this be made more useful? Like i said it's still under developement.



Well, first of all, there's no trigonometry in any of this. O_o
Secondly, it wasn't a waste, eventually someone will learn from it, I guess. Also, it was nice to make the code for it once again.

And don't feel weird with all this math, I'm just a huge freak for math and I usually go too far with it...

Anyway, answering your question, you can create a shortcut to ms paint somewhere in the computer, right click on it and go to properties, and there you'll find a keyboard shortcut thing. Then you can just make CTRL+ALT+P or whatever open ms paint. Since my keyboard has a AltGr key (which is CTRL+ALT in one key), I just go AltGr+P. Nice!

Also, if you just can blend two colors with that program (using transparency, apparently), that doesn't mean you can't do a logarithmic scale either. You just have to change the alpha\transparency\opacity\whatever in a different scale than linear (which is what you used)...

Can't help much, I have no clue how to code in that thing

Edited by 1ucas
IP IP Logged
Pixel_Outlaw
Commander
Commander
Avatar

Joined: 01 September 2005
Online Status: Offline
Posts: 3829
Quote Pixel_Outlaw Replybullet Posted: 06 September 2005 at 10:44am

Just out of curiosity are any of you using macs? If so kiss this program goodbye....

Still would like some good replys....

IP IP Logged
randomblink
Commander
Commander
Avatar

Joined: 13 February 2014
Online Status: Offline
Posts: 403
Quote randomblink Replybullet Posted: 07 September 2005 at 8:57am

Hey Pixel_Outlaw...

I don't download and install anything at work... (unless I know it inside and out) SO, wait'll I get home and I will check it out. It's not a bad idea, but keep in mind, just because you think something is useful (because you use it) doesn't always mean everyone will...

Personally, I could probably use something like this. I have no art training under my belt, and having something that would at least 'generate' a color scheme for me is nice...

www.randomblink.com
I am me... no! Really!
IP IP Logged
Pixel_Outlaw
Commander
Commander
Avatar

Joined: 01 September 2005
Online Status: Offline
Posts: 3829
Quote Pixel_Outlaw Replybullet Posted: 07 September 2005 at 9:03am
Originally posted by randomblink

Hey Pixel_Outlaw...

I don't download and install anything at work... (unless I know it inside and out) SO, wait'll I get home and I will check it out. It's not a bad idea, but keep in mind, just because you think something is useful (because you use it) doesn't always mean everyone will...

Personally, I could probably use something like this. I have no art training under my belt, and having something that would at least 'generate' a color scheme for me is nice...

YOUR at WORK!? oh no don't let the boss-man catch ya!

The aim of this program is to create a palette with a lightsource calculation and to paste a working palette directly on to an image. It doesn't do the coloring for you so i considerit a reasonable tool, not a crutch. Since i've added a paint feature i use it all the time, i plan to add some shanges like palette length controll. Thanks for the reply! Hope you like it.

IP IP Logged
Ensellitis
Commander
Commander
Avatar

Joined: 19 June 2005
Online Status: Offline
Posts: 10099
Quote Ensellitis Replybullet Posted: 08 September 2005 at 8:59am
Honestly, I could never use a "palette" program, and I don't recommend anyone else do either.  It is always better to do it by hand.  Even when I am doing digital painting in Photoshop, I make my palettes by hand.
ಠ_ಠ
There's a pubic hair on my keyboard. What the f**k?? I "mow the lawn" so it's not mine. Gross.
IP IP Logged
Pixel_Outlaw
Commander
Commander
Avatar

Joined: 01 September 2005
Online Status: Offline
Posts: 3829
Quote Pixel_Outlaw Replybullet Posted: 08 September 2005 at 10:55am

That's fine. I'm not going to argue with you. Let me say that when an artist paints they don't need to grind their own paint minerals, mixing premade paint can be just as original. It's the piece thast's the focus not the paint colors and how they were made. When we see art how important is it that the artist bought paint and didn't make it? People use other peoples brushes without crediting them, there is no need to pull the brush hair outta an animal's butt when you can buy the tools you need. The tools are only as good as the artist wants them to be.

I don't wish to offend you, i respect your decision in hopes that you'll respect mine.

I guess what i'm saying is that you are using other peoples' tool right now! The paint program was made by someone else and i assume that you don;t give the program credit every time you make art with it. It really depends on how original you consider art made with tools, and what you consedered limitation. To make art soley made by your own hand you would have to reinvent the computer and find a seperate path in your own programming language. We piggy back off each other each time we make art, tool wise anyway.

all i ask is that you try coloring line art once with it, if you still don't agree that's your right.



Edited by Pixel_Outlaw
IP IP Logged
Post Reply Post New Topic
Printable version Printable version

Forum Jump
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot delete your posts in this forum
You cannot edit your posts in this forum
You cannot create polls in this forum
You cannot vote in polls in this forum