I am trying to figure out what to do next for my portfolio. Since all my work is art tools' related I need your help homies! I want to know that my awesome ideas will be put to good use, so pass the word along...
I really feel that there are just certain aspects of video game art that you simply can't shortcut. Programming just can't compare to artistic ability.
If anything I'd be more interested in additional modeling tools. But even standard tools in any modeling package are very adequate in creating quality art. Something that helps with orientation would be pretty sweet.
To me, unwrapping an organic object is something that should be done by hand. I know there are a lot of artists out there that really dislike unwrapping. But seriously, hand unwrapping has such a huge advantage over anything done by code. The topic of unwrapping has been discussed already many, many times in this forum. So I will leave it at that.
Mesh Optimization is another thing that should be done by hand. Most (if not all) geometry optimization tools are really crude. So maybe there's hope for something competent? But I doubt it. How would it know where to reduce? And by how much? A lot of how much you take away is situational. And it isn't just a simple case of taking away polygons, too. Verts need to also be pulled to try and encompass the same relative shape/volume that was originally there.
Making LODs for sure! Worst part of my job when i have to do it. Uv tools these days are pretty great, most apps like modo, max etc have some really good unwraping methods that take like 1/16th the time unwraping used to take. And with a decent workflow(yay xnormal) baking out maps isnt really a pain at all..... But having said that, i still think LODs are generally something that needs to be done by hand, because of totally shit automatic tools and such.
I'd like a UVW mapping tool that automatically arranges all your chunks that you've unwrapped without resizing them into the best configuration possible. I'd also like an option to not change the orientation on some pieces when that happens.
EQ is right about the LODs. Good mesh optimizers seem non existant. Something that can take a high res sculpt down to a decent enough low poly to work with would be nice. I dont expect it to be done or anything after you run the script, but to have it be something workable would be nice, keeping the edge loops and all.
[ QUOTE ]
I'd like a UVW mapping tool that automatically arranges all your chunks that you've unwrapped without resizing them into the best configuration possible. I'd also like an option to not change the orientation on some pieces when that happens.
[/ QUOTE ] http://www.uvlayout.com/ does most of this, I think. Not cheap, ~ 350 US, but it looks really good.
Weight painting a model with the colours effecting how much (if at all) areas of the model are reduced would be nice. So you could paint a low (or 'none') colour for joints and run the tool so most of the reduction would be done to the rest of the model.
Honestly? Who cares, as long as you have a good 3D paint app, and there's little stretching. That layout is super-wasteful though, not what I'd go for. The thing does seem good at packing and at resizing chunks (that pic looks manual to me).
The advancement of LOD tools (meshlab rocks) have been a huge help in my workflow. It will never be 100% automatic, like soul said a program can't determine some key areas like the face, etc. But a powerfull lod tool in conjuction with hand tweaks really does the job much faster.
[ QUOTE ]
The advancement of LOD tools (meshlab rocks) have been a huge help in my workflow. It will never be 100% automatic, like soul said a program can't determine some key areas like the face, etc. But a powerfull lod tool in conjuction with hand tweaks really does the job much faster.
[/ QUOTE ]
our lods are all automatic, geometry and skeleton and they work great, never notice any popping or anything like that. i also have no idea how they work, but i know we don't make lods for anything on the character or environment side, they are all done in the engine. i will try and find out more info on what is going on.
*******EDIT*******
okay so it looks like we are doing all the lods on the gpu.
[ QUOTE ]
How much does the progressive mesh differ from the original PS2 R&C-engine in terms of scale?
Al Hastings, Chief Technical Officer: Our level-of-detail techniques are actually much simpler on PS3 than they were on PS2. We made the decision to steer away from doing heavy amounts of geometry processing on the SPUs, so instead we’ve focused on techniques that can be implemented directly on the graphics chip. There are a lot of trade-offs with this approach, but ultimately we like the fact that it gives us more flexibility in our engine and it frees up the SPUs for gameplay related processing.
[/ QUOTE ]
[ QUOTE ]
Mike Acton -Lead engine programmer
OK guys,
I can speak to this:
1. We have tried out a few different LOD methods that we like for different reasons, including our announced support for texture streaming, and we've decided that not doing the work for LOD on the SPUs is a win for us right now. We're always re-evaluating everything, so this is subject to change, but what we've got looks pretty good and is fast. We might go over the details at a later time.
2. Let me say very clearly, we find the SPUs very flexible. We do in fact do some graphics pre-processing on them, including work for culling and clipping and RSX data building as I've mentioned elsewhere. At the same time, graphics alone don't make a game, and we've got lots of other systems running on the SPUs. The SPUs are absolutely central to how we write everything now - it's no longer a matter of "porting" things to the SPU - the SPUs are where everything should go by default. We've still a lot we can do, but we're definitely taking advantage of the Cell.
3. Insomniac does not use EDGE. Although Insomniac did participate in its development (a few of the Insomniac engine guys spent quite a lot of time over at our pal Naughty Dog's place, doing what they could to help them put it together in the early days), but it's simply turned out very different from where we want(ed) to go with the engine and our current tech is very much Insomniac's own.
There was a script for max5 that normalized UVs. http://www.scriptspot.com/3ds-max/normalize-uv-elements
But it ain't working these days. I'd love a fix for this one, one that doesn't involve Relax, since that changes the UV shape.
Erik about that one automated UV layout example - this is typically the kind of problem that seem just fine from a techart point of view, but in practice leads to sloppy results.
Obviously for organics it can be worked with, especially along with a projection paint solution. However there is always a point when you need to actually paint things the classic way in photoshop, and you really dont want things that are straight on the model to be curved on the UVs - Like mouth and eyes. Having to compensate like mad for UV distortion (curvature) when painting a texture is very irritating and gives unpredictable results.
Also when it comes to efficient and fast worflow it is crucual to have opposite sides of a seam to be lined up on the UV layout. If you have nicely laid out UVs you can paint wristbands, sewing seams and tons of other things with just a straight line in photoshop. The relaxed, tiger rug kind of layout does not allow that. Obviously you don't need these 'UV loops' to be anal-straight since this can be adjusted later once the texture is being painted. But it is still very important for the general layout to take this into account.
Note that these points mostly apply to handpainted textures. But even if it was for a nextgen, baked asset I would simply refuse to work on such a layout and bounce it back to whoever did it :P (that female model would be hard to make anything decent with anyway haha)
[ QUOTE ]
Erik about that one automated UV layout example - this is typically the kind of problem that seem just fine from a techart point of view, but in practice leads to sloppy results.
Obviously for organics it can be worked with, especially along with a projection paint solution. However there is always a point when you need to actually paint things the classic way in photoshop, and you really dont want things that are straight on the model to be curved on the UVs - Like mouth and eyes. Having to compensate like mad for UV distortion (curvature) when painting a texture is very irritating and gives unpredictable results.
Also when it comes to efficient and fast worflow it is crucual to have opposite sides of a seam to be lined up on the UV layout. If you have nicely laid out UVs you can paint wristbands, sewing seams and tons of other things with just a straight line in photoshop. The relaxed, tiger rug kind of layout does not allow that. Obviously you don't need these 'UV loops' to be anal-straight since this can be adjusted later once the texture is being painted. But it is still very important for the general layout to take this into account.
Note that these points mostly apply to handpainted textures. But even if it was for a nextgen, baked asset I would simply refuse to work on such a layout and bounce it back to whoever did it :P (that female model would be hard to make anything decent with anyway haha)
I think we need some good scripts for repetitive skinning tasks.
Take a skirt, for example... this is a script I started but didn't get to far with. It would be nice to choose some verts and it would do something like auto-assign the weighting based on their location, from some defined gradient/interpolation. Say, you could choose the thigh and calf bones, and it would assign a gradient of weights from left to right and top to bottom. It would also be cool to have something like geometry shapes that define influence, instead of envelopes... you have a cylinder with geo cut in already to represent the elbow, knee, whatever, and you can manipulate this geo and then assign vert weights from the location of the geo... hard to describe. Potentially a similar thing for the shoulder is possible?
If you decide to do any of these and they are for Max, please give me the heads up, because I think I'm going to start working on a couple as well while I am between jobs. If you do them for Maya, give me the heads up anyway and we can maybe bounce ideas off each other.
SouL; I'm not advocating a complete programmatic solution, I'm talking about tools. I'm not talking about 1-button solutions here. I'm an artist first and programmer second....you guys should remember me from back in the day....I've been an artist on these boards for like 8 years.
Anyways, my UV solution will probably involve stages, only the 2nd stage involves user interaction:
1- Unitize all faces.
2- Vertex paint shells in 3D to decide face adjacency to form UV shells
3- Scale each shell to maintain texil ratio.
4- Auto layout shells for optimum 0 - 1 coverage.
Basically all the user would have to do is paint the shells they want.
I also have a great idea for layout. lets say you want certain shapes in spacific spots on your layout but dont care about the other shell placemnets. I want to make a system where you can place those key shapes and pin them, and the rest will figure itself out.
I think shell definition through surfaces is not the best solution since you run into a blocker for a cylinder shapes, arms aso. It is just easier to use edges contours in many cases. Best would be to let the user use both or either.
Heh, I'd have thought you'd have considered that already PaK, since pretty much every semi-automated UV process that exists at the moment uses the edge border / loop / point-to-point edge selection method to determine a UV shell ... they do this because it's the fastest way.
Doing it using vertex colour sounds painfully slow by comparison.
SouL... what do you mean, "finally" someone who "understands"? I was under the impression that anyone who's been working on things which require hand-painted low-res textures would UV map things in this way. I've certainly been doing exactly what Pior said, for years.
I guess not everyone thinks like that though, especially people who are just starting to use tools like Max / Maya / favourite new app, and they find the Pelt UVs or Relax tools and just unwrap everything that way.
Arshlevon, I'd love to hear more about your guys' automatic LOD solutions, do they have any links to white papers or articles/presentations about it or similar methods?
i'd like an automatic UV-packing tool that can do a good job
of packing something, without being too wasteful.
and i'd also like a way to group UVs, so that they're not packed into different locations, but are packed in relation as they were. example: you've UVmapped and mirrored the hands, and neatly placed them over eachother, or copied the UVs for them. then you'd be able to select and group them,
so that when you select 1 UV, you select them both.
oh and i'd like the UVtool to automatically scale the UV piece to be the % of UVspace proportional to the actual m^2 total surface area, with a slider to determine how much more UVspace the piece is going to be assigned than the rest of the pieces. and after packing, a slider to determine the size of all the UV pieces to reduce space wastage, before a final pack which simply scales down the UV texture to 2-3 pixels away from the borders.
and finally, i'd like some ghostpainter-esque functionality for the UVmapper, like the "export selection to photoshop"
and "export selection to vectors in photoshop"
dejawolf: i like the idea of being able to group UV chunks for mirroring/layering stuff especially when dealing with UVs for baking where you sometimes end up with stacked elements outside the 0-1 range ... being able to transform a selection inside the 0-1 range and have it correctly update the matching element outside the 0-1 range would be useful.
I'm actually finalising a script for calculating UVspace proportional to geometry space at the moment, like Eric suggested. I took a look at the script he linked which no longer works, it's basically calculating a rough guess based on the bounding box of each UV element, so it's not 100% accurate. My version actually calculates the UV area in proportion to the geometric area... should be finished soon.
There's actually a maxscript command for "getArea" in the unwrap UVW window but it doesn't seem to work at all. Can't find any useful info on it either - the maxscript help implies that it should do exactly what I need, but it doesn't return any value other than "OK" o_O
[/ QUOTE ] http://boards.polycount.net/showflat.php?Cat=0&Number=194449&page=0&fpart=2&vc=1
This thread comes to mind, oh the classic Per rant, I miss em sometimes. I think it handled the whole issue of "square off VS pure pelt pull" pretty well. Daz had a nice belt illustration a while back, but I can't find it =/
It showed the major advantage of keeping straight lines, straight, which is what I think SouL was pointing out. Not to mention the scale on some objects would be hard to paint on and the large void of wasted pixels surrounding the UV's would drive me nuts. Its hard to paint fingers when you have 3 pixels to work with.
[ QUOTE ]
I think we need some good scripts for repetitive skinning tasks.
[/ QUOTE ]
There was some cool stuff like this, some barely realized though, in the Skin Or Die script for Max. Worth a look-see. http://www.scriptspot.com/andrehotz/
Isn't it just common sense that you don't use that layout for err.. anything, Soul? I don't see how using lscm or whatever automatically results in bad uv's. it can be very useful for even the lowest-poly model, I think. Well, within reason, anyway. I don't think any of use really select edges, unwrap and call it a day. There's a certain point where a decent layout for texturing is no longer that much of an easy, though. How many people spend hours texturing a next-gen model in photoshop? It seems a much less mission-critical step for next-gen, and any time you waste on unwrapping an incredibly complicated model by hand just doesn't pay off. So in short, don't use a terrible, terribly layout like that, but don't limit yourself to max's built-in uv-tools strictly on principle, I suppose.
Yup per I definitely agree with your last sentence. Ever since nextgen stuff started to appear I found that the cool side effect of that tech is that you can UV that asset in a snap. RoadKill is just sooo nice!
Also agree on the ps3/DS thing. Unfortunately it appeared to me that many folks are not aware of how things are to be done differently depending on the case. In my opinion this is just a matter of common sense - but it is interesting to see how some artists are willing to spend hours doing something in an unefficient way rather than investigating techniques/running tests to see what would be more efficient for the end result.
Its always funny hearing people that texture 500 poly models with only diffuse try to tell people the "correct" way to uv in what, 2008? Really if you guys had any experience at all texturing characters with 5-15k poly limits you'd know how absolutely absurd it is to think everything should be done by hand. Spend 2 days making those perfect uvs when you could be spending a couple hours to make uvs that are way more efficiant, that you likely have a base of ambocc/normals to paint directly on. Its not like you need to "guess" where your details are going to be. Oh well as long as we have people here still stuck in 1997 in terms of specs we'll continue to have this discussion.
[ QUOTE ]
Its always funny hearing people that texture 500 poly models with only diffuse try to tell people the "correct" way to uv in what, 2008? Really if you guys had any experience at all texturing characters with 5-15k poly limits you'd know how absolutely absurd it is to think everything should be done by hand. Spend 2 days making those perfect uvs when you could be spending a couple hours to make uvs that are way more efficiant, that you likely have a base of ambocc/normals to paint directly on. Its not like you need to "guess" where your details are going to be. Oh well as long as we have people here still stuck in 1997 in terms of specs we'll continue to have this discussion.
[/ QUOTE ]
Hah. I have textured a 15K polygon character. In the EXACT same way I would texture a 500 polygon model. End result... a texture that's easy to read and figure out. Hell... I'll send pior the file right now and we'll see what he says.
So, because you've managed to do something in a very slow and arcane way, that is the best way to do it? Hell i could model a mesh writing in each vert by hand in an obj file, but would i then come on here and claim that is the proper way to model? Of course not
I sure won't bother doing the straight line thing for a nextgen asset. But still, having the '1997 experience' to back one up certainly helps when it comes to figuring out workflows. A good exemple would be if you ever have a pattern that needs to overlap a UV seam - it is soooo frustrating to have to scale down a pattern at an odd ration just to compensate for sloppy UVs. Also, UVs boundaries that 'loop' horizontaly does *not* mean that everything has to be done on a 90degrees grid, it would be just stupid, I saw it done a couple times and I just don't get the point.
I also find it crazy (for diffuse-only models, not nextgen) how some artists completely refuse to adjust UVs on the fly. It helps sooo much... Like if I know that something is supposed to be straight on say, a shoe, I'd just slap temporary UVs (or, no UVs at all), paint the bit straight in the texture, and adjust UVs to fit. I have seen artists spend days on anal-tight UVs (relaxed or not), just to realize when painting the texture that they have to make their lines wobble to follow the UV edges.
Even if today is 2008 I think these things still apply for games going the handpainted route and for handelds platforms. It's aslo great knowledge to keep in mind just in case since you never know what bump you might run into even for more recent assets.
Soul as you seem to be the main advocator here. Answer me this: Have you actually used both methods exstensively in production and weighted the pros and cons of each?
Even with your example mesh in the other thread, you say how can someone make a 1024 look good if you cant make a 128 look good. Well if you take your own texture for example, and size it down to 128 or 256 it will look virtually the same, because it has very little high refquency detail in it. Now if you were to take say, a gears of war model and size the textures from 2048 down to 256 you would see a HUGE quality drop off. Which makes your example pretty irrelevant. If you actually have the detail in your textures, you WILL notice the un-even pixel distribution from griding all of your UVs as aposed to making a layout that has a consistant texal ratio.
I do that thing where you draw wobbly lines on the tex sheet to make straight lines on the model. whatever, doesnt slow be down that much... But then im a self taught n00b.
I do both, it depends on what is going to be faster. It's not so much how you finish the race, its that you finish.
/quickly snatching the moral high ground so someone else can steal it...
EQ you're picking old scabs. It's silly to try and force your work flow on other people, even if they are trying to do the same thing. Everyone works how they see fit hopefully their ego won't keep them from being open to new ideas. When it does you just have to cut your losses and let them crash and burn. I'm not saying SOuL is making mistakes because it works for him and I'm willing to bet good money that people do what works best for them in their circumstances. I haven't seen enough of his UV work (nor have I been at this long enough) to even try and pass judgment, without working with a person its kind of silly to even try.
Long post short, if you want to reopen old wounds maybe a little thread necromancy is in order but I'm not sure this is the place?
I vote for some much improved auto arrange UV tools, like being able to assign priority, grouping and angle, or being able to pack UV's and have the current selection fit into what is already arranged instead of ignoring it or worse rearranging it scattering groups to hell and back.
personally, I think all of those 3 areas are covered pretty well. UVing with roadkill or some similar method is fast.
If I had to pick one area where a tool might speed me up, its re-topologizing a mesh. When I bring a high res mesh to maya, and then build a game mesh around it. It's tedious, and kind of boring.
Maybe a tool where you just throw edge loops around and they snap to your mesh. Or what about if the computer made a "best guess" based on tweakable parameters, and then you could go in and tweak it quickly.
Yes, I have used most of the re-topo tools. Polyboost, that weird maya plugin, topogun. Haven't tried Zbrush re-topo yet. They do speed the process up, but it still involves 1000 mouse clicks.
It's okay man. Everyone can do whatever they want. Your call.
I've just tried sharing some of my thoughts and some of the techniques I've been shown/discovered through my years to people on this board. Take it or leave it. Simple.
I never got why so many people didn't abandon hand-painting their textures on flat maps in Photoshop back in prev-gen days when you had programs like Deeppaint3d and Body Paint. 3d Projections into Photoshop anyone? It got around the whole distortion issue.
I think it's mostly because 3D paint still isn't as good (or comfortable) as Photoshop. Body Paint looks close though. I haven't used it enough to say.
Eric, dejawolf: I've finished my script, it appears to work perfectly in all test cases I've given it. It's much more accurate than the other one since it uses the actual UV area rather than a bounding box guess. Obviously it will give more accurate results the closer your UV area is to the geometric area (per UV shell) since it uses the ratio between them to calculate the scaling factor.
It also does an "average" scale kinda like Max's relax which I always liked, where if you have a few huge UV chunks and a few tiny ones, it will scale them all to something in between, rather than making everything huge or tiny.
It only works on Editable Poly models. If you have any geometry-changing modifiers in the stack, it will break (still trying to find a way to avoid this gracefully), if you don't have an Unwrap UVW modifier in the stack then it will add one for you. Works great in the Unwrap UVW context menu.
Unfortunately after all that talk, my DSL is down at home so I can't upload it - should be able to get it hosted tonight. I'll post it in the Max Plugins thread... should probably also set up a "scripts" section on my website
Pak: That's what I am doing. I calculate UV polygon area, and corresponding surface area of the geometric poly, and find the ratio between those, and scale each element by the required amount. Works pretty well.
Replies
What software?
If anything I'd be more interested in additional modeling tools. But even standard tools in any modeling package are very adequate in creating quality art. Something that helps with orientation would be pretty sweet.
To me, unwrapping an organic object is something that should be done by hand. I know there are a lot of artists out there that really dislike unwrapping. But seriously, hand unwrapping has such a huge advantage over anything done by code. The topic of unwrapping has been discussed already many, many times in this forum. So I will leave it at that.
Mesh Optimization is another thing that should be done by hand. Most (if not all) geometry optimization tools are really crude. So maybe there's hope for something competent? But I doubt it. How would it know where to reduce? And by how much? A lot of how much you take away is situational. And it isn't just a simple case of taking away polygons, too. Verts need to also be pulled to try and encompass the same relative shape/volume that was originally there.
EQ is right about the LODs. Good mesh optimizers seem non existant. Something that can take a high res sculpt down to a decent enough low poly to work with would be nice. I dont expect it to be done or anything after you run the script, but to have it be something workable would be nice, keeping the edge loops and all.
I'd like a UVW mapping tool that automatically arranges all your chunks that you've unwrapped without resizing them into the best configuration possible. I'd also like an option to not change the orientation on some pieces when that happens.
[/ QUOTE ]
http://www.uvlayout.com/ does most of this, I think. Not cheap, ~ 350 US, but it looks really good.
LOL Who in their right mind wants to paint THAT? Honestly.
The advancement of LOD tools (meshlab rocks) have been a huge help in my workflow. It will never be 100% automatic, like soul said a program can't determine some key areas like the face, etc. But a powerfull lod tool in conjuction with hand tweaks really does the job much faster.
[/ QUOTE ]
our lods are all automatic, geometry and skeleton and they work great, never notice any popping or anything like that. i also have no idea how they work, but i know we don't make lods for anything on the character or environment side, they are all done in the engine. i will try and find out more info on what is going on.
*******EDIT*******
okay so it looks like we are doing all the lods on the gpu.
[ QUOTE ]
How much does the progressive mesh differ from the original PS2 R&C-engine in terms of scale?
Al Hastings, Chief Technical Officer: Our level-of-detail techniques are actually much simpler on PS3 than they were on PS2. We made the decision to steer away from doing heavy amounts of geometry processing on the SPUs, so instead we’ve focused on techniques that can be implemented directly on the graphics chip. There are a lot of trade-offs with this approach, but ultimately we like the fact that it gives us more flexibility in our engine and it frees up the SPUs for gameplay related processing.
[/ QUOTE ]
[ QUOTE ]
Mike Acton -Lead engine programmer
OK guys,
I can speak to this:
1. We have tried out a few different LOD methods that we like for different reasons, including our announced support for texture streaming, and we've decided that not doing the work for LOD on the SPUs is a win for us right now. We're always re-evaluating everything, so this is subject to change, but what we've got looks pretty good and is fast. We might go over the details at a later time.
2. Let me say very clearly, we find the SPUs very flexible. We do in fact do some graphics pre-processing on them, including work for culling and clipping and RSX data building as I've mentioned elsewhere. At the same time, graphics alone don't make a game, and we've got lots of other systems running on the SPUs. The SPUs are absolutely central to how we write everything now - it's no longer a matter of "porting" things to the SPU - the SPUs are where everything should go by default. We've still a lot we can do, but we're definitely taking advantage of the Cell.
3. Insomniac does not use EDGE. Although Insomniac did participate in its development (a few of the Insomniac engine guys spent quite a lot of time over at our pal Naughty Dog's place, doing what they could to help them put it together in the early days), but it's simply turned out very different from where we want(ed) to go with the engine and our current tech is very much Insomniac's own.
Mike.
[/ QUOTE ]
-R
-R
http://www.scriptspot.com/3ds-max/normalize-uv-elements
But it ain't working these days. I'd love a fix for this one, one that doesn't involve Relax, since that changes the UV shape.
Create a little script library sometime.
Obviously for organics it can be worked with, especially along with a projection paint solution. However there is always a point when you need to actually paint things the classic way in photoshop, and you really dont want things that are straight on the model to be curved on the UVs - Like mouth and eyes. Having to compensate like mad for UV distortion (curvature) when painting a texture is very irritating and gives unpredictable results.
Also when it comes to efficient and fast worflow it is crucual to have opposite sides of a seam to be lined up on the UV layout. If you have nicely laid out UVs you can paint wristbands, sewing seams and tons of other things with just a straight line in photoshop. The relaxed, tiger rug kind of layout does not allow that. Obviously you don't need these 'UV loops' to be anal-straight since this can be adjusted later once the texture is being painted. But it is still very important for the general layout to take this into account.
Note that these points mostly apply to handpainted textures. But even if it was for a nextgen, baked asset I would simply refuse to work on such a layout and bounce it back to whoever did it :P (that female model would be hard to make anything decent with anyway haha)
Erik about that one automated UV layout example - this is typically the kind of problem that seem just fine from a techart point of view, but in practice leads to sloppy results.
Obviously for organics it can be worked with, especially along with a projection paint solution. However there is always a point when you need to actually paint things the classic way in photoshop, and you really dont want things that are straight on the model to be curved on the UVs - Like mouth and eyes. Having to compensate like mad for UV distortion (curvature) when painting a texture is very irritating and gives unpredictable results.
Also when it comes to efficient and fast worflow it is crucual to have opposite sides of a seam to be lined up on the UV layout. If you have nicely laid out UVs you can paint wristbands, sewing seams and tons of other things with just a straight line in photoshop. The relaxed, tiger rug kind of layout does not allow that. Obviously you don't need these 'UV loops' to be anal-straight since this can be adjusted later once the texture is being painted. But it is still very important for the general layout to take this into account.
Note that these points mostly apply to handpainted textures. But even if it was for a nextgen, baked asset I would simply refuse to work on such a layout and bounce it back to whoever did it :P (that female model would be hard to make anything decent with anyway haha)
[/ QUOTE ]
Finally! Someone WHO UNDERSTANDS!
Take a skirt, for example... this is a script I started but didn't get to far with. It would be nice to choose some verts and it would do something like auto-assign the weighting based on their location, from some defined gradient/interpolation. Say, you could choose the thigh and calf bones, and it would assign a gradient of weights from left to right and top to bottom. It would also be cool to have something like geometry shapes that define influence, instead of envelopes... you have a cylinder with geo cut in already to represent the elbow, knee, whatever, and you can manipulate this geo and then assign vert weights from the location of the geo... hard to describe. Potentially a similar thing for the shoulder is possible?
If you decide to do any of these and they are for Max, please give me the heads up, because I think I'm going to start working on a couple as well while I am between jobs. If you do them for Maya, give me the heads up anyway and we can maybe bounce ideas off each other.
Anyways, my UV solution will probably involve stages, only the 2nd stage involves user interaction:
1- Unitize all faces.
2- Vertex paint shells in 3D to decide face adjacency to form UV shells
3- Scale each shell to maintain texil ratio.
4- Auto layout shells for optimum 0 - 1 coverage.
Basically all the user would have to do is paint the shells they want.
I also have a great idea for layout. lets say you want certain shapes in spacific spots on your layout but dont care about the other shell placemnets. I want to make a system where you can place those key shapes and pin them, and the rest will figure itself out.
-R
-R
Doing it using vertex colour sounds painfully slow by comparison.
SouL... what do you mean, "finally" someone who "understands"? I was under the impression that anyone who's been working on things which require hand-painted low-res textures would UV map things in this way. I've certainly been doing exactly what Pior said, for years.
I guess not everyone thinks like that though, especially people who are just starting to use tools like Max / Maya / favourite new app, and they find the Pelt UVs or Relax tools and just unwrap everything that way.
Arshlevon, I'd love to hear more about your guys' automatic LOD solutions, do they have any links to white papers or articles/presentations about it or similar methods?
of packing something, without being too wasteful.
and i'd also like a way to group UVs, so that they're not packed into different locations, but are packed in relation as they were. example: you've UVmapped and mirrored the hands, and neatly placed them over eachother, or copied the UVs for them. then you'd be able to select and group them,
so that when you select 1 UV, you select them both.
oh and i'd like the UVtool to automatically scale the UV piece to be the % of UVspace proportional to the actual m^2 total surface area, with a slider to determine how much more UVspace the piece is going to be assigned than the rest of the pieces. and after packing, a slider to determine the size of all the UV pieces to reduce space wastage, before a final pack which simply scales down the UV texture to 2-3 pixels away from the borders.
and finally, i'd like some ghostpainter-esque functionality for the UVmapper, like the "export selection to photoshop"
and "export selection to vectors in photoshop"
I'm actually finalising a script for calculating UVspace proportional to geometry space at the moment, like Eric suggested. I took a look at the script he linked which no longer works, it's basically calculating a rough guess based on the bounding box of each UV element, so it's not 100% accurate. My version actually calculates the UV area in proportion to the geometric area... should be finished soon.
There's actually a maxscript command for "getArea" in the unwrap UVW window but it doesn't seem to work at all. Can't find any useful info on it either - the maxscript help implies that it should do exactly what I need, but it doesn't return any value other than "OK" o_O
That tool sounds cool MoP, looking forward to it.
Finally! Someone WHO UNDERSTANDS!
[/ QUOTE ]
http://boards.polycount.net/showflat.php?Cat=0&Number=194449&page=0&fpart=2&vc=1
This thread comes to mind, oh the classic Per rant, I miss em sometimes. I think it handled the whole issue of "square off VS pure pelt pull" pretty well. Daz had a nice belt illustration a while back, but I can't find it =/
It showed the major advantage of keeping straight lines, straight, which is what I think SouL was pointing out. Not to mention the scale on some objects would be hard to paint on and the large void of wasted pixels surrounding the UV's would drive me nuts. Its hard to paint fingers when you have 3 pixels to work with.
I think we need some good scripts for repetitive skinning tasks.
[/ QUOTE ]
There was some cool stuff like this, some barely realized though, in the Skin Or Die script for Max. Worth a look-see.
http://www.scriptspot.com/andrehotz/
Also agree on the ps3/DS thing. Unfortunately it appeared to me that many folks are not aware of how things are to be done differently depending on the case. In my opinion this is just a matter of common sense - but it is interesting to see how some artists are willing to spend hours doing something in an unefficient way rather than investigating techniques/running tests to see what would be more efficient for the end result.
Its always funny hearing people that texture 500 poly models with only diffuse try to tell people the "correct" way to uv in what, 2008? Really if you guys had any experience at all texturing characters with 5-15k poly limits you'd know how absolutely absurd it is to think everything should be done by hand. Spend 2 days making those perfect uvs when you could be spending a couple hours to make uvs that are way more efficiant, that you likely have a base of ambocc/normals to paint directly on. Its not like you need to "guess" where your details are going to be. Oh well as long as we have people here still stuck in 1997 in terms of specs we'll continue to have this discussion.
[/ QUOTE ]
Hah. I have textured a 15K polygon character. In the EXACT same way I would texture a 500 polygon model. End result... a texture that's easy to read and figure out. Hell... I'll send pior the file right now and we'll see what he says.
I sure won't bother doing the straight line thing for a nextgen asset. But still, having the '1997 experience' to back one up certainly helps when it comes to figuring out workflows. A good exemple would be if you ever have a pattern that needs to overlap a UV seam - it is soooo frustrating to have to scale down a pattern at an odd ration just to compensate for sloppy UVs. Also, UVs boundaries that 'loop' horizontaly does *not* mean that everything has to be done on a 90degrees grid, it would be just stupid, I saw it done a couple times and I just don't get the point.
I also find it crazy (for diffuse-only models, not nextgen) how some artists completely refuse to adjust UVs on the fly. It helps sooo much... Like if I know that something is supposed to be straight on say, a shoe, I'd just slap temporary UVs (or, no UVs at all), paint the bit straight in the texture, and adjust UVs to fit. I have seen artists spend days on anal-tight UVs (relaxed or not), just to realize when painting the texture that they have to make their lines wobble to follow the UV edges.
Even if today is 2008 I think these things still apply for games going the handpainted route and for handelds platforms. It's aslo great knowledge to keep in mind just in case since you never know what bump you might run into even for more recent assets.
Even with your example mesh in the other thread, you say how can someone make a 1024 look good if you cant make a 128 look good. Well if you take your own texture for example, and size it down to 128 or 256 it will look virtually the same, because it has very little high refquency detail in it. Now if you were to take say, a gears of war model and size the textures from 2048 down to 256 you would see a HUGE quality drop off. Which makes your example pretty irrelevant. If you actually have the detail in your textures, you WILL notice the un-even pixel distribution from griding all of your UVs as aposed to making a layout that has a consistant texal ratio.
/quickly snatching the moral high ground so someone else can steal it...
EQ you're picking old scabs. It's silly to try and force your work flow on other people, even if they are trying to do the same thing. Everyone works how they see fit hopefully their ego won't keep them from being open to new ideas. When it does you just have to cut your losses and let them crash and burn. I'm not saying SOuL is making mistakes because it works for him and I'm willing to bet good money that people do what works best for them in their circumstances. I haven't seen enough of his UV work (nor have I been at this long enough) to even try and pass judgment, without working with a person its kind of silly to even try.
Long post short, if you want to reopen old wounds maybe a little thread necromancy is in order but I'm not sure this is the place?
I vote for some much improved auto arrange UV tools, like being able to assign priority, grouping and angle, or being able to pack UV's and have the current selection fit into what is already arranged instead of ignoring it or worse rearranging it scattering groups to hell and back.
If I had to pick one area where a tool might speed me up, its re-topologizing a mesh. When I bring a high res mesh to maya, and then build a game mesh around it. It's tedious, and kind of boring.
Maybe a tool where you just throw edge loops around and they snap to your mesh. Or what about if the computer made a "best guess" based on tweakable parameters, and then you could go in and tweak it quickly.
Yes, I have used most of the re-topo tools. Polyboost, that weird maya plugin, topogun. Haven't tried Zbrush re-topo yet. They do speed the process up, but it still involves 1000 mouse clicks.
It's okay man. Everyone can do whatever they want. Your call.
I've just tried sharing some of my thoughts and some of the techniques I've been shown/discovered through my years to people on this board. Take it or leave it. Simple.
It also does an "average" scale kinda like Max's relax which I always liked, where if you have a few huge UV chunks and a few tiny ones, it will scale them all to something in between, rather than making everything huge or tiny.
It only works on Editable Poly models. If you have any geometry-changing modifiers in the stack, it will break (still trying to find a way to avoid this gracefully), if you don't have an Unwrap UVW modifier in the stack then it will add one for you. Works great in the Unwrap UVW context menu.
Unfortunately after all that talk, my DSL is down at home so I can't upload it - should be able to get it hosted tonight. I'll post it in the Max Plugins thread... should probably also set up a "scripts" section on my website
-R
Been wanting something like this for a long time, thought I would eventually have to write it myself.