2a385a15b4724838172a520fb0d2bf0ed2214b13
1 (* Copyright (C) Doom 2D: Forever Developers
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, version 3 of the License ONLY.
6 *
7 * This program is distributed in the hope that it will be useful,
8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 * GNU General Public License for more details.
11 *
12 * You should have received a copy of the GNU General Public License
13 * along with this program. If not, see <http://www.gnu.org/licenses/>.
14 *)
15 {$INCLUDE ../../../shared/a_modes.inc}
18 interface
20 uses
21 {$IFDEF ENABLE_MENU}
22 g_gui,
23 {$ENDIF}
24 g_base // TRectWH
25 ;
27 (* render startup *)
31 (* load globally used textures *)
35 (* load map specific textures *)
47 {$IFDEF ENABLE_GIBS}
49 {$ENDIF}
51 {$IFDEF ENABLE_GFX}
53 {$ENDIF}
55 {$IFDEF ENABLE_TOUCH}
56 // touch screen button location and size
58 {$ENDIF}
60 {$IFDEF ENABLE_MENU}
65 {$ENDIF}
69 implementation
71 uses
72 {$IFDEF USE_GLES1}
73 GLES11,
74 {$ELSE}
76 {$ENDIF}
77 {$IFDEF ENABLE_SYSTEM}
78 g_system,
79 {$ENDIF}
83 r_textures, r_map
84 ;
86 var
90 begin
91 r_Map_LoadTextures;
95 begin
96 r_Map_FreeTextures;
100 begin
102 r_Map_Load;
106 begin
107 r_Map_Free;
111 {$IFDEF ENABLE_SYSTEM}
114 begin
126 {$ENDIF}
129 begin
130 {$IFDEF ENABLE_SYSTEM}
134 {$ENDIF}
135 r_Textures_Initialize;
136 r_Map_Initialize;
140 begin
141 r_Map_Finalize;
142 r_Textures_Finalize;
146 begin
147 r_Map_Update;
151 begin
155 glLoadIdentity;
158 glLoadIdentity;
162 begin
164 exit;
166 SetupMatrix;
173 //e_LogWritefln('r_render_draw: %sx%s', [gScreenWidth, gScreenHeight]);
176 begin
177 // TODO setup player view
178 // TODO setup sectator mode
179 // TODO setup player hear point
180 // TODO setup player view siz
182 // TODO draw player view + setup screen coords
183 r_Map_Draw(0, 0, gScreenWidth, gScreenHeight, gPlayer1.obj.x + 32, gPlayer1.obj.y + 32, gPlayer1); // !!! remove unnamed consts
185 // TODO draw holmes inspector
187 // TODO draw messages
188 // TODO draw stats (?)
189 // TODO draw spectator hud
193 begin
194 // TODO draw pause screen
198 begin
201 STATE_FOLD: ;
202 STATE_INTERCUSTOM: ;
203 STATE_INTERSINGLE: ;
204 STATE_ENDPIC: ;
205 STATE_SLIST: ;
209 {$IFDEF ENABLE_MENU}
211 begin
212 // TODO draw menu widgets
214 {$ENDIF}
216 // TODO draw console
218 // TODO draw holmes interface
222 sys_Repaint;
226 begin
236 begin
237 {$IFDEF ENABLE_SYSTEM}
240 else
243 {$ENDIF}
247 begin
251 {$IFDEF ENABLE_GIBS}
253 begin
256 {$ENDIF}
258 {$IFDEF ENABLE_GFX}
260 begin
263 {$ENDIF}
265 {$IFDEF ENABLE_TOUCH}
267 begin
270 {$ENDIF}
272 {$IFDEF ENABLE_MENU}
274 begin
279 begin
284 begin
289 begin
292 {$ENDIF}
295 begin