Split SOL data structures into base, varying and rendering parts
[neverball] / ball / game_draw.h
1 #ifndef GAME_DRAW_H
2 #define GAME_DRAW_H
3
4 #include "solid_draw.h"
5 #include "game_common.h"
6
7 struct game_draw
8 {
9     int state;
10
11     struct s_full file;
12     struct s_full back;
13
14     int reflective;                     /* Reflective geometry used?         */
15
16     struct game_tilt tilt;              /* Floor rotation                    */
17     struct game_view view;              /* Current view                      */
18
19     int   goal_e;                       /* Goal enabled flag                 */
20     float goal_k;                       /* Goal animation                    */
21
22     int   jump_e;                       /* Jumping enabled flag              */
23     int   jump_b;                       /* Jump-in-progress flag             */
24     float jump_dt;                      /* Jump duration                     */
25
26     float fade_k;                       /* Fade in/out level                 */
27     float fade_d;                       /* Fade in/out direction             */
28 };
29
30 /* FIXME: this is just for POSE_* constants. */
31 #include "game_client.h"
32
33 void game_draw(const struct game_draw *, int, float);
34
35 #endif