Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

Sculpting a face in Wings3D - Need advice

Kronval Shostakovich
Registered User
Join date: 19 Oct 2007
Posts: 14
10-27-2007 11:19
I'm very new to this modeling business (and SL in general), so please bear with me if I sound quite noobish.

I am attempting to create a symmetrical human face sculptie in Wings3D, using the spherical template. I'm not sure if there are other techniques to do what I'm trying to do, but in order to match the features on both sides of the face, I am using the virtual mirror function as I'm tweaking one side (although simply generating a mirror duplicate of the end product would seem to serve just as well). However, it appears that when I slice the sphere in half to give myself that one side to work with, it skews the coordinates of the verteces such that, when I merge the two sides, the entire model no longer renders properly. The center of the face becomes completely twisted. I've scoured the web for some way to repair the map, but the tutorials are mostly beyond my comprehension, nor do they illustrate how this could be done with a complex object like a human face.

Am I going about this process with an entirely incorrect approach? Is there a better way to do what I'm trying to do? I'm at my wits' end and I would appreciate any assistance.
Infiniview Merit
The 100 Trillionth Cell
Join date: 27 Apr 2006
Posts: 845
10-27-2007 12:44
I suspect that the mirror function treats the vertices in an unexpected way for the exporter.

For example in the wings sculptie exporter you are not able to delete or add any vertex points.
Possibly I am not reading your question correctly, is the trouble your having all before
you attempt to export? If so you may want to try exporting anything at all you have modeled
using the mirror function, it has been awhile since I used the Wings exporter as I have been
using blender mostly, but I strongly suspect it would crash. When I checked out the wings exporter awhile back you could not cut and then re add vertices.
Omei Turnbull
Registered User
Join date: 19 Jun 2005
Posts: 577
10-27-2007 13:03
Kronval, Infiniview is correct. The Wings exporter is not smart enough to do what you are trying to do. I'm not aware of anything in Wings that would allow you to avoid modeling both sides of your face.
Kronval Shostakovich
Registered User
Join date: 19 Oct 2007
Posts: 14
10-27-2007 13:22
Thank you both for responding. Would you recommend another technique using the same program that would allow me to achieve the same end result, or will I have to learn to use a different 3D program? Would I be able to import what I've made so far into another program and leverage a 'smarter' sculptie exporter?
Chosen Few
Alpha Channel Slave
Join date: 16 Jan 2004
Posts: 7,496
10-27-2007 13:45
I've never used Wings, but I can tell you how I'd do it in another program, and maybe you can then look for similar functions in Wings. In Maya, you could do it in any of three ways:

1. Start with a half sphere, and sculpt it into half a head. Then negatively duplicate that half across an axis to create the other half. Finally, combine the two halves into one surface.

-OR-

2. Start with a whole sphere. Turn on mirroring mode for all sculpting and manipulation tools. Whatever you do to one side will automatically happen to the other.

-OR-

3. Start with a half sphere. Negatively duplicate the half across an axis to form the other half, but instead of making a copy, make what's called an instance. While a copy is completely independent from the original, an instance shares the same input parameters with the original. So whatever you do to the original also happens to the instance, and since the duplication was negative, everything will happen in opposite directions between the two. In short, this means symmetry. So, sculpt the original half-sphere into your head shape, and the other half will mirror it automatically. When you're done, delete history on the instance to liberate it from the original, and then combine the two surfaces into one.


There are of course other ways to do it as well, but those are the three most common. I'd be really surprised if Wings can't do at least one of them. Sorry I can't tell you how.
_____________________
.

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.
DanielFox Abernathy
Registered User
Join date: 20 Oct 2006
Posts: 212
10-27-2007 15:05
Chosen the issue here is not Wing's functionality - the virtual feature does exactly what the OP would like to do - but the ability of the Wings exporter which depends on the exact vertex ordering of the original primitive to export correctly.
Chosen Few
Alpha Channel Slave
Join date: 16 Jan 2004
Posts: 7,496
10-27-2007 18:16
From: DanielFox Abernathy
Chosen the issue here is not Wing's functionality - the virtual feature does exactly what the OP would like to do - but the ability of the Wings exporter which depends on the exact vertex ordering of the original primitive to export correctly.

Ah, OK. Well, I tried.

It's a little strange that vertex ordering would matter. I guess the exporter doesn't sample the surface the way the Maya exporter does. Interesting.
_____________________
.

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.
DanielFox Abernathy
Registered User
Join date: 20 Oct 2006
Posts: 212
10-27-2007 19:13
Right, the wings import/export function doesn't do ray sampling or anything fancy. Its vertex in, vertex out.
Omei Turnbull
Registered User
Join date: 19 Jun 2005
Posts: 577
10-27-2007 21:10
Kronval, I actually have an alpha version of a Wings technique for rendering an arbitrary Wings mesh into a sculpty. I haven't advertised it because I wasn't satisfied with it yet. It is not a simple menu command like the current exporter; it renders via a UV map analogous to the way the higher-end applications do. But if you have already invested time into Wings and are willing to learn some more in order to use this, I'll be happy to let you try it out.
Kronval Shostakovich
Registered User
Join date: 19 Oct 2007
Posts: 14
10-27-2007 23:00
Omei, I definitely wouldn't mind giving it a shot. It just seems like a colossal pity to be able to make lovely shapes in the software but unable to import it into SL. Either way, until you coding geniuses can simplify things for noobs like me, I'll have to try to close the gap somehow. ;)
Omei Turnbull
Registered User
Join date: 19 Jun 2005
Posts: 577
10-28-2007 14:00
OK, Here's the basic procedure.

You'll need to extract the four files from the attatched zip file. In your Wings program installation tree, find the av_texture.beam file. (E.g. C:\Program Files\wings3d_0.98.36\lib\wings-0.98\plugins\autouv\av_texture.beam.) Rename it so you can restore it if necessary, and put all four of my files in that directory. If you didn't close Wings before doing this, exit and restart it now.

To get the idea of how this process works, we're going to start with something other than the face you have made. So open Wings and create a default geodesic dome. (Right click in the window backgound and select More/GeoDome.)

What we want to do next is to have Wings unfold this dome into a flat 2-dimensional surface. Wings will do the unfolding for us, but since our model is a closed surface, we're going to have to tell Wings what edges it can cut before doing the unfolding. To do this, select a series of edges that go about half way around the dome. While in edge mode, right click and choose Hardness/Hard. You'll now find that if you deselect everything, the "hard" edges will be displayed as green. Now select another line of edges that crosses the first and mark those edges as hard. You should now have edges in the general shape of an X being green. The green lines are where the model is going to be cut.

Next, go to object mode, select the model, right click and select UV mapping. You should get a new window titled "AutoUV Segmenting: ...". Move the mouse cursor to this window, right click and select Continue/Unfolding. You should get a new window titled "AutoUV:...". The background will be a colored grid of lettered squares. On top of this will be the cut and unfolded model. (This is the UV map, by the way.) The model shouldn't extend past the boundaries of the background, but it won't cover it, either.

For a finished sculpty, you would now deform the UV map so that it covered all the background. But we're just going to take it like it is for now, to make sure the whole process is working. So right-click in the AutoUV window and select Create Texture. You should get a Draw Options dialog box. In the Size box, select the size of the sculpty bitmap you want. The choices should go down to 16x16. (If 256x256 is the smallest size available, the auv_texture.beam file didn't get updated properly.)

In the Render group of the dialog box, the first line (pass 0) should say Background. If it doesn't, expand the options and select Background. Then click on the Options button to the right. Select Color and click on the color patch. Set the RGB values to approximately 0.5, so the color is a medium gray. Leave the A (alpha) value at 1.0. Click OK twice to get back to the Draw Options dialog.

For the next pass (labeled 1), expand the options and select *Sculpty Bake*. (If you don't see this option, one of two things has gone wrong. If there are no options with asterisks in their names, you have a graphics card that doesn't support OpenGL shaders. If your graphics card is older than 3 or 4 years, that's a possibility. If so, you won't be able to use this technique. If one of the options is *Filter*, but there is no *Sculpty Bake*, then one or more of the sculpty files didn't get installed correctly.) The are no options for the Sculpty Bake shader.

If there are more than 2 lines in the Render group, change them to None, and then click on Delete Unused Passes. Then press OK. What should happen is that the background of the AutoUV window will turn grey, and the flattened model will be colored in pastels. What you are looking at now is actually the sculpty bitmap, with the UV map overlaid.

To save the bitmap, select Window/Outliner from the menu in the Geometry window. Ther Outliner window should have a line for your sculpty texture. To save it, <b>first left click on the line to select it</b>, then right click and select Export. Save it with whatever name you like.

Don't bother importing this initial version into SL. Instead, save your work so far, open a new project and import the sculpty bitmap you just made. You should see something that looks like the original dome, except it will have deep fissures where the hard edges (cuts) were. If this is what you get, congratulations, you've got the basic process down!

Now you just need to refine it by going back to your geodesic dome model and manipulating the UV map (the squashed 2D version of your model). The first thing to do is to stretch out the UV map so that it covers all the background. Manipulating the UV map is very much like manipulating the 3D model, although you'll find there are some additional useful commands. This will allow you to get rid of the "fissures" in the generated sculpty. At a more sophisticated level, you can get fine control over the generated sculpty by making other changes in the UV map. But I'm not going to go into more detail on that now. You may find that this whole thing is just too much bother. But if you get to the point where you have converted your original face into a sculpty, but the result isn't as good as you would like, we can talk about fine control.

Good luck! Keep me posted.
Kronval Shostakovich
Registered User
Join date: 19 Oct 2007
Posts: 14
10-28-2007 18:20
Wow, thanks for writing all that out for me, Omei. ;) However, I'm going through the process as I type this, but when I get to rendering pass 1, it does not offer me the *sculpty* option. I've made sure all four files included in the archive are in the same directory. What else could I be doing wrong?

Alternatively, what are the chances of it working if I were to export the file into another piece of software, mirror the face, and then export it as a sculpty? I'm basing that assumption on the fact that, unlike Wings, you don't need to work off a template in programs like Maya, and one would think an expensive tool like that would be able to remap the object entirely and express it in an SL-friendly form. ;p
Omei Turnbull
Registered User
Join date: 19 Jun 2005
Posts: 577
10-28-2007 19:29
Yes, you can export the work you've done so far as an .obj (or any other of the many supported files) and take it into a more sophisticated program like Blender or Maya to finish. The procedure I outlined here is relevant only if you want to see what you can do with just Wings.

As for not getting the *Sculpty Bake* option, I take it you did get the *Filter* option? And you were able to choose something like 32x32 for the texture size? If the answer to both of these is Yes, I'll scratch my head and try to think of what I forgot to give you.
Kronval Shostakovich
Registered User
Join date: 19 Oct 2007
Posts: 14
10-28-2007 19:55
Yes, I do get the *Filter* option, and I am able to select 16x16 for the texture size.
Omei Turnbull
Registered User
Join date: 19 Jun 2005
Posts: 577
10-28-2007 20:04
Ah! I renamed a file when gathering things up to send you, and I didn't respect a Wings naming convention. Rename the file sculpty.auv to wpc_sculpty.auv. That should fix it.
Omei Turnbull
Registered User
Join date: 19 Jun 2005
Posts: 577
10-28-2007 20:07
Also, I forgot that your original post said you were having trouble mirroring your face in Wings. That should be easy enough to fix, but I didn't even address that issue at the time. Have you resolved that one? If not, post a screen shot of what you are getting, to better understand what you are doing.
Kronval Shostakovich
Registered User
Join date: 19 Oct 2007
Posts: 14
10-28-2007 21:50
Here's a similar project that I've started, which should demonstrate my plight just as well. It's a shoulder pauldron I'm trying to sculpt:



I've since learned to cut it straight down the middle and use the Virtual Mirror function to build both sides at once:



This is what it should look like in the preview:



But when I merge the two sides, this is the result:




And there's the Sculpty Bake! I'll give it another try. ;)

It doesn't seem like that difficult an operation, but the hurdle is in getting it to look right in SL. ;)
Omei Turnbull
Registered User
Join date: 19 Jun 2005
Posts: 577
10-29-2007 09:42
From: Kronval Shostakovich
But when I merge the two sides, this is the result:
What you are getting is a result of the exporter not supporting operations that add or remove vertices. The typical symptom is an "Unsupported mesh size" error message. But in your case, you had the right number of vertices, so the exporter went ahead and did its thing, just not the right thing.

If you want to use Wing's mirror functionality (or other commands that add or delete vertices) and use Wings to create the sculpty, your only option at this point is to go the UV baking route. I have been slow to suggest that route because it is quite different from the exporter's simple "press the button and take your sculpty" approach. But if there are enough people who like Wings and want to take their sculpty building to the next level, I can reconsider.
Infiniview Merit
The 100 Trillionth Cell
Join date: 27 Apr 2006
Posts: 845
10-29-2007 11:14
I would like to hear more about the UV baking route.

I have some idea but it seems that different 3d programs tend to have their own
take on some of these general terms.

Thanks in advance :)
Omei Turnbull
Registered User
Join date: 19 Jun 2005
Posts: 577
10-29-2007 12:34
Infiniview, have you seen post #11 in this thread? That's the place to start. If that doesn't address your initial questions, ask again.
Kronval Shostakovich
Registered User
Join date: 19 Oct 2007
Posts: 14
10-29-2007 16:52
Omei,

Just an update on the little trial run you walked me through: yes, I did get the fissures you were speaking of. I'm going to try to stretch the pattern out a little and see what kind of results I get. But you were right, it may turn out to be easier if I simply tweak the model itself, or try another piece of software that can perform the mirror function without making cuts in the sculpty template. Not that it was a lot of work to put a simple geodome back together, but I can extrapolate from it the amount of effort it may require to put a more complex shape back together. ;p

Nevertheless, Wings is still a good piece of software to use for this purpose, so I may still chug away at it and use it when I'm not making objects that require symmetry. Thank you for your generous help!
DanielFox Abernathy
Registered User
Join date: 20 Oct 2006
Posts: 212
10-30-2007 07:56
Kronval, I'm working on a vertex reordering utility that should allow you to use the virtual mirror feature in Wings.

It works like this:
You would export the beginning sphere as a sculpt map
You would prepare the sphere as normal for virtual mirror. Save this as your 'mirror rig' as a wings file, then freeze the mirror, and export that as a sculpt map...

Load the original sphere sculpt map into the utility and choose the 'create reordering map'. It will prompt you for a 'target sculpt map', which will be the frozen, mirrored sphere.

It will then match the vertices from the one sculpt map to the other and produce a map file. You can then apply this map file to the mirrored sphere sculpt map to correct it.

Now you can go back and model with your virtual mirror rig however you please, and use the reordering map to correct the final result.

I want to iron out a few bugs yet and make the file handling a bit more robust but if you'd like to take a look at an early version when I do, I can put an test version up for you (Do you run windows?)
Kronval Shostakovich
Registered User
Join date: 19 Oct 2007
Posts: 14
10-30-2007 11:21
DanielFox,

I would love to give that a try! And yes, I'm running on XP.
DanielFox Abernathy
Registered User
Join date: 20 Oct 2006
Posts: 212
11-02-2007 03:43
Okay, here it is.. sorry it took me so long, been distracted with other things :)

Please be aware this is an extremely early alpha of this program not for public consumption - please be prepared for strange behavior and unfinished / missing functions

http://danielfox.thaltech.com/ss_downloads/ss_alpha_remaptest.zip

If you get an error that says "Missing Application Configuration" you may need to download the Visual C 8.0 runtimes
http://www.microsoft.com/downloads/details.aspx?familyid=200b2fd9-ae1a-4a14-984d-389c36f85647&displaylang=en

This actually should work for any operation in Wings that reorders vertices but leaves the same number of vertices behind, as long as that operation reorders the vertices the same way each time.

I've tested it a bit and it seems to work every time I freeze the mirror, but I suppose its possible that Wings might reorder the vertices differently at some point. Caveat emptor; I'd save your work frequently and check that its remapping properly throughout the modelling process.

How to remap a sculpty:

1. Create whatever base shape you want, export it as a sculpt map.
2. Cut the shape and create the virtual mirror, save as wings file for modelling
3. Freeze the mirror and export as a sculpt map.
4. Import the sculpt map from #1 into SculptySpace and select "Create Vertex Reordering Map" from the SculptMap menu. You'll be prompted for a 'Target' sculpt map, this will be the sculpt map from #3. Now SculptySpace will create a file "remapping.dat" in the SculptySpace directory. (you'll be prompted where to save this eventually, but i was lazy for now)
5. Import the sculpt map from #3. Observe it is entirely crazy looking :-)
6. Select "Apply Vertex Reordering Map" and find the remapping.dat file.
7. You should see that you have your original shape back

Now you should be able to model with the file you made in 2, export, and repeat steps 5-7 to correct your sculpt map, assuming Wings keeps freezing the virtual mirror the same way each time.

*IMPORTANT: Due to this being an alpha, you must specify the .TGA extension in the save dialog when exporting your sculptmap or it will fail!

Let me know if you have any luck with it ...
Kronval Shostakovich
Registered User
Join date: 19 Oct 2007
Posts: 14
11-03-2007 09:36
I didn't expect to see this so soon, so don't worry about taking a bit of time.

I've given this a few tries, but I'm not sure I'm doing it right, because I'm not getting the expected results. Let me go through the steps again:

1) I load up a fresh sphere template and export the object as a sculpty bitmap (s01).

2) I then perform a Loop Cut, straight down the middle, delete the unneeded half, create a Virtual Mirror and freeze it (without changes to the model, for now). Then I export this to its own scultpy bitmap (s02).

3) I import s01 into SculptySpace and select 'Create Vertex Reordering Map.' At this point, it actually opens an open file dialogue and prompts me to select a sculpt map. I choose s01 again and check remapping.dat's time stamp to make sure it's updated.

4) I import s02 and select 'Apply Vertex Reordering Map,' choosing remapping.dat.

However, there are no discernable changes to the object preview after that step, nor does the sculpt map UV change at all; the object still appears to be skewed. Am I doing something wrong?
1 2