Edit: Never mind, found them

Moderators: Scripting / Modding Moderators, Moderators for English X Forum
Congratulations on finding them, and welcome to the forumJonMicheelsen wrote:I'm just curious, if it's remotely possible to get access to directly modify shader code? Improving ligting/reflection models, in particular?
Edit: Never mind, found them
Code: Select all
<collection name="asteroids">
<material name="ast_labyrinth" shader="shaderfx\high\XU_surface_test.fx" blendmode="NONE" preview="none">
<properties>
<property type="BitMap" name="diffuse_map" value="assets\textures\environments\labyrinth_diff"></property>
<property type="BitMap" name="specular_map" value="assets\textures\environments\labyrinth_spec"></property>
<property type="BitMap" name="normal_map" value="assets\textures\environments\labyrinth_bump"></property>
<property type="Float" name="mat_metallness" value="0.0"></property>
<property type="Float" name="diffuseStr" value="1.0"></property>
<property type="Float" name="specularStr" value="1.0"></property>
<property type="Float" name="environmentStr" value="0.0"></property>
</properties>
</material>
<material name="ast_ice_haze_01" shader="shaderfx\high\XU_lightcone.fx" blendmode="SCREEN" preview="none">
<properties>
<property type="BitMap" name="diffuse_map" preload="1" value="assets\fx\textures\white_bg_diff.tga"></property>
<property type="Float" name="diffuseStr" value="0.5"></property>
<property type="Float" name="softparticle_range_min" value="1.0"></property>
<property type="Float" name="softparticle_range_max" value="500.0"></property>
</properties>
</material>[/<code]
you could provide the inputs, outputs, bound buffers & textures of the shaders with the exact syntax and delete the rest of the "magic", and the possibillity to load shader source instead of binaries, too. a kind of "pass-through"-shader (without breaking the data flow) with all the resources available, as source codelinolafett wrote:Sadly there are only the compiled binaries in the game files, sorry for that.
There is not an easy way for you to get started, probably writing new shaders would be a way to do it, problem with that is, that you need to know all the material properties names exactly to get it to work.
I hope you can get started somehow.
Code: Select all
// Parameters:
//
// float AlphaScale;
// float3 AmbientColor;
// float4 AmbientLight_ColorEx_1;
// float BaseBrightness;
// float BaseContrast;
// float BaseHue;
// float BaseSaturation;
// float4 DiffColor;
// float DiffPaintStr;
// float DiffStr;
// float DiffSubStr;
// float4 DirLight_ColorEx_1;
// float4 DirLight_ColorEx_2;
// float4 DirLight_ColorEx_3;
// float4 DirLight_Dir_1;
// float4 DirLight_Dir_2;
// float4 DirLight_Dir_3;
// float4 FresnelColor;
// float FresnelPower;
// float FresnelStr;
// float GlobalLightScale;
// float LambertPower;
// float LambertPowerSub;
// float LocalLightScale;
// float MaxSpecPower;
// float NormalStr;
// float NormalSubStr;
// float PaintBrightness;
// float PaintContrast;
// float PaintHue;
// float PaintSaturation;
// float4 SpecColor;
// float SpecFunc;
// float SpecPower;
// float SpecStr;
// float4 ViewPort;
// bool bDiff;
// bool bDiffPaint;
// bool bDiffSub;
// bool bNormal;
// bool bNormalSub;
// bool bPointLights;
// bool bSpec;
// bool bTexSpecularPower;
// sampler2D s_Diff;
// sampler2D s_DiffPaint;
// sampler2D s_DiffSub;
// sampler2D s_LightIndexTexture;
// sampler2D s_Normal;
// sampler2D s_NormalSub;
// sampler2D s_Spec;
//
//
// Registers:
//
// Name Reg Size
// ---------------------- ----- ----
// bDiff b0 1
// bDiffSub b1 1
// bDiffPaint b2 1
// bSpec b3 1
// bTexSpecularPower b4 1
// bNormal b5 1
// bNormalSub b6 1
// bPointLights b7 1
// FresnelColor c0 1
// FresnelStr c1 1
// FresnelPower c2 1
// LambertPower c3 1
// LambertPowerSub c4 1
// SpecPower c5 1
// MaxSpecPower c6 1
// SpecFunc c7 1
// AmbientColor c8 1
// DiffColor c9 1
// DiffStr c10 1
// DiffSubStr c11 1
// DiffPaintStr c12 1
// SpecColor c13 1
// SpecStr c14 1
// NormalStr c15 1
// NormalSubStr c16 1
// BaseBrightness c17 1
// BaseContrast c18 1
// BaseSaturation c19 1
// BaseHue c20 1
// PaintBrightness c21 1
// PaintContrast c22 1
// PaintSaturation c23 1
// PaintHue c24 1
// LocalLightScale c25 1
// GlobalLightScale c26 1
// AmbientLight_ColorEx_1 c27 1
// DirLight_Dir_1 c28 1
// DirLight_ColorEx_1 c29 1
// DirLight_Dir_2 c30 1
// DirLight_ColorEx_2 c31 1
// DirLight_Dir_3 c32 1
// DirLight_ColorEx_3 c33 1
// AlphaScale c34 1
// ViewPort c35 1
// s_Diff s0 1
// s_DiffSub s1 1
// s_DiffPaint s2 1
// s_Spec s3 1
// s_Normal s4 1
// s_NormalSub s5 1
// s_LightIndexTexture s6 1
Ik it is kinda to late but anyway check this... just in caseJonMicheelsen wrote: ↑Wed, 16. Aug 17, 13:07 Thanks! I have looked, and currently my dead end is that the shaders themselves are in a binary format, I dont have the technical skills to convert back to HLSL. User _arc made the EffectExtractor, that should be able to do that, but the link is a dead end sadly.
My profession is a shader/tech artist in the game industry, 75% of my job is designing, writing and optimizing shaders. Other 25% is pipeline and asset optimization to get the max bang for the buck visually.
I looked into the non binary includes and found lots of places where I could do a little magic, but binary is a stumbling block![]()