Yeah. Turn of a switch, but I would have to code the switch. It's easier when you just use the existing material system
Might add it later though, to make a more clear list of rendering/viewing options. Perhaps also an option to render the mesh out to an image in a more reliable way than to printscreen it.
Speed-wise, with the image lighting "optimization", I'd say a dot product is massively faster than a texture lookup these days. Of course, if you want some kind of more advanced light effect, like different hues or banding, it could be faster.
Yup, that's what I'm thinking, too. I had some shocking differences with memory access as opposed to math, haha. Kinda pleasant, though.
Eitherway, I think so, too, in regards to viewing mode management. Normals and Depth would be perfect candidates to make this kinda mechanism an appealing option. (may I add: TAHAHA, man, I know...don'tcha love it when somebody says that "easy as the flick of a switch", hehe. Sorry, but I hope you know what I meant...no extra computation, of course.)
Thanks for bearing with me there. You're doing such a shiny brilliant job, it's too freaking wonderful and I hope you always know how much I and certainly everyone else is appreciating your work. You have already every right to explode with pride, but don't do that just, yet, hahaha... when the time comes, we all come with mobs and buckets!
kayeva: Yeah, currently it will remember the values for size and strength with each separate tool. It's not a perfect system though, and I too find myself changing them a lot. If I made it possible to store custom "brushes", there would have to be a convenient way to select them that wouldn't take more effort than changing the sliders directly. I'll think about possible solutions, but I have to do some more real-world modeling to get a feel for what that could be.
psmith: Animation is beyond the horizon at this point. It's not something I can realistically consider before I've finished the basic sculpting and painting functionality. I will have to do a lot of technology experiments before I know what would potentially work in a real tool.
Last Edit: Feb 27, 2010 23:22:17 GMT 1 by DrPetter
One thing that I personally would find helpful, since I tend to shuffle between them a lot, would be shortcut keys to move to the prior and next materials/textures. The documentation never mentions anything such as that, so I figure it isn't something in the program yet. (I apologize if someone else mentioned this and I missed it)
I spent so much time yesterday in Sculptris that I dreamed about it last night. Except it was a later version and had an awesome addition - completely customizable, compound brushes.
The idea is to use a png bitmap to define the shape and effect of the brush, so you could build a brush in photoshop or whatever that raises a point or a mound or anywhere in between, but so much more.
Here's an example bitmap.
Imagine if the red channel was mapped to flatten, the green channel was mapped to smooth and the blue channel was draw. Pixel values over 128 add, and under 128 subtract from their mapped effect. You'd also need a small config file (or embed the data in a png) for a few flags to say which channel is mapped to what effect, whether each channel is reversed during right click painting, and whether it is effected by tablet pressure, and the order to perform the operations (though this could easily be standardized to R>G>B>A for simplicity, since channels can be mapped to any effect.
One thing I noticed, especially when using the crease brush, was that I would often go back over the same process; crease, smooth, pinch, flatten along either edge, repeatedly re-tracing the same brush strokes. If each operation were bound to a colour channel, I could create that same effect with a single stroke, or at least without having to change tools.
Still with me? because there's more! To do all that, you don't even need a 2D bitmap, Just a one dimensional line of 32 bit pixels that the program radiates from the center of the stroke, but if you do use a 2D bitmap, and turned the bitmap to point in the direction of the brush stroke, then you can get some really amazing compound effects, for example a bitmap that looks a bit like a traffic light so that each effect directly follows the other along the stroke, but the possibilities of the brushes that users could create would be endless.
Anyway, that's what I dreamed up, I hope it's not too crazy.
yowesephth: I didn't think people would be interested in switching materials a lot. Maybe I'll add hotkeys later.
monkey: It is definitely crazy, but it might also be useful. Critically, it wouldn't require an insane amount of work on my part to make at least a functioning test version of it. Might be realistic to add as an experimental feature for you to play with, having little or no refined interface controls - just a few hotkeys and text+image files to define the brushes.
1: autobridge -pick 2 different points and it adaptively creates a tunnel. -Undo idea: mask an entrance of the tunnel and that turns the tunnel which was a bridge into a hole on the side that's still open. Mark all the openings, and the remaining "bubbles" are auto deleted. -it'll be great for things like the cheekbone, bridges from one hill to another, ect -oh! and one should get a choice of "tunnel" or "arch" type bridging.
0.0.. removing arch type bridging could be a divide tool! -a line across the bridge breaks the bridge at the desired point; or erases verts at that point. -and also a connection tool would be great for two separate objects -create one object create another, connect them
-which leads me to one last tangent of bridging -an object brush. a dot would translate to a sphere, a drag would translate to a cylinder if the bridge tool's used in empty space (user prompt before proceeding )
2: FunnelCrease - great for making corners: usage: It'll be like flatten, except the flattening tool gets an angle (like folding a piece of paper in half) -user picks the angle between 0-180 degrees-or even convex angles- and the size of the plane. (the direction of the 'fold' in the tool is determined by the user's stroke direction.)
what it does is "pool" verts progressively to the crease depending on the strength of the brush, and flatten the faces along the two planes which meet at the tool's fold/angle. -I guess the tool could look like a circle folded in half instead of a square.
-just think: would really help give models that "concise" detailed look (as if all the edges on the figure were deliberate and not just derivations of artistic 'settling'..) -lol.. kinda the only way I can describe not being able to make sharp corners where I want them.
-thanks for the tool -dreamed about it last night XD -ps.. I really like the simple logos you have for the tools.
I get a little bit creeped out by all of you dreaming about my app
severedvert: It took me a great while before I realized you weren't talking about the cheekbones of a living person but rather a skull.
I think the most generally useful and flexible solution for bridges and tunnels (and a lot more) would be to support multiple objects and boolean operations between them. You could build a rough bridge, position it to intersect the main object, then join the two meshes. For a tunnel you'd just make a rod and carve it out of the big mesh.
This is somewhat technically challenging, but it's a common procedure and there's a lot of information to read about it if I don't manage to solve it on my own. I should be able to add it once multiple object support is in. The likelihood of seeing these things in v1.0 is... 50%?
The corner brush is not something I have considered before. Not sure how to go about it. I'll have to keep it in mind if I sculpt a detailed model with sharp corners at some point. If you want rounded corners though, maybe you can just pinch them with the current tool, and then flatten and/or smooth them to increase the corner radius? It wouldn't be as fast or reliable, but it should give a similar effect.
-that would work! (*is an artist*) so I can see how that would serve my purposes together with already built tools
-I also love the generated geometry -mostly the way it self-spaces and self propagates to avoid really annoying intersections. -I guess as a consequence of multi-object support would be the ability of erasing sections of a model(imagine a pipe going through pizza dough- if it pinches it all the way, 2 objects!) since islands would register as new entities once severed .
*smiles* can't wait till the next version! -you've got a new fan, mister XD. -now I wait and see *is honored to have gotten a response from THE admin *
I would me more than happy with a no interface test version.
I'm pretty sure something like severedvert's funnel crease brush would be easily definable within such a system. The depth and width (and thereby angle) would be directly controled by the existing size and strength sliders. It would basically be a linear "cone" for height with a strong pinch at the top and around the base to make the sharp edges, plus some flatten thrown around the edges (but avoiding the pinch points).
That does raise a point about the inner mechanics of the tool though. In the example of severedvert's tool, the pinch would have to be localised, so that each pinch pixel draws verts toward that pixel, as opposed to toward the center of the whole brush. That would be a lot more CPU intensive in comparison, but probably the brush images themselves could be only about 32 x 32 pixels or so? That is still more than enough for some very decent tools, I'd think.
Sorry for spamming, but I had a thought about the tunneling and bridging thing as well. I think it would be more in keeping with the simple to use nature of Sculptris.
Rather than a boolean or defining two areas to bridge, you just mark off a section of faces as 'destructable' similar to the way masking works now, then any edges being pushed around by the current brush that intersect the marked faces would "punch through" those faces to create holes &/or bridges. Probably not as simple to code as it is to explain though. :/
monkey: Yeah, that would probably be tricky to code. Also, while "punching a hole" or "dragging a bridge" would be simple to do for anyone, it would still make it pretty difficult to make more elaborate features using it. You would have to make a bridge, then inflate it, flatten it, move it around, wiggle, rotate and do all sorts of stuff while it's attached in its intended location. With join/carve of separate objects, you can comfortably shape the "tool" or component before you apply it in the right place, without interference from the surrounding geometry. I think it would still be pretty intuitive and much more powerful. You could also repeat elements across a surface that way, if you copied the object before joining/carving with it.
One compromise or complementary feature could be to have a "hole puncher" tool that simply carves a preset cylinder out of the model at the brush position. You select that tool, adjust brush size and click to make a hole through to the other side. It would operate through the same code as "full boolean operations", but without the hassle of setting up a new object.