Convert Texture Templates?
|
|
Mano Nevadan
Registered User
Join date: 22 Oct 2006
Posts: 10
|
04-27-2007 08:55
Sorry, I'm somewhat new to this, and I *have* read all the docs I could find and make sense of, so please forgive this simple question.
Where can I find a utility (ideally that runs on Linux) that takes (1) a source OBJ file, (2) a target OBJ file, and (3) a texture (graphics file, eg PNG), and outputs another texture, performing the map between the OBJs? It doesn't need to have an interface more advanced than command-line parameters.
(Gaah, the idea is so simple but explaining it sounds so complicated!) That is, for example, say I take the standard SL avatar mesh and use UVmapper to make a different texture mapping (OBJ) for it. Then I design a texture around that mapping. How can I convert that picture back to what it would look like on the standard template (for uploading into SL, for instance)? I know this has to be possible, since it's exactly what just about all texture-mapping and rendering utilities have to do all the time. And besides, I can't find a useful way to use UVmapper on SL otherwise.
Thanks in advance.
|
|
Chip Midnight
ate my baby!
Join date: 1 May 2003
Posts: 10,231
|
04-27-2007 11:02
As far as I know you won't find that in many applications. It's a pretty advanced feature. You need an app that does object based projection mapping like 3ds Max or Maya, both of which retail for several thousand dollars. For Linux, Maya would be your only choice. I don't know if Maya has that feature but I'd be surprisded if it doesn't. I know Max does as I use it to generate normals maps for the SL avatars.
_____________________
 My other hobby: www.live365.com/stations/chip_midnight
|
|
Chosen Few
Alpha Channel Slave
Join date: 16 Jan 2004
Posts: 7,496
|
04-27-2007 11:47
Does Lightwave run on Linux? If it does, it might be a less expensive alternative. I know Robin has mentioned using it for this sort of thing.
If not, then Maya would be the way to go. And the price on Maya Complete came down this year, which is good. Last I checked, it was under $2000. That's probably still way more than you'd ever want to spend just for this purpose, but at least it's not $5000 like it used to be.
Another option might be Deep Paint 3D and Deep UV, if they have Linux versions. I think they're Windows-only, but I could be wrong.
_____________________
.
Land now available for rent in Indigo. Low rates. Quiet, low-lag mainland sim with good neighbors. IM me in-world if you're interested.
|
|
Mano Nevadan
Registered User
Join date: 22 Oct 2006
Posts: 10
|
04-27-2007 12:25
From: Chip Midnight As far as I know you won't find that in many applications. It's a pretty advanced feature. You need an app that does object based projection mapping like 3ds Max or Maya, both of which retail for several thousand dollars. For Linux, Maya would be your only choice. I don't know if Maya has that feature but I'd be surprisded if it doesn't. I know Max does as I use it to generate normals maps for the SL avatars. Wow. I find that hard to believe. So hard to believe, in fact, that I worry that maybe I didn't express the problem correctly. If someone could tell me what use UVmapper is for SL in that case, that might be helpful (maybe I can deduce how to do what I need from the answer). How do you folks use it? It *has* to be trivial to do. If it hasn't been written I know there are libraries out there which would make this a no-brainer. I'd code it myself except I don't know much about any of these putative libraries. What we're looking at is routines whose job it is to take a polygon specified in one map out of one texture and draw it, appropriately transformed, onto a polygon specified in the other map--which is precisely what pretty much every renderer does! They transform and map polygons of texture into what they look like on the rendered 3D model. I'm not sure if Lightwave runs under Linux, though I know Blender does. It has a pretty steep learning curve, I've found, but I can pick up some of it, for the simple things I need. Thanks for the help! I think I probably should try to find someone to brainstorm with in-world; maybe I can communicate more clearly that way.
|
|
Chip Midnight
ate my baby!
Join date: 1 May 2003
Posts: 10,231
|
04-27-2007 13:59
Perhaps I misunderstood what you're looking for. If you're talking about two identical obj files that only differ in their UV mapping (not their polygonal structure) then any 3d app that supports multiple UV channels, UV editing, and render to texture should be able to do what you need. You'd need the ability to export the UV mapping from one model and load it into a second channel on the other model. Then you could use render to texture to convert back and forth between the two channels on that one model. If you're talking about two objects that do not have the same polygonal structure then that's a whole 'nother ball of wax. That's projection mapping and it's pretty high end. Be prepared to spend many hours setting up the projection cage. There's no way to automate it and it can be immenesely tedious. If you can provide a more detailed explanation of exactly what you're trying to do it'll be a whole lot easier to steer you in the right direction.
_____________________
 My other hobby: www.live365.com/stations/chip_midnight
|
|
Mano Nevadan
Registered User
Join date: 22 Oct 2006
Posts: 10
|
04-27-2007 14:40
From: Chip Midnight Perhaps I misunderstood what you're looking for. If you're talking about two identical obj files that only differ in their UV mapping (not their polygonal structure) then any 3d app that supports multiple UV channels, UV editing, and render to texture should be able to do what you need. You'd need the ability to export the UV mapping from one model and load it into a second channel on the other model. Then you could use render to texture to convert back and forth between the two channels on that one model. If you're talking about two objects that do not have the same polygonal structure then that's a whole 'nother ball of wax. That's projection mapping and it's pretty high end. Be prepared to spend many hours setting up the projection cage. There's no way to automate it and it can be immenesely tedious. If you can provide a more detailed explanation of exactly what you're trying to do it'll be a whole lot easier to steer you in the right direction. Yeah, I think I confused things by my description. Like I said, the ideas are simple in the brain, but getting them transmitted to other people can lead to confusion. Here's the deal: basically, I just found UVmapper, and it mostly runs under Linux with wine (occasional crashes, but then I have an old wine). And this seems mighty neat: so I can make new maps for clothes or whatever so the "seams" can run where I don't have to worry about matching them up too carefully, and make stuff match up *right* where it counts. Or blow up tiny polygons so they're easier to draw in (I know this won't change their actual resolution). This could be useful for a none-too-skilled texturer (like me). But then what? How do I transform that texture that I made, based on a custom texturemap, back into something that SL will grok? (Again, I know the answer to this has to be simple, I just couldn't find it). So yes, I *am* dealing with the same object but two different texture maps (identical obj structure, texture maps differ), so I am not after the whole complexity of projection. So what might I do in order to pull such a thing off in Blender (for example)? I think I see some directions in your post; I'll try them out. Again, thanks for listening...
|
|
Chip Midnight
ate my baby!
Join date: 1 May 2003
Posts: 10,231
|
04-27-2007 19:20
You need an app that will let you save the custom UV mapping you did and then load it into a 2nd UV channel on the normal SL av (that still has the original mapping in channel 1). Most 3d modeling/texturing apps should have this ability. Then you need to be able to create a texture using channel 2 and render it out as channel 1. That's generally called "render to texture" or "texture baking." You might try Blender. I've never used it so I don't know if it has all the features you'd need but chances are good.
Your shopping list for apps that would fit the bill: Multiple UV channel support save/load UV channels render to texture/object texture baking
_____________________
 My other hobby: www.live365.com/stations/chip_midnight
|
|
Abu Nasu
Code Monkey
Join date: 17 Jun 2006
Posts: 476
|
04-28-2007 07:21
Another option might be modo by Luxology. I've read that it does support multiple mapping channels, but I don't know about texture baking. The recent version has projection painting with some uber cool image projection capabilities. If I wasn't set with 3DS Max, I would definitely give the modo demo a serious work-out.
|