Game Development Reference
In-Depth Information
drawingCanvas.graphics.clear();
drawingCanvas.graphics.lineStyle(2, 0xaaaaaa);
drawingCanvas.graphics.moveTo(6, 6);
drawingCanvas.graphics.lineTo(25, 6);
drawingCanvas.graphics.lineTo(25, 22);
drawingCanvas.graphics.lineTo(6, 22);
drawingCanvas.graphics.lineTo(6, 6);
drawingCanvas.graphics.moveTo(18, 8);
drawingCanvas.graphics.lineTo(18, 16);
drawingCanvas.graphics.lineTo(12, 16);
drawingCanvas.graphics.lineTo(12, 12);
drawingCanvas.graphics.moveTo(9, 24);
drawingCanvas.graphics.lineTo(9, 25);
drawingCanvas.graphics.moveTo(15, 24);
drawingCanvas.graphics.lineTo(15, 25);
drawingCanvas.graphics.moveTo(21, 24);
drawingCanvas.graphics.lineTo(21, 25);
//enlarge scale drawn symbol and place in center of the background
var scaleTranslateMatrix:Matrix = new Matrix();
scaleTranslateMatrix.scale(20, 20);
scaleTranslateMatrix.translate(100, 100);
var faceColorTransform:ColorTransform = new ColorTransform(1, 1, 1, .2 );
backgroundBitmapData.draw(drawingCanvas, scaleTranslateMatrix, faceColorTransform,
BlendMode.LAYER)
scaleTranslateMatrix = null;
faceColorTransform = null;
//draw box around background
drawingCanvas.graphics.clear();
drawingCanvas.graphics.lineStyle(2,0xffffff);
drawingCanvas.graphics.drawRect(5, 5, 790, 790);
backgroundBitmapData.draw(drawingCanvas);
//draw 800 random stars on the background
for (var ctr:int = 0; ctr < 800; ctr ++) {
backgroundBitmapData.setPixel32(int(Math.random() * 799),
int(Math.random() * 799), 0x0066ff);
}
}
The backgroundBitmapData instance is used as the giant eraser for our blitting operations
instead of a plain black background, so on every frame tick, the entire 800
800 background will
be copied to canvasBitmapData and each of the objects will be copied to it.
Here is a rundown of how we will construct this background. The rendering portion will occur in
the render function:
1.
First, we paint the mine symbol (described in the next section) on the drawingCanvas .
Search WWH ::




Custom Search