Jump to content
zooloo75

My custom model is not receiving shadows / bright indoors.

Recommended Posts

Hi, I am working on my BloodLust mod. I am new to modeling for ArmA.

 

I have created a plane (flat surface) in Blender, and exported to a .p3d. The plane does not appear to receive shadows, or appears to be lit by the sun regardless if exposed to it or not.

I am using "a3\data_f\default_alpha.rvmat" for my plane's material. The plane acts as a billboard, receiving a custom texture via script (setObjectTexture).

The images are .paa with an alpha channel.

 

Plane in shadow (looks incorrect): http://i.imgur.com/hQv4jrx.jpg

Plane exposed to light (looks fine): http://i.imgur.com/nG4vJVx.jpg

Plane on wall in shadow (altered normal): http://i.imgur.com/DHk1qSF.jpg

Plane on wall exposed to light (altered normal): http://i.imgur.com/1jhXp9T.jpg

Object Builder view: http://i.imgur.com/yRQU6Xk.png

 

Thanks in advance.

Share this post


Link to post
Share on other sites

It could be one of two things (AFAIK):

Possible solution 1: Select the plane in Object Builder (as you've done in last screenshot) and press F5 to re-calculate the normals. Save the P3D, re pack and see if it works.

Possible solution 2: It could be the RVMAT at fault. If solution 1 doesn't work, try removing the rvmat and saving, repacking etc.

Share this post


Link to post
Share on other sites

can you post your rvmat here? also your blood texture is missing the _ca suffix

Share this post


Link to post
Share on other sites

I'll try out the above solutions y'all have provided and report back on it. Thanks.

Share this post


Link to post
Share on other sites

Here's "a3/data_f/default_alpha.rvmat"

class StageTI
{
	texture = "a3\data_f\default_vehicle_ti_ca.paa";
};
ambient[] = {1,1,1,1};
diffuse[] = {1,1,1,1};
forcedDiffuse[] = {0,0,0,0};
emmisive[] = {0,0,0,1};
specular[] = {0,0,0,0};
specularPower = 10;
PixelShaderID = "Normal";
VertexShaderID = "Basic";
renderFlags[] = {"NoZWrite"};

Share this post


Link to post
Share on other sites

No luck.

 

 

 

rXR9qIS.jpg

Share this post


Link to post
Share on other sites

do you want your blood too shine?

if not why you have a 1 inside the emmisive value?

 

mfg

 

ps havnt played myself with the emmisive values so its only a guess

  • Like 1

Share this post


Link to post
Share on other sites

do you want your blood too shine?

if not why you have a 1 inside the emmisive value?

 

mfg

 

ps havnt played myself with the emmisive values so its only a guess

 

I'll try making my own .rvmat based off of the one I'm using right now without the emission value.

Share this post


Link to post
Share on other sites

My RVMAT still appears bright indoors/in shadows

class StageTI
{
	texture = "a3\data_f\default_vehicle_ti_ca.paa";
};
ambient[] = {1,1,1,1};
diffuse[] = {1,1,1,1};
forcedDiffuse[] = {0,0,0,0};
emmisive[] = {0,0,0,0};
specular[] = {0,0,0,0};
specularPower = 0;
PixelShaderID = "Normal";
VertexShaderID = "Basic";
renderFlags[] = {"NoZWrite"};

Share this post


Link to post
Share on other sites

This occured with OPTRE for several vehicles we had. The issue turned out to be improper conversion to .paa format. try renaming the file to blood_ca.png or something THEN converting it to a .paa. If that doesn't work, do the same thing, but, with .co instead.

  • Like 1

Share this post


Link to post
Share on other sites

If that doesn't work, do the same thing, but, with .co instead.

If _ca doesn't work do yourself a favour and DON'T use _co for these texture(s). _CO is a 1-bit alpha and will look shit.

Share this post


Link to post
Share on other sites

This occured with OPTRE for several vehicles we had. The issue turned out to be improper conversion to .paa format. try renaming the file to blood_ca.png or something THEN converting it to a .paa. If that doesn't work, do the same thing, but, with .co instead.

Will try this out, thanks.

Share this post


Link to post
Share on other sites

_ca suffix creates DXT5 compression with 8 bit alpha during conversion. Textures in DXT5 format do not receive any shadows in the engine apparently (same issue with my dxt5's). So it's not your fault. Doesn't matter if you rename it to _co conversion. It's still a DXT5. I reported it a while ago on feedback tracker, but we all know that means nothing...

 

If _ca doesn't work do yourself a favour and DON'T use _co for these texture(s). _CO is a 1-bit alpha and will look shit.

So does blood (or any other transparency map) that does not receive shadows... You can pick one: plague or cholera.

Track textures for tanks in A3 are DXT1 btw.

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

×