… | |
… | |
8 | { |
8 | { |
9 | } |
9 | } |
10 | |
10 | |
11 | draw_context::~draw_context () |
11 | draw_context::~draw_context () |
12 | { |
12 | { |
|
|
13 | } |
|
|
14 | |
|
|
15 | void draw_context::transform (const matrix &m) |
|
|
16 | { |
|
|
17 | modelview = modelview * m; |
|
|
18 | mvp = projection * modelview; |
13 | } |
19 | } |
14 | |
20 | |
15 | bool draw_context::may_draw (entity_base *e) |
21 | bool draw_context::may_draw (entity_base *e) |
16 | { |
22 | { |
17 | if (drawn.find (e) != drawn.end ()) |
23 | if (drawn.find (e) != drawn.end ()) |
… | |
… | |
85 | for (int j = 0; j < 4 ; j++) |
91 | for (int j = 0; j < 4 ; j++) |
86 | mvp[i][j] = m(i,j); |
92 | mvp[i][j] = m(i,j); |
87 | |
93 | |
88 | ctx.modelview.identity (); |
94 | ctx.modelview.identity (); |
89 | |
95 | |
90 | glMatrixMode (GL_MODELVIEW); |
|
|
91 | glLoadIdentity (); |
|
|
92 | world.draw (ctx); |
96 | world.draw (ctx); |
93 | |
97 | |
94 | ctx.drawn.clear (); |
98 | ctx.drawn.clear (); |
95 | |
99 | |
96 | glColorMask (1, 1, 1, 0); |
100 | glColorMask (1, 1, 1, 0); |