creating taller elves through 3ds max
#1
Posté 11 août 2011 - 01:43
I'm currently trying in 3ds max to create taller elves by using the head and body models I extracted with DA Tool.
I'm new to 3ds modeling however, and since I've been unable to find modeling tutorials for head/body models in Dragon Age (including the wiki), I thought I'd ask here.
As I see it there are two basic steps
1) modify the elf body model to be as tall as a human body (I assume I can select the whole thing and resize it, hopefully)
2) adust the relative position of the default elf head model to the rest of the body. When I imported the default elf head with Adinos' DA Tool, I saw that there is also a stick-figure like representation of the body imported, to show where the head is positioned. When I modify the elf body model to be as tall as a human's body, will this stick-figure representation also be adjusted? Otherwise I don't see how I can reposition the head.
#2
Posté 11 août 2011 - 03:38
rescaling the skeleton within max could result in errors ingame.
#3
Posté 11 août 2011 - 05:21
#4
Posté 12 août 2011 - 06:33
Hmm, well I don't want to create something that's going to generate errors. My other thought was just to remodel the human head into looking elvish....
I saw that thread, Darth, I must have missed something in it. I'll go check it, since I don't intend to give up on this till I figure it out
#6
Posté 12 août 2011 - 10:54
I've tried rescaling the body model in gmax using the Xmodifier, which at least got rid of most of the errors, and I copied the resulting mmh and other files to the right folder, but I haven't been able to see if it's any good yet because I don't know how to make the new model show up in game.
Darth wrote in the other thread which he pointed me to: "Once you have the model, everything else is straight forward. It's exactly the same as any other custom item - create an extended variation GDA, create a UTI, create a script to load it into the player's inventory"
To create an extended variatian GDA, I downloaded the mock gda's.
http://social.biowar...1689/blog/1120/
The mao file that goes with the original extracted mmh is "hm_arm_nuda.mao", so I renamed the appropriate fields in the gda naked_variation_[edit].gda (I'm assuming it's this one).
I copied the msh, mmh, phy and mao and gda to my module's data folder, copied the dds to the texture folder (high and medium).
As for making the game use the new files, shouldn I copy the files in the packages/core data and texture folders of the game? I tried that, and when I took the clothes of the Warden to see any results, he had no body...
Edit:l I just read the "SCALING.txt" that comes with DATool: "Note that this is only meant for scaling non-animated models. Strange things may happen if you attempt to scale creatures." I suppose what is meant by that is what you wrote about rescaling armors?
Modifié par LukaCrosszeria, 12 août 2011 - 11:25 .
#7
Posté 12 août 2011 - 12:36
If you want Human-sized Elves, you don't need to scale body or armour models - you can just use the existing Human ones (after all, the Elf versions are just scaled down Human ones anyway). What you need to do is scale up the Elf head models to the right size so they fit the Human body models and rig. Apr_Base list the Elf heights as 1.6m and 1.55m for male and female, respectively. Compared to the Human heights of 1.75m and 1.68m, you would need to scale the male Elf models by 109.375% and the female Elf models by 108.3870967741935% in order to use the Human body models.
DATool isn't going to be of use because you need to scale all the face morph target meshes which it doesn't open. Additionally, I think it only scales geometry, as the text file you mentioned alludes to. It doesn't scale collision properly and I suspect it doesn't scale rigs properly either. DATool is a viewer. It has its uses, but it's not a replacement for a proper 3D app.
Also note that if you are replacing all vanilla Elves with tall ones, you will effectively destroy the composition of all the conversations in the game. The camera will be framed for Elves of the original height, and thus the modified Elves will have their heads partially or fully out of shot.
Modifié par DarthParametric, 12 août 2011 - 12:41 .
#8
Posté 12 août 2011 - 01:44
Copying all human sized body/armor meshes, and redo ALL elven Headmorphs (over 100) to fit humanoid sceletons using a 3d app, and create a new race. Creating a new race probably requires changing the gamecode to some degree. This wont conflict with anything as would if current elves were suddenly taller.
Redo any and all Elven Body/Armor meshes AND all head morphs to fit a taller sceleton using a 3d app. This can probably be done by simply scaling. Redo ALL elven NPC's facemorphs in game to accomodate the bigger skeleton. May need to correct the scale factor the others told about. As a result all elves are taller, but this may result in heavy animation and cutscene quirks.
Redo all elven headmorphs to fit a humanoid sceleton, and overwrite all humanoid headmorphs. Trick the char creator into using them ,make a human with a elven face. After your char is created reroll the headmorph changes. This will make your player have a elven face, but the required work is inhuman.
What other options are there
#9
Posté 12 août 2011 - 07:38
I won't replace all the elves in the game with this new model if that will destroy composition of the game, also since Eshme said the required work is inhuman ><
I thought of using the taller elves only in my module. That should be possible right? There will only be one elf in my party and only a few elven npc's. That will lessen the workload considerably. Do you guys think that option is doable?
#10
Posté 13 août 2011 - 03:51
#11
Posté 13 août 2011 - 08:03
Do you think it's possible to alter a human head to look more elvish? Like say, the ears and eyes a little? Then I could override the originals even if they're flagged as human, right?
If not I'll have to learn how to make head meshes. I saw some tutorials on head modelling on youtube.
Modifié par LukaCrosszeria, 13 août 2011 - 08:04 .
#12
Posté 13 août 2011 - 08:24
You have forgot that the required work is inhuman. Its less the models but the skeleton.LukaCrosszeria wrote...
Thanks guys for taking the time to reply. I think I'll do that, rescale the elf head models to fit on the human body models, Darth's suggestion and Eshme's third option.
That was meant for only one NPC.I won't replace all the elves in the game with this new model if that will destroy composition of the game, also since Eshme said the required work is inhuman ><
There is no feasable option with low workload to do thatI thought of using the taller elves only in my module. That should be possible right? There will only be one elf in my party and only a few elven npc's. That will lessen the workload considerably. Do you guys think that option is doable?
#13
Posté 13 août 2011 - 08:34
LukaCrosszeria wrote...
I see, thanks for the explanation.
Do you think it's possible to alter a human head to look more elvish? Like say, the ears and eyes a little? Then I could override the originals even if they're flagged as human, right?
If not I'll have to learn how to make head meshes. I saw some tutorials on head modelling on youtube.
All you are overriding would be the morph targets. Editting one would be insignificant, you'd have to edit at least a good portion of highrated targets. However all you'd do is create targets from the wrong base, the results are questionable.
That is also a good bit more timetaking than using the current elven heads.
How about you try to scale the elven base morph only to fit a human skeleton, and override the human base morph. Then examine the results and you will see what i mean the whole time.
#14
Posté 13 août 2011 - 11:35
I took this morph I quickly created in the toolset's morph editor:

And managed to get it into a game-useable mesh:

Add in a bit of GDA work and I set the head up as a replacement for Berwick (the Elf in Redcliffe that poisoned Eamon) in the toolset:

You'll notice there that he is using a head (i.e. mesh) and not a morph.
And here he is in the game:

I went a bit overboard with the squint in the morph settings, so as a consequence he looks a bit constipated most of the time lol. But you get the idea.
Anyway, onto the core of how it works. I always knew the morph contained geometry data that was compiled from the morph target meshes, but the question was always how to extract and convert that into a game-usable format. In the toolset's morph editor there is an option on the top of the window to export the morph as an XML. This not only gives you the morph data in a nice clean format, it also (fortunately) follows the same format as the game's models (at least for the vertex data we are interested in). Looking at the resultant XML, it revealed vertex data, but not the other critical information a proper MSH file contains like UV co-ords, normals, etc. Given that morphs of a specific sex and race all derive from variations of the same base model, I figured that I should be able to use the source files of the appropriate base model and just substitute in the vertex data from my morph, as the vertices should – in theory – be identical, just positioned differently, and thus all the other data like weighting and normals would be identical. So what I did was take the base Elf male head model (em_uhm_basa_0) and ran it through Eshme's script. This gave me the XML files for the vanilla model's MMH and MSH. I then edited those, replacing the vertex data in the MSH file with that from my morph and changing the filenames. I then recompiled those into a MMH/MSH/PHY set and imported them back into Eshme's script to see if it actually worked. It did. The UV co-ords and skin weighting transferred across with no noticeable issues. I was concerned there might be some disparity in vertex ID numbers between the original models and Eshme's processed versions, which would cause weighting and other problems, and this might still prove to be the case with further testing - I'll leave that for Eshme to comment on.
Now that I had what appeared to be a functional model, I needed to actually get it into the game to test. The first step was extending the elf_heads GDA and adding in the info from my model. I did this and the head loaded up fine in the UTC editor. Eyes worked, however I was unable to select any hair. So another GDA extension was in order, this time for elf_hair. This simply required pointing the game to the vanilla hair models – there was no need for custom models (the vanilla GDA only contains info for the bald model). Upon doing this I was now able to select a hair mesh in the UTC editor, but I couldn’t choose a colour. Another GDA extension, this time hair_tints, was duly produced, pointing the game to the vanilla TNT files. However, I didn’t manage to get this to work – the hair remained white regardless. I’ll have to play around further with this. There is a brute force workaround if absolutely required; namely using custom hair models with texture-based colouring instead of tints, but I’ll determine if that is necessary at a later date.
Once that was all done, a quick in-game test was done to check that animations worked properly and there were no other issues. Getting Berwick outside revealed the old missing LODs issue (at a distance the game tried to pair the LOD2 and LOD3 body meshes with the LOD0 head rig, causing wild distortion), so I had to figure out a way to generate those. The LOD2 and 3 models for the base head are easy enough to get, but the toolset only exports the LOD0 morph. I presume the game must dynamically produce morph LODs, seeing as pretty much all humanoid NPCs use morphs and the game uses the head rig for the entire body. Perhaps they are available via a save once the morph has been brought into the game – that might warrant further investigation. Anyway, for my purposes I just loaded up the base head LOD2 and LOD3 models, merged in my morph head, used the old head to reweight the new head, then deleted the old head and exported. While this works perfectly fine, the downside is some unnecessary polys (the LOD0 head is 3608 tris versus 1044 and 328 for the LOD2 and LOD3 respectively), but I don’t see that as much of an issue – a couple thousand extra polys is hardly going to bring a system to its knees.
As far as relevance to this thread goes, this method should allow the generation of whatever morphs are required for the NPCs. These can then be converted into models just as I have done, the only difference being the need to scale up everything as previously mentioned to make them the appropriate Human height. An additional difference might be merging the hair model into the head model, as I suspect a scaled Elf head is not to going to mate perfectly with the Human hair meshes. Then these heads would be added to an extended human_heads GDA and any UTCs set as Human. I might have a crack at that if I get a chance at some point in the next week or so, but I’m pretty busy with work atm so no promises.
#15
Posté 13 août 2011 - 04:04
But that doesnt make the heads taller yet.
#16
Posté 13 août 2011 - 04:32
#17
Posté 13 août 2011 - 08:57
#18
Posté 13 août 2011 - 10:06
As far as explanations go, as I said earlier I don't have a lot of time at the moment, but I'll run through the entire process when I get the chance. I wouldn't say that it is hard as such though, more laborious. Certainly it is a lot easier than trying to model heads from scratch.
#19
Posté 14 août 2011 - 01:02
DarthParametric wrote...
Anyway, onto the core of how it works. I always knew the morph contained geometry data that was compiled from the morph target meshes, but the question was always how to extract and convert that into a game-usable format. In the toolset's morph editor there is an option on the top of the window to export the morph as an XML. This not only gives you the morph data in a nice clean format, it also (fortunately) follows the same format as the game's models (at least for the vertex data we are interested in). Looking at the resultant XML, it revealed vertex data, but not the other critical information a proper MSH file contains like UV co-ords, normals, etc.
Oh... my...
Indeed it would be great if integrated into Eshme plugin... *puppy eyes*
#20
Posté 14 août 2011 - 01:45
alschemid wrote...
DarthParametric wrote...
Anyway, onto the core of how it works. I always knew the morph contained geometry data that was compiled from the morph target meshes, but the question was always how to extract and convert that into a game-usable format. In the toolset's morph editor there is an option on the top of the window to export the morph as an XML. This not only gives you the morph data in a nice clean format, it also (fortunately) follows the same format as the game's models (at least for the vertex data we are interested in). Looking at the resultant XML, it revealed vertex data, but not the other critical information a proper MSH file contains like UV co-ords, normals, etc.
Oh... my...
Indeed it would be great if integrated into Eshme plugin... *puppy eyes*
I second this!
#21
Posté 14 août 2011 - 05:03
Darth, the stuff you figured out is like mindboggling
(goes back to reading post)
#22
Posté 15 août 2011 - 03:14
alschemid wrote...
Indeed it would be great if integrated into Eshme plugin... *puppy eyes*
for what purpose exactly? if you want to create different heads from the bases then use the facemorph system the toolset provides. if you want to create heads which are not possible with the mophs then you have to create it within a 3d app. in this case an imported morh is of absolutely no help.
#23
Posté 15 août 2011 - 03:28
#24
Posté 16 août 2011 - 04:15
DarthParametric wrote...
Unfortunately the neck seams don't align perfectly. They are close enough to work with the vanilla Human armour and clothes, but there is a visible gap on the naked body mesh. However, that should be resolvable with a bigger necklace to hide the gap. The scalp seam is even further off, necessitating scaled hair models. The eyes don't line up either, again requiring a scaled up eyes model. Whilst the rigs appear to align very closely (to within a few millimetres), they are not exact match and as I said the meshes are quite disparate, so I gather the scaling factor I derived from the apr_base heights is not entirely accurate. Maybe I'll try a long shot and PM one of the devs about it.
As far as explanations go, as I said earlier I don't have a lot of time at the moment, but I'll run through the entire process when I get the chance. I wouldn't say that it is hard as such though, more laborious. Certainly it is a lot easier than trying to model heads from scratch.
Thanks for looking into this, Darth. :happy:
So what is needed beside the scaled elf head is:
1) bigger necklace for the naked body mesh
2) scaled hair models
3) scaled eye models
DarthParametric wrote...
The most likely reason for wanting a morph to mesh script I would think would be some sort of DA2 to Origins port or vice versa. Or something like what the OP is after. A specific app or script (standalone or an extension to Eshme's) probably doesn't have wide scale use and therefore is probably not worth the coding effort, but I wouldn't go as far as to say that a converted morph is of no use.
I think it has a very good use, since that seems to be the only way to get taller elves in my mod. I just wish I knew more - a lot more - about this stuff. I've gone over your long post repeatedly and it's clear that this is still so far out of my league
#25
Posté 16 août 2011 - 09:34
-Semper- wrote...
if you want to create heads which are not possible with the mophs then you have to create it within a 3d app.
I do agree it is very specific, probably not worth coding it, but I was in need of a way to export one of the morphs I have created in the toolset to the 3app to make a new creature from it (changing the ears, back and top of the head) without have to waste most of my time figuring out how to rig the face properly to use the face animations and facefx.





Retour en haut








