sfml3-rb 0.2.2 → 0.3.0
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 +4 -4
- data/.yardopts +9 -0
- data/CHANGELOG.md +43 -17
- data/README.md +97 -29
- data/ext/audio/audio_enums.c +58 -20
- data/ext/audio/listener.c +89 -6
- data/ext/audio/music.c +206 -5
- data/ext/audio/sound.c +175 -5
- data/ext/audio/sound_buffer.c +189 -47
- data/ext/audio/sound_buffer_recorder.c +83 -16
- data/ext/audio/sound_recorder.c +172 -52
- data/ext/audio/sound_source_cone.c +108 -29
- data/ext/audio/sound_stream.c +178 -5
- data/ext/core/exceptions.c +10 -8
- data/ext/core/unicode.c +12 -2
- data/ext/ext.c +4 -0
- data/ext/graphics/blend_mode.c +203 -53
- data/ext/graphics/circle.c +271 -4
- data/ext/graphics/color.c +240 -90
- data/ext/graphics/drawable.c +15 -4
- data/ext/graphics/font.c +138 -25
- data/ext/graphics/glyph.c +31 -8
- data/ext/graphics/image.c +180 -37
- data/ext/graphics/polygon.c +293 -26
- data/ext/graphics/rect.c +211 -54
- data/ext/graphics/rectangle.c +279 -26
- data/ext/graphics/render_state.c +116 -2
- data/ext/graphics/render_texture.c +163 -2
- data/ext/graphics/shader.c +283 -17
- data/ext/graphics/shape.c +252 -26
- data/ext/graphics/sprite.c +216 -25
- data/ext/graphics/stencil_mode.c +148 -39
- data/ext/graphics/target.c +67 -22
- data/ext/graphics/target.h +15 -15
- data/ext/graphics/text.c +306 -6
- data/ext/graphics/texture.c +257 -3
- data/ext/graphics/transform.c +178 -5
- data/ext/graphics/transformable.c +126 -2
- data/ext/graphics/vertex.c +79 -2
- data/ext/graphics/vertex_array.c +128 -16
- data/ext/graphics/vertex_buffer.c +124 -2
- data/ext/graphics/view.c +130 -2
- data/ext/network/ftp.c +249 -10
- data/ext/network/http.c +156 -38
- data/ext/network/ip_address.c +107 -26
- data/ext/network/network_enums.c +248 -141
- data/ext/network/packet.c +273 -39
- data/ext/network/socket_selector.c +91 -19
- data/ext/network/tcp_listener.c +75 -16
- data/ext/network/tcp_socket.c +128 -25
- data/ext/network/udp_socket.c +122 -26
- data/ext/ports.rb +7 -0
- data/ext/system/buffer.c +41 -12
- data/ext/system/clock.c +68 -9
- data/ext/system/input_stream.c +94 -42
- data/ext/system/sleep.c +10 -2
- data/ext/system/time.c +172 -34
- data/ext/system/vec2.c +156 -35
- data/ext/system/vec3.c +166 -35
- data/ext/window/clipboard.c +47 -17
- data/ext/window/context.c +59 -9
- data/ext/window/context_settings.c +116 -38
- data/ext/window/cursor.c +39 -9
- data/ext/window/event.c +163 -42
- data/ext/window/joystick.c +69 -3
- data/ext/window/keyboard.c +168 -116
- data/ext/window/mouse.c +36 -2
- data/ext/window/sensor.c +28 -2
- data/ext/window/touch.c +20 -2
- data/ext/window/video_mode.c +90 -19
- data/ext/window/vulkan.c +34 -6
- data/ext/window/window.c +340 -16
- data/lib/sfml/version.rb +1 -1
- data/sig/audio/audio_enums.rbs +30 -0
- data/sig/audio/listener.rbs +16 -0
- data/sig/audio/music.rbs +56 -0
- data/sig/audio/sound.rbs +51 -0
- data/sig/audio/sound_buffer.rbs +17 -0
- data/sig/audio/sound_buffer_recorder.rbs +14 -0
- data/sig/audio/sound_recorder.rbs +17 -0
- data/sig/audio/sound_source_cone.rbs +14 -0
- data/sig/audio/sound_stream.rbs +51 -0
- data/sig/graphics/blend_mode.rbs +29 -0
- data/sig/graphics/circle.rbs +44 -0
- data/sig/graphics/color.rbs +39 -0
- data/sig/graphics/drawable.rbs +5 -0
- data/sig/graphics/font.rbs +20 -0
- data/sig/graphics/glyph.rbs +7 -0
- data/sig/graphics/image.rbs +22 -0
- data/sig/graphics/polygon.rbs +42 -0
- data/sig/graphics/rect.rbs +33 -0
- data/sig/graphics/rectangle.rbs +42 -0
- data/sig/graphics/render_state.rbs +21 -0
- data/sig/graphics/render_texture.rbs +37 -0
- data/sig/graphics/shader.rbs +39 -0
- data/sig/graphics/shape.rbs +38 -0
- data/sig/graphics/sprite.rbs +34 -0
- data/sig/graphics/stencil_mode.rbs +18 -0
- data/sig/graphics/target.rbs +10 -0
- data/sig/graphics/text.rbs +48 -0
- data/sig/graphics/texture.rbs +34 -0
- data/sig/graphics/transform.rbs +37 -0
- data/sig/graphics/transformable.rbs +25 -0
- data/sig/graphics/vertex.rbs +17 -0
- data/sig/graphics/vertex_array.rbs +17 -0
- data/sig/graphics/vertex_buffer.rbs +22 -0
- data/sig/graphics/view.rbs +24 -0
- data/sig/network/ftp.rbs +46 -0
- data/sig/network/http.rbs +27 -0
- data/sig/network/ip_address.rbs +22 -0
- data/sig/network/network_enums.rbs +95 -0
- data/sig/network/packet.rbs +40 -0
- data/sig/network/socket_selector.rbs +14 -0
- data/sig/network/tcp_listener.rbs +13 -0
- data/sig/network/tcp_socket.rbs +18 -0
- data/sig/network/udp_socket.rbs +17 -0
- data/sig/system/buffer.rbs +11 -0
- data/sig/system/clock.rbs +13 -0
- data/sig/system/input_stream.rbs +7 -0
- data/sig/system/sleep.rbs +3 -0
- data/sig/system/time.rbs +28 -0
- data/sig/system/vec2.rbs +26 -0
- data/sig/system/vec3.rbs +27 -0
- data/sig/window/clipboard.rbs +8 -0
- data/sig/window/context.rbs +11 -0
- data/sig/window/context_settings.rbs +20 -0
- data/sig/window/cursor.rbs +6 -0
- data/sig/window/event.rbs +20 -0
- data/sig/window/joystick.rbs +15 -0
- data/sig/window/keyboard.rbs +10 -0
- data/sig/window/mouse.rbs +9 -0
- data/sig/window/sensor.rbs +8 -0
- data/sig/window/touch.rbs +6 -0
- data/sig/window/video_mode.rbs +16 -0
- data/sig/window/vulkan.rbs +7 -0
- data/sig/window/window.rbs +57 -0
- metadata +66 -2
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
module SFML
|
|
2
|
+
class Context
|
|
3
|
+
def self.new: () -> Context
|
|
4
|
+
def self.extension_available?: (String name) -> bool
|
|
5
|
+
def self.function: (String name) -> Integer
|
|
6
|
+
def self.active_context_id: () -> Integer
|
|
7
|
+
|
|
8
|
+
def active=: (bool value) -> bool
|
|
9
|
+
def settings: () -> ContextSettings
|
|
10
|
+
end
|
|
11
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
module SFML
|
|
2
|
+
class ContextSettings
|
|
3
|
+
def self.new: (?Integer depth_bits, ?Integer stencil_bits, ?Integer antialiasing_level, ?Integer major_version, ?Integer minor_version, ?(Symbol | Array[Symbol] | Integer) flags, ?bool srgb_capable) -> ContextSettings
|
|
4
|
+
|
|
5
|
+
def depth_bits: () -> Integer
|
|
6
|
+
def depth_bits=: (Integer value) -> Integer
|
|
7
|
+
def stencil_bits: () -> Integer
|
|
8
|
+
def stencil_bits=: (Integer value) -> Integer
|
|
9
|
+
def antialiasing_level: () -> Integer
|
|
10
|
+
def antialiasing_level=: (Integer value) -> Integer
|
|
11
|
+
def major_version: () -> Integer
|
|
12
|
+
def major_version=: (Integer value) -> Integer
|
|
13
|
+
def minor_version: () -> Integer
|
|
14
|
+
def minor_version=: (Integer value) -> Integer
|
|
15
|
+
def attribute_flags: () -> Array[Symbol]
|
|
16
|
+
def attribute_flags=: (Symbol | Array[Symbol] | Integer value) -> (Symbol | Array[Symbol] | Integer)
|
|
17
|
+
def srgb_capable?: () -> bool
|
|
18
|
+
def srgb_capable=: (bool value) -> bool
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
module SFML
|
|
2
|
+
class Event
|
|
3
|
+
def self.new: () -> Event
|
|
4
|
+
|
|
5
|
+
def type: () -> String
|
|
6
|
+
def size: () -> Vector2
|
|
7
|
+
def key: () -> Hash[Symbol, untyped]
|
|
8
|
+
def text: () -> String
|
|
9
|
+
def mouse_move: () -> Vector2
|
|
10
|
+
def mouse_move_raw: () -> Vector2
|
|
11
|
+
def mouse_button: () -> Hash[Symbol, untyped]
|
|
12
|
+
def mouse_wheel_scroll: () -> Hash[Symbol, untyped]
|
|
13
|
+
def mouse_wheel: () -> Hash[Symbol, untyped]
|
|
14
|
+
def joystick_move: () -> Hash[Symbol, untyped]
|
|
15
|
+
def joystick_button: () -> Hash[Symbol, untyped]
|
|
16
|
+
def joystick_connect: () -> Hash[Symbol, untyped]
|
|
17
|
+
def touch: () -> Hash[Symbol, untyped]
|
|
18
|
+
def sensor: () -> Hash[Symbol, untyped]
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
module SFML
|
|
2
|
+
module Joystick
|
|
3
|
+
COUNT: Integer
|
|
4
|
+
BUTTON_COUNT: Integer
|
|
5
|
+
AXIS_COUNT: Integer
|
|
6
|
+
|
|
7
|
+
def self.connected?: (Integer joystick) -> bool
|
|
8
|
+
def self.button_count: (Integer joystick) -> Integer
|
|
9
|
+
def self.has_axis?: (Integer joystick, Symbol | Integer axis) -> bool
|
|
10
|
+
def self.button_pressed?: (Integer joystick, Integer button) -> bool
|
|
11
|
+
def self.axis_position: (Integer joystick, Symbol | Integer axis) -> Float
|
|
12
|
+
def self.identification: (Integer joystick) -> Hash[Symbol, untyped]
|
|
13
|
+
def self.update!: () -> nil
|
|
14
|
+
end
|
|
15
|
+
end
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
module SFML
|
|
2
|
+
module Keyboard
|
|
3
|
+
def self.pressed?: (Symbol | String | Integer key) -> bool
|
|
4
|
+
def self.scancode_pressed?: (Integer scancode) -> bool
|
|
5
|
+
def self.localize: (Integer scancode) -> Symbol
|
|
6
|
+
def self.delocalize: (Symbol | String | Integer key) -> Integer
|
|
7
|
+
def self.description: (Integer scancode) -> String
|
|
8
|
+
def self.virtual_keyboard_visible=: (bool value) -> bool
|
|
9
|
+
end
|
|
10
|
+
end
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
module SFML
|
|
2
|
+
module Mouse
|
|
3
|
+
def self.button_pressed?: (Symbol | Integer button) -> bool
|
|
4
|
+
def self.pressed?: (Symbol | Integer button) -> bool
|
|
5
|
+
def self.position: (?Window? window) -> Vector2
|
|
6
|
+
def self.set_position: (Vector2 | Array[Float] position, ?Window? window) -> Vector2
|
|
7
|
+
def self.position=: (Vector2 | Array[Float] value) -> Vector2
|
|
8
|
+
end
|
|
9
|
+
end
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
module SFML
|
|
2
|
+
module Sensor
|
|
3
|
+
def self.available?: (Symbol | Integer type) -> bool
|
|
4
|
+
def self.set_enabled: (Symbol | Integer type, bool value) -> bool
|
|
5
|
+
def self.enabled=: (Symbol | Integer type, bool value) -> bool
|
|
6
|
+
def self.value: (Symbol | Integer type) -> Vector3
|
|
7
|
+
end
|
|
8
|
+
end
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
module SFML
|
|
2
|
+
class VideoMode
|
|
3
|
+
def self.new: (Integer width, Integer height, Integer bits_per_pixel) -> VideoMode
|
|
4
|
+
def self.desktop_mode: () -> VideoMode
|
|
5
|
+
def self.fullscreen_modes: () -> Array[VideoMode]
|
|
6
|
+
|
|
7
|
+
def valid?: () -> bool
|
|
8
|
+
def available?: () -> bool
|
|
9
|
+
def size: () -> Vector2
|
|
10
|
+
def ==: (untyped other) -> bool
|
|
11
|
+
|
|
12
|
+
attr_reader width: Integer
|
|
13
|
+
attr_reader height: Integer
|
|
14
|
+
attr_reader bits: Integer
|
|
15
|
+
end
|
|
16
|
+
end
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
module SFML
|
|
2
|
+
class Window
|
|
3
|
+
def self.new: (VideoMode video_mode, String title, ?Symbol | Array[Symbol] | Integer style, ?Symbol state, ?ContextSettings? settings) -> Window
|
|
4
|
+
def self.from_handle: (Integer handle, ?ContextSettings? settings) -> Window
|
|
5
|
+
|
|
6
|
+
def is_open?: () -> bool
|
|
7
|
+
def close!: () -> self
|
|
8
|
+
def clear: (?untyped color) -> self
|
|
9
|
+
def display: () -> self
|
|
10
|
+
def poll_event!: (Event event) -> bool
|
|
11
|
+
def wait_event!: (Event event) -> bool
|
|
12
|
+
|
|
13
|
+
def frame_rate=: (Integer value) -> self
|
|
14
|
+
def framerate_limit=: (Integer value) -> self
|
|
15
|
+
def size=: (Vector2 | Array[Float] value) -> self
|
|
16
|
+
def minimum_size=: (Vector2 | Array[Float] value) -> (Vector2 | Array[Float])
|
|
17
|
+
def maximum_size=: (Vector2 | Array[Float] value) -> (Vector2 | Array[Float])
|
|
18
|
+
def title=: (String value) -> self
|
|
19
|
+
def set_icon: (Vector2 | Array[Float] size, String pixels) -> String
|
|
20
|
+
def visible=: (bool value) -> self
|
|
21
|
+
def active=: (bool value) -> bool
|
|
22
|
+
def vertical_sync_enabled=: (bool value) -> self
|
|
23
|
+
def cursor_visible=: (bool value) -> self
|
|
24
|
+
def cursor_grabbed=: (bool value) -> self
|
|
25
|
+
def mouse_cursor=: (Cursor? value) -> Cursor?
|
|
26
|
+
def cursor=: (Cursor? value) -> Cursor?
|
|
27
|
+
def key_repeat_enabled=: (bool value) -> self
|
|
28
|
+
def joystick_threshold=: (Float value) -> Float
|
|
29
|
+
def position=: (Vector2 | Array[Float] value) -> (Vector2 | Array[Float])
|
|
30
|
+
def view=: (untyped value) -> self
|
|
31
|
+
|
|
32
|
+
def request_focus: () -> self
|
|
33
|
+
def focus?: () -> bool
|
|
34
|
+
def draw: (untyped drawable, ?untyped state) -> self
|
|
35
|
+
def position: () -> Vector2
|
|
36
|
+
def size: () -> Vector2
|
|
37
|
+
def view: () -> untyped
|
|
38
|
+
def default_view: () -> untyped
|
|
39
|
+
def settings: () -> ContextSettings
|
|
40
|
+
def native_handle: () -> Integer
|
|
41
|
+
def create_vulkan_surface: (Integer instance, ?Integer? allocator) -> Integer?
|
|
42
|
+
|
|
43
|
+
# Shared with RenderTexture, via ext/graphics/render_target.inc.
|
|
44
|
+
def srgb?: () -> bool
|
|
45
|
+
def clear_stencil: (Integer value) -> self
|
|
46
|
+
def clear_color_and_stencil: (untyped color, Integer stencil) -> self
|
|
47
|
+
def viewport: (?untyped view) -> untyped
|
|
48
|
+
def scissor: (?untyped view) -> untyped
|
|
49
|
+
def map_pixel_to_coords: (untyped point, ?untyped view) -> untyped
|
|
50
|
+
def map_coords_to_pixel: (untyped point, ?untyped view) -> untyped
|
|
51
|
+
def push_gl_states: () -> self
|
|
52
|
+
def pop_gl_states: () -> self
|
|
53
|
+
def reset_gl_states: () -> self
|
|
54
|
+
def draw_primitives: (untyped vertices, untyped primitive, ?untyped state) -> self
|
|
55
|
+
def draw_vertex_buffer_range: (untyped buffer, Integer first, Integer count, ?untyped state) -> self
|
|
56
|
+
end
|
|
57
|
+
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: sfml3-rb
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.3.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Algaves
|
|
@@ -9,7 +9,7 @@ authors:
|
|
|
9
9
|
autorequire:
|
|
10
10
|
bindir: bin
|
|
11
11
|
cert_chain: []
|
|
12
|
-
date: 2026-09-
|
|
12
|
+
date: 2026-09-19 00:00:00.000000000 Z
|
|
13
13
|
dependencies: []
|
|
14
14
|
description: Ruby bindings for SFML 3 via CSFML. Precompiled binaries are published
|
|
15
15
|
for common platforms; elsewhere SFML and CSFML are downloaded and built from source
|
|
@@ -24,6 +24,7 @@ extra_rdoc_files:
|
|
|
24
24
|
- LICENSE.md
|
|
25
25
|
- TODO.md
|
|
26
26
|
files:
|
|
27
|
+
- ".yardopts"
|
|
27
28
|
- CHANGELOG.md
|
|
28
29
|
- LICENSE.md
|
|
29
30
|
- README.md
|
|
@@ -178,6 +179,69 @@ files:
|
|
|
178
179
|
- ext/window/window.h
|
|
179
180
|
- lib/sfml.rb
|
|
180
181
|
- lib/sfml/version.rb
|
|
182
|
+
- sig/audio/audio_enums.rbs
|
|
183
|
+
- sig/audio/listener.rbs
|
|
184
|
+
- sig/audio/music.rbs
|
|
185
|
+
- sig/audio/sound.rbs
|
|
186
|
+
- sig/audio/sound_buffer.rbs
|
|
187
|
+
- sig/audio/sound_buffer_recorder.rbs
|
|
188
|
+
- sig/audio/sound_recorder.rbs
|
|
189
|
+
- sig/audio/sound_source_cone.rbs
|
|
190
|
+
- sig/audio/sound_stream.rbs
|
|
191
|
+
- sig/graphics/blend_mode.rbs
|
|
192
|
+
- sig/graphics/circle.rbs
|
|
193
|
+
- sig/graphics/color.rbs
|
|
194
|
+
- sig/graphics/drawable.rbs
|
|
195
|
+
- sig/graphics/font.rbs
|
|
196
|
+
- sig/graphics/glyph.rbs
|
|
197
|
+
- sig/graphics/image.rbs
|
|
198
|
+
- sig/graphics/polygon.rbs
|
|
199
|
+
- sig/graphics/rect.rbs
|
|
200
|
+
- sig/graphics/rectangle.rbs
|
|
201
|
+
- sig/graphics/render_state.rbs
|
|
202
|
+
- sig/graphics/render_texture.rbs
|
|
203
|
+
- sig/graphics/shader.rbs
|
|
204
|
+
- sig/graphics/shape.rbs
|
|
205
|
+
- sig/graphics/sprite.rbs
|
|
206
|
+
- sig/graphics/stencil_mode.rbs
|
|
207
|
+
- sig/graphics/target.rbs
|
|
208
|
+
- sig/graphics/text.rbs
|
|
209
|
+
- sig/graphics/texture.rbs
|
|
210
|
+
- sig/graphics/transform.rbs
|
|
211
|
+
- sig/graphics/transformable.rbs
|
|
212
|
+
- sig/graphics/vertex.rbs
|
|
213
|
+
- sig/graphics/vertex_array.rbs
|
|
214
|
+
- sig/graphics/vertex_buffer.rbs
|
|
215
|
+
- sig/graphics/view.rbs
|
|
216
|
+
- sig/network/ftp.rbs
|
|
217
|
+
- sig/network/http.rbs
|
|
218
|
+
- sig/network/ip_address.rbs
|
|
219
|
+
- sig/network/network_enums.rbs
|
|
220
|
+
- sig/network/packet.rbs
|
|
221
|
+
- sig/network/socket_selector.rbs
|
|
222
|
+
- sig/network/tcp_listener.rbs
|
|
223
|
+
- sig/network/tcp_socket.rbs
|
|
224
|
+
- sig/network/udp_socket.rbs
|
|
225
|
+
- sig/system/buffer.rbs
|
|
226
|
+
- sig/system/clock.rbs
|
|
227
|
+
- sig/system/input_stream.rbs
|
|
228
|
+
- sig/system/sleep.rbs
|
|
229
|
+
- sig/system/time.rbs
|
|
230
|
+
- sig/system/vec2.rbs
|
|
231
|
+
- sig/system/vec3.rbs
|
|
232
|
+
- sig/window/clipboard.rbs
|
|
233
|
+
- sig/window/context.rbs
|
|
234
|
+
- sig/window/context_settings.rbs
|
|
235
|
+
- sig/window/cursor.rbs
|
|
236
|
+
- sig/window/event.rbs
|
|
237
|
+
- sig/window/joystick.rbs
|
|
238
|
+
- sig/window/keyboard.rbs
|
|
239
|
+
- sig/window/mouse.rbs
|
|
240
|
+
- sig/window/sensor.rbs
|
|
241
|
+
- sig/window/touch.rbs
|
|
242
|
+
- sig/window/video_mode.rbs
|
|
243
|
+
- sig/window/vulkan.rbs
|
|
244
|
+
- sig/window/window.rbs
|
|
181
245
|
homepage: https://github.com/algaves/sfml3.rb
|
|
182
246
|
licenses:
|
|
183
247
|
- 0BSD
|