renderTree method
Renders the world as seen through this camera.
If the world is not mounted yet, only the viewport HUD elements will be rendered.
Implementation
@override
void renderTree(Canvas canvas) {
canvas.save();
canvas.translate(viewport.position.x, viewport.position.y);
// Render the world through the viewport
if (world.isMounted && currentCameras.length < maxCamerasDepth) {
canvas.save();
viewport.clip(canvas);
try {
currentCameras.add(this);
canvas.transform(viewfinder.transformMatrix.storage);
world.renderFromCamera(canvas);
viewfinder.renderTree(canvas);
} finally {
currentCameras.removeLast();
}
canvas.restore();
}
// Now render the HUD elements
viewport.renderTree(canvas);
canvas.restore();
}