package kha; /** * A Framebuffer object represents the framebuffer of a kha.Window, which * typically contains a color, depth and stencil buffer. It is used to * query Graphics interfaces for rendering images which are directly visible. */ class Framebuffer implements Canvas { var window: Int; var graphics1: kha.graphics1.Graphics; var graphics2: kha.graphics2.Graphics; var graphics4: kha.graphics4.Graphics; //**var graphics5: kha.graphics5.Graphics; @:noCompletion @:noDoc public function new(window: Int, g1: kha.graphics1.Graphics, g2: kha.graphics2.Graphics, g4: kha.graphics4.Graphics /*, ?g5: kha.graphics5.Graphics*/) { this.window = window; this.graphics1 = g1; this.graphics2 = g2; this.graphics4 = g4; // this.graphics5 = g5; } @:noCompletion @:noDoc public function init(g1: kha.graphics1.Graphics, g2: kha.graphics2.Graphics, g4: kha.graphics4.Graphics /*, ?g5: kha.graphics5.Graphics*/): Void { this.graphics1 = g1; this.graphics2 = g2; this.graphics4 = g4; // this.graphics5 = g5; } /** * Returns a kha.graphics1.Graphics interface for the framebuffer. */ public var g1(get, never): kha.graphics1.Graphics; function get_g1(): kha.graphics1.Graphics { return graphics1; } /** * Returns a kha.graphics2.Graphics interface for the framebuffer. */ public var g2(get, never): kha.graphics2.Graphics; function get_g2(): kha.graphics2.Graphics { return graphics2; } /** * Returns a kha.graphics4.Graphics interface for the framebuffer. */ public var g4(get, never): kha.graphics4.Graphics; function get_g4(): kha.graphics4.Graphics { return graphics4; } /** * Returns a kha.graphics5.Graphics interface for the framebuffer. */ /*public var g5(get, never): kha.graphics5.Graphics; private function get_g5(): kha.graphics5.Graphics { return graphics5; }*/ /** * Returns the width of the framebuffer in pixels. */ public var width(get, null): Int; function get_width(): Int { return System.windowWidth(window); } /** * Returns the height of the framebuffer in pixels. */ public var height(get, null): Int; function get_height(): Int { return System.windowHeight(window); } }