graphics 1.0.1 → 1.1.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 +4 -4
- checksums.yaml.gz.sig +0 -0
- data/History.rdoc +27 -0
- data/README.rdoc +3 -3
- data/Rakefile +2 -0
- data/examples/logo.rb +1 -1
- data/ext/sdl/sdl.c +78 -15
- data/graphics_setup.sh +30 -21
- data/lib/graphics/simulation.rb +8 -5
- data/lib/graphics.rb +1 -1
- data.tar.gz.sig +0 -0
- metadata +21 -21
- metadata.gz.sig +1 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7ce1c375e7fe1c41126f6ef3b87becdb997368618ab2a9bfab749edd488c8377
|
4
|
+
data.tar.gz: 2e05e558f38241be80074f7f7ac0f2518efddcde1cd333d3cf772980bab825cf
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4ebf2dbe2d78397410bfb00769266c797a3b5da1d14c667eefc8b3396c81142c68c20fdabdbe776c85f843f8f020374f5015faa1b72f6dee9b483ea4c3dd8610
|
7
|
+
data.tar.gz: 0faaf2725fa511e98d2ee3f02b7e1d52d157ba626b6e16404dc6b872f2b4793c55ae1f965bf2779108bc3a72b25a8bc95b0081d42cd65246d11ade89dee9a9c5
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data/History.rdoc
CHANGED
@@ -1,3 +1,30 @@
|
|
1
|
+
=== 1.1.1 / 2024-08-27
|
2
|
+
|
3
|
+
* 1 minor enhancement:
|
4
|
+
|
5
|
+
* Add basic package manager detection to deps script. (havenwood)
|
6
|
+
|
7
|
+
* 3 bug fixes:
|
8
|
+
|
9
|
+
* Fixed home link in readme/gemspec.
|
10
|
+
* Minor fix in ext/sdl/sge/sge_surface.cpp.
|
11
|
+
* Reorder installation instructions & format as code. (havenwood)
|
12
|
+
|
13
|
+
=== 1.1.0 / 2023-07-26
|
14
|
+
|
15
|
+
* 3 minor enhancements:
|
16
|
+
|
17
|
+
* Added anti-aliasing to polygon. Want to add filling at some point.
|
18
|
+
* Requiring ruby 2.7+. Too many changes to ruby internals to try to maintain.
|
19
|
+
* polygon now takes an array of points.
|
20
|
+
|
21
|
+
* 4 bug fixes:
|
22
|
+
|
23
|
+
* Fixed a bunch of compiler warnings for ruby struct changes.
|
24
|
+
* Fixed font lookup on linux. (presidentbeef)
|
25
|
+
* Fixed graphics_setup.sh for obsolete build flag on sdl2_image. (NickSchimek)
|
26
|
+
* ruby 3.2: Fixed warning from ruby headers by explicitly removing alloc funcs.
|
27
|
+
|
1
28
|
=== 1.0.1 / 2018-11-14
|
2
29
|
|
3
30
|
* 2 bug fixes:
|
data/README.rdoc
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
= graphics
|
2
2
|
|
3
|
-
home :: https://github.com/
|
3
|
+
home :: https://github.com/seattlerb/graphics
|
4
4
|
rdoc :: http://docs.seattlerb.org/graphics
|
5
5
|
|
6
6
|
== DESCRIPTION:
|
@@ -86,8 +86,8 @@ up-to-date versions.
|
|
86
86
|
|
87
87
|
== INSTALL:
|
88
88
|
|
89
|
-
|
90
|
-
|
89
|
+
curl -L https://tinyurl.com/graphics-setup | bash
|
90
|
+
sudo gem install graphics
|
91
91
|
|
92
92
|
== LICENSE:
|
93
93
|
|
data/Rakefile
CHANGED
data/examples/logo.rb
CHANGED
data/ext/sdl/sdl.c
CHANGED
@@ -8,7 +8,7 @@
|
|
8
8
|
#include <sge/sge_collision.h>
|
9
9
|
#include <SDL_mixer.h>
|
10
10
|
|
11
|
-
// https://github.com/
|
11
|
+
// https://github.com/ruby/ruby/blob/master/doc/extension.rdoc#c-struct-to-ruby-object-
|
12
12
|
|
13
13
|
#define DEFINE_CLASS_(name, string_name, mark, free, memsize) \
|
14
14
|
static void mark(void*); \
|
@@ -16,7 +16,15 @@
|
|
16
16
|
static VALUE c##name; \
|
17
17
|
static const rb_data_type_t _##name##_type = { \
|
18
18
|
string_name, \
|
19
|
-
{ mark,
|
19
|
+
{ mark, \
|
20
|
+
free, \
|
21
|
+
memsize, \
|
22
|
+
NULL, /* compact */ \
|
23
|
+
{ NULL } \
|
24
|
+
}, \
|
25
|
+
NULL, /* parent */ \
|
26
|
+
NULL, /* data */ \
|
27
|
+
0, /* flags */ \
|
20
28
|
}; \
|
21
29
|
static SDL_##name* ruby_to_##name(VALUE val) { \
|
22
30
|
SDL_##name* ret; \
|
@@ -30,7 +38,8 @@
|
|
30
38
|
_##name##_mark, _##name##_free, _##name##_memsize)
|
31
39
|
|
32
40
|
#define DEFINE_CLASS_0(name, string_name) \
|
33
|
-
DEFINE_CLASS_(name, string_name,
|
41
|
+
DEFINE_CLASS_(name, string_name, \
|
42
|
+
_##name##_mark, _##name##_free, NULL)
|
34
43
|
|
35
44
|
#define DEFINE_SELF(type, var, rb_var) \
|
36
45
|
SDL_##type* var = ruby_to_##type(rb_var)
|
@@ -321,7 +330,7 @@ static VALUE Key_s_press_p(VALUE mod, VALUE keycode_) {
|
|
321
330
|
SDL_Keycode keycode = NUM2INT(keycode_);
|
322
331
|
SDL_Scancode scancode = SDL_GetScancodeFromKey(keycode);
|
323
332
|
|
324
|
-
if (0 >= scancode || scancode >= key_state_len)
|
333
|
+
if (0 >= scancode || scancode >= (SDL_Scancode)key_state_len)
|
325
334
|
rb_raise(eSDLError, "%d (%d) is out of bounds: %d",
|
326
335
|
keycode, scancode, key_state_len);
|
327
336
|
|
@@ -508,6 +517,10 @@ typedef int (*f_rxyxyc)(SDL_Renderer*,
|
|
508
517
|
typedef int (*f_rxyrc)(SDL_Renderer*,
|
509
518
|
Sint16, Sint16, Sint16,
|
510
519
|
Uint32);
|
520
|
+
typedef int (*f_poly)(SDL_Renderer*,
|
521
|
+
const Sint16 *, const Sint16 *,
|
522
|
+
int,
|
523
|
+
Uint32);
|
511
524
|
|
512
525
|
// TODO: ? maybe ?
|
513
526
|
// int hlineColor (SDL_Renderer *renderer, Sint16 x1, Sint16 x2, Sint16 y, Uint32 color)
|
@@ -521,9 +534,7 @@ typedef int (*f_rxyrc)(SDL_Renderer*,
|
|
521
534
|
// int trigonColor (SDL_Renderer *renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Sint16 x3, Sint16 y3, Uint32 color)
|
522
535
|
// int aatrigonColor (SDL_Renderer *renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Sint16 x3, Sint16 y3, Uint32 color)
|
523
536
|
// int filledTrigonColor (SDL_Renderer *renderer, Sint16 x1, Sint16 y1, Sint16 x2, Sint16 y2, Sint16 x3, Sint16 y3, Uint32 color)
|
524
|
-
// int
|
525
|
-
// int aapolygonColor (SDL_Renderer *renderer, const Sint16 *vx, const Sint16 *vy, int n, Uint32 color)
|
526
|
-
// int filledPolygonColor (SDL_Renderer *renderer, const Sint16 *vx, const Sint16 *vy, int n, Uint32 color)
|
537
|
+
// int filledPolygonColor (SDL_Renderer *renderer, const Sint16 *vx, const Sint16 *vy, int n, Uint32 color)
|
527
538
|
// int texturedPolygon (SDL_Renderer *renderer, const Sint16 *vx, const Sint16 *vy, int n, SDL_Surface *texture, int texture_dx, int texture_dy)
|
528
539
|
// void gfxPrimitivesSetFont (const void *fontdata, Uint32 cw, Uint32 ch)
|
529
540
|
// void gfxPrimitivesSetFontRotation(Uint32 rotation)
|
@@ -648,6 +659,46 @@ static VALUE Renderer_draw_line(VALUE self,
|
|
648
659
|
return Qnil;
|
649
660
|
}
|
650
661
|
|
662
|
+
// int polygonColor (SDL_Renderer *renderer, const Sint16 *vx, const Sint16 *vy, int n, Uint32 color)
|
663
|
+
// int aapolygonColor (SDL_Renderer *renderer, const Sint16 *vx, const Sint16 *vy, int n, Uint32 color)
|
664
|
+
|
665
|
+
static f_poly f_polygon[] = { &polygonColor,
|
666
|
+
&aapolygonColor };
|
667
|
+
|
668
|
+
static VALUE Renderer_draw_polygon(VALUE self,
|
669
|
+
VALUE xs_,
|
670
|
+
VALUE ys_,
|
671
|
+
VALUE c,
|
672
|
+
VALUE aa) {
|
673
|
+
DEFINE_SELF(Renderer, renderer, self);
|
674
|
+
|
675
|
+
int xlen = RARRAY_LENINT(xs_);
|
676
|
+
int ylen = RARRAY_LENINT(ys_);
|
677
|
+
|
678
|
+
if (xlen != ylen)
|
679
|
+
rb_raise(rb_eArgError, "xs & ys are different length");
|
680
|
+
|
681
|
+
Sint16 *xs = malloc(xlen*sizeof(Sint16));
|
682
|
+
for (int i = 0; i < xlen; i++) {
|
683
|
+
xs[i] = NUM2SINT16(RARRAY_AREF(xs_, i));
|
684
|
+
}
|
685
|
+
|
686
|
+
Sint16 *ys = malloc(ylen*sizeof(Sint16));
|
687
|
+
for (int i = 0; i < ylen; i++) {
|
688
|
+
ys[i] = NUM2SINT16(RARRAY_AREF(ys_, i));
|
689
|
+
}
|
690
|
+
|
691
|
+
Uint8 idx = IDX1(RTEST(aa));
|
692
|
+
|
693
|
+
if (f_polygon[idx](renderer, xs, ys, xlen, VALUE2COLOR(c)))
|
694
|
+
FAILURE("draw_polygon");
|
695
|
+
|
696
|
+
free(xs);
|
697
|
+
free(ys);
|
698
|
+
|
699
|
+
return Qnil;
|
700
|
+
}
|
701
|
+
|
651
702
|
static f_rxyxyc f_rect[] = { &rectangleColor,
|
652
703
|
&boxColor };
|
653
704
|
|
@@ -1076,17 +1127,17 @@ void Init_sdl() {
|
|
1076
1127
|
mKey = rb_define_module_under(mSDL, "Key");
|
1077
1128
|
mMouse = rb_define_module_under(mSDL, "Mouse");
|
1078
1129
|
|
1079
|
-
cAudio = rb_define_class_under(mSDL, "Audio",
|
1080
|
-
cCollisionMap = rb_define_class_under(mSDL, "CollisionMap",
|
1130
|
+
cAudio = rb_define_class_under(mSDL, "Audio", rb_cObject);
|
1131
|
+
cCollisionMap = rb_define_class_under(mSDL, "CollisionMap", rb_cObject);
|
1081
1132
|
cEvent = rb_define_class_under(mSDL, "Event", rb_cObject);
|
1082
|
-
cPixelFormat = rb_define_class_under(mSDL, "PixelFormat",
|
1083
|
-
cSurface = rb_define_class_under(mSDL, "Surface",
|
1084
|
-
cTTFFont = rb_define_class_under(mSDL, "TTF",
|
1133
|
+
cPixelFormat = rb_define_class_under(mSDL, "PixelFormat", rb_cObject);
|
1134
|
+
cSurface = rb_define_class_under(mSDL, "Surface", rb_cObject);
|
1135
|
+
cTTFFont = rb_define_class_under(mSDL, "TTF", rb_cObject); // TODO: Font
|
1085
1136
|
|
1086
1137
|
cScreen = rb_define_class_under(mSDL, "Screen", cSurface);
|
1087
|
-
cRenderer = rb_define_class_under(mSDL, "Renderer",
|
1088
|
-
cWindow = rb_define_class_under(mSDL, "Window",
|
1089
|
-
cTexture = rb_define_class_under(mSDL, "Texture",
|
1138
|
+
cRenderer = rb_define_class_under(mSDL, "Renderer", rb_cObject);
|
1139
|
+
cWindow = rb_define_class_under(mSDL, "Window", rb_cObject);
|
1140
|
+
cTexture = rb_define_class_under(mSDL, "Texture", rb_cObject);
|
1090
1141
|
|
1091
1142
|
cEventQuit = rb_define_class_under(cEvent, "Quit", cEvent);
|
1092
1143
|
cEventKeydown = rb_define_class_under(cEvent, "Keydown", cEvent);
|
@@ -1098,6 +1149,17 @@ void Init_sdl() {
|
|
1098
1149
|
|
1099
1150
|
eSDLError = rb_define_class_under(mSDL, "Error", rb_eStandardError);
|
1100
1151
|
|
1152
|
+
//// T_DATA cleanup: (mirror DEFINE_CLASS* calls above)
|
1153
|
+
|
1154
|
+
rb_undef_alloc_func(cAudio);
|
1155
|
+
rb_undef_alloc_func(cSurface);
|
1156
|
+
rb_undef_alloc_func(cCollisionMap);
|
1157
|
+
rb_undef_alloc_func(cPixelFormat);
|
1158
|
+
rb_undef_alloc_func(cTTFFont);
|
1159
|
+
rb_undef_alloc_func(cRenderer);
|
1160
|
+
rb_undef_alloc_func(cWindow);
|
1161
|
+
rb_undef_alloc_func(cTexture);
|
1162
|
+
|
1101
1163
|
//// SDL methods:
|
1102
1164
|
|
1103
1165
|
rb_define_module_function(mSDL, "init", sdl_s_init, 1);
|
@@ -1185,6 +1247,7 @@ void Init_sdl() {
|
|
1185
1247
|
rb_define_method(cRenderer, "draw_ellipse", Renderer_draw_ellipse, 7);
|
1186
1248
|
rb_define_method(cRenderer, "draw_line", Renderer_draw_line, 6);
|
1187
1249
|
rb_define_method(cRenderer, "draw_rect", Renderer_draw_rect, 6);
|
1250
|
+
rb_define_method(cRenderer, "draw_polygon", Renderer_draw_polygon, 4);
|
1188
1251
|
rb_define_method(cRenderer, "fast_rect", Renderer_fast_rect, 5);
|
1189
1252
|
rb_define_method(cRenderer, "h", Renderer_h, 0);
|
1190
1253
|
rb_define_method(cRenderer, "new_texture", Renderer_new_texture, 0);
|
data/graphics_setup.sh
CHANGED
@@ -2,39 +2,48 @@
|
|
2
2
|
|
3
3
|
set -v
|
4
4
|
|
5
|
-
case
|
5
|
+
case "$(uname -s)" in
|
6
6
|
Darwin)
|
7
|
-
|
8
|
-
|
7
|
+
if command -v brew >/dev/null; then
|
8
|
+
echo "Detected macOS. Installing dependencies with brew."
|
9
|
+
sudo=""
|
9
10
|
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
11
|
+
brew install sdl2
|
12
|
+
brew install sdl2_mixer
|
13
|
+
brew install sdl2_ttf
|
14
|
+
brew install sdl2_image
|
15
|
+
brew install sdl2_gfx
|
16
|
+
else
|
17
|
+
echo "Detected macOS but not brew. Install Homebrew and try again."
|
18
|
+
exit 1
|
19
|
+
fi
|
15
20
|
;;
|
16
21
|
Linux)
|
17
|
-
|
18
|
-
|
22
|
+
if command -v apt >/dev/null; then
|
23
|
+
echo "Detected Linux. Installing dependencies with apt."
|
24
|
+
sudo="sudo"
|
19
25
|
|
20
|
-
|
21
|
-
|
26
|
+
$sudo apt-get install --no-install-recommends --no-install-suggests libsdl1.2-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-ttf2.0-dev gcc g++
|
27
|
+
else
|
28
|
+
echo "Detected macOS but not apt. Install sdl2 with your package manager."
|
29
|
+
exit 1
|
30
|
+
fi
|
31
|
+
;;
|
22
32
|
*)
|
23
|
-
|
24
|
-
|
33
|
+
echo "Dependency installation not supported for your OS. Install sdl2 with your package manager."
|
34
|
+
exit 1
|
25
35
|
;;
|
26
36
|
esac
|
27
37
|
|
28
|
-
if [ -f $0 ]; then
|
29
|
-
$
|
30
|
-
$
|
31
|
-
$SUDO rake newb
|
38
|
+
if [ -f "$0" ]; then
|
39
|
+
$sudo gem install hoe --conservative
|
40
|
+
$sudo rake newb
|
32
41
|
rake test
|
33
42
|
rake clean package
|
34
|
-
$
|
43
|
+
$sudo gem install pkg/graphics*.gem
|
35
44
|
else
|
36
|
-
$
|
45
|
+
$sudo gem install graphics
|
37
46
|
fi
|
38
47
|
|
39
|
-
echo "
|
48
|
+
echo "Running a graphics test... You should see a window appear."
|
40
49
|
ruby -Ilib -rgraphics -e 'Class.new(Graphics::Simulation) { def draw n; clear :white; text "hit escape to quit", 100, 100, :black; end; }.new(500, 250, "Working!").run'
|
data/lib/graphics/simulation.rb
CHANGED
@@ -206,7 +206,7 @@ class Graphics::AbstractSimulation
|
|
206
206
|
File.expand_path("~/Library/Fonts/"),
|
207
207
|
|
208
208
|
# Ubuntu
|
209
|
-
"/usr/share/fonts
|
209
|
+
"/usr/share/fonts/**/",
|
210
210
|
]
|
211
211
|
FONT_GLOB = "{#{font_dirs.join(",")}}" # :nodoc:
|
212
212
|
|
@@ -497,11 +497,14 @@ class Graphics::AbstractSimulation
|
|
497
497
|
# Draw a closed form polygon from an array of points in a particular
|
498
498
|
# color.
|
499
499
|
|
500
|
-
def polygon
|
500
|
+
def polygon points, c
|
501
|
+
return unless points.size > 1
|
502
|
+
|
501
503
|
points << points.first
|
502
|
-
|
503
|
-
|
504
|
-
|
504
|
+
|
505
|
+
xs, ys = points.transpose
|
506
|
+
|
507
|
+
renderer.draw_polygon xs, ys.map { |y| h-y-1 }, c, :aa
|
505
508
|
end
|
506
509
|
|
507
510
|
##
|
data/lib/graphics.rb
CHANGED
data.tar.gz.sig
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,18 +1,18 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: graphics
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ryan Davis
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain:
|
11
11
|
- |
|
12
12
|
-----BEGIN CERTIFICATE-----
|
13
|
-
|
13
|
+
MIIDPjCCAiagAwIBAgIBCDANBgkqhkiG9w0BAQsFADBFMRMwEQYDVQQDDApyeWFu
|
14
14
|
ZC1ydWJ5MRkwFwYKCZImiZPyLGQBGRYJemVuc3BpZGVyMRMwEQYKCZImiZPyLGQB
|
15
|
-
|
15
|
+
GRYDY29tMB4XDTI0MDEwMjIxMjEyM1oXDTI1MDEwMTIxMjEyM1owRTETMBEGA1UE
|
16
16
|
AwwKcnlhbmQtcnVieTEZMBcGCgmSJomT8ixkARkWCXplbnNwaWRlcjETMBEGCgmS
|
17
17
|
JomT8ixkARkWA2NvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALda
|
18
18
|
b9DCgK+627gPJkB6XfjZ1itoOQvpqH1EXScSaba9/S2VF22VYQbXU1xQXL/WzCkx
|
@@ -21,15 +21,15 @@ cert_chain:
|
|
21
21
|
GiadM9GHRaDiaxuX0cIUBj19T01mVE2iymf9I6bEsiayK/n6QujtyCbTWsAS9Rqt
|
22
22
|
qhtV7HJxNKuPj/JFH0D2cswvzznE/a5FOYO68g+YCuFi5L8wZuuM8zzdwjrWHqSV
|
23
23
|
gBEfoTEGr7Zii72cx+sCAwEAAaM5MDcwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAw
|
24
|
-
HQYDVR0OBBYEFEfFe9md/r/tj/Wmwpy+MI8d9k/
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
24
|
+
HQYDVR0OBBYEFEfFe9md/r/tj/Wmwpy+MI8d9k/hMA0GCSqGSIb3DQEBCwUAA4IB
|
25
|
+
AQCygvpmncmkiSs9r/Kceo4bBPDszhTv6iBi4LwMReqnFrpNLMOWJw7xi8x+3eL2
|
26
|
+
XS09ZPNOt2zm70KmFouBMgOysnDY4k2dE8uF6B8JbZOO8QfalW+CoNBliefOTcn2
|
27
|
+
bg5IOP7UoGM5lC174/cbDJrJnRG9bzig5FAP0mvsgA8zgTRXQzIUAZEo92D5K7p4
|
28
|
+
B4/O998ho6BSOgYBI9Yk1ttdCtti6Y+8N9+fZESsjtWMykA+WXWeGUScHqiU+gH8
|
29
|
+
S7043fq9EbQdBr2AXdj92+CDwuTfHI6/Hj5FVBDULufrJaan4xUgL70Hvc6pTTeW
|
30
|
+
deKfBjgVAq7EYHu1AczzlUly
|
31
31
|
-----END CERTIFICATE-----
|
32
|
-
date:
|
32
|
+
date: 2024-08-27 00:00:00.000000000 Z
|
33
33
|
dependencies:
|
34
34
|
- !ruby/object:Gem::Dependency
|
35
35
|
name: rdoc
|
@@ -71,14 +71,14 @@ dependencies:
|
|
71
71
|
requirements:
|
72
72
|
- - "~>"
|
73
73
|
- !ruby/object:Gem::Version
|
74
|
-
version: '
|
74
|
+
version: '4.2'
|
75
75
|
type: :development
|
76
76
|
prerelease: false
|
77
77
|
version_requirements: !ruby/object:Gem::Requirement
|
78
78
|
requirements:
|
79
79
|
- - "~>"
|
80
80
|
- !ruby/object:Gem::Version
|
81
|
-
version: '
|
81
|
+
version: '4.2'
|
82
82
|
description: |-
|
83
83
|
Graphics provides a simple framework to implement games and/or
|
84
84
|
simulations and is designed to follow mathematical conventions, NOT
|
@@ -179,11 +179,12 @@ files:
|
|
179
179
|
- test/test_graphics.rb
|
180
180
|
- test/test_rainbows.rb
|
181
181
|
- test/test_sdl.rb
|
182
|
-
homepage: https://github.com/
|
182
|
+
homepage: https://github.com/seattlerb/graphics
|
183
183
|
licenses:
|
184
184
|
- MIT
|
185
|
-
metadata:
|
186
|
-
|
185
|
+
metadata:
|
186
|
+
homepage_uri: https://github.com/seattlerb/graphics
|
187
|
+
post_install_message:
|
187
188
|
rdoc_options:
|
188
189
|
- "--main"
|
189
190
|
- README.rdoc
|
@@ -193,16 +194,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
193
194
|
requirements:
|
194
195
|
- - ">="
|
195
196
|
- !ruby/object:Gem::Version
|
196
|
-
version: '
|
197
|
+
version: '2.7'
|
197
198
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
198
199
|
requirements:
|
199
200
|
- - ">="
|
200
201
|
- !ruby/object:Gem::Version
|
201
202
|
version: '0'
|
202
203
|
requirements: []
|
203
|
-
|
204
|
-
|
205
|
-
signing_key:
|
204
|
+
rubygems_version: 3.5.15
|
205
|
+
signing_key:
|
206
206
|
specification_version: 4
|
207
207
|
summary: Graphics provides a simple framework to implement games and/or simulations
|
208
208
|
and is designed to follow mathematical conventions, NOT game programming conventions
|
metadata.gz.sig
CHANGED
@@ -1,2 +1 @@
|
|
1
|
-
�
|
2
|
-
}��(5cR�
|
1
|
+
�9�f:�>�uD��H�r�Ul�k�Y��+j 7�;ȥ����h� ��$
|