raylib-bindings 0.4.0 → 0.5.1

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3e060a3747c49eb4a2e7c19234033be6223ffdd583321dd0a1986c8b6ab5dab9
4
- data.tar.gz: 827e97691123d3345e906d0083102004016e4b427310b5ac977747b32236e48d
3
+ metadata.gz: cb3ecfaf49b35d47a1cb78ffac73f8e6c355bde8e5c9ada600cf5d80af1e6564
4
+ data.tar.gz: 98e7fdc4aecae0a7fcd1f68947f9fcba891d78f0f76e5f22eafe73385e3e9127
5
5
  SHA512:
6
- metadata.gz: 25b6cd2357b7ca42bf6651d59135f11583413f33e5e9dee2d45dd743efb13d50fd18dc48eeed31131ba403f9e1d2dc04e10bf187b48ef9ad1770b272a69c762a
7
- data.tar.gz: 0345afd0cca23a91ba00101caa827fb0d53b33014e3f2356c8eeb6c1fde82b04b9f729c903c9571ff45f7978bf91316e151e057d0272787ff6f626f0c6e95e0a
6
+ metadata.gz: 1db2e65ee6d8afbb17294fc38114e0592d334d7a4ea4df0880b562369820f82e238d8562bc476be80d9a8bf23057fd7272ec5744d2d4449c0c5cdd3299042276
7
+ data.tar.gz: 8d539c2578b7f6ef3ffad52acea2fe2ab9b35575192e0309fc77429cb55f0d30c04e808adabc4e4988806e1f2fd6002e6cfb97435c1eebed66d61f20e98e116c
data/ChangeLog CHANGED
@@ -1,3 +1,12 @@
1
+ 2023-03-19 vaiorabbit <http://twitter.com/vaiorabbit>
2
+
3
+ * Updated with latest raylib ( https://github.com/raysan5/raylib/commit/2e02474b7aac2e6e3fe680a3aa996973585eeaad ) and raygui ( https://github.com/raysan5/raygui/commit/5d1de95ba2d16c44c4e777873a0e39f75dab8ffd )
4
+
5
+ 2023-03-09 vaiorabbit <http://twitter.com/vaiorabbit>
6
+
7
+ * generator: Now generates binding code for rcamera.h
8
+ * example: Removed SetCameaMode
9
+
1
10
  2023-02-26 vaiorabbit <http://twitter.com/vaiorabbit>
2
11
 
3
12
  * generator/raylib_generator.py: Emits accessors for struct members
data/README.md CHANGED
@@ -3,7 +3,7 @@
3
3
  # Yet another raylib wrapper for Ruby #
4
4
 
5
5
  * Created : 2021-10-17
6
- * Last modified : 2023-02-26
6
+ * Last modified : 2023-03-19
7
7
 
8
8
  Provides Ruby bindings for raylib-related libraries including:
9
9
 
data/examples/template.rb CHANGED
@@ -47,7 +47,7 @@ if __FILE__ == $PROGRAM_NAME
47
47
  camera.projection = CAMERA_PERSPECTIVE
48
48
  }
49
49
  reset_camera.call
50
- SetCameraMode(camera, CAMERA_FREE)
50
+ camera_mode = CAMERA_FREE
51
51
  auto_rotate = false
52
52
 
53
53
  # Player (red cube) settings
@@ -68,9 +68,9 @@ if __FILE__ == $PROGRAM_NAME
68
68
  if IsKeyPressed(KEY_F1)
69
69
  auto_rotate = !auto_rotate
70
70
  reset_camera.call
71
- SetCameraMode(camera, auto_rotate ? CAMERA_ORBITAL : CAMERA_FREE)
71
+ camera_mode = auto_rotate ? CAMERA_ORBITAL : CAMERA_FREE
72
72
  end
73
- UpdateCamera(camera)
73
+ UpdateCamera(camera.pointer, camera_mode)
74
74
 
75
75
  # Calculate move direction
76
76
  move = Vector3.create(0, 0, 0)
data/lib/config.rb CHANGED
@@ -21,7 +21,6 @@ module Raylib
21
21
  SUPPORT_MOUSE_GESTURES = 1
22
22
  SUPPORT_SSH_KEYBOARD_RPI = 1
23
23
  SUPPORT_WINMM_HIGHRES_TIMER = 1
24
- SUPPORT_PARTIALBUSY_WAIT_LOOP = 1
25
24
  SUPPORT_SCREEN_CAPTURE = 1
26
25
  SUPPORT_GIF_RECORDING = 1
27
26
  SUPPORT_COMPRESSION_API = 1
@@ -85,6 +84,7 @@ module Raylib
85
84
  SUPPORT_FILEFORMAT_WAV = 1
86
85
  SUPPORT_FILEFORMAT_OGG = 1
87
86
  SUPPORT_FILEFORMAT_MP3 = 1
87
+ SUPPORT_FILEFORMAT_QOA = 1
88
88
  SUPPORT_FILEFORMAT_XM = 1
89
89
  SUPPORT_FILEFORMAT_MOD = 1
90
90
  AUDIO_DEVICE_FORMAT = "ma_format_f32" # Device output format (miniaudio: float-32bit)
@@ -93,6 +93,6 @@ module Raylib
93
93
  MAX_AUDIO_BUFFER_POOL_CHANNELS = 16 # Maximum number of audio pool channels
94
94
  SUPPORT_STANDARD_FILEIO = 1
95
95
  SUPPORT_TRACELOG = 1
96
- MAX_TRACELOG_MSG_LENGTH = 128 # Max length of one trace-log message
96
+ MAX_TRACELOG_MSG_LENGTH = 256 # Max length of one trace-log message
97
97
 
98
98
  end
Binary file
data/lib/libraylib.dll CHANGED
Binary file
data/lib/libraylib.dylib CHANGED
Binary file
Binary file
data/lib/physac.dll CHANGED
Binary file
Binary file
data/lib/raygui.dll CHANGED
Binary file
data/lib/raygui.dylib CHANGED
Binary file
data/lib/raygui.x86_64.so CHANGED
Binary file
data/lib/raylib.rb CHANGED
@@ -7,6 +7,7 @@ require 'fileutils'
7
7
  require_relative 'raylib_main'
8
8
  require_relative 'config'
9
9
  require_relative 'raymath'
10
+ require_relative 'rcamera'
10
11
  require_relative 'rlgl'
11
12
  require_relative 'raygui'
12
13
  require_relative 'physac'
@@ -31,6 +32,7 @@ module Raylib
31
32
  def self.setup_symbols
32
33
  setup_raylib_symbols
33
34
  setup_raymath_symbols
35
+ setup_rcamera_symbols
34
36
  setup_rlgl_symbols
35
37
  end
36
38
 
data/lib/raylib_main.rb CHANGED
@@ -14,7 +14,7 @@ module Raylib
14
14
  RAYLIB_VERSION_MAJOR = 4
15
15
  RAYLIB_VERSION_MINOR = 5
16
16
  RAYLIB_VERSION_PATCH = 0
17
- RAYLIB_VERSION = "4.5-dev"
17
+ RAYLIB_VERSION = "4.5"
18
18
  DEG2RAD = Math::PI / 180.0
19
19
  RAD2DEG = 180.0 / Math::PI
20
20
 
@@ -2012,6 +2012,14 @@ module Raylib
2012
2012
  # @return [void]
2013
2013
  [:UpdateCamera, :UpdateCamera, [:pointer, :int], :void],
2014
2014
 
2015
+ # UpdateCameraPro : Update camera movement/rotation
2016
+ # @param camera [Camera *]
2017
+ # @param movement [Vector3]
2018
+ # @param rotation [Vector3]
2019
+ # @param zoom [float]
2020
+ # @return [void]
2021
+ [:UpdateCameraPro, :UpdateCameraPro, [:pointer, Vector3.by_value, Vector3.by_value, :float], :void],
2022
+
2015
2023
  # SetShapesTexture : Set texture and rectangle to be used on shapes drawing
2016
2024
  # @param texture [Texture2D]
2017
2025
  # @param source [Rectangle]
@@ -3585,11 +3593,6 @@ module Raylib
3585
3593
  # @return [void]
3586
3594
  [:UnloadModel, :UnloadModel, [Model.by_value], :void],
3587
3595
 
3588
- # UnloadModelKeepMeshes : Unload model (but not meshes) from memory (RAM and/or VRAM)
3589
- # @param model [Model]
3590
- # @return [void]
3591
- [:UnloadModelKeepMeshes, :UnloadModelKeepMeshes, [Model.by_value], :void],
3592
-
3593
3596
  # GetModelBoundingBox : Compute model bounding box limits (considers all meshes)
3594
3597
  # @param model [Model]
3595
3598
  # @return [BoundingBox]
@@ -4017,19 +4020,6 @@ module Raylib
4017
4020
  # @return [void]
4018
4021
  [:ResumeSound, :ResumeSound, [Sound.by_value], :void],
4019
4022
 
4020
- # PlaySoundMulti : Play a sound (using multichannel buffer pool)
4021
- # @param sound [Sound]
4022
- # @return [void]
4023
- [:PlaySoundMulti, :PlaySoundMulti, [Sound.by_value], :void],
4024
-
4025
- # StopSoundMulti : Stop any sound playing (using multichannel buffer pool)
4026
- # @return [void]
4027
- [:StopSoundMulti, :StopSoundMulti, [], :void],
4028
-
4029
- # GetSoundsPlaying : Get number of sounds playing in the multichannel
4030
- # @return [int]
4031
- [:GetSoundsPlaying, :GetSoundsPlaying, [], :int],
4032
-
4033
4023
  # IsSoundPlaying : Check if a sound is currently playing
4034
4024
  # @param sound [Sound]
4035
4025
  # @return [bool]
data/lib/rcamera.rb ADDED
@@ -0,0 +1,105 @@
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
+
15
+ # Typedef
16
+
17
+ typedef :int, :CameraProjection
18
+ typedef :int, :CameraMode
19
+
20
+ # Function
21
+
22
+ def self.setup_rcamera_symbols
23
+ entries = [
24
+
25
+ # GetCameraForward
26
+ # @param camera [Camera *]
27
+ # @return [Vector3]
28
+ [:GetCameraForward, :GetCameraForward, [:pointer], Vector3.by_value],
29
+
30
+ # GetCameraUp
31
+ # @param camera [Camera *]
32
+ # @return [Vector3]
33
+ [:GetCameraUp, :GetCameraUp, [:pointer], Vector3.by_value],
34
+
35
+ # GetCameraRight
36
+ # @param camera [Camera *]
37
+ # @return [Vector3]
38
+ [:GetCameraRight, :GetCameraRight, [:pointer], Vector3.by_value],
39
+
40
+ # CameraMoveForward
41
+ # @param camera [Camera *]
42
+ # @param distance [float]
43
+ # @param moveInWorldPlane [bool]
44
+ # @return [void]
45
+ [:CameraMoveForward, :CameraMoveForward, [:pointer, :float, :bool], :void],
46
+
47
+ # CameraMoveUp
48
+ # @param camera [Camera *]
49
+ # @param distance [float]
50
+ # @return [void]
51
+ [:CameraMoveUp, :CameraMoveUp, [:pointer, :float], :void],
52
+
53
+ # CameraMoveRight
54
+ # @param camera [Camera *]
55
+ # @param distance [float]
56
+ # @param moveInWorldPlane [bool]
57
+ # @return [void]
58
+ [:CameraMoveRight, :CameraMoveRight, [:pointer, :float, :bool], :void],
59
+
60
+ # CameraMoveToTarget
61
+ # @param camera [Camera *]
62
+ # @param delta [float]
63
+ # @return [void]
64
+ [:CameraMoveToTarget, :CameraMoveToTarget, [:pointer, :float], :void],
65
+
66
+ # CameraYaw
67
+ # @param camera [Camera *]
68
+ # @param angle [float]
69
+ # @param rotateAroundTarget [bool]
70
+ # @return [void]
71
+ [:CameraYaw, :CameraYaw, [:pointer, :float, :bool], :void],
72
+
73
+ # CameraPitch
74
+ # @param camera [Camera *]
75
+ # @param angle [float]
76
+ # @param lockView [bool]
77
+ # @param rotateAroundTarget [bool]
78
+ # @param rotateUp [bool]
79
+ # @return [void]
80
+ [:CameraPitch, :CameraPitch, [:pointer, :float, :bool, :bool, :bool], :void],
81
+
82
+ # CameraRoll
83
+ # @param camera [Camera *]
84
+ # @param angle [float]
85
+ # @return [void]
86
+ [:CameraRoll, :CameraRoll, [:pointer, :float], :void],
87
+
88
+ # GetCameraViewMatrix
89
+ # @param camera [Camera *]
90
+ # @return [Matrix]
91
+ [:GetCameraViewMatrix, :GetCameraViewMatrix, [:pointer], :int],
92
+
93
+ # GetCameraProjectionMatrix
94
+ # @param camera [Camera*]
95
+ # @param aspect [float]
96
+ # @return [Matrix]
97
+ [:GetCameraProjectionMatrix, :GetCameraProjectionMatrix, [:pointer, :float], :int],
98
+ ]
99
+ entries.each do |entry|
100
+ attach_function entry[0], entry[1], entry[2], entry[3]
101
+ rescue FFI::NotFoundError => e
102
+ warn "[Warning] Failed to import #{entry[0]} (#{e})."
103
+ end
104
+ end
105
+ end
data/lib/rlgl.rb CHANGED
@@ -11,7 +11,7 @@ module Raylib
11
11
 
12
12
  # Define/Macro
13
13
 
14
- RLGL_VERSION = "4.2"
14
+ RLGL_VERSION = "4.5"
15
15
  RL_DEFAULT_BATCH_BUFFER_ELEMENTS = 8192
16
16
  RL_TEXTURE_WRAP_S = 0x2802 # GL_TEXTURE_WRAP_S
17
17
  RL_TEXTURE_WRAP_T = 0x2803 # GL_TEXTURE_WRAP_T
@@ -65,6 +65,8 @@ module Raylib
65
65
  RL_CONSTANT_ALPHA = 0x8003 # GL_CONSTANT_ALPHA
66
66
  RL_ONE_MINUS_CONSTANT_ALPHA = 0x8004 # GL_ONE_MINUS_CONSTANT_ALPHA
67
67
  RL_FUNC_ADD = 0x8006 # GL_FUNC_ADD
68
+ RL_MIN = 0x8007 # GL_MIN
69
+ RL_MAX = 0x8008 # GL_MAX
68
70
  RL_FUNC_SUBTRACT = 0x800A # GL_FUNC_SUBTRACT
69
71
  RL_FUNC_REVERSE_SUBTRACT = 0x800B # GL_FUNC_REVERSE_SUBTRACT
70
72
  RL_BLEND_EQUATION = 0x8009 # GL_BLEND_EQUATION
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: raylib-bindings
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - vaiorabbit
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-02-25 00:00:00.000000000 Z
11
+ date: 2023-03-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ffi
@@ -70,6 +70,7 @@ files:
70
70
  - lib/raylib_helper.rb
71
71
  - lib/raylib_main.rb
72
72
  - lib/raymath.rb
73
+ - lib/rcamera.rb
73
74
  - lib/rlgl.rb
74
75
  homepage: https://github.com/vaiorabbit/raylib-bindings
75
76
  licenses: