Richard Boegli's CnC_Generals_Zero_Hour Fork WIP
This is documentation of Richard Boegil's Zero Hour Fork
 
Loading...
Searching...
No Matches
shd6bumpdiff_constants.h
Go to the documentation of this file.
1/*
2** Command & Conquer Generals Zero Hour(tm)
3** Copyright 2025 Electronic Arts Inc.
4**
5** This program is free software: you can redistribute it and/or modify
6** it under the terms of the GNU General Public License as published by
7** the Free Software Foundation, either version 3 of the License, or
8** (at your option) any later version.
9**
10** This program is distributed in the hope that it will be useful,
11** but WITHOUT ANY WARRANTY; without even the implied warranty of
12** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13** GNU General Public License for more details.
14**
15** You should have received a copy of the GNU General Public License
16** along with this program. If not, see <http://www.gnu.org/licenses/>.
17*/
18
19// bump diffuse shader constants (no bump)
20// Kenny Mitchell - Westwood Studios EA 2002
21
22#ifndef SHD6BUMPDIFF_CONSTANTS_H
23#define SHD6BUMPDIFF_CONSTANTS_H
24
25// vertex shader macros
26
27
28#define CV_WORLD_VIEW_PROJECTION 1
29
30#define CV_WORLD_VIEW_PROJECTION_0 1
31#define CV_WORLD_VIEW_PROJECTION_1 2
32#define CV_WORLD_VIEW_PROJECTION_2 3
33#define CV_WORLD_VIEW_PROJECTION_3 4
34
35
36//#define CV_WORLD_VIEW 5
37
38//#define CV_WORLD_VIEW_0 5
39//#define CV_WORLD_VIEW_1 6
40//#define CV_WORLD_VIEW_2 7
41//#define CV_WORLD_VIEW_3 8
42
43
44//#define CV_WORLD_VIEW_INVERSE_TRANSPOSE 9
45
46//#define CV_WORLD_VIEW_INVERSE_TRANSPOSE_0 9
47//#define CV_WORLD_VIEW_INVERSE_TRANSPOSE_1 10
48//#define CV_WORLD_VIEW_INVERSE_TRANSPOSE_2 11
49
50
51
52#define CV_WORLD 12
53
54#define CV_WORLD_0 12
55#define CV_WORLD_1 13
56#define CV_WORLD_2 14
57#define CV_WORLD_3 15
58
59// 16-26 lighting constants
60
61#define CV_BUMPINESS 27
62
63#define CV_EYE_WORLD 28
64
65
66// inputs
67#define V_POSITION v0
68#define V_NORMAL v1
69#define V_DIFFUSE v2
70#define V_TEXTURE v3
71#define V_S v4
72#define V_T v5
73#define V_SxT v6
74
75
76// registers
77#define HALF_ANGLE r0
78#define S_WORLD r1
79#define T_WORLD r2
80#define SxT_WORLD r3
81#define LIGHT_LOCAL r4
82#define LIGHT_0 r5
83#define LIGHT_1 r6
84#define LIGHT_2 r7
85#define LIGHT_3 r8
86#define COL r9
87#define WORLD_VERTEX r10
88#define EYE_VECTOR r11
89
90#define WORLD_NORMAL r1
91
92
93#define OUTPUT_REG r0
94
95// texture stages
96#define TEX_CUBEMAP t0
97
98
99
100#endif