Fredas Posted March 2, 2014 Posted March 2, 2014 I'm currently trying to align one of the SOS schlongs to my character's body. Figured at the very least, I could just modify the schlong's position in Nifskope, see how I did, and repeat the process until the result was good. What's making me draw a blank here is that no matter what change I make to the mesh's position, the in-game position remains identical, as though I hadn't changed anything. I've tried repositioning the main NiNode. I've tried repositioning the NiTriShape. I have even repositioned every single node in the .nif manually. See, this sort of thing has worked just fine for me in the past. Reposition a mesh, and in-game its position is updated to reflect my changes. For example I did this to force some New Vegas glasses to fit my char's head perfectly. I literally don't have a single clue why this is not working. I already confirmed that the mesh I'm editing is the one the game's using for the in-game schlong (by replacing it with a different mesh and noting that the in-game schlong was correspondingly different). The only curiosity is that the one time I successfully managed to get both meshes in the same instance of NifSkope (eternally difficult because apparently NifSkope doesn't like certain things about Skyrim meshes), the body and schlong actually lined up quite agreeably. In-game, however, the schlong actually hovers about two inches off the body. I'll take anything on this. At my wit's end. ;p
myuhinny Posted March 2, 2014 Posted March 2, 2014 Here is the problem fallout New Vegas has only 1 nif file for outfits and stuff while skyrim has *2* nif files for almost all things what you do to one nif has to be done to the 2nd one as well or it will not change in game. When changing a position there is only so much you can do without screwing up the mesh rigging. For translation you only use Y and Z if you use X for translation or Y P and R for rotation to adjust something it will screw up the mesh rigging and it will appear incorrectly in game or not at all unless you fix the mesh rigging.
Fredas Posted March 2, 2014 Author Posted March 2, 2014 Here is the problem fallout New Vegas has only 1 nif file for outfits and stuff while skyrim has *2* nif files for almost all things what you do to one nif has to be done to the 2nd one as well or it will not change in game. I probably should have mentioned that I am in fact making the changes to both .nif files. When changing a position there is only so much you can do without screwing up the mesh rigging. For translation you only use Y and Z if you use X for translation or Y P and R for rotation to adjust something it will screw up the mesh rigging and it will appear incorrectly in game or not at all unless you fix the mesh rigging. Conveniently, the kind of adjustment I am trying to make only requires modifications of those two axes. Again, though, I'd be happy at this point seeing any change to the mesh in-game. I've done some crazy edits to the mesh's position and seeing zero change makes me feel like I'm in the Twilight Zone.
hryh23k9823u Posted March 2, 2014 Posted March 2, 2014 In my infinite ignorance, I'd say that the offset is somewhat just some kind of internal reference in nifskope and that you would need to actually move the vertices somehow. And how you do that? I don't know
Mud Posted March 2, 2014 Posted March 2, 2014 This just doesn't work with Skyrim. I've had success moving a hat a few units higher using Bodyslide 2's Outfit Studio's Move Vertices function, using a project that only has an Outfit nif loaded and no reference, so perhaps you could try that?
Fredas Posted March 2, 2014 Author Posted March 2, 2014 I've had success moving a hat a few units higher using Bodyslide 2's Outfit Studio's Move Vertices function, using a project that only has an Outfit nif loaded and no reference, so perhaps you could try that? I gave that a shot. Outfit Studio did not reposition the additional nodes (related to the schlong's sliders) when I moved the vertices. Its export gave the NiNode a new name ("[scene Root]"). Correcting that was not enough to prevent the mesh from causing an instant CTD in the game. Still, this seems to be the way to do it, if an expert could offer insight as to why Outfit Studio's nif export is producing an unusable mesh.
hryh23k9823u Posted March 2, 2014 Posted March 2, 2014 I think Outfit Studio only works with certain standard bones. It won't load unrecognized bones thus they won't be exported. But that is my guess.
kingkong Posted March 2, 2014 Posted March 2, 2014 i had an experience like this once with a mesh from oblivion no matter what nifskope only took the nitrishapdata with original position -some time apply change works but no garanties -some time save with change than open the saved one remove the the meshe than copy and past from one to another and save again no garantie neither -the best solution is to load the file in blender/3dsmax to make the change
Fredas Posted March 2, 2014 Author Posted March 2, 2014 Jeez. I want to howl at the moon over how frustrating this is. ;p All I want to do is tweak the position of a mesh. I even already did this with a Skyrim in-game object, using NifSkope, and it worked fine! :[ Here are my observations over what happens when I: 1) Use Outfit Studio to Import a .nif into an otherwise empty project, 2) move the vertices of said object, 3) export it, and 4) compare the result in NifSkope with the original. 1: When importing, as Lother says, Outfit Studio complains about unrecognized bones. 2: When moving the vertices, Outfit Studio gives two options: Either base the movement upon CBBE's default position, or specify a custom repositioning. In the latter case, by default Outfit Studio helpfully puts in values which correspond, again, to CBBE's default position. And as it turns out, this suggested new position seems to agree very well with the actual repositioning that is needed to get the schlong to fit my character (which is based on CBBE). 3: Exporting produces no errors or notifications of any kind. 4: In NifSkope, there are significant differences. First, the schlong is successfully repositioned. Second, the extra nodes, corresponding to the bones, are not repositioned. Third, the name of the NiNode has been changed to [scene Root]. Fourth, and possibly important, the "Translation" variable of the NiTriShape for the schlong has been changed from "X:-0.0000, Y:4.5784, Z:62.4135" to "X:0, Y:0, Z:0", so that while originally there used to be a white vector extending from 0,0,0 to the middle of the schlong, now that white vector is reduced to a single point at 0,0,0, but the schlong is nonetheless positioned where it should be. (Which is a position corresponding to the CBBE-based reposition performed in Outfit Studio - approximately 0.0, 2.0484, 65.6935.)
hryh23k9823u Posted March 2, 2014 Posted March 2, 2014 And how about that: open the original schlong in nifskope, click on the shape, and import / replace it with the shape from your exported nif from outfit studio. That could work?
Fredas Posted March 3, 2014 Author Posted March 3, 2014 And how about that: open the original schlong in nifskope, click on the shape, and import / replace it with the shape from your exported nif from outfit studio. That could work? Neg. Removing the original branch and pasting in the one generated by Outfit Studio did work, and did seem to produce a result pretty much identical to what Outfit Studio exported. But then, if it's identical, it still isn't going to work. (And doesn't.) -the best solution is to load the file in blender/3dsmax to make the change I've been trying. Much as I detest the hopeless processes involved in migrating Skyrim objects to and from Blender, I have been trying. Right off the bat, Blender doesn't like a property unique to this schlong object ("BSBehaviorGraphExtraData"). I can remove it and make Blender happy, but then what? Just paste it back in once I'm done? Somehow I have a feeling that there are intra-property references that will then need correcting, and that kind of esoteric knowledge is not only beyond me but also absent from any Skyrim Blender import/export tutorial.
kingkong Posted March 3, 2014 Posted March 3, 2014 there is no magic in this process just a pain in the ... once you made the nif file compatible to blender and load it you easily selecte the schlong go to 'edit mode' and adjust the position to your liking nothing else is needed as it is already painted and rigged than you export and do the revert process to adapt it to skyrim you can even put the schlong in head position (just do not forget the weight paint fot it and bone rigging) for the graphic extra data i do not know ! you need to try and see normaly you can past it back as you did not change anything else but sometime it can get complicated !
blabba Posted March 3, 2014 Posted March 3, 2014 Change the reference skeleton in Outfit Studio from the default bugged xpms skeleton it came with to a more updated XPMS skelly or XPMSE (groovtama) skelly. That should fix any and all missing bones when importing meshes into OS But if you want to change the bone position, OS cannot do that. As suggested you'd need to play around with using 3DSMax/Blender to get it working.
Fredas Posted March 3, 2014 Author Posted March 3, 2014 But if you want to change the bone position, OS cannot do that. As suggested you'd need to play around with using 3DSMax/Blender to get it working. I have made some modest progress on that front. Through the use of three separate tutorials and a handful of "why isn't this working?" threads, I can produce a mesh that does not CTD. Where I am currently stuck is the fact that Blender's .nif export is increasing the number of vertices from 696 to 3840. It is also changing the "Has Normals" flag but I'll deal with that later. Right now, Blender quintupling the vertex count is probably the reason why the in-game object is completely invisible. And unlike with most "what gives?" problems I've encountered, this one doesn't seem to have a solution, or even really a known cause.
blabba Posted March 3, 2014 Posted March 3, 2014 hmm, I can't help you with blender stuff (I tried the program didn't like it too much and switched to 3dsmax) What you could try to do though, is edit the skeleton_female.nif in Blender and export as 'skeleton' only Then try using that skeleton as your reference in OS, load up the schlong and move the mesh. I seriously dunno if the above would work and considering how much of a hassle it can be, probably save it for a last resort if you can't figure out the blender problems.
Cyndi Posted March 3, 2014 Posted March 3, 2014 Are you trying to re-position all the schlongs? If so why not just move the schlong bones of the skeleton themselves in nifskope?
Fredas Posted March 3, 2014 Author Posted March 3, 2014 I went back to blabba's suggestion of replacing the skeleton in BodySlide so it wouldn't complain, after recognizing that it was not in fact exporting the bones it complained about. Even though the resulting export still repositions the translation to 0,0,0, I guess the game doesn't care, because it worked like a charm. So I shall construct a prayer altar to blabba, my new deity. And Blender and all its kludgy baggage can go retire. ;p Now if I can import my character's body into Outfit Studio simultaneously so the repositioning stops being a guessing game, that'd be particularly convenient. Going to see about it now.
gerra6 Posted March 3, 2014 Posted March 3, 2014 Mesh Rigger has a fairly involved algorithm designed to correctly reposition re-rigged nifs. It was...shockingly difficult to implement. Now that it's done I can fairly easily adapt the Mesh Rigger code to allow you to reposition geometry blocks at will within a given nif, if there is demand for that sort of tool. The most straightforward approach would be to allow you to set scale, rot, and translation transformations and apply them to a geometry block. The tool would then apply those transformations to modify the positions of individual vertices within the block. One thing to note about mesh positioning...the actual position of a given mesh depends on the transformations of the bones that it is rigged with. So, any time you change the bones or rigging of a given nif, the tool adjusting that rigging needs to accurately keep track of those changes and adjust the vertex positions accordingly. Mesh Rigger can do this...I'm not sure if other tools handle the adjustment between different rigs or not.
Fredas Posted March 3, 2014 Author Posted March 3, 2014 Now that it's done I can fairly easily adapt the Mesh Rigger code to allow you to reposition geometry blocks at will within a given nif, if there is demand for that sort of tool. Thanks for allowing that I might be experienced enough to follow everything you said. ;p Anyway, this particular function seems to be essentially absent as an option, at least in terms of practicality. Producing a result with Blender is a touchy, lengthy, complicated process, for example. My latest issue is that Outfit Studio is not repositioning the L Thigh, Pelvis and R Thigh bones along with the mesh and the other bones. I did note this anomaly from within NifSkope but figured it came down to something I simply didn't understand about how such things interact in the game itself. But it seems this is in fact a problem, because the in-game result is that the flaccid-to-erect sequence causes the schlong to change dimensions, shortening at the halfway point for example, rather than maintaining a natural-looking length for the entire transition as it normally would have. I don't suppose anyone knows what I might try to force Outfit Studio to modify the above bones along with the rest? Edit: Actually, the problems with the schlong in-game may be related to more than just the pelvis / thigh bones. Take a look: Outfit Studio is repositioning the schlong bones, but it seems to be doing so incompletely, like only halfway between the original and final position of the mesh. Typically, the inexplicable nature of this problem basically means I'm at a brick wall until someone who knows what's going on can offer some insight.
gerra6 Posted March 3, 2014 Posted March 3, 2014 I don't know anything about Outfit Studio. That said, it sounds like OS is using a different skeleton than the one that the schlong was originally rigged with. My guess is that OS does not compensate for differences in bone bind position when it does whatever it does, which would explain why you are getting the repositioning errors. Determining and Setting mesh location in a nif file is an incredibly complex affair...essentially you have to virtually render the entire geometry object... which means calculating the full transformation for every single vertex in the nif, which in turn means calculating the composite relative transformation matrices for every bone and geometry object and then calculating the bone influence on a vertex by vertex basis...it's gets ugly, particularly when trying to switch from one skeleton to another. So, one thing you can do is take advantage of Mesh Rigger's ability to re-rig a nif with a different skeleton. Run Mesh Rigger Select the schlong nif as both your template and target nif. Select whatever skeleton Outfit Studio prefers as your template skeleton Set the vertex targets to 1 (we just want to re-rig the nif, not change the weightpainting) Enable 'Delete Existing Rigging'. Disable all other options. If all goes well, the tool will run, re-rig the nif using the new skeleton, and update the vertex locs, skinning, and bone binds so that the nif retains exactly the same in-game position with the new rig as the old. Hopefully that should allow you to do whatever you were planning on doing with the nif in OS. I should also mention seam mender. If the mesh is nearly in the right position, but not quite, you should be able to use Seam Mender to automatically mend the seam where the schlong meets the body.
Fredas Posted March 3, 2014 Author Posted March 3, 2014 Thanks for the suggestion. I gave it a whirl. There were some errors given during the process, and the result was just a little weird. ;p The bones and mesh were repositioned and even scaled in indecipherable ways, resulting among other things in a slight distortion to the mesh. But tellingly, the positions of the pelvic bones stayed put. So maybe if there is anything that can be done to correct the problem with Outfit Studio, it may involve finding some other skeleton that doesn't tell apps to leave pelvic bones alone. ... Fun part about this whole business is that if I import both the body and the schlong into any of these apps - NifSkope, Blender or Outfit Studio - the two parts line up quite well indeed without me doing anything. Something in the game is causing the schlong to wind up hovering a couple of inches out of place. How in the world does anyone ever make use of this schlong in the first place?
gerra6 Posted March 3, 2014 Posted March 3, 2014 The issue is probably that the mesh is rigged with bones in different bind positions. When the mesh is loaded into Skyrim, those bones are returned to the bind positions of the in-game skeleton, which causes the equivalent inverse transformations to be applied to the nif. Send me the files, I'll take a look and see if I can update my tool to compensate for whatever is going on when you try and re-rig the mesh.
hryh23k9823u Posted March 3, 2014 Posted March 3, 2014 Why you just dont try the cbbe version instead? http://www.loverslab.com/topic/19037-schlongs-of-skyrim-futa-version-chsbhc-cbbe-discussion/?p=695292
Fredas Posted March 3, 2014 Author Posted March 3, 2014 Why you just dont try the cbbe version instead? http://www.loverslab.com/topic/19037-schlongs-of-skyrim-futa-version-chsbhc-cbbe-discussion/?p=695292 Today's a bust but tomorrow I'll study the CBBE version to see if it can help me figure out how I might successfully reposition the mesh in a way that Skyrim likes. See, the default schlong used in Equipable and UNP actually does fit CBBE fairly well. However, there is still a tiny gap. And besides that, I have my own ideas about how the schlong should actually fit. So even if the CBBE version does work great, I'll still want to tweak its position anyway. Incidentally, I eventually determined that the reason Outfit Studio seems to just invent positions for all the schlong bones is because it's not actually moving them at all; it's grabbing their positions from the skeleton associated with BodySlide. This produces a mesh with misaligned bones, and as far as I can tell, there is nothing one can do in Outfit Studio to force it to actually make the right adjustments. Anyway thanks for the suggestion. I'd forgotten all about the other version. ;p
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now