Page 1 of 1

How do you remove a Droideka shield's transparency?

Posted: Sat May 12, 2012 12:37 pm
by Bob
Is it possible to remove the transparency from the droideka shield effect?
I played around with the color line and the texture, but to no avail.

How do you remove a Droideka shield's transparency?

Posted: Sat May 12, 2012 2:13 pm
by AceMastermind
Transparency is enabled in the msh file through the ATRB chunk:
BF2_ModTools\assets\sides\cis\effects\cis_droideka_shield.msh

Use a hex editor to change this:
  • 41 54 52 42 04 00 00 00 09 00 00 00
to this:
  • 41 54 52 42 04 00 00 00 00 00 00 00

http://www.gametoast.com/forums/viewtop ... 22#p424522

Re: a shield's transparency

Posted: Sat May 12, 2012 2:17 pm
by Bob
So it's just like any other model? Didn't know that, thanks!

edit: ^Disregard that, didn't work.

How do you remove a Droideka shield's transparency?

Posted: Sat May 12, 2012 2:26 pm
by AceMastermind
Bob wrote:edit: ^Disregard that, didn't work.
Clean then munge after making changes so you can be 100% sure it didn't work.

Did you try removing the alpha channel from cis_inf_droideka_shield.tga?

Re: a shield's transparency

Posted: Sat May 12, 2012 2:28 pm
by Bob
I made the texture plain white, isn't that equal to removing the alpha?
I'll try this out anyways, but after dinner (wich is now for me).

How do you remove a Droideka shield's transparency?

Posted: Sat May 12, 2012 2:45 pm
by AceMastermind
If you mean you painted the RGB channels white, then no, that isn't the same thing.
Removing the alpha changes a 32 bit RGBA image to a 24 bit RGB image.

Re: a shield's transparency

Posted: Sat May 12, 2012 3:02 pm
by Bob
Removed the alpha channel, but the shield is still transparent.
And yes, i did a full manual clean before munging.

How do you remove a Droideka shield's transparency?

Posted: Sat May 12, 2012 3:51 pm
by AceMastermind
It really shouldn't be this complex to remove the transparency, in droidekashield.fx try changing this:
  • Color(96, 160, 192, 255);
to this:
  • Color(96, 160, 192, 0);
At this point I don't see anything else that could prevent the removal of transparency unless something hardcoded in the shield classlabel is interfering. I also don't see anything referencing the cis_droideka_shield.msh, which is puzzling.

Re: a shield's transparency

Posted: Sat May 12, 2012 4:24 pm
by Bob
AceMastermind wrote:in droidekashield.fx try changing this:
  • Color(96, 160, 192, 255);
to this:
  • Color(96, 160, 192, 0);
Already tried this, makes the shield invisible since the 4th number conrols how visible the shield is.
AceMastermind wrote:I also don't see anything referencing the cis_droideka_shield.msh, which is puzzling.
I believe the shield effect searches for a msh with the same name as the tga. I renamed the texture and the mesh to "dimension" (it's supposed to be some kind of dimensional barrier) and cleansed the side from any traces of the cis_droideka_shield.msh, from the lvls as well as from the _Build folder. There's still the same shield:
Hidden/Spoiler:
Image
Image

Re: a shield's transparency

Posted: Sat May 12, 2012 5:31 pm
by AcaelusThorne
Bob wrote: Already tried this, makes the shield invisible since the 4th number conrols how visible the shield is.
Correct me if I am wrong but when that number controlls visiblety and 0 is inviseble I would make it something higher than 255.

Re: a shield's transparency

Posted: Sat May 12, 2012 5:35 pm
by Bob
AcaelusThorne wrote:
Bob wrote: Already tried this, makes the shield invisible since the 4th number conrols how visible the shield is.
Correct me if I am wrong but when that number controlls visiblety and 0 is inviseble I would make it something higher than 255.
In fact, 255 is the highest number possible there. BYTE only reaches from 0 to 255.

How do you remove a Droideka shield's transparency?

Posted: Sat May 12, 2012 7:26 pm
by AceMastermind
Bob wrote:
AceMastermind wrote:I also don't see anything referencing the cis_droideka_shield.msh, which is puzzling.
I believe the shield effect searches for a msh with the same name as the tga.
I thought the same thing at first, but the mesh is named:
  • cis_droideka_shield.msh
while the texture is named:
  • cis_inf_droideka_shield.tga
I performed a search of the retail files in GameData\DATA\_LVL_PC with a hex editor and there was no trace of cis_droideka_shield except a reference to a sound related ODF property. I'm beginning to think that mesh is unused in regards to the effect.

Re: a shield's transparency

Posted: Sun May 13, 2012 9:38 am
by Bob
The line

Code: Select all

Type("droideka")
also does nothing, I changed it to

Code: Select all

Type("cube")
and nothing happened.
Thus, it looks like the model of the shield is hardcoded for the "shield" ClassLabel
-> mesh can't be changed ord altered in any way.

How do you remove a Droideka shield's transparency?

Posted: Sun May 13, 2012 3:24 pm
by AceMastermind
The Type line refers to the Particle Mode in Particle Editor when dealing with normal *.fx language, but the droideka shield effect is an ODF+fx hybrid with a custom type not found in Particle Editor. The fambaa_shield.fx from SWBF1 is another example and is set up the same way.
It looks like a custom texture is as far as you can get here unless someone else knows something we don't see. Maybe you could try adding some form of Geometry line to the fx file and call a custom mesh with it.

Re: a shield's transparency

Posted: Sun May 13, 2012 4:38 pm
by THEWULFMAN
I tried everything I can think of(new texture, new model, new fx settings), and I can't remove the transparency. I am assuming it's hard coded into the ODF/fx hybrid Ace mentioned. Sorry for your luck.