New Painting Tool. Colour Constructor!

134
polycounter lvl 8
Offline / Send Message
Muzzoid polycounter lvl 8
Colour Constructor has been released. Check it out here!

https://gumroad.com/l/ColorConstructor

Y93hUJDjpg

BQHuUbcpng

So i have had the idea to make this thing for a long time now, just getting around to it now though.

I am a nerd for colour and lighting theory, and i love that most lighting theory can be baked down into a simple equation, so i thought making a simple tool that would let you see this stuff happen in real time, without needing to resort to a 3d program would be great.

So ideally the way you would use this is to set up your light, ambient and a bunch of local colours for objects in your scene, and then copy and paste the swatches into your file so that you have a solid basis for drawing all the colours.

Currently it only has the bare essential features, but if you want to give this thing a try, send me a pm. I can also do a mac build if people are interested enough.

The current feature list im hoping to get implemented are

-preview window
-exposure control
-HSV sliders
-colour picker
-multiple ambients
-SSS component (for skin tones)
-Saving and loading
-metalic specular(this probably won't be very useful...)

Anything else that would be helpful?

I'll probably end up selling it on gumroad for a few bucks.

https://gumroad.com/l/ColorConstructor

Replies

  • Muzzoid
    Offline / Send Message
    Muzzoid polycounter lvl 8
    RDZ31tj.png

    Here is a test on a more complicated example image.

    (HAZ hope you don't mind using Remi-7 for the test!)
  • Dado Almeida
    Offline / Send Message
    Dado Almeida polycounter lvl 12
    Dang Muzz,
    This looks so interesting. Are you still considering that in-depth tutorial/article about Color and Light? Would be a great addition to the release.

    edited: Hope I don't look that guy who demands more work. I just think a tool like this would be even more helpful with some sorta of explanation (help file, per example).

    Muzz. Can you screenshot an example with other Ambient/Light colors?
  • Muzzoid
    Offline / Send Message
    Muzzoid polycounter lvl 8
    Actually this tool kind of came from that entire thing.

    I wasn't sure how to actually teach it, because it's math based, and artists are notoriously anti math, so I'll be doing an accompanying thing to explain what is going on, and how to use it :)!

    I'll make some proper example images when i get closer to an official release. Only spent a day working on this so far!
  • Dado Almeida
    Offline / Send Message
    Dado Almeida polycounter lvl 12
    Sweet. Yeah. This is what I meant, you already linked us to that article which seems to explains a lot, but I don't know any resource (a bit more advanced that Cool/Warm) written by another 2D Artist.
  • Muzzoid
    Offline / Send Message
    Muzzoid polycounter lvl 8
    :)

    actually here is another example for you.
    A pretty sunset.
    TQv6Zf7.png
  • Dado Almeida
    Offline / Send Message
    Dado Almeida polycounter lvl 12
    Ah nice. This indeed would be helpful for a lot of people to 'see' concepts like hue shift.

    You know MS/CSP has a similar feature, it's called Blender. But I`m sure this just blends the colors as your tool seems to push it more to a physical interaction between the colors.
    What I like about your approach is the simplicity of the swatches, just four, while in MS/CSP you cant view less than ten subdivisions.
  • funshark
    wow, I am also a nerd for color & lighting and you totally got me with that guy. Seems really promising!
  • Muzzoid
    Offline / Send Message
    Muzzoid polycounter lvl 8
    Thanks :D!

    Dado, really interested to hear about that tool in Clip Studio, Can't find much on it though? It seems to be more of a traditional colour blender rather than something for generating colors in a lighting situation.
  • Muzzoid
    Offline / Send Message
    Muzzoid polycounter lvl 8
    HSV!

    AjP8HIG.png?1

    EDIT:

    Just another thought. This would be perfect for people handpainting a game where you want to keep all the colours consistent for the same lighting!!!!
  • pior
    Offline / Send Message
    pior ngon master
    Just another thought. This would be perfect for people handpainting a game where you want to keep all the colours consistent for the same lighting!!!!

    Very much so ! Very cool stuff ...
  • Wolthera
    Offline / Send Message
    Wolthera polycounter lvl 2
    Whoa, this is pretty cool.

    Few pointers:
    * See if you can implement HCY' sliders instead of HSV, HCY' uses Luminosity and Chroma, which is relative lightness and more easier to comprehend to an artist(and would make it similar to the Munsell system too).(You can try out HSY' in Krita or HCY' in MyPaint 1.1 to see what I mean)
    * If you get HCY' calculation right, you can also start giving proper lightness feedback. As you may know a lot of artists use the greyscale as a sort of debugging mode, and it may help for them to see the contrast properly.
    (Luminosity calculation uses the Y values of the XYZ values of the colorants of your colourspace. I am assuming you're using sRGB due to lack of any mention of CM, so you can just use rec 709)
  • Muzzoid
    Offline / Send Message
    Muzzoid polycounter lvl 8
    Hmm, I'm just reading your article on HSY.

    I actually disagree with your statement that HSL is more intuitive than HSV. The reason for that is that Saturation is less effective when the lightness goes up or down. So while it is easier for an artist to pickup HSL, it's harder for an artist to make nice looking colours using it. But this is all opinion here. (when people bump or drop the brightness in HSL saturation drops, creating WEIRD colours)

    But in the end all these are just convinience functions, the magic of this program is all in the RGB. A lot of us artists are actually painting completly with RGB these days as we don't have an algorithm in the rode of understanding colour properly.

    That being said, HSY sounds very interesting, so i might have a go at implementing it and tell you what i think. (also maybe try it out in Krita)
  • Wolthera
    Offline / Send Message
    Wolthera polycounter lvl 2
    Ah! True, well, the native HCY' algorithm should work then, because it's a double-conical space that results from the formula, without any saturation-fudging like HSL does.

    The Krita algorithm is a HSL formula to adapted to HCY', so you may find it has the same issue. In which case use the normal HCY' formula, which can easily be found on wikipedia: https://en.wikipedia.org/wiki/HSL_and_HSV#From_luma.2Fchroma.2Fhue (And is probably best suited for a slider system)(The Krita algorithm is nicer for a system which expects cylindrical spaces, like selectors and curve adjustments, because the conical algorithm doesn't understand how to make a fully chromatic colour darker, LAB has the same issue.)

    Also note that it may be interesting to look into linearising your input colours's components before doing the render calculation on them(and then gamma-correcting them on output). There should be plenty of sources on how to linearise the sRGB trc on the internet. Just to get the tone extra-right :)
  • Dado Almeida
    Offline / Send Message
    Dado Almeida polycounter lvl 12
    Muzz,

    Sorry to inject another app screenshot between your conversation, but this is how the Blender feature works in CSP/MS5:

    Feedback_Muzz_Blender.jpg

    I loaded your color for Ambient and Light on the upper slots, then I use the Local Color on the bottom left and black in the bottom right (to give me darker colors).
    As you can see, I can get some closer colors, but they arent a friendly displayed as in your tool...and I don't get that rich saturation darker tone you provide (maybe I should use a darker, saturaded version of the ambient color instead of pure black?).

    Again. It's more like a color blender as you noticed.
  • Muzzoid
    Offline / Send Message
    Muzzoid polycounter lvl 8
    Wolthera wrote: »
    Ah! True, well, the native HCY' algorithm should work then, because it's a double-conical space that results from the formula, without any saturation-fudging like HSL does.

    The Krita algorithm is a HSL formula to adapted to HCY', so you may find it has the same issue. In which case use the normal HCY' formula, which can easily be found on wikipedia: https://en.wikipedia.org/wiki/HSL_and_HSV#From_luma.2Fchroma.2Fhue (And is probably best suited for a slider system)(The Krita algorithm is nicer for a system which expects cylindrical spaces, like selectors and curve adjustments, because the conical algorithm doesn't understand how to make a fully chromatic colour darker, LAB has the same issue.)

    Also note that it may be interesting to look into linearising your input colours's components before doing the render calculation on them(and then gamma-correcting them on output). There should be plenty of sources on how to linearise the sRGB trc on the internet. Just to get the tone extra-right :)

    Thanks!

    And yeah i know all about gamma, it's an easy calculation to add, so I'll get around to it once i sort everything else out. I should be able to add in tabs for different colour selection modes, but that's pretty far down on my list on wanted features.



    Dado: Ah! Ok gotcha. Kind of an interesting tool, but it's completely at ods with what I'm trying to achieve here.

    The magic only makes sense when you start using the different materials all at the same time as each other, and all your shadow and light colours are correct compared to each other.

    It will make more sense when I make some example images/get some example images form people beta testing it for me.
  • pior
    Offline / Send Message
    pior ngon master
    So while it is easier for an artist to pickup HSL, it's harder for an artist to make nice looking colours using it.

    As a matter of fact I would even say that RGB slider mixing is way more efficient than both HSV and HSL when it comes to creating nice subtle colors, since "H-based" systems cause colors hues to cycle in a bruteforce manner. Ironically enough, even though HSV/HSL are inspired by the traditional color wheel like the wikipedia article states, they have very little in common with the actual useage of the color wheel by traditional artists, which is more like a compass to orient oneself within the color space, and less like a tool to pick colors to use on a canvas. After all, traditional painters (and paintings !) benefit from relying on a limited palette, as opposed to using all the tubes available at the art store.

    Personally the only thing I am interested in in a HSV/HSL system is the V/L slider, which allows me to easily drag the overall value of a color carefully picked through RGB. That being said, one could argue that *not* having a quick and easy way to adjust value (thus having to manually drag the 3 RGB sliders up or down, one by one) can be a good way to generate vibrant color schemes with subtle hue changes ...
  • Muzzoid
    Offline / Send Message
    Muzzoid polycounter lvl 8
    wHGnfcW.png

    Ok here we go, a bunch more work has gone in.

    New features-
    -Light and ambient Exponents.
    -New object button
    -Make swatches, so far this just puts the swatches conveniently in a box for taking the screenshot, clipboard will take me some more work! (got to make a new panel if you add more objects after, i'll fix that later)
  • RN
    Offline / Send Message
    RN polycounter lvl 4
    Hello. Great to see you working on software Muzz, what toolkit are you using?

    I'm trying to understand, if the light color is defined as something less than white, why is the highlight in those spheres white?
  • Muzzoid
    Offline / Send Message
    Muzzoid polycounter lvl 8
    The highlight colour is currently not 100% correct, need to fix that, however it has the ambient mixed in with the light colour as well, which it needs to be. Also the exponent doesn't show up in the Light colour panel, Though maybe it should.

    Good catch!

    I'm actually using a game engine called LOVE2d. This started as an excuse to learn a UI toolkit, but then it kept going. As a side benefit, all the textures are running on the GPU. I just made a few hundred objects and swatch panels, with a few tens of thousands of dynamic objects. The performance is pretty damn awesome!

    The only downside is i may need to venture into the C++ source code to add in some extra functions that aren't usually needed for game dev.

    Also i looked into saving swatch files to photoshop, Seems super easy! So that is something i can do.
  • AdrianBirkeland
    Muzz wrote: »
    Also i looked into saving swatch files to photoshop, Seems super easy! So that is something i can do.

    I've been trying it since you gave it to me on the Hangout yesterday and it's great so far. Looking forward to that piece of utility.
    Keep up the good work :)
  • Denny
    This is looking very useful, subscribed. :)
  • Muzzoid
    Offline / Send Message
    Muzzoid polycounter lvl 8
    So i think i came to the conclusion today with more coding that i really need to program this thing properly. Making it in a 2d game engine has been great for prototyping out the idea, and as much as I'd like to keep doing that it's not going to be able to do everything i want it to in the end. For example, i need to modify source code just to be able to save files to the computer, and i have almost no access to native OS functions.

    Still looking at options. QT is looking good. Lets see if i can make friends with c++ this time around >_>.
  • chrilley
    Offline / Send Message
    chrilley polycounter lvl 7
    The prototype looks neat Muzz! Is the math behind it available anywhere?
  • RN
    Offline / Send Message
    RN polycounter lvl 4
    If you're heading over to Qt and C++, I've used these resources to learn:

    - http://www.cplusplus.com/doc/tutorial/ (all you need to know on C++, but take it slow, it'll take a couple months)
    - Google searches for basic C++ questions (usually results in classic Stackoverflow threads which explain things clearly).
    - https://www.ics.com/designpatterns/book/index.html (a full eBook on Qt and C++)
    - http://zetcode.com/gui/qt4/

    Once you understand how things work Qt can get really addictive. The documentation is amazing (example).
    It's got its own IDE with a visual designer tool and you can use the LGPL version which is absolutely free, and build commercial software with it. Maya, MODO and Toon Boom are built with Qt.
    If you need any help setting things up please send me a message.
  • Muzzoid
    Offline / Send Message
    Muzzoid polycounter lvl 8
    Chrilley, the math that drives light is very simple. Like everything in physics, complexity comes from trying to derive information about the base equations, like converting RGB to HSV for example.

    The code uses this for each channel in RGB. It's easiest to normalise your colours to a 0-1 range, which lets you know that values of greater or less than 1 are out of gamut.

    ((cos(angle) * Light) * Albedo) + (Ambient * Albedo)

    Cos(angle) determines the intensity of a light ray, based on if the pixel is facing towards or away from the light.

    Eg

    cos(45) = 0.7071

    The rest should be pretty easy to work out.

    Kryzon!

    Thanks man. I think i may have spoke to soon, as somebody dropped a really interesting solution on me. Apparently using LUAJIT you can call a thing called FFI which lets you call native C code in a LUA environment.

    If this works i'm going to keep on working on the LUA version of this application, and get it out there, but make the eventual move to QT in the long term. I'll report back in a few hours.
  • IndieGear
    This is amazing! I am subscribing to this thread to track further progress! Really, great work!!
  • chrilley
    Offline / Send Message
    chrilley polycounter lvl 7
    Thanks Muzz, very straightforward indeed!
  • Denny
    Hey Muzz, if you don't mind me asking. Why cos(angle) instead of dot(light, normal)? I'm so used to basic GPU shaders, so I am curious if there is any advantage to working with angles instead.
  • Muzzoid
    Offline / Send Message
    Muzzoid polycounter lvl 8
    Artists don't tend to know what the hell a dot product is, but most know at least a bit of trig. Tis all.

    (man being subscribed to a thread makes me seem like a creepy forum stalker that is just waiting for a reply...)

    EDIT:

    Actually another reason, i would need to make two arrays and compare them against each other to get my final answer :).

    The only reason we use dot product in 3d programming is that it is a mathematically simpler way to get the answer from vectors, because to get angles you need to do trigonometry.
  • TeriyakiStyle
    Offline / Send Message
    TeriyakiStyle insane polycounter
    Nice! Would buy. Keep going
  • RN
    Offline / Send Message
    RN polycounter lvl 4
    I was searching for stuff and found this really nice wiki on various lighting models, with shader code examples. If it helps you in any way:
    http://content.gpwiki.org/D3DBook:(Lighting)_Cook-Torrance

    The Cook-Torrance model seems very interesting. It not only has a specular term but also a 'roughness' term that can be used to represent a lot of matte materials.
  • Muzzoid
    Offline / Send Message
    Muzzoid polycounter lvl 8
    Oh wow that is the most well laid out of shader examples i have ever seen. My equation doesn't take into account spectacular or roughness, so that would be really valuable to have.

    I need to have a sit down and a proper read, and see if i can implement it.


    So I have a dilemma. For the sake of prototyping, i have made it a 2d game engine that i already know. However it is lacking core features like being able to save files anywhere on the harddrive, drag and drop and the like. I thought i found a work around, but that seems to be a dead end.

    Now i have two options. I could keep going and get out a functional version for people to use. I could get out a public build in the next few days if i do this, dev will be super rapid.

    The other option is to move to a framework actually designed for making software like this, but there is a learning curve here, i have no idea how long it would take to even get back to the current stage i am in the current engine.

    I want to keep going with the current engine, and treat it as a shippable prototype, and once i get that into a nice place, start work on porting it over to a more capable framework.

    Regardless of what way i plan on going, the current plan is to sell it on gum-road for $5, and offer lifetime upgrades.

    What do you guys think?

    EDIT:

    I guess it would be better if i said what i can and can't do.

    I can't use the default windows save dialog, though i should be able to save a pallette png to an internal file where the game folder is. And loading in external images would be a pain, as i would need to code a file explorer.

    I can't copy an image to the clipboard, but i can do text.

    I'm not confident i would be able to the ACO swatch export like i would be able to.

    So TLDR:

    Can't do proper saving and loading to everywhere on the HDD
  • Dado Almeida
    Offline / Send Message
    Dado Almeida polycounter lvl 12
    I`m fine with a `simpler` version where the palettes are displayed in the own app screen. If you can layout it in smaller squares horizontally or vertically, with a gap between each material, would be very handy.

    At least in MS/CSP, it's way to simpler to load an PNG on the Subview Window (float, reference image inside the program) than mess up with the Color Set (Swatches) panel.

    Now, as Product you may commercialize/improve. It depends if releasing this preview would keep you motivated or not. Are you liking to develop this app? Think it's worth the time? To learn another language would be useful in a next project?

    If release a wip tool diminish your drive, I would not do it.

    On a side note, this thread made me search more info about Color Ramps. Kind of subject that I`m not 100% sure if I understand.
    Had found this tool, with a similar approach to yours: http://static.opengameart.org/gradientifier/, but looks like he uses a specific color pallete to display the result - which is kinda a limitation in our context.
  • Muzzoid
    Offline / Send Message
    Muzzoid polycounter lvl 8
    Yeah i think i was just panicking a bit because I can't do everything i wanted.

    I think the best bet will be to develop to a version 1 in this engine then move on. After that point i should have a much better idea about what a version 2 will need and how to make it absolutley amazing.

    Hell if i do well enough maybe i can afford a better programmer :)!

    Btw that colour ramps thing has almost nothing in common with what i am doing haha. Mine generates both photometrically correct colours + values. Like if you turn off saturation, this thing can be also used for value studies.
  • Dado Almeida
    Offline / Send Message
    Dado Almeida polycounter lvl 12
    Way to go then Muzz. And youre right about hiring/asking for help if you got a good feedback on this first version.
    What I mean linking this site is that both are ' tools to generate palettes' , I dig that what youre providing is different.

    Anyway. Any help, just ask man. I would be glad to help.
  • pior
    Offline / Send Message
    pior ngon master
    Yeah, I have to agree with the sentiment that sticking to the current framework for the initial release might be the way to go. After all it looks like the program already does everything you originally wanted it to do !

    As far as extra features are concerned : while I could see the benefit of being able to write/read to files and give the user access to OS file browsing, I also feel like there might be a benefit in keeping the application as self-contained as possible. Having the ability to save files to a specific location can actually be a hassle for the user, especially when it comes to little companion apps like these. For instance, I would *not* want to be able to save my Spotify playlists to files since I benefit from the blissful ignorance of letting the app take care of it all on its own :)

    The few things I could see being added to ColorConstructor in its present state are :

    - Text fields, either in the UI space or as part of a right or left click context menu to display (and possibly copy to the clipboard, but that's really not necessary) a given RGB hexadecimal value. For instance I could see myself wanting to precisely write down the RGB values of the light and shade parts of a sphere.

    Here are two possible solutions based on your most recent screenshot (I think I far prefer the popop solution, as it keeps the UI less cluttered and the popup can be as big as desired which is great for readability from the distance of a secondary monitor for instance - but there are of course benefits in leaving everything exposed at all times, as in the second mockup) :

    kQQqNtU.jpg

    - The option to tell the program to either remember the last session on startup, or start from scratch each time. That way you would bypass the problem of having to give the user access to file open and file save dialogs.

    I hope this helps !
  • Muzzoid
    Offline / Send Message
    Muzzoid polycounter lvl 8
    Oh i really like the idea of an internal colour picker! that's a cool idea.

    I'm currently doing a refactor of all the code, and making sure I layout everything is a much more elegant fashion.

    For the object panels i want to have two sizes, one that shows the full controls and, then the ability to turn them to a smaller window, and also perhaps the ability to hide them and recall them through a list menu. Luckily this stuff is pretty easy to do with the UI library i'm using.

    ZEpjC7h.png

    Top half of this is currently in engine, just haven't hooked up the numbers behind the scenes, but it's looking much nicer. Text inputs actually work! I'll put in a Hex Input as well.

    The bottom half is just starting to think about how to layout a heirachy window. But i really don't want to make this program look too scary to people who open it for the first time. Any ideas here?
  • Muzzoid
    Offline / Send Message
    Muzzoid polycounter lvl 8
    Ok i just finished getting all this hooked up. All the code is properly setup to be object oriented now, all the text inputs work, and so do the hex panels.

    Saving, and loading works now, and it will load the last save on load.

    For saving and loading presets, and your own, i might just put a scene name input, and have a drop-down for saved presets.

    I'm thinking that saving lighting and preset panels should be separate?

    Eg5iHVV.png
  • pior
    Offline / Send Message
    pior ngon master
    I don't have any further suggestions ... but I do wonder about these hexadecimal values ! Any reason why they are 10 digits ?
  • Muzzoid
    Offline / Send Message
    Muzzoid polycounter lvl 8
    I just grabbed the first RgbToLua hex function i found, though i found a better one which makes codes that we are more used to. Photoshop actually did interpret them correctly though!
  • pior
    Offline / Send Message
    pior ngon master
    I think I see what you mean - I indeed remember that the hexadecimal field in CC accepted more than 6 digits when I first tried it a while ago. I found out because I have the habit of holding "b" until the input field fills up with #bbbbbb in CS5 in order to get a medium grey, but in CC it did not stop at 6 digits and kept on going. I brushed it off as a UI quirk, but reading your remark makes me believe that this is a feature probably intented to support other color formats - precisely like the one you converted to here.

    That being said I can confirm that 10-digits hexadecimal values are not supported in CS5, even when pasted in. For instance 0x5e766fff gets clipped into 0x5e76, which in turn is R0 G94 B118 rather than R94 G118 B111.

    I hope this helps !
  • Muzzoid
    Offline / Send Message
    Muzzoid polycounter lvl 8
    Ah yeah you are right, they were malformed!! New ones are fine though :).

    I threw together a quick logo.
    EIrQv7P.png
  • Daew
    Offline / Send Message
    Daew polycounter lvl 4
    arhh a pet peeve of mine! I understand its a tool for colour but please don't use a different colour for each letter :poly122: it just makes it unreadable haha
  • Muzzoid
    Offline / Send Message
    Muzzoid polycounter lvl 8
    I agree it can be unreadable if it is misused... Do you really think that looks unreadable?

    Is this a pet peeve talking or you actually have trouble reading it?
  • pior
    Offline / Send Message
    pior ngon master
    Also, and that might be a bit of a detail, but "CC" might cause confusion with, well ... Adobe's CC :)
  • Muzzoid
    Offline / Send Message
    Muzzoid polycounter lvl 8
    Haha dammit you are right there. I guess i'll need to come up with a proper image logo.
  • Daew
    Offline / Send Message
    Daew polycounter lvl 4
    Sorry Muzz, I find it hard to read :p,
    (the rainbow effect makes it hard to focus on what the word is.
    my focus goes to each letter/colour instead of the whole word, but maybe that's just me.)
  • Muzzoid
    Offline / Send Message
    Muzzoid polycounter lvl 8
    ZKiKimt.png
    Ok here is a second attempt.

    I initially did a dot as a placeholder, then i added the rainbow ball, and suddenly i think i have something :D!

    I also tried a building in construction.... but it just made the logo look like it's suited for choosing what colours for your interior decoration.
  • Muzzoid
    Offline / Send Message
    Muzzoid polycounter lvl 8
    QHWmMd3.png

    ALMOST THERE!!!

    So currently i just need to make some new preview images, and make a way to change them, hook up ambient 2 to them, and make the save and load dialog properly. And we should be at our first release for gumroad after some usability testing.
  • Muzzoid
    Offline / Send Message
    Muzzoid polycounter lvl 8
    B2PaLnQ.png

    Here are some more preview images. These are inspired by trying to make something that would help the two tone scenes Astrapho(User on another forum) has been painting.

    This is also a great example of the new fake HDR system I'm using for the preview images. I managed to work out how to use multiple images, to extend the range of an 8bit image, that i am using for the lighting. I'm kind of amazed it even worked!

    I'm still working out how to make the masks, as it's pretty difficult to get them looking good. I think i'll just get better at it as i do them.

    Also if all goes according to plan we'll be able to have custom masks!!!!

    KqcBM3D.png

    You just need to make sure they are all the right size, and make sure that they have the correct tags in the name. Draw order is alphabetical, so that's what the number at the start is.
    --[[
    METHODS

    LOCAL - Draw a solid.
    BGLIGHT - the background with the light applied
    BAMBIENT - the background with the ambient applied
    BAMBIEN2 - the background with the ambient applied
    GAMBIENT - For the ground colour local colour derived from the ambient
    LEXTRA - HILLBILLY HDR
    LAMBIENT -ambient 1 rendering + local
    LAMBIEN2 -ambient2 rendering + local

    ]]
    Those are the methods if you are curious. They are badly named so i'll have to rename them for readability. Though how i'm detecting the string names means i can't have a full name repeat with a second number on the end.

    So one thing i am having trouble with is working just how much information to display in the swatches. These more advanced previews are showing a lot of complex colour interaction, but the swatches aren't quite showing that, especially in a high ambient scene like this example, where a lot of form is defined by ambient occlusion, and the shadow colors mixed with an ambient are still very bright.

    Is having three ramps per material getting a bit rediculous?
134
Sign In or Register to comment.