-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathlongbow_deformer_pointlight.rs
108 lines (85 loc) · 3.27 KB
/
longbow_deformer_pointlight.rs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
#define POINTLIGHT_SHADOWMAP_PASS
//WARNING : This is a generated file
//WARNING : Do not change this file.
#define DiffuseMap texture0
#define Diffuse2Map texture1
#define NormalMap texture2
#define DetailNormalMap texture3
#define SpecularMap texture4
#define Heightmap texture6
#define DecalDiffuseMap texture7
#define DecalNormalMap texture8
#define DecalSpecularMap texture9
#define HAS_MODIFIER
#define Vertex_shader_output_type VS_OUTPUT_STANDART
#if USE_TESSELATION
#define Pixel_shader_input_type VS_OUTPUT_STANDART
#else
#define Pixel_shader_input_type VS_OUTPUT_STANDART
#endif
#define my_material_id MATERIAL_ID_STANDART
#define Per_pixel_modifiable_variables pbr_shading_values
#define Per_pixel_auxiliary_variables standart_auxiliary_values
#include "../shader_configuration.h"
#include "definitions.rsh"
#include "modular_struct_definitions.rsh"
#include "shared_functions.rsh"
#include "motion_vector.rsh"
#include "generated_definitions.rsh"
#include "standart.rsh"
#include "pbr_shading_functions.rsh"
#include "pbr_standart_functions.rsh"
#include "bow_deformer.rsh"
#if VERTEX_SHADER
Vertex_shader_output_type main_vs(RGL_VS_INPUT In)
{
INITIALIZE_OUTPUT(Vertex_shader_output_type, Out);
Per_vertex_modifiable_variables pv_modifiable = (Per_vertex_modifiable_variables)0;
deform_longbow_delegate(In);
calculate_object_space_values_standart(In , pv_modifiable, Out );
calculate_world_space_values_standart(In , pv_modifiable, Out );
calculate_render_related_values_standart(In , pv_modifiable, Out );
#ifdef SYSTEM_SHOW_VERTEX_COLORS
vs_output_vertex_color(Out, In);
#endif
return Out;
}
#endif
#if USE_TESSELATION
#define Constant_hs_output_type HS_CONSTANT_DATA_OUTPUT_STANDART
#define Hull_shader_output_type VS_OUTPUT_STANDART
#define Domain_shader_output_type VS_OUTPUT_STANDART
#define Generated_hull_shader_func_name standart_hs
#define Generated_domain_shader_func_name standart_ds
#if HULL_SHADER
[domain("tri")]
[partitioning("fractional_odd")]
[outputtopology("triangle_cw")]
[outputcontrolpoints(3)]
[patchconstantfunc("constants_hs")]
[maxtessfactor(16.0)]
Hull_shader_output_type main_hs(InputPatch<VS_OUTPUT_STANDART, 3> inputPatch, uint control_point_id : SV_OutputControlPointID)
{
return Generated_hull_shader_func_name(inputPatch, control_point_id);
}
#endif
#if DOMAIN_SHADER
[domain("tri")]
Domain_shader_output_type main_ds(Constant_hs_output_type input, float3 barycentric_coords : SV_DomainLocation, const OutputPatch<Hull_shader_output_type, 3> triangle_patch)
{
return Generated_domain_shader_func_name(input, barycentric_coords, triangle_patch);
}
#endif
#endif
#if PIXEL_SHADER
void main_ps(Pixel_shader_input_type In)
{
Per_pixel_static_variables pp_static = (Per_pixel_static_variables)0;
Per_pixel_modifiable_variables pp_modifiable = (Per_pixel_modifiable_variables)0;
Per_pixel_auxiliary_variables pp_aux = (Per_pixel_auxiliary_variables)0;
calculate_per_pixel_static_variables(In, pp_static);
sample_textures_standart(In , pp_static , pp_modifiable, pp_aux);
calculate_alpha_standart(In , pp_static , pp_modifiable, pp_aux);
apply_alpha_test(In, pp_modifiable.early_alpha_value);
}
#endif