Anyways, a few more glue bits required to get the paint interface screwed together and working. Hopefully that will be done tonight, and then I'll mainly just optimize UV generation tomorrow and we could be on the way to a shaky beta this weekend... or monday.
Sign me up for the beta I like the new GUI elements!
djolar: Remember that this is paint mode though. I haven't done any significant amount of work on sculpting tools yet, though I might do some things right now since I've finished the main batch of paint mode work scheduled for today.
pesho: Camera and show/hide will be in, yeah. The camera will probably need some further adjustments later. In some ways it's a lot better than the old system, but certain situations don't currently work out as well as they could.
Only color and bumpmap painting for now. I should add a colormap export/import option so you can work on multiple texture channels if you want to, although they wouldn't show up as real surface properties unless I added native support. You could paint a black and white mask for specularity for instance, but it would only show up in your game engine or renderer.
Having switches in the app to work on different common channel types might be easy enough to add, but it's not planned at the moment. It would require more advanced materials, for example.
Would be cool if you could paint shininess onto the surface though, so you can have wet areas or such. For some reason I keep imagining features in terms of gore, but open wounds with glittering wet blood against more leathery skin around it would look pretty neat. Same for lips and the inside of the mouth. Hard to make those things look really good if you can't separate the material properties more than through color.
Ok. Shininess channel goes into "probably" section of todo list. Might have the default shader map it to both shine amount and specularity sharpness, so you can make a range of effects without having the complexity of two channels for "almost the same parameter". Black would be dull fabric, dark grey kind of leather/skin, middle grey for various kinds of metal or such, and white for liquid.
A completely flexible solution would be to allow N materials and a weight mask channel for each, so you can blend between any set of properties. For version 2 maybe?
Hmm, I would've figured the "easiest" solution for you would be to allow for two materials with operator (or only "add" - to get that specularity). One could provide base material and then highlights only. Just a thought. I suppose the material would get multiplied by the paint color, right?! So materials can still be provided like now. I mean, I really don't know exactly what you were planning to do right now with this. What ever it is, I already know it'll make happy days for all of us, hehe!
Dr. Petter, i was meaning the following: you select a spec map, a normal map, a texture map etc, and then sculptris paints it onto 3 different images. That would be neat, cause making a spec map when you didnt create the uvmap by youself is a real pain in the a**...
analdin: I don't think that would be necessary, if you can mask by bump (and maybe even geometry cavities) and paint the specularity/shininess like any other color, it should be a swift job to make any effects you'd want with good connection with the existing object/texture. Having it show up in the editor directly as the properly shaded surface would be an extra bonus and good for more careful work, but if you know pretty much what you want and it's not really intricate stuff, it should work fine. If you just want "shiny stuff" and "not shiny stuff" with some gradation. Doing really elegant semi-wet skin with subtle variations all over would require you to see the effect directly as you paint it though. Would probably require some way of doing at least basic faked subsurface scattering too though... not sure how far you could get with a colored light sphere. Perhaps it would look decent?
taron: Yeah, that's basically my second idea there. A number of materials (no significant reason to stop at two) with an alpha/weight mask for each. I guess the mask could be colored, but it would get rather abstract and hard to work with. Better to layer more materials if you want peculiar effects like that.
One significant issue with adding complexity like this (besides the task of coding it) is that it gets a lot less obvious how you would export and actually use the stuff anywhere else. Specularity is probably fine, but multiple texture-masked materials based on light sphere images? I guess if you're doing advanced stuff like that you're probably able and willing to do custom shader code/graphs in whatever target environment you had in mind, so that could work if there are no really weird magic tricks involved.
Material spheres are too limited for general use though, when you have free light sources. So it wouldn't make sense to do a lot of careful effects using those if you are going for another package to render it in. A slightly different option is to have gradient maps like Blender does, perhaps with a circular image similar to the current material spheres, but which is used from the light's point of view to describe how colors fall off at different light angles. Diffuse and specular would have to be separate.
For games and other performance-critical things, you typically want different materials divided into sub-meshes containing only the relevant triangles which have any of that material visible.
I think I'm going to stop now. This is an endless spiral of feature creep. My todo list actually says "brush spacing" right now, and I know some of you would want me to implement that rather than speculate wildly about material effects
It's using simple linear interpolation between sample points right now, but it works really well and isn't slow and choppy unless you flick very fast across. With bezier interpolation it should look smooth even if you get the occasional chop-chop curve though.