Jump to content
DSabre

weird rvmat behaviour

Recommended Posts

I have noticed some random behaviour with rvmats across different addons/pbos:

My planes all receive their glass from my aircraft library addon (rvmat and paa).

A few updates ago I noticed that the rvmat seems to get stored inside the p3d though when i build the p3d of the plane addon. is this correct?

Now whenever I update my aircraft library addon sometimes it works, some other times it seems to magically get an old rvmat stored inside one of the p3ds?

I thought that if I put the newest definition / my aircraft library in top of loading order it would help. but it seems it is totally random?

any ideas?

 

?interpolation=lanczos-none&output-forma

what I want - and sometimes it works too.

 

E88FD3299268152EE703C2B6005E67C66E8EF929

what I often get instead, same addons!

Share this post


Link to post
Share on other sites
On 05/06/2017 at 2:50 PM, [Dust]Sabre said:

rvmat seems to get stored inside the p3d

they are not, all of your models are looking for a glass rvmat file located in one of your pbos

Share this post


Link to post
Share on other sites

There is most definitely RVMAT data baked into the p3d.

 

Quote

LodMaterial

Basically... A direct replication of the information in the given .rvmat file

 

Quote

LodMaterial
 {
   asciiz            RvMatName;     // "ca\characters\data\soldier_captive_hhl.rvmat"
   ulong             Type;          // 9 == Arma, 10==VBS2,11==Arrowhead
   D3DCOLORVALUE     Emissive;
   D3DCOLORVALUE     Ambient;
   D3DCOLORVALUE     Diffuse;
   D3DCOLORVALUE     forcedDiffuse;
   D3DCOLORVALUE     Specular;
   D3DCOLORVALUE     Specular2;       //Usually same as Specular
   float             SpecularPower;
   ulong             PixelShaderId;   //See enumPixelShaderId
   ulong             VertexShaderId;  //See enumVertexShaderId
   LongBool          Arma1UnKnownBool;//A2 deprecated, always 1
                                      //A1 mostly 1 otherwise 0
   ulong             Arma1AnIndex;    //A2 deprecated, always 1
                                      //A1 0,1 or 2
   asciiz            BiSurfaceName;   // "ca\data\Penetration\plastic.bisurf"
   LongBool          Arma1Mostly0x01; //A2 deprecated, always 1
                                      //A1 rarely zero
   ulong             RenderFlags;     //Generally 0
   ulong             nTextures;
   ulong             nTransforms;     // always same as nTextures
   LodStageTexture   StageTextures  [nTextures];
   LodStageTransform StageTransforms[nTransforms]; 
   if type>=10//vbs2/arma2
    LodStageTexture   DummyStageTexture;// see special, additional byte for THIS stagetexture
   endif   
 }  

 

How this is all affected by the order in which pbo's are loaded i have no idea.

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×