From 5e764e9edd3c5e33fa9a384b49b74e5c4eb370a3 Mon Sep 17 00:00:00 2001 From: gonzo Date: Fri, 25 Oct 2024 19:20:18 +0200 Subject: first commit --- drawing.scm | 59 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 drawing.scm (limited to 'drawing.scm') diff --git a/drawing.scm b/drawing.scm new file mode 100644 index 0000000..41a4e26 --- /dev/null +++ b/drawing.scm @@ -0,0 +1,59 @@ +;;; ------------------------- +;;; Drawing-related functions +;;; ------------------------- + +;; Set background color (framebuffer clear color) +;; void ClearBackground(Color color); +(define clear-background + (c-lambda (color) void "ClearBackground")) + +;; Setup canvas (framebuffer) to start drawing +;; void BeginDrawing(void); +(define begin-drawing + (c-lambda () void "BeginDrawing")) + +;; End canvas drawing and swap buffers (double buffering) +;; void EndDrawing(void); +(define end-drawing + (c-lambda () void "EndDrawing")) + +;; Begin 2D mode with custom camera (2D) +;; void BeginMode2D(Camera2D camera); + +;; Ends 2D mode with custom camera +;; void EndMode2D(void); + +;; Begin 3D mode with custom camera (3D) +;; void BeginMode3D(Camera3D camera); + +;; Ends 3D mode and returns to default 2D orthographic mode +;; void EndMode3D(void); + +;; Begin drawing to render texture +;; void BeginTextureMode(RenderTexture2D target); + +;; Ends drawing to render texture +;; void EndTextureMode(void); + +;; Begin custom shader drawing +;; void BeginShaderMode(Shader shader); + +;; End custom shader drawing (use default shader) +;; void EndShaderMode(void); + +;; Begin blending mode (alpha, additive, multiplied, subtract, custom) +;; void BeginBlendMode(int mode); + +;; End blending mode (reset to default: alpha blending) +;; void EndBlendMode(void); + +;; Begin scissor mode (define screen area for following drawing) +;; void BeginScissorMode(int x, int y, int width, int height); +(define begin-scissor-mode + (c-lambda (int int int int) void "BeginScissorMode")) + +;; End scissor mode +;; void EndScissorMode(void); +(define end-scissor-mode + (c-lambda () void "EndScissorMode")) + -- cgit v1.2.3