Jump to content

REQ: Information on translucency


Watcher187

Recommended Posts

To recap: Seems nobody yet knows how to make parts of a texture show as semi-transparent while keeping other parts fully opaque using a bgsm file. 

None of the solutions so far achieve that (or I'm doing something wrong when testing them).

 

At the risk of sounding like beating a dead horse. Yes that sums it up. I've only gotten a bgsm to be either fully opaque or full invisible using alpha. However using a bgem I could get partial see-thru translucency but again only on the entire mesh. A few mods I've seen where they did something a kin to panty hose fishnets where the net was opaque and the stocking was a see-thru black, then had 3 overlaying meshes in some weird bgsm+bgem effect. I didn't understand it and gave up on the project I was trying to work on.

Link to comment

is there a reason a nif cant have duplicates of a part such as bra1 and bra 2 refrencing two different but identical bgsm/textures using one to be cut in places as normal ie transparency and the other as a translucent overlay? or one use bgsm and the other pure dds?

Link to comment

You need to divide the parts you want to be transparent from the non-transparent parts. So if you want a Bra to be transparent in the middle areas, but have the edges/rims be opaque, you will need to split them (the model) and assign each part their own unique material (there is a reason even the vanilla assets do this).

 

Overlaying Transparency should also be only done if you plan on having the player view the inside of the mesh. They are not performance friendly, nor graphically appealing once the Z and Alpha Testing fighting happens.

 

Alpha-Test is basically the 'fixing of sorting order' of when you have mutiple transparency objects ontop of each other or behind one another. However, it has it's limit, and depending on the engines priority list, you will get nasty jaggies as well (for a example, a lacey pattern clothing will start appearing 'harsh and jaggy' infront of grass or another transparent object). So this is completely something different you will want to test down the line if you need it or not.

 

Nif can have duplicates, but requires unique names for all items due to the format of the files and how it's read. Not sure about materials, but everything so far seems to be uniques.

 

As to why all of this, most likely is using Deferred Rendering (it's the way the engine is 'spitting out' the stuff on your screen with the fancy math), and with stuff like this, you can't really mix-and-match certains things like SSS or Transparency on a single model without breaking something. So you will need to split the model and assign each one a different material with the specifcs you want in regards to transparency.

 

Link to comment

is there a reason a nif cant have duplicates of a part such as bra1 and bra 2 refrencing two different but identical bgsm/textures using one to be cut in places as normal ie transparency and the other as a translucent overlay? or one use bgsm and the other pure dds?

 

"NiAlphaPropety" and alpha channel of _d.dds will be needed for your requirement

Link to comment

is there a reason a nif cant have duplicates of a part such as bra1 and bra 2 refrencing two different but identical bgsm/textures using one to be cut in places as normal ie transparency and the other as a translucent overlay? or one use bgsm and the other pure dds?

 

The game should run fine with 2 (mostly identical meshes) in a single nif.

 

That is how some of the See Thru Glass armors for Skyrim were done. 2 copies of the same mesh one with an alpha channel in the skin and set to adjusted settings with the original still in the nif with the default settings.

Some examples: http://www.nexusmods.com/skyrim/mods/10751/? and or http://www.nexusmods.com/skyrim/mods/29123/? (one of those has 2 chest meshes in the torso nif, I can't remember which).

 

Have you tried doing a selective transparency in the dds file?

Take the default dds file cut the sections you want to be transparent, paste them into a new layer, adjust that layers opacity (somewhere between 20 to 70 percent depending on how see thru you want it). Then merge the layers and save the dds.

Then make sure the Alpha is in mesh's skin node (nif file) and test it in game.... if it all works out then pack it up and offer it up for download... :ph34r:

 

I think it would be bgem + nif with alpha in the meshes skin node + dds file with sections that have opacity applied to it.  But I could be completely wrong (been a while since I muked with a FO4 nif/texture/marterial file set).

 

Oh and Placing the body back into the nif is easy if it was generated with Bodyslide (as the bodyslide file should have the body inside nif). Bodyslide uses the zap sliders to remove sections of the body when you hit the build button in BS. The reference nif has the body in it and the zap slider is data in an osp in the same folder. Worst case you would need to load the Project in Outfit Studio and adjust the Zap slider (as you may need to remove the feet for shoes boots, but you want the torso and leg bits to show thru in a transparent package)...

 

Example: you wanted to make the red dress or sequin dress partially see thru from 2pac's package (as it is a higher vertex/poly count mesh) you would still need to remove the bottom parts of the feet for the shoes to look normal).

First you would need to add the alpha channel to the dress's mesh inside the reference nif (tools/bodyslide/shapedata/yadayadayada/ dress.nif).

Next you would need to adjust the texture for the dress by applying opacity to the dress (But not the shoes).

Lastly you would need to load up the reference project in Outfit Studio, delete the old zap slider and create a new one that only removes the bottom part of the feet (2pac's default zap slider removes a large portion of the torso hidden behind the dress).

Once the new zap slider is created you can save the project as ( adjust the project name to show what you have done).

Then build the updated outfit in Bodyslide...

test in game...

Lastly if it works out well pack up the updated texture, and bodyslide package (sub folder in shapedata folder along with the sliderset's osp file to point to said folder) and put it up for people to download....

Then you set back and wait for people to bitch about not being able to get it to work (the fun part of being a mod tweaker).

 

Or something like that.... damn it's 4am, uh I need to crash (like 5 hours ago).

Link to comment

To recap again: Seems it is not possible to make parts of a texture show as semi-transparent while keeping other parts fully opaque using a bgsm file without using a 3D modeling software in order to edit the model (to split in parts or remove parts of it).

 

I'm not even sure how the game will handle the bgsm swaps in this case - duplicate or similar meshes in the nif  (I'm not aware of how the game knows which bgsm to swap) 

 

And it seems this is on purpose so ... there will be no way to that in the future?

Ok, so I'm simply giving-up. 

 

Link to comment

I'm not sure what happened, but I already said in my previous post that this is very likely a limitation with Deferred Rendering, just like in most game engines today. We can get into more techincal discussion if you want about why, what role Shadows play and screen space cost for transparency (especially under DX11, if they are using space independant sorting which is super expensive to solve things - remember on how if you wore stockings in Skyrim, that was semi-transparents, they would dissapear under water - under DX11 you could fix this issue, if Beth did, that is another question).

 

The engine cannot have the same model with 2 different Blending (Opaque, SSS, 1bit or 8 bit transperency) properties seperate through a texture alone. you need to split the model apart, Bethesda will not be 'fixing' this issue, since it's not an issue, it's a technical choice almost all developers make eventually when jumping to DX11 (Witcher had this issue as well, same with UDK 4 vs 3.5 where Forewarding Renderings was ditched).

 

As for a solution, try this: bring in your model in your favorite app (lets say Max for the sake of quick and dirty example). Once imported in Max, take your cut tool and cut around/the part you want to be transparent. From here, once the outline is done, select those polygons you want and detach them (or give them a new material ID, I'm not sure which one Nif supports better).

 

Once detached/ID'ed, export it back to a Nif. Now you will need to make 2 materials (one with transparency and one without), and apply them to their respective slots (at least in NifSkope, if you know how to apply a material in Nifskope, you're halfway there already). Now save everything and check it in your game.

 

At this point, it's all up to you. You can enable different Blending modes under the materials (Additive is usually the popular one) and see if your asset can take the AlphaTest hit (so when 2 layers of Transparency overlap each other, one doesn't make the other invisible, but in turn, any overlap will create jaggies, keep that in mind). You may need to add a back layer to your transparent mesh if the users can see behind it, or you need more thickness to it.

 

If it's still complicated, there are a few mods on the Nexus (I think one of them is called Black Lacey Lingeries or something) which does all of this. You can very easily take a gander at the files and see what they did, I know some people best learn from reverse-engineering assets, so that might help.

Link to comment
  • 1 month later...

So at risk of beating a dead horse my question is not about the technical properties of the alpha stuff but more about why transparent clothes appear to render as a "web of dots" as another put it. Here is an example:

 

 

post-41000-0-57845900-1468851688_thumb.jpg

 

 

 

It sort of looks like dot-matrix style printing used in newspapers. Just a whole bunch of dots. Distance does have an effect. The closer you are to the mesh the less noticeable but further away the 'dot' effect seems to scale upward and become far more noticeable. I have a gut feeling this actually has nothing to do with the mesh or the texture itself but more how the janky engine that fallout 4 has is trying to render shadows. Seems like I have seen this effect before elsewhere are there were shadows as well. 

 

Anyone have any ideas?

Link to comment
  • 5 months later...

Sorry to resurrect an old thread, but I recently stumbled upon this problem whilst making some outfits, and I wasn't sure if anyone had been successful (or partially successful) at resolving the dilemma

 

I "think" I've figured out a way to have varying translucency on a mesh without resorting to multiple meshes.

 

I Block -> Removed the BSLightingShaderProperty and then replaced it with a BSEffectShaderProperty (Block -> Insert -> Bethesda) then made sure to associate the new property to the BSSubIndexTriShape.

 

I then created a new .bgEm file and filled in the textures in the "Effects" tab of Material Editor. I still had the issue of all of the outfit being semi translucent ... Until I set the "Alpha" under the 'General' tab to 1.5 and set the "Alpha Blend Mode to "Standard" = Bingo! I can now adjust the level of translucency on different parts of the outfit, by adjusting the level of transparency on the texture file.

post-945957-0-14755500-1482778887_thumb.jpg

post-945957-0-84112900-1482778894_thumb.jpg

Link to comment
  • 6 months later...

Im also sorry to resurrect a very old post. But.......

 

Thanks very much Perraine and everyone else.  I have manged to get transparency, but my white outfit goes black.  Any Ideas?  Ive tried everything from these posts and just cant get the white transparency.  Had to set the Alpha to 2, as it wont let me do 1.5 any ideas why?

 

Please help.

Link to comment

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more information, see our Privacy Policy & Terms of Use