aboutsummaryrefslogtreecommitdiffstats
path: root/drawing.scm
blob: 2de227ac2d7489bf8abad9c1041bd8e5259f32ed (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
;;; -------------------------
;;; 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);
(define begin-texture-mode
  (c-lambda (render-texture) void "BeginTextureMode"))

;; Ends drawing to render texture
;; void EndTextureMode(void);
(define end-texture-mode
  (c-lambda () void "EndTextureMode"))

;; 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"))