rays 0.1.29 → 0.1.31
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.doc/ext/rays/bitmap.cpp +1 -1
- data/.doc/ext/rays/bounds.cpp +1 -1
- data/.doc/ext/rays/camera.cpp +1 -1
- data/.doc/ext/rays/color.cpp +1 -1
- data/.doc/ext/rays/color_space.cpp +1 -1
- data/.doc/ext/rays/exception.cpp +1 -1
- data/.doc/ext/rays/font.cpp +1 -1
- data/.doc/ext/rays/image.cpp +1 -1
- data/.doc/ext/rays/matrix.cpp +1 -1
- data/.doc/ext/rays/native.cpp +35 -35
- data/.doc/ext/rays/noise.cpp +1 -1
- data/.doc/ext/rays/painter.cpp +1 -1
- data/.doc/ext/rays/point.cpp +1 -1
- data/.doc/ext/rays/polygon.cpp +1 -1
- data/.doc/ext/rays/polygon_line.cpp +1 -1
- data/.doc/ext/rays/polyline.cpp +1 -1
- data/.doc/ext/rays/shader.cpp +1 -1
- data/.github/workflows/release.yml +34 -0
- data/.github/workflows/tag.yml +35 -0
- data/.github/workflows/test.yml +32 -0
- data/.github/workflows/utils.rb +47 -0
- data/ChangeLog.md +20 -0
- data/Rakefile +4 -4
- data/VERSION +1 -1
- data/ext/rays/bitmap.cpp +1 -1
- data/ext/rays/bounds.cpp +1 -1
- data/ext/rays/camera.cpp +1 -1
- data/ext/rays/color.cpp +1 -1
- data/ext/rays/color_space.cpp +1 -1
- data/ext/rays/exception.cpp +1 -1
- data/ext/rays/extconf.rb +4 -4
- data/ext/rays/font.cpp +1 -1
- data/ext/rays/image.cpp +1 -1
- data/ext/rays/matrix.cpp +1 -1
- data/ext/rays/native.cpp +35 -35
- data/ext/rays/noise.cpp +1 -1
- data/ext/rays/painter.cpp +1 -1
- data/ext/rays/point.cpp +1 -1
- data/ext/rays/polygon.cpp +1 -1
- data/ext/rays/polygon_line.cpp +1 -1
- data/ext/rays/polyline.cpp +1 -1
- data/ext/rays/shader.cpp +1 -1
- data/lib/rays/{module.rb → extension.rb} +3 -3
- data/lib/rays.rb +1 -1
- data/rays.gemspec +11 -8
- data/src/opengl.cpp +2 -3
- data/src/painter.cpp +53 -91
- data/src/shader.cpp +4 -4
- data/src/texture.cpp +11 -6
- data/test/helper.rb +1 -1
- metadata +42 -9
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 958a334c5a26f773a1b99706103f104d1196d5e808721b89f8aa887641f65f00
|
4
|
+
data.tar.gz: 4f63633edea9768657373a2b59323b11f2b3ab07632bf192a60ab83db42fd480
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 749bf2ccb3d4b142e2ac4ef2531716f63632680cc44014b4e880abad0ed93ce6b9ce764bce040b53f10b4957927777ed009d9d2043e7d92b5d91bd939df975bf
|
7
|
+
data.tar.gz: 150864fbee3311eec9c0c023cb1b6054af1cbadaabd5a5ffc6b867d72c5b628f4803dee02bbbd9e61e1f5df8e9785c0cb5d090e967b24f5e66405b53452a6ad1
|
data/.doc/ext/rays/bitmap.cpp
CHANGED
data/.doc/ext/rays/bounds.cpp
CHANGED
data/.doc/ext/rays/camera.cpp
CHANGED
data/.doc/ext/rays/color.cpp
CHANGED
data/.doc/ext/rays/exception.cpp
CHANGED
data/.doc/ext/rays/font.cpp
CHANGED
data/.doc/ext/rays/image.cpp
CHANGED
data/.doc/ext/rays/matrix.cpp
CHANGED
data/.doc/ext/rays/native.cpp
CHANGED
@@ -2,25 +2,25 @@
|
|
2
2
|
|
3
3
|
|
4
4
|
void Init_rays ();
|
5
|
-
void
|
5
|
+
void Init_rays_exception ();
|
6
6
|
|
7
|
-
void
|
8
|
-
void
|
9
|
-
void
|
10
|
-
void
|
11
|
-
void
|
7
|
+
void Init_rays_point ();
|
8
|
+
void Init_rays_bounds ();
|
9
|
+
void Init_rays_color ();
|
10
|
+
void Init_rays_color_space ();
|
11
|
+
void Init_rays_matrix ();
|
12
12
|
|
13
|
-
void
|
14
|
-
void
|
15
|
-
void
|
16
|
-
void
|
17
|
-
void
|
18
|
-
void
|
19
|
-
void
|
20
|
-
void
|
21
|
-
void
|
13
|
+
void Init_rays_painter ();
|
14
|
+
void Init_rays_polyline ();
|
15
|
+
void Init_rays_polygon_line ();
|
16
|
+
void Init_rays_polygon ();
|
17
|
+
void Init_rays_bitmap ();
|
18
|
+
void Init_rays_image ();
|
19
|
+
void Init_rays_font ();
|
20
|
+
void Init_rays_shader ();
|
21
|
+
void Init_rays_camera ();
|
22
22
|
|
23
|
-
void
|
23
|
+
void Init_rays_noise ();
|
24
24
|
|
25
25
|
|
26
26
|
extern "C" void
|
@@ -35,25 +35,25 @@ extern "C" void
|
|
35
35
|
Rucy::init();
|
36
36
|
|
37
37
|
Init_rays();
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
38
|
+
Init_rays_exception();
|
39
|
+
|
40
|
+
Init_rays_point();
|
41
|
+
Init_rays_bounds();
|
42
|
+
Init_rays_color();
|
43
|
+
Init_rays_color_space();
|
44
|
+
Init_rays_matrix();
|
45
|
+
|
46
|
+
Init_rays_painter();
|
47
|
+
Init_rays_polyline();
|
48
|
+
Init_rays_polygon_line();
|
49
|
+
Init_rays_polygon();
|
50
|
+
Init_rays_bitmap();
|
51
|
+
Init_rays_image();
|
52
|
+
Init_rays_font();
|
53
|
+
Init_rays_shader();
|
54
|
+
Init_rays_camera();
|
55
|
+
|
56
|
+
Init_rays_noise();
|
57
57
|
|
58
58
|
RUCY_CATCH
|
59
59
|
}
|
data/.doc/ext/rays/noise.cpp
CHANGED
data/.doc/ext/rays/painter.cpp
CHANGED
data/.doc/ext/rays/point.cpp
CHANGED
data/.doc/ext/rays/polygon.cpp
CHANGED
data/.doc/ext/rays/polyline.cpp
CHANGED
data/.doc/ext/rays/shader.cpp
CHANGED
@@ -0,0 +1,34 @@
|
|
1
|
+
name: Release
|
2
|
+
|
3
|
+
on:
|
4
|
+
push:
|
5
|
+
tags: ['v[0-9]*']
|
6
|
+
|
7
|
+
jobs:
|
8
|
+
release:
|
9
|
+
runs-on: macos-latest
|
10
|
+
|
11
|
+
steps:
|
12
|
+
- name: ruby 3.2
|
13
|
+
uses: ruby/setup-ruby@v1
|
14
|
+
with:
|
15
|
+
ruby-version: 3.2
|
16
|
+
|
17
|
+
- name: checkout
|
18
|
+
uses: actions/checkout@v2
|
19
|
+
|
20
|
+
- name: setup dependencies
|
21
|
+
run: "ruby -I.github/workflows -rutils -e 'setup_dependencies'"
|
22
|
+
|
23
|
+
- name: test
|
24
|
+
run: rake test
|
25
|
+
|
26
|
+
- name: upload to rubygems
|
27
|
+
env:
|
28
|
+
GEM_HOST_API_KEY: ${{ secrets.RUBYGEMS_AUTH_TOKEN }}
|
29
|
+
run: |
|
30
|
+
mkdir -p $HOME/.gem
|
31
|
+
touch $HOME/.gem/credentials
|
32
|
+
chmod 0600 $HOME/.gem/credentials
|
33
|
+
printf -- "---\n:rubygems_api_key: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
|
34
|
+
rake upload
|
@@ -0,0 +1,35 @@
|
|
1
|
+
name: Tag
|
2
|
+
|
3
|
+
on:
|
4
|
+
push:
|
5
|
+
branches: [master]
|
6
|
+
|
7
|
+
jobs:
|
8
|
+
tag:
|
9
|
+
runs-on: ubuntu-latest
|
10
|
+
|
11
|
+
steps:
|
12
|
+
- name: ruby 3.2
|
13
|
+
uses: ruby/setup-ruby@v1
|
14
|
+
with:
|
15
|
+
ruby-version: 3.2
|
16
|
+
|
17
|
+
- name: checkout
|
18
|
+
uses: actions/checkout@v2
|
19
|
+
with:
|
20
|
+
fetch-depth: 0
|
21
|
+
token: ${{ secrets.PAT }}
|
22
|
+
|
23
|
+
- name: setup dependencies
|
24
|
+
run: "ruby -I.github/workflows -rutils -e 'setup_dependencies only: :xot'"
|
25
|
+
|
26
|
+
- name: setup user name and email
|
27
|
+
run: |
|
28
|
+
git config --global user.email "xordog@gmail.com"
|
29
|
+
git config --global user.name "xord"
|
30
|
+
|
31
|
+
- name: tag versions
|
32
|
+
run: "ruby -I.github/workflows -rutils -e 'tag_versions'"
|
33
|
+
|
34
|
+
- name: push tags
|
35
|
+
run: git push origin --tags
|
@@ -0,0 +1,32 @@
|
|
1
|
+
name: Test
|
2
|
+
|
3
|
+
on:
|
4
|
+
push:
|
5
|
+
branches: [master]
|
6
|
+
pull_request:
|
7
|
+
branches: [master]
|
8
|
+
|
9
|
+
jobs:
|
10
|
+
test:
|
11
|
+
runs-on: macos-latest
|
12
|
+
|
13
|
+
steps:
|
14
|
+
- name: ruby 3.2
|
15
|
+
uses: ruby/setup-ruby@v1
|
16
|
+
with:
|
17
|
+
ruby-version: 3.2
|
18
|
+
|
19
|
+
- name: checkout
|
20
|
+
uses: actions/checkout@v2
|
21
|
+
|
22
|
+
- name: setup dependencies
|
23
|
+
run: "ruby -I.github/workflows -rutils -e 'setup_dependencies'"
|
24
|
+
|
25
|
+
- name: lib
|
26
|
+
run: rake lib
|
27
|
+
|
28
|
+
- name: ext
|
29
|
+
run: rake ext
|
30
|
+
|
31
|
+
- name: test
|
32
|
+
run: rake test
|
@@ -0,0 +1,47 @@
|
|
1
|
+
def sh(cmd)
|
2
|
+
puts cmd
|
3
|
+
system cmd
|
4
|
+
end
|
5
|
+
|
6
|
+
def setup_dependencies(build: true, only: nil)
|
7
|
+
gemspec_path = `git ls-files`.lines(chomp: true).find {|l| l =~ /\.gemspec$/}
|
8
|
+
gemspec = File.read gemspec_path
|
9
|
+
name = File.basename gemspec_path, '.gemspec'
|
10
|
+
|
11
|
+
exts = File.readlines('Rakefile')
|
12
|
+
.map {|l| l[%r|^\s*require\W+(\w+)/extension\W+$|, 1]}
|
13
|
+
.compact
|
14
|
+
.reject {|ext| ext == name}
|
15
|
+
exts = exts & [only].flatten.map(&:to_s) if only
|
16
|
+
|
17
|
+
exts.each do |ext|
|
18
|
+
ver = gemspec[/add_runtime_dependency.*'#{ext}'.*'\s*~>\s*([\d\.]+)\s*'/, 1]
|
19
|
+
url = "https://github.com/xord/#{ext}.git"
|
20
|
+
sh %( git clone --depth 1 --branch v#{ver} #{url} ../#{ext} )
|
21
|
+
sh %( cd ../#{ext} && rake ext )
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
def tag_versions()
|
26
|
+
tags = `git tag`.lines chomp: true
|
27
|
+
vers = `git log --oneline ./VERSION`
|
28
|
+
.lines(chomp: true)
|
29
|
+
.map {|line| line.split.first[/^\w+$/]}
|
30
|
+
.map {|hash| [`git cat-file -p #{hash}:./VERSION 2>/dev/null`[/[\d\.]+/], hash]}
|
31
|
+
.select {|ver, hash| ver && hash}
|
32
|
+
.reverse
|
33
|
+
.to_h
|
34
|
+
|
35
|
+
changes = File.read('ChangeLog.md')
|
36
|
+
.split(/^\s*##\s*\[\s*v([\d\.]+)\s*\].*$/)
|
37
|
+
.slice(1..-1)
|
38
|
+
.each_slice(2)
|
39
|
+
.to_h
|
40
|
+
.transform_values(&:strip!)
|
41
|
+
|
42
|
+
vers.to_a.reverse.each do |ver, hash|
|
43
|
+
tag = "v#{ver}"
|
44
|
+
break if tags.include?(tag)
|
45
|
+
sh %( git tag -a -m \"#{changes[ver]&.gsub '"', '\\"'}\" #{tag} #{hash} )
|
46
|
+
end
|
47
|
+
end
|
data/ChangeLog.md
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
# rays ChangeLog
|
2
|
+
|
3
|
+
|
4
|
+
## [v0.1.31] - 2023-02-27
|
5
|
+
|
6
|
+
- add ChangeLog.md file
|
7
|
+
- add test.yml, tag.yaml, and release.yml
|
8
|
+
- requires ruby 2.7.0 or later
|
9
|
+
|
10
|
+
|
11
|
+
## [v0.1.30] - 2023-02-09
|
12
|
+
|
13
|
+
- default precision: mediump -> highp
|
14
|
+
- do not use buffer object to draw on iOS
|
15
|
+
- fix conflicting rays's Init_exception() and others Init_exception()
|
16
|
+
- disable non-power-of-two texture by default
|
17
|
+
- restore premultiplied rgb values of the font texture on iOS
|
18
|
+
- fix buffer leak
|
19
|
+
- fix compile errors on building for iOS
|
20
|
+
- refactoring
|
data/Rakefile
CHANGED
@@ -7,12 +7,12 @@
|
|
7
7
|
|
8
8
|
require 'rucy/rake'
|
9
9
|
|
10
|
-
require 'xot/
|
11
|
-
require 'rucy/
|
12
|
-
require 'rays/
|
10
|
+
require 'xot/extension'
|
11
|
+
require 'rucy/extension'
|
12
|
+
require 'rays/extension'
|
13
13
|
|
14
14
|
|
15
|
-
|
15
|
+
EXTENSIONS = [Xot, Rucy, Rays]
|
16
16
|
TESTS_ALONE = ['test/test_rays.rb']
|
17
17
|
|
18
18
|
use_external_library 'https://github.com/g-truc/glm',
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.1.
|
1
|
+
0.1.31
|
data/ext/rays/bitmap.cpp
CHANGED
data/ext/rays/bounds.cpp
CHANGED
data/ext/rays/camera.cpp
CHANGED
data/ext/rays/color.cpp
CHANGED
data/ext/rays/color_space.cpp
CHANGED
data/ext/rays/exception.cpp
CHANGED
data/ext/rays/extconf.rb
CHANGED
@@ -2,14 +2,14 @@
|
|
2
2
|
|
3
3
|
|
4
4
|
%w[../xot ../rucy .]
|
5
|
-
.map {|s| File.expand_path "
|
5
|
+
.map {|s| File.expand_path "../../#{s}/lib", __dir__}
|
6
6
|
.each {|s| $:.unshift s if !$:.include?(s) && File.directory?(s)}
|
7
7
|
|
8
8
|
require 'mkmf'
|
9
9
|
require 'xot/extconf'
|
10
|
-
require 'xot/
|
11
|
-
require 'rucy/
|
12
|
-
require 'rays/
|
10
|
+
require 'xot/extension'
|
11
|
+
require 'rucy/extension'
|
12
|
+
require 'rays/extension'
|
13
13
|
|
14
14
|
|
15
15
|
Xot::ExtConf.new Xot, Rucy, Rays do
|
data/ext/rays/font.cpp
CHANGED
data/ext/rays/image.cpp
CHANGED
data/ext/rays/matrix.cpp
CHANGED
data/ext/rays/native.cpp
CHANGED
@@ -2,25 +2,25 @@
|
|
2
2
|
|
3
3
|
|
4
4
|
void Init_rays ();
|
5
|
-
void
|
5
|
+
void Init_rays_exception ();
|
6
6
|
|
7
|
-
void
|
8
|
-
void
|
9
|
-
void
|
10
|
-
void
|
11
|
-
void
|
7
|
+
void Init_rays_point ();
|
8
|
+
void Init_rays_bounds ();
|
9
|
+
void Init_rays_color ();
|
10
|
+
void Init_rays_color_space ();
|
11
|
+
void Init_rays_matrix ();
|
12
12
|
|
13
|
-
void
|
14
|
-
void
|
15
|
-
void
|
16
|
-
void
|
17
|
-
void
|
18
|
-
void
|
19
|
-
void
|
20
|
-
void
|
21
|
-
void
|
13
|
+
void Init_rays_painter ();
|
14
|
+
void Init_rays_polyline ();
|
15
|
+
void Init_rays_polygon_line ();
|
16
|
+
void Init_rays_polygon ();
|
17
|
+
void Init_rays_bitmap ();
|
18
|
+
void Init_rays_image ();
|
19
|
+
void Init_rays_font ();
|
20
|
+
void Init_rays_shader ();
|
21
|
+
void Init_rays_camera ();
|
22
22
|
|
23
|
-
void
|
23
|
+
void Init_rays_noise ();
|
24
24
|
|
25
25
|
|
26
26
|
extern "C" void
|
@@ -35,25 +35,25 @@ extern "C" void
|
|
35
35
|
Rucy::init();
|
36
36
|
|
37
37
|
Init_rays();
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
38
|
+
Init_rays_exception();
|
39
|
+
|
40
|
+
Init_rays_point();
|
41
|
+
Init_rays_bounds();
|
42
|
+
Init_rays_color();
|
43
|
+
Init_rays_color_space();
|
44
|
+
Init_rays_matrix();
|
45
|
+
|
46
|
+
Init_rays_painter();
|
47
|
+
Init_rays_polyline();
|
48
|
+
Init_rays_polygon_line();
|
49
|
+
Init_rays_polygon();
|
50
|
+
Init_rays_bitmap();
|
51
|
+
Init_rays_image();
|
52
|
+
Init_rays_font();
|
53
|
+
Init_rays_shader();
|
54
|
+
Init_rays_camera();
|
55
|
+
|
56
|
+
Init_rays_noise();
|
57
57
|
|
58
58
|
RUCY_CATCH
|
59
59
|
}
|