Jump to content
Sign in to follow this  
Sakai

Applied RVMAT's on a Rifle - Game crashes

Recommended Posts

Hi there!

With help I managed to get rvmats for one of my weapons and with honesty I never worked with rvmats before however all I need to do is apply RVMATS to the section of the gun for example I have RVMAT for a magazine because its a separate texture and so I apply the magazine RVMAT to the magazine and then the whole weapon to its own RVMAT however when I go and test out the weapon in the game, the game crashes when I want to load up in editor with the gun...

RPT file shows nothing but if needed I will show you.

Share this post


Link to post
Share on other sites
Sorry how do you know it's being caused by the RVMATS?

Because without RVMAT's assigned it works perfectly...?

Share this post


Link to post
Share on other sites

can post the rvmat here?

Share this post


Link to post
Share on other sites

Sure however I believe its nothing to do with the RVMAT's inside but maybe I applied the RVMAT's wrongly? I don't know really..

Rifle RVMAT -

class StageTI
{
texture = "aks74u\textures\74u_smdi.paa";
};
ambient[] = {1.0,1.0,1.0,1};
diffuse[] = {1.0,1.0,1.0,1};
forcedDiffuse[] = {0,0,0,0};
emmisive[] = {0,0,0,1};
specular[] = {0.128,0.127,0.125,1};
specularPower = 145;
PixelShaderID = "Super";
VertexShaderID = "Super";
class Stage1
{
texture = "aks74u\textures\74u_nohq.paa";
uvSource = "tex";
class uvTransform
{
	aside[] = {1,0,0};
	up[] = {0,1,0};
	dir[] = {0,0,1};
	pos[] = {0,0,0};
};
};
class Stage2
{
texture = "#(argb,8,8,3)color(0.5,0.5,0.5,1,DT)";
uvSource = "tex";
class uvTransform
{
	aside[] = {8,0,0};
	up[] = {0,8,0};
	dir[] = {0,0,1};
	pos[] = {0,0,0};
};
};
class Stage3
{
texture = "#(argb,8,8,3)color(0.5,0.5,0.5,0,MC)";
uvSource = "tex";
class uvTransform
{
	aside[] = {1,0,0};
	up[] = {0,1,0};
	dir[] = {0,0,1};
	pos[] = {0,0,0};
};
};
class Stage4
{
texture = "aks74u\textures\74u_as.paa";
uvSource = "tex";
class uvTransform
{
	aside[] = {1,0,0};
	up[] = {0,1,0};
	dir[] = {0,0,1};
	pos[] = {0,0,0};
};
};
class Stage5
{
texture = "aks74u\textures\74u_smdi.paa";
uvSource = "tex";
class uvTransform
{
	aside[] = {1,0,0};
	up[] = {0,1,0};
	dir[] = {0,0,1};
	pos[] = {0,0,0};
};
};
class Stage6
{
texture = "#(ai,16,2,2)fresnel(10.4,8.3)";
uvSource = "tex";
class uvTransform
{
	aside[] = {1,0,0};
	up[] = {0,1,0};
	dir[] = {0,0,1};
	pos[] = {0,0,0};
};
};
class Stage7
{
texture = "a3\data_f\env_land_co.paa";
useWorldEnvMap = "true";
uvSource = "tex";
class uvTransform
{
	aside[] = {1.0,0.0,0.0};
	up[] = {0.0,1.0,0.0};
	dir[] = {0.0,0.0,0.0};
	pos[] = {0.0,0.0,0.0};
};
};
//};

Magazine RVMAT -

class StageTI
{
texture = "aks74u\textures\mag_smdi.paa";
};
ambient[] = {1.0,1.0,1.0,1};
diffuse[] = {1.0,1.0,1.0,1};
forcedDiffuse[] = {0,0,0,0};
emmisive[] = {0,0,0,1};
specular[] = {0.128,0.127,0.125,1};
specularPower = 145;
PixelShaderID = "Super";
VertexShaderID = "Super";
class Stage1
{
texture = "aks74u\textures\mag_nohq.paa";
uvSource = "tex";
class uvTransform
{
	aside[] = {1,0,0};
	up[] = {0,1,0};
	dir[] = {0,0,1};
	pos[] = {0,0,0};
};
};
class Stage2
{
texture = "#(argb,8,8,3)color(0.5,0.5,0.5,1,DT)";
uvSource = "tex";
class uvTransform
{
	aside[] = {8,0,0};
	up[] = {0,8,0};
	dir[] = {0,0,1};
	pos[] = {0,0,0};
};
};
class Stage3
{
texture = "#(argb,8,8,3)color(0.5,0.5,0.5,0,MC)";
uvSource = "tex";
class uvTransform
{
	aside[] = {1,0,0};
	up[] = {0,1,0};
	dir[] = {0,0,1};
	pos[] = {0,0,0};
};
};
class Stage4
{
texture = "aks74u\textures\mag_as.paa";
uvSource = "tex";
class uvTransform
{
	aside[] = {1,0,0};
	up[] = {0,1,0};
	dir[] = {0,0,1};
	pos[] = {0,0,0};
};
};
class Stage5
{
texture = "aks74u\textures\mag_smdi.paa";
uvSource = "tex";
class uvTransform
{
	aside[] = {1,0,0};
	up[] = {0,1,0};
	dir[] = {0,0,1};
	pos[] = {0,0,0};
};
};
class Stage6
{
texture = "#(ai,16,2,2)fresnel(10.4,8.3)";
uvSource = "tex";
class uvTransform
{
	aside[] = {1,0,0};
	up[] = {0,1,0};
	dir[] = {0,0,1};
	pos[] = {0,0,0};
};
};
class Stage7
{
texture = "a3\data_f\env_land_co.paa";
useWorldEnvMap = "true";
uvSource = "tex";
class uvTransform
{
	aside[] = {1.0,0.0,0.0};
	up[] = {0.0,1.0,0.0};
	dir[] = {0.0,0.0,0.0};
	pos[] = {0.0,0.0,0.0};
};
};
//};

Share this post


Link to post
Share on other sites

I thought all textures must be put into a "data" folder, maybe im wrong, maybe im not, give that a try isntead of your textures folder, be sure to change all the paths after if you do try

Share this post


Link to post
Share on other sites
I thought all textures must be put into a "data" folder, maybe im wrong, maybe im not, give that a try isntead of your textures folder, be sure to change all the paths after if you do try

Nothing like that applies, you can name your folders whatever you want.

Share this post


Link to post
Share on other sites

I have never seen useWorldEnvMap = "true"; being used, have you tried to remove that?

Share this post


Link to post
Share on other sites
I have never seen useWorldEnvMap = "true"; being used, have you tried to remove that?

Still crashes :|

Share this post


Link to post
Share on other sites

seems fine over a brief look over it. You certain all your textures and in 2^n format, yes? (including normals, speculars etc)

Share this post


Link to post
Share on other sites
seems fine over a brief look over it. You certain all your textures and in 2^n format, yes? (including normals, speculars etc)

Would you be able to explain what you mean by 2^n

Share this post


Link to post
Share on other sites
Would you be able to explain what you mean by 2^n

A texture were each side is a power of two pixels, like 1,2,4,8,16 etc... typical sizes are 512, 1024, 2048.

Share this post


Link to post
Share on other sites
A texture were each side is a power of two pixels, like 1,2,4,8,16 etc... typical sizes are 512, 1024, 2048.

Aite that made my brain understand yes they all are in 2^n format

Share this post


Link to post
Share on other sites
A texture were each side is a power of two pixels, like 1,2,4,8,16 etc... typical sizes are 512, 1024, 2048.

2^0 = 0, not 1 :)

Aite that made my brain understand yes they all are in 2^n format

i have no clue out. have you tried using an existing rvmat that you know it works already?

Share this post


Link to post
Share on other sites
2^0 = 0, not 1 :)

i have no clue out. have you tried using an existing rvmat that you know it works already?

Its a fresh model so It never had a RVMAT so one has been created.

Share this post


Link to post
Share on other sites
try one of bis

Not gonna work out well due the magazine has its own texture & rvmat as I wrote in the first post I believe I could of screw something inside the Oxygen when applying?

Share this post


Link to post
Share on other sites
2^0 = 0, not 1 :)

Actually, no. 2^0 = 1. Any number to the power of zero is one, actually :)

Share this post


Link to post
Share on other sites

what happend if you remove

class StageTI

{

texture = "aks74u\textures\74u_smdi.paa";

};

?? I never use this line in any rvmatt

Share this post


Link to post
Share on other sites

No sure but heres an example A3 working rvmat

ambient[]={1,1,1,1};
diffuse[]={1,1,1,1};
forcedDiffuse[]={0,0,0,0};
emmisive[]={0,0,0,0};
specular[]={1,1,1,0};
specularPower=20.4;
PixelShaderID="Super";
VertexShaderID="Super";

class Stage1
{
texture="gnt_c185\tex\C185fuse_nohq.paa";
uvSource="tex";
class uvTransform
{
	aside[]={1,0,0};
	up[]={0,1,0};
	dir[]={0,0,0};
	pos[]={0,0,0};
};
};
class Stage2
{
texture="gnt_c185\tex\c185F_dt.paa";
uvSource="tex";
class uvTransform
{
	aside[]={1,0,0};
	up[]={0,1,0};
	dir[]={0,0,0};
	pos[]={0,0,0};
};
};
class Stage3
{
texture="#(argb,8,8,3)color(0,0,0,0,MC)";
uvSource="tex";
class uvTransform
{
	aside[]={1,0,0};
	up[]={0,1,0};
	dir[]={0,0,0};
	pos[]={0,0,0};
};
};
class Stage4
{
texture="gnt_c185\tex\c185F_as.paa";
uvSource="tex";
class uvTransform
{
	aside[]={1,0,0};
	up[]={0,1,0};
	dir[]={0,0,0};
	pos[]={0,0,0};
};
};
class Stage5
{
texture="gnt_c185\tex\c185F_smdi.paa";
uvSource="tex";
class uvTransform
{
	aside[]={1,0,0};
	up[]={0,1,0};
	dir[]={0,0,0};
	pos[]={0,0,0};
};
};
class Stage6
{
texture="#(ai,64,64,1)fresnel(2.68,3.69)";
uvSource="tex";
class uvTransform
{
	aside[]={1,0,0};
	up[]={0,1,0};
	dir[]={0,0,0};
	pos[]={0,0,0};
};
};
class Stage7
{
texture = "a3\data_f\env_land_co.paa";
uvSource = "none";
};
class StageTI
{
texture="gnt_c185\tex\c185F_ti_ca.paa";
};

Share this post


Link to post
Share on other sites
Actually, no. 2^0 = 1. Any number to the power of zero is one, actually :)

oh the shame! :)

Share this post


Link to post
Share on other sites

Are you binarizing your rvmats?

I have the following options, under binPBO for 'List of files to copy directly'

*.pac;*.paa;*.rtm;*.sqf;*.sqs;*.bikb;*.fsm;*.wss;*.ogg;*.wav;*.fxy;*.csv;*.html;*.lip;*.txt;*.wrp;*.bisurf;*.rvmat

I might be wrong here, but I remember not having the above clause for .rvmat and it either stopped the material from working or it crashed the game.

Share this post


Link to post
Share on other sites
I have never seen useWorldEnvMap = "true"; being used, have you tried to remove that?

This is new parameter for rvmats, when it's true, as enviroment map is used map defined from island config(each usermade island can has own one.)

I think it should be caused by stage6...

Try this one:

class Stage6

{

texture="#(ai,64,64,1)fresnel(10.4,8.3)";

uvSource = "tex";

class uvTransform

{

aside[] = {1,0,0};

up[] = {0,1,0};

dir[] = {0,0,1};

pos[] = {0,0,0};

};

};

Edited by redstone

Share this post


Link to post
Share on other sites
This is new parameter for rvmats, when it's true, as enviroment map is used map defined from island config(each usermade island can has own one.)

Do these work with the binPBO we have? I know that e.g. the unhide for the hide animation needs a new binarization and therefore cannot be used with what we currently have...

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
Sign in to follow this  

×