raylib-bindings 0.5.8pre1-x86_64-darwin → 0.6.1-x86_64-darwin

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/examples/template.rb CHANGED
@@ -1,143 +1,144 @@
1
- # Yet another raylib wrapper for Ruby
2
- #
3
- # * https://github.com/vaiorabbit/raylib-bindings
4
- #
5
- # Demonstrates several key features including:
6
- # * Core : window management, camera, etc.
7
- # * Gameplay : fetching player input, collision handling, etc.
8
- # * Rendering : drawing shapes, texts, etc.
9
- #
10
- # To get more information, see:
11
- # * https://www.raylib.com/cheatsheet/cheatsheet.html for API reference
12
- # * https://github.com/vaiorabbit/raylib-bindings/tree/main/examples for more actual codes written in Ruby
13
-
14
- require 'raylib'
15
-
16
- shared_lib_path = Gem::Specification.find_by_name('raylib-bindings').full_gem_path + '/lib/'
17
-
18
- case RUBY_PLATFORM
19
- when /mswin|msys|mingw|cygwin/
20
- Raylib.load_lib(shared_lib_path + 'libraylib.dll', raygui_libpath: shared_lib_path + 'raygui.dll', physac_libpath: shared_lib_path + 'physac.dll')
21
- when /darwin/
22
- Raylib.load_lib(shared_lib_path + 'libraylib.dylib', raygui_libpath: shared_lib_path + 'raygui.dylib', physac_libpath: shared_lib_path + 'physac.dylib')
23
- when /linux/
24
- arch = RUBY_PLATFORM.split('-')[0]
25
- Raylib.load_lib(shared_lib_path + "libraylib.#{arch}.so", raygui_libpath: shared_lib_path + "raygui.#{arch}.so", physac_libpath: shared_lib_path + "physac.#{arch}.so")
26
- else
27
- raise RuntimeError, "Unknown OS: #{RUBY_PLATFORM}"
28
- end
29
-
30
- include Raylib
31
-
32
- if __FILE__ == $PROGRAM_NAME
33
- screen_width = 1280
34
- screen_height = 720
35
- InitWindow(screen_width, screen_height, "Yet Another Ruby-raylib bindings")
36
- SetTargetFPS(60)
37
-
38
- ruby_red = Color.from_u8(155, 17, 30, 255)
39
-
40
- # Camera
41
- camera = Camera.new
42
- reset_camera = lambda {
43
- camera.position.set(0.0, 10.0, 10.0)
44
- camera.target.set(0.0, 0.0, 0.0)
45
- camera.up.set(0.0, 1.0, 0.0)
46
- camera.fovy = 45.0
47
- camera.projection = CAMERA_PERSPECTIVE
48
- }
49
- reset_camera.call
50
- camera_mode = CAMERA_CUSTOM
51
- auto_rotate = false
52
-
53
- # Player (red cube) settings
54
- player_pos = Vector3.create(0.0, 0.0, 0.0)
55
- player_size = Vector3.create(2.0, 2.0, 2.0)
56
- speed = 0.25
57
-
58
- # Obstacle settings
59
- obstacle_cube_pos = Vector3.create(-4.0, 1.0, 0.0)
60
- obstacle_cube_size = Vector3.create(2.0, 2.0, 2.0)
61
- obstacle_sphere_pos = Vector3.create(4.0, 0.0, 0.0)
62
- obstacle_sphere_size = 1.5
63
-
64
- until WindowShouldClose()
65
- ### Update phase
66
-
67
- # Reset camera settings
68
- if IsKeyPressed(KEY_F1)
69
- auto_rotate = !auto_rotate
70
- reset_camera.call
71
- camera_mode = auto_rotate ? CAMERA_ORBITAL : CAMERA_CUSTOM
72
- end
73
- UpdateCamera(camera.pointer, camera_mode) if auto_rotate
74
-
75
- # Calculate move direction
76
- move = Vector3.create(0, 0, 0)
77
- move.x += speed if IsKeyDown(KEY_RIGHT)
78
- move.x -= speed if IsKeyDown(KEY_LEFT)
79
- move.z += speed if IsKeyDown(KEY_DOWN)
80
- move.z -= speed if IsKeyDown(KEY_UP)
81
-
82
- to_camera = Vector3Normalize(Vector3.create(camera.position.x, 0, camera.position.z))
83
- rotate_y = QuaternionFromVector3ToVector3(Vector3.create(0, 0, 1), to_camera)
84
- move = Vector3RotateByQuaternion(move, rotate_y)
85
-
86
- player_pos = Vector3Add(player_pos, move)
87
- player_screen_pos = GetWorldToScreen(Vector3.create(player_pos.x, player_pos.y + 2.5, player_pos.z), camera)
88
-
89
- # Check collision status
90
- collision = false
91
-
92
- player_bbox = BoundingBox.new
93
- .with_min(player_pos.x - player_size.x/2, player_pos.y - player_size.y/2, player_pos.z - player_size.z/2)
94
- .with_max(player_pos.x + player_size.x/2, player_pos.y + player_size.y/2, player_pos.z + player_size.z/2)
95
-
96
- obstacle_cube_bbox = BoundingBox.new
97
- .with_min(obstacle_cube_pos.x - obstacle_cube_size.x/2, obstacle_cube_pos.y - obstacle_cube_size.y/2, obstacle_cube_pos.z - obstacle_cube_size.z/2)
98
- .with_max(obstacle_cube_pos.x + obstacle_cube_size.x/2, obstacle_cube_pos.y + obstacle_cube_size.y/2, obstacle_cube_pos.z + obstacle_cube_size.z/2)
99
-
100
- # Check collisions player vs obstacle_cube
101
- collision = true if CheckCollisionBoxes(player_bbox, obstacle_cube_bbox)
102
-
103
- # Check collisions player vs obstacle_sphere
104
- collision = true if CheckCollisionBoxSphere(player_bbox, obstacle_sphere_pos, obstacle_sphere_size)
105
-
106
- ### Rendering phase
107
-
108
- BeginDrawing()
109
-
110
- ClearBackground(RAYWHITE)
111
-
112
- ## 3D scene
113
- BeginMode3D(camera)
114
- # Red cube
115
- DrawCube(player_pos, 2.0, 2.0, 2.0, collision ? Fade(ruby_red, 0.25) : ruby_red)
116
- DrawCubeWires(player_pos, 2.0, 2.0, 2.0, MAROON)
117
- # Obstacle cube
118
- DrawCube(obstacle_cube_pos, obstacle_cube_size.x, obstacle_cube_size.y, obstacle_cube_size.z, GRAY)
119
- DrawCubeWires(obstacle_cube_pos, obstacle_cube_size.x, obstacle_cube_size.y, obstacle_cube_size.z, DARKGRAY)
120
- # Obstacle sphere
121
- DrawSphere(obstacle_sphere_pos, obstacle_sphere_size, GRAY)
122
- DrawSphereWires(obstacle_sphere_pos, obstacle_sphere_size, 16, 16, DARKGRAY)
123
- # Floor
124
- DrawGrid(10, 1)
125
- EndMode3D()
126
-
127
- ## HUD
128
- # Text over the red cube
129
- DrawText("Player HP: 100 / 100", player_screen_pos.x - MeasureText("Player HP: 100/100", 20)/2, player_screen_pos.y, 20, BLACK)
130
- # Help message
131
- DrawRectangle(10, screen_height - 100, 300, 80, Fade(MAROON, 0.25))
132
- DrawRectangleLines(10, screen_height - 100, 300, 80, ruby_red)
133
- DrawText("Arrow keys : move red cube", 20, screen_height - 90, 20, BLACK)
134
- DrawText("F1 : camera rotation", 20, screen_height - 70, 20, BLACK)
135
- DrawText("ESC : exit", 20, screen_height - 50, 20, BLACK)
136
- # FPS
137
- DrawFPS(screen_width - 100, 16)
138
-
139
- EndDrawing()
140
- end
141
-
142
- CloseWindow()
143
- end
1
+ # Yet another raylib wrapper for Ruby
2
+ #
3
+ # * https://github.com/vaiorabbit/raylib-bindings
4
+ #
5
+ # Demonstrates several key features including:
6
+ # * Core : window management, camera, etc.
7
+ # * Gameplay : fetching player input, collision handling, etc.
8
+ # * Rendering : drawing shapes, texts, etc.
9
+ #
10
+ # To get more information, see:
11
+ # * https://www.raylib.com/cheatsheet/cheatsheet.html for API reference
12
+ # * https://github.com/vaiorabbit/raylib-bindings/tree/main/examples for more actual codes written in Ruby
13
+
14
+ require 'raylib'
15
+
16
+ shared_lib_path = Gem::Specification.find_by_name('raylib-bindings').full_gem_path + '/lib/'
17
+
18
+ case RUBY_PLATFORM
19
+ when /mswin|msys|mingw|cygwin/
20
+ Raylib.load_lib(shared_lib_path + 'libraylib.dll', raygui_libpath: shared_lib_path + 'raygui.dll', physac_libpath: shared_lib_path + 'physac.dll')
21
+ when /darwin/
22
+ arch = RUBY_PLATFORM.split('-')[0]
23
+ Raylib.load_lib(shared_lib_path + "libraylib.#{arch}.dylib", raygui_libpath: shared_lib_path + "raygui.#{arch}.dylib", physac_libpath: shared_lib_path + "physac.#{arch}.dylib")
24
+ when /linux/
25
+ arch = RUBY_PLATFORM.split('-')[0]
26
+ Raylib.load_lib(shared_lib_path + "libraylib.#{arch}.so", raygui_libpath: shared_lib_path + "raygui.#{arch}.so", physac_libpath: shared_lib_path + "physac.#{arch}.so")
27
+ else
28
+ raise RuntimeError, "Unknown OS: #{RUBY_PLATFORM}"
29
+ end
30
+
31
+ include Raylib
32
+
33
+ if __FILE__ == $PROGRAM_NAME
34
+ screen_width = 1280
35
+ screen_height = 720
36
+ InitWindow(screen_width, screen_height, "Yet Another Ruby-raylib bindings")
37
+ SetTargetFPS(60)
38
+
39
+ ruby_red = Color.from_u8(155, 17, 30, 255)
40
+
41
+ # Camera
42
+ camera = Camera.new
43
+ reset_camera = lambda {
44
+ camera.position.set(0.0, 10.0, 10.0)
45
+ camera.target.set(0.0, 0.0, 0.0)
46
+ camera.up.set(0.0, 1.0, 0.0)
47
+ camera.fovy = 45.0
48
+ camera.projection = CAMERA_PERSPECTIVE
49
+ }
50
+ reset_camera.call
51
+ camera_mode = CAMERA_CUSTOM
52
+ auto_rotate = false
53
+
54
+ # Player (red cube) settings
55
+ player_pos = Vector3.create(0.0, 0.0, 0.0)
56
+ player_size = Vector3.create(2.0, 2.0, 2.0)
57
+ speed = 0.25
58
+
59
+ # Obstacle settings
60
+ obstacle_cube_pos = Vector3.create(-4.0, 1.0, 0.0)
61
+ obstacle_cube_size = Vector3.create(2.0, 2.0, 2.0)
62
+ obstacle_sphere_pos = Vector3.create(4.0, 0.0, 0.0)
63
+ obstacle_sphere_size = 1.5
64
+
65
+ until WindowShouldClose()
66
+ ### Update phase
67
+
68
+ # Reset camera settings
69
+ if IsKeyPressed(KEY_F1)
70
+ auto_rotate = !auto_rotate
71
+ reset_camera.call
72
+ camera_mode = auto_rotate ? CAMERA_ORBITAL : CAMERA_CUSTOM
73
+ end
74
+ UpdateCamera(camera.pointer, camera_mode) if auto_rotate
75
+
76
+ # Calculate move direction
77
+ move = Vector3.create(0, 0, 0)
78
+ move.x += speed if IsKeyDown(KEY_RIGHT)
79
+ move.x -= speed if IsKeyDown(KEY_LEFT)
80
+ move.z += speed if IsKeyDown(KEY_DOWN)
81
+ move.z -= speed if IsKeyDown(KEY_UP)
82
+
83
+ to_camera = Vector3Normalize(Vector3.create(camera.position.x, 0, camera.position.z))
84
+ rotate_y = QuaternionFromVector3ToVector3(Vector3.create(0, 0, 1), to_camera)
85
+ move = Vector3RotateByQuaternion(move, rotate_y)
86
+
87
+ player_pos = Vector3Add(player_pos, move)
88
+ player_screen_pos = GetWorldToScreen(Vector3.create(player_pos.x, player_pos.y + 2.5, player_pos.z), camera)
89
+
90
+ # Check collision status
91
+ collision = false
92
+
93
+ player_bbox = BoundingBox.new
94
+ .with_min(player_pos.x - player_size.x/2, player_pos.y - player_size.y/2, player_pos.z - player_size.z/2)
95
+ .with_max(player_pos.x + player_size.x/2, player_pos.y + player_size.y/2, player_pos.z + player_size.z/2)
96
+
97
+ obstacle_cube_bbox = BoundingBox.new
98
+ .with_min(obstacle_cube_pos.x - obstacle_cube_size.x/2, obstacle_cube_pos.y - obstacle_cube_size.y/2, obstacle_cube_pos.z - obstacle_cube_size.z/2)
99
+ .with_max(obstacle_cube_pos.x + obstacle_cube_size.x/2, obstacle_cube_pos.y + obstacle_cube_size.y/2, obstacle_cube_pos.z + obstacle_cube_size.z/2)
100
+
101
+ # Check collisions player vs obstacle_cube
102
+ collision = true if CheckCollisionBoxes(player_bbox, obstacle_cube_bbox)
103
+
104
+ # Check collisions player vs obstacle_sphere
105
+ collision = true if CheckCollisionBoxSphere(player_bbox, obstacle_sphere_pos, obstacle_sphere_size)
106
+
107
+ ### Rendering phase
108
+
109
+ BeginDrawing()
110
+
111
+ ClearBackground(RAYWHITE)
112
+
113
+ ## 3D scene
114
+ BeginMode3D(camera)
115
+ # Red cube
116
+ DrawCube(player_pos, 2.0, 2.0, 2.0, collision ? Fade(ruby_red, 0.25) : ruby_red)
117
+ DrawCubeWires(player_pos, 2.0, 2.0, 2.0, MAROON)
118
+ # Obstacle cube
119
+ DrawCube(obstacle_cube_pos, obstacle_cube_size.x, obstacle_cube_size.y, obstacle_cube_size.z, GRAY)
120
+ DrawCubeWires(obstacle_cube_pos, obstacle_cube_size.x, obstacle_cube_size.y, obstacle_cube_size.z, DARKGRAY)
121
+ # Obstacle sphere
122
+ DrawSphere(obstacle_sphere_pos, obstacle_sphere_size, GRAY)
123
+ DrawSphereWires(obstacle_sphere_pos, obstacle_sphere_size, 16, 16, DARKGRAY)
124
+ # Floor
125
+ DrawGrid(10, 1)
126
+ EndMode3D()
127
+
128
+ ## HUD
129
+ # Text over the red cube
130
+ DrawText("Player HP: 100 / 100", player_screen_pos.x - MeasureText("Player HP: 100/100", 20)/2, player_screen_pos.y, 20, BLACK)
131
+ # Help message
132
+ DrawRectangle(10, screen_height - 100, 300, 80, Fade(MAROON, 0.25))
133
+ DrawRectangleLines(10, screen_height - 100, 300, 80, ruby_red)
134
+ DrawText("Arrow keys : move red cube", 20, screen_height - 90, 20, BLACK)
135
+ DrawText("F1 : camera rotation", 20, screen_height - 70, 20, BLACK)
136
+ DrawText("ESC : exit", 20, screen_height - 50, 20, BLACK)
137
+ # FPS
138
+ DrawFPS(screen_width - 100, 16)
139
+
140
+ EndDrawing()
141
+ end
142
+
143
+ CloseWindow()
144
+ end
data/lib/config.rb CHANGED
@@ -1,103 +1,103 @@
1
- # Yet another raylib wrapper for Ruby
2
- #
3
- # * https://github.com/vaiorabbit/raylib-bindings
4
- #
5
- # [NOTICE] Autogenerated. Do not edit.
6
-
7
- require 'ffi'
8
-
9
- module Raylib
10
- extend FFI::Library
11
-
12
- # Define/Macro
13
-
14
- SUPPORT_MODULE_RSHAPES = 1
15
- SUPPORT_MODULE_RTEXTURES = 1
16
- SUPPORT_MODULE_RTEXT = 1 # WARNING: It requires SUPPORT_MODULE_RTEXTURES to load sprite font textures
17
- SUPPORT_MODULE_RMODELS = 1
18
- SUPPORT_MODULE_RAUDIO = 1
19
- SUPPORT_CAMERA_SYSTEM = 1
20
- SUPPORT_GESTURES_SYSTEM = 1
21
- SUPPORT_RPRAND_GENERATOR = 1
22
- SUPPORT_MOUSE_GESTURES = 1
23
- SUPPORT_SSH_KEYBOARD_RPI = 1
24
- SUPPORT_WINMM_HIGHRES_TIMER = 1
25
- SUPPORT_PARTIALBUSY_WAIT_LOOP = 1
26
- SUPPORT_SCREEN_CAPTURE = 1
27
- SUPPORT_GIF_RECORDING = 1
28
- SUPPORT_COMPRESSION_API = 1
29
- SUPPORT_AUTOMATION_EVENTS = 1
30
- MAX_FILEPATH_CAPACITY = 8192 # Maximum file paths capacity
31
- MAX_FILEPATH_LENGTH = 4096 # Maximum length for filepaths (Linux PATH_MAX default value)
32
- MAX_KEYBOARD_KEYS = 512 # Maximum number of keyboard keys supported
33
- MAX_MOUSE_BUTTONS = 8 # Maximum number of mouse buttons supported
34
- MAX_GAMEPADS = 4 # Maximum number of gamepads supported
35
- MAX_GAMEPAD_AXIS = 8 # Maximum number of axis supported (per gamepad)
36
- MAX_GAMEPAD_BUTTONS = 32 # Maximum number of buttons supported (per gamepad)
37
- MAX_TOUCH_POINTS = 8 # Maximum number of touch points supported
38
- MAX_KEY_PRESSED_QUEUE = 16 # Maximum number of keys in the key input queue
39
- MAX_CHAR_PRESSED_QUEUE = 16 # Maximum number of characters in the char input queue
40
- MAX_DECOMPRESSION_SIZE = 64 # Max size allocated for decompression in MB
41
- MAX_AUTOMATION_EVENTS = 16384 # Maximum number of automation events to record
42
- RL_DEFAULT_BATCH_BUFFERS = 1 # Default number of batch buffers (multi-buffering)
43
- RL_DEFAULT_BATCH_DRAWCALLS = 256 # Default number of batch draw calls (by state changes: mode, texture)
44
- RL_DEFAULT_BATCH_MAX_TEXTURE_UNITS = 4 # Maximum number of textures units that can be activated on batch drawing (SetShaderValueTexture())
45
- RL_MAX_MATRIX_STACK_SIZE = 32 # Maximum size of internal Matrix stack
46
- RL_MAX_SHADER_LOCATIONS = 32 # Maximum number of shader locations supported
47
- RL_CULL_DISTANCE_NEAR = 0.01 # Default projection matrix near cull distance
48
- RL_CULL_DISTANCE_FAR = 1000.0 # Default projection matrix far cull distance
49
- RL_DEFAULT_SHADER_ATTRIB_NAME_POSITION = "vertexPosition" # Bound by default to shader location: 0
50
- RL_DEFAULT_SHADER_ATTRIB_NAME_TEXCOORD = "vertexTexCoord" # Bound by default to shader location: 1
51
- RL_DEFAULT_SHADER_ATTRIB_NAME_NORMAL = "vertexNormal" # Bound by default to shader location: 2
52
- RL_DEFAULT_SHADER_ATTRIB_NAME_COLOR = "vertexColor" # Bound by default to shader location: 3
53
- RL_DEFAULT_SHADER_ATTRIB_NAME_TANGENT = "vertexTangent" # Bound by default to shader location: 4
54
- RL_DEFAULT_SHADER_ATTRIB_NAME_TEXCOORD2 = "vertexTexCoord2" # Bound by default to shader location: 5
55
- RL_DEFAULT_SHADER_UNIFORM_NAME_MVP = "mvp" # model-view-projection matrix
56
- RL_DEFAULT_SHADER_UNIFORM_NAME_VIEW = "matView" # view matrix
57
- RL_DEFAULT_SHADER_UNIFORM_NAME_PROJECTION = "matProjection" # projection matrix
58
- RL_DEFAULT_SHADER_UNIFORM_NAME_MODEL = "matModel" # model matrix
59
- RL_DEFAULT_SHADER_UNIFORM_NAME_NORMAL = "matNormal" # normal matrix (transpose(inverse(matModelView))
60
- RL_DEFAULT_SHADER_UNIFORM_NAME_COLOR = "colDiffuse" # color diffuse (base tint color, multiplied by texture color)
61
- RL_DEFAULT_SHADER_SAMPLER2D_NAME_TEXTURE0 = "texture0" # texture0 (texture slot active 0)
62
- RL_DEFAULT_SHADER_SAMPLER2D_NAME_TEXTURE1 = "texture1" # texture1 (texture slot active 1)
63
- RL_DEFAULT_SHADER_SAMPLER2D_NAME_TEXTURE2 = "texture2" # texture2 (texture slot active 2)
64
- SUPPORT_QUADS_DRAW_MODE = 1
65
- SPLINE_SEGMENT_DIVISIONS = 24 # Spline segments subdivisions
66
- SUPPORT_FILEFORMAT_PNG = 1
67
- SUPPORT_FILEFORMAT_GIF = 1
68
- SUPPORT_FILEFORMAT_QOI = 1
69
- SUPPORT_FILEFORMAT_DDS = 1
70
- SUPPORT_IMAGE_EXPORT = 1
71
- SUPPORT_IMAGE_GENERATION = 1
72
- SUPPORT_IMAGE_MANIPULATION = 1
73
- SUPPORT_DEFAULT_FONT = 1
74
- SUPPORT_FILEFORMAT_FNT = 1
75
- SUPPORT_FILEFORMAT_TTF = 1
76
- SUPPORT_TEXT_MANIPULATION = 1
77
- SUPPORT_FONT_ATLAS_WHITE_REC = 1
78
- MAX_TEXT_BUFFER_LENGTH = 1024 # Size of internal static buffers used on some functions:
79
- MAX_TEXTSPLIT_COUNT = 128 # Maximum number of substrings to split: TextSplit()
80
- SUPPORT_FILEFORMAT_OBJ = 1
81
- SUPPORT_FILEFORMAT_MTL = 1
82
- SUPPORT_FILEFORMAT_IQM = 1
83
- SUPPORT_FILEFORMAT_GLTF = 1
84
- SUPPORT_FILEFORMAT_VOX = 1
85
- SUPPORT_FILEFORMAT_M3D = 1
86
- SUPPORT_MESH_GENERATION = 1
87
- MAX_MATERIAL_MAPS = 12 # Maximum number of shader maps supported
88
- MAX_MESH_VERTEX_BUFFERS = 7 # Maximum vertex buffers (VBO) per mesh
89
- SUPPORT_FILEFORMAT_WAV = 1
90
- SUPPORT_FILEFORMAT_OGG = 1
91
- SUPPORT_FILEFORMAT_MP3 = 1
92
- SUPPORT_FILEFORMAT_QOA = 1
93
- SUPPORT_FILEFORMAT_XM = 1
94
- SUPPORT_FILEFORMAT_MOD = 1
95
- AUDIO_DEVICE_FORMAT = "ma_format_f32" # Device output format (miniaudio: float-32bit)
96
- AUDIO_DEVICE_CHANNELS = 2 # Device output channels: stereo
97
- AUDIO_DEVICE_SAMPLE_RATE = 0 # Device sample rate (device default)
98
- MAX_AUDIO_BUFFER_POOL_CHANNELS = 16 # Maximum number of audio pool channels
99
- SUPPORT_STANDARD_FILEIO = 1
100
- SUPPORT_TRACELOG = 1
101
- MAX_TRACELOG_MSG_LENGTH = 256 # Max length of one trace-log message
102
-
103
- end
1
+ # Yet another raylib wrapper for Ruby
2
+ #
3
+ # * https://github.com/vaiorabbit/raylib-bindings
4
+ #
5
+ # [NOTICE] Autogenerated. Do not edit.
6
+
7
+ require 'ffi'
8
+
9
+ module Raylib
10
+ extend FFI::Library
11
+
12
+ # Define/Macro
13
+
14
+ SUPPORT_MODULE_RSHAPES = 1
15
+ SUPPORT_MODULE_RTEXTURES = 1
16
+ SUPPORT_MODULE_RTEXT = 1 # WARNING: It requires SUPPORT_MODULE_RTEXTURES to load sprite font textures
17
+ SUPPORT_MODULE_RMODELS = 1
18
+ SUPPORT_MODULE_RAUDIO = 1
19
+ SUPPORT_CAMERA_SYSTEM = 1
20
+ SUPPORT_GESTURES_SYSTEM = 1
21
+ SUPPORT_RPRAND_GENERATOR = 1
22
+ SUPPORT_MOUSE_GESTURES = 1
23
+ SUPPORT_SSH_KEYBOARD_RPI = 1
24
+ SUPPORT_WINMM_HIGHRES_TIMER = 1
25
+ SUPPORT_PARTIALBUSY_WAIT_LOOP = 1
26
+ SUPPORT_SCREEN_CAPTURE = 1
27
+ SUPPORT_GIF_RECORDING = 1
28
+ SUPPORT_COMPRESSION_API = 1
29
+ SUPPORT_AUTOMATION_EVENTS = 1
30
+ MAX_FILEPATH_CAPACITY = 8192 # Maximum file paths capacity
31
+ MAX_FILEPATH_LENGTH = 4096 # Maximum length for filepaths (Linux PATH_MAX default value)
32
+ MAX_KEYBOARD_KEYS = 512 # Maximum number of keyboard keys supported
33
+ MAX_MOUSE_BUTTONS = 8 # Maximum number of mouse buttons supported
34
+ MAX_GAMEPADS = 4 # Maximum number of gamepads supported
35
+ MAX_GAMEPAD_AXIS = 8 # Maximum number of axis supported (per gamepad)
36
+ MAX_GAMEPAD_BUTTONS = 32 # Maximum number of buttons supported (per gamepad)
37
+ MAX_TOUCH_POINTS = 8 # Maximum number of touch points supported
38
+ MAX_KEY_PRESSED_QUEUE = 16 # Maximum number of keys in the key input queue
39
+ MAX_CHAR_PRESSED_QUEUE = 16 # Maximum number of characters in the char input queue
40
+ MAX_DECOMPRESSION_SIZE = 64 # Max size allocated for decompression in MB
41
+ MAX_AUTOMATION_EVENTS = 16384 # Maximum number of automation events to record
42
+ RL_DEFAULT_BATCH_BUFFERS = 1 # Default number of batch buffers (multi-buffering)
43
+ RL_DEFAULT_BATCH_DRAWCALLS = 256 # Default number of batch draw calls (by state changes: mode, texture)
44
+ RL_DEFAULT_BATCH_MAX_TEXTURE_UNITS = 4 # Maximum number of textures units that can be activated on batch drawing (SetShaderValueTexture())
45
+ RL_MAX_MATRIX_STACK_SIZE = 32 # Maximum size of internal Matrix stack
46
+ RL_MAX_SHADER_LOCATIONS = 32 # Maximum number of shader locations supported
47
+ RL_CULL_DISTANCE_NEAR = 0.01 # Default projection matrix near cull distance
48
+ RL_CULL_DISTANCE_FAR = 1000.0 # Default projection matrix far cull distance
49
+ RL_DEFAULT_SHADER_ATTRIB_NAME_POSITION = "vertexPosition" # Bound by default to shader location: 0
50
+ RL_DEFAULT_SHADER_ATTRIB_NAME_TEXCOORD = "vertexTexCoord" # Bound by default to shader location: 1
51
+ RL_DEFAULT_SHADER_ATTRIB_NAME_NORMAL = "vertexNormal" # Bound by default to shader location: 2
52
+ RL_DEFAULT_SHADER_ATTRIB_NAME_COLOR = "vertexColor" # Bound by default to shader location: 3
53
+ RL_DEFAULT_SHADER_ATTRIB_NAME_TANGENT = "vertexTangent" # Bound by default to shader location: 4
54
+ RL_DEFAULT_SHADER_ATTRIB_NAME_TEXCOORD2 = "vertexTexCoord2" # Bound by default to shader location: 5
55
+ RL_DEFAULT_SHADER_UNIFORM_NAME_MVP = "mvp" # model-view-projection matrix
56
+ RL_DEFAULT_SHADER_UNIFORM_NAME_VIEW = "matView" # view matrix
57
+ RL_DEFAULT_SHADER_UNIFORM_NAME_PROJECTION = "matProjection" # projection matrix
58
+ RL_DEFAULT_SHADER_UNIFORM_NAME_MODEL = "matModel" # model matrix
59
+ RL_DEFAULT_SHADER_UNIFORM_NAME_NORMAL = "matNormal" # normal matrix (transpose(inverse(matModelView))
60
+ RL_DEFAULT_SHADER_UNIFORM_NAME_COLOR = "colDiffuse" # color diffuse (base tint color, multiplied by texture color)
61
+ RL_DEFAULT_SHADER_SAMPLER2D_NAME_TEXTURE0 = "texture0" # texture0 (texture slot active 0)
62
+ RL_DEFAULT_SHADER_SAMPLER2D_NAME_TEXTURE1 = "texture1" # texture1 (texture slot active 1)
63
+ RL_DEFAULT_SHADER_SAMPLER2D_NAME_TEXTURE2 = "texture2" # texture2 (texture slot active 2)
64
+ SUPPORT_QUADS_DRAW_MODE = 1
65
+ SPLINE_SEGMENT_DIVISIONS = 24 # Spline segments subdivisions
66
+ SUPPORT_FILEFORMAT_PNG = 1
67
+ SUPPORT_FILEFORMAT_GIF = 1
68
+ SUPPORT_FILEFORMAT_QOI = 1
69
+ SUPPORT_FILEFORMAT_DDS = 1
70
+ SUPPORT_IMAGE_EXPORT = 1
71
+ SUPPORT_IMAGE_GENERATION = 1
72
+ SUPPORT_IMAGE_MANIPULATION = 1
73
+ SUPPORT_DEFAULT_FONT = 1
74
+ SUPPORT_FILEFORMAT_FNT = 1
75
+ SUPPORT_FILEFORMAT_TTF = 1
76
+ SUPPORT_TEXT_MANIPULATION = 1
77
+ SUPPORT_FONT_ATLAS_WHITE_REC = 1
78
+ MAX_TEXT_BUFFER_LENGTH = 1024 # Size of internal static buffers used on some functions:
79
+ MAX_TEXTSPLIT_COUNT = 128 # Maximum number of substrings to split: TextSplit()
80
+ SUPPORT_FILEFORMAT_OBJ = 1
81
+ SUPPORT_FILEFORMAT_MTL = 1
82
+ SUPPORT_FILEFORMAT_IQM = 1
83
+ SUPPORT_FILEFORMAT_GLTF = 1
84
+ SUPPORT_FILEFORMAT_VOX = 1
85
+ SUPPORT_FILEFORMAT_M3D = 1
86
+ SUPPORT_MESH_GENERATION = 1
87
+ MAX_MATERIAL_MAPS = 12 # Maximum number of shader maps supported
88
+ MAX_MESH_VERTEX_BUFFERS = 7 # Maximum vertex buffers (VBO) per mesh
89
+ SUPPORT_FILEFORMAT_WAV = 1
90
+ SUPPORT_FILEFORMAT_OGG = 1
91
+ SUPPORT_FILEFORMAT_MP3 = 1
92
+ SUPPORT_FILEFORMAT_QOA = 1
93
+ SUPPORT_FILEFORMAT_XM = 1
94
+ SUPPORT_FILEFORMAT_MOD = 1
95
+ AUDIO_DEVICE_FORMAT = "ma_format_f32" # Device output format (miniaudio: float-32bit)
96
+ AUDIO_DEVICE_CHANNELS = 2 # Device output channels: stereo
97
+ AUDIO_DEVICE_SAMPLE_RATE = 0 # Device sample rate (device default)
98
+ MAX_AUDIO_BUFFER_POOL_CHANNELS = 16 # Maximum number of audio pool channels
99
+ SUPPORT_STANDARD_FILEIO = 1
100
+ SUPPORT_TRACELOG = 1
101
+ MAX_TRACELOG_MSG_LENGTH = 256 # Max length of one trace-log message
102
+
103
+ end
Binary file