- DrawingRequest request;
-
- request.type = FILLRECT;
- request.pos = transform.apply(rect.p1);
- request.layer = layer;
-
- request.drawing_effect = transform.drawing_effect;
- request.alpha = transform.alpha;
-
- FillRectRequest* fillrectrequest = new FillRectRequest;
- fillrectrequest->size = Vector(rect.get_width(), rect.get_height());
- fillrectrequest->color = color;
- fillrectrequest->color.alpha = color.alpha * transform.alpha;
- request.request_data = fillrectrequest;
-
- requests->push_back(request);
-}
-
-void
-DrawingContext::get_light(const Vector& position, Color* color)
-{
- if( ambient_color.red == 1.0f && ambient_color.green == 1.0f
- && ambient_color.blue == 1.0f ) {
- *color = Color( 1.0f, 1.0f, 1.0f);
- return;
- }
- DrawingRequest request;
- request.type = GETLIGHT;
- request.pos = transform.apply(position);
- request.layer = LAYER_GUI; //make sure all get_light requests are handled last.
-
- GetLightRequest* getlightrequest = new GetLightRequest;
- getlightrequest->color_ptr = color;
- request.request_data = getlightrequest;
- lightmap_requests.push_back(request);