add game&rawdata
This commit is contained in:
parent
0133cd976c
commit
49b34b5546
45731 changed files with 709831 additions and 0 deletions
81
gamedata/shaders/d3d11/deffer_model.vs.hlsl
Normal file
81
gamedata/shaders/d3d11/deffer_model.vs.hlsl
Normal file
|
|
@ -0,0 +1,81 @@
|
|||
#include "common.hlsli"
|
||||
#include "skin.hlsli"
|
||||
|
||||
void skinned_main(in v_model I, out p_bumped_new O)
|
||||
{
|
||||
float3 Nw = mul((float3x3)m_W, (float3)I.N);
|
||||
float3 hc_pos = (float3)hemi_cube_pos_faces;
|
||||
float3 hc_neg = (float3)hemi_cube_neg_faces;
|
||||
float3 hc_mixed = (Nw < 0.0f) ? -hc_neg : hc_pos;
|
||||
float hemi_val = saturate(dot(hc_mixed, Nw));
|
||||
float3 Pe = mul(m_WV, I.P);
|
||||
|
||||
O.tcdh = float4(I.tc.xy, hemi_val, L_material.y);
|
||||
O.position = float4(Pe, 1.0f);
|
||||
|
||||
float3 N = I.N * 2.0f;
|
||||
|
||||
#if defined(USE_BUMP) || defined(USE_TDETAIL_BUMP)
|
||||
float3 T = I.T * 2.0f;
|
||||
float3 B = I.B * 2.0f;
|
||||
|
||||
float3x3 xform = mul((float3x3)m_WV, float3x3(
|
||||
T.x, B.x, N.x,
|
||||
T.y, B.y, N.y,
|
||||
T.z, B.z, N.z));
|
||||
|
||||
O.M1 = xform[0];
|
||||
O.M2 = xform[1];
|
||||
O.M3 = xform[2];
|
||||
#else
|
||||
N = mul((float3x3)m_WV, N);
|
||||
|
||||
O.M1 = N.xxx;
|
||||
O.M2 = N.yyy;
|
||||
O.M3 = N.zzz;
|
||||
#endif
|
||||
|
||||
O.hpos = mul(m_WVP, I.P);
|
||||
|
||||
O.hpos_curr = O.hpos;
|
||||
O.hpos_old = mul(m_WVP_old, I.P_old);
|
||||
|
||||
O.hpos.xy += m_taa_jitter.xy * O.hpos.w;
|
||||
|
||||
// Для НПС раскомментировать (не рекомендую)
|
||||
// O.snow_mask = normalize(mul((float3x3)m_W, N)).y;
|
||||
O.snow_mask = 0.0f;
|
||||
}
|
||||
|
||||
#if defined(SKIN_0)
|
||||
void main(in v_model_skinned_0 I, out p_bumped_new O)
|
||||
{
|
||||
skinned_main(skinning_0(I), O);
|
||||
}
|
||||
#elif defined(SKIN_1)
|
||||
void main(in v_model_skinned_1 I, out p_bumped_new O)
|
||||
{
|
||||
skinned_main(skinning_1(I), O);
|
||||
}
|
||||
#elif defined(SKIN_2)
|
||||
void main(in v_model_skinned_2 I, out p_bumped_new O)
|
||||
{
|
||||
skinned_main(skinning_2(I), O);
|
||||
}
|
||||
#elif defined(SKIN_3)
|
||||
void main(in v_model_skinned_3 I, out p_bumped_new O)
|
||||
{
|
||||
skinned_main(skinning_3(I), O);
|
||||
}
|
||||
#elif defined(SKIN_4)
|
||||
void main(in v_model_skinned_4 I, out p_bumped_new O)
|
||||
{
|
||||
skinned_main(skinning_4(I), O);
|
||||
}
|
||||
#else
|
||||
void main(in v_model I, out p_bumped_new O)
|
||||
{
|
||||
skinned_main(I, O);
|
||||
}
|
||||
#endif
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue