raysetta 0.1.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 +7 -0
- data/LICENSE.txt +21 -0
- data/README.md +72 -0
- data/Rakefile +8 -0
- data/Steepfile +15 -0
- data/exe/raysetta +3 -0
- data/lib/raysetta/aabb.rb +116 -0
- data/lib/raysetta/background/base.rb +19 -0
- data/lib/raysetta/background/cube_map.rb +44 -0
- data/lib/raysetta/background/gradient.rb +28 -0
- data/lib/raysetta/background/solid.rb +24 -0
- data/lib/raysetta/background/sphere_map.rb +30 -0
- data/lib/raysetta/camera.rb +109 -0
- data/lib/raysetta/entity_base.rb +28 -0
- data/lib/raysetta/exe.rb +75 -0
- data/lib/raysetta/hit.rb +38 -0
- data/lib/raysetta/image.rb +46 -0
- data/lib/raysetta/interval.rb +63 -0
- data/lib/raysetta/material/base.rb +19 -0
- data/lib/raysetta/material/dielectric.rb +60 -0
- data/lib/raysetta/material/diffuse_light.rb +42 -0
- data/lib/raysetta/material/lambertian.rb +48 -0
- data/lib/raysetta/material/metal.rb +49 -0
- data/lib/raysetta/object/base.rb +23 -0
- data/lib/raysetta/object/box.rb +50 -0
- data/lib/raysetta/object/bvh.rb +81 -0
- data/lib/raysetta/object/group.rb +59 -0
- data/lib/raysetta/object/moving_sphere.rb +41 -0
- data/lib/raysetta/object/quad.rb +88 -0
- data/lib/raysetta/object/sphere.rb +68 -0
- data/lib/raysetta/object/tri.rb +46 -0
- data/lib/raysetta/output/base.rb +23 -0
- data/lib/raysetta/output/png.rb +26 -0
- data/lib/raysetta/output/ppm.rb +19 -0
- data/lib/raysetta/perlin.rb +91 -0
- data/lib/raysetta/ray.rb +28 -0
- data/lib/raysetta/runner/base.rb +28 -0
- data/lib/raysetta/runner/concurrent.rb +17 -0
- data/lib/raysetta/runner/processes.rb +26 -0
- data/lib/raysetta/runner/ractors.rb +32 -0
- data/lib/raysetta/runner/sync.rb +28 -0
- data/lib/raysetta/runner/threads.rb +26 -0
- data/lib/raysetta/runner.rb +45 -0
- data/lib/raysetta/scatter.rb +12 -0
- data/lib/raysetta/scene.rb +205 -0
- data/lib/raysetta/texture/base.rb +19 -0
- data/lib/raysetta/texture/checker.rb +55 -0
- data/lib/raysetta/texture/image.rb +57 -0
- data/lib/raysetta/texture/noise.rb +46 -0
- data/lib/raysetta/texture/solid_color.rb +36 -0
- data/lib/raysetta/tracer.rb +43 -0
- data/lib/raysetta/util.rb +38 -0
- data/lib/raysetta/vec2.rb +125 -0
- data/lib/raysetta/vec3.rb +214 -0
- data/lib/raysetta/version.rb +5 -0
- data/lib/raysetta.rb +44 -0
- data/mise.toml +2 -0
- data/scenes/box.json +26 -0
- data/scenes/cornell.json +108 -0
- data/scenes/cubemap.json +109 -0
- data/scenes/dumb.json +58 -0
- data/scenes/earth.json +79 -0
- data/scenes/example.json +11712 -0
- data/scenes/perlin.json +2126 -0
- data/scenes/quads.json +38 -0
- data/scenes/simple_light.json +2126 -0
- data/scenes/testcube.json +113 -0
- data/sig/raysetta/aabb.rbs +39 -0
- data/sig/raysetta/background/base.rbs +11 -0
- data/sig/raysetta/background/cube_map.rbs +9 -0
- data/sig/raysetta/background/gradient.rbs +10 -0
- data/sig/raysetta/background/solid.rbs +9 -0
- data/sig/raysetta/background/sphere_map.rbs +9 -0
- data/sig/raysetta/camera.rbs +41 -0
- data/sig/raysetta/entity_base.rbs +12 -0
- data/sig/raysetta/hit.rbs +21 -0
- data/sig/raysetta/image.rbs +13 -0
- data/sig/raysetta/interval.rbs +36 -0
- data/sig/raysetta/material/base.rbs +11 -0
- data/sig/raysetta/material/dielectric.rbs +15 -0
- data/sig/raysetta/material/diffuse_light.rbs +12 -0
- data/sig/raysetta/material/lambertian.rbs +10 -0
- data/sig/raysetta/material/metal.rbs +11 -0
- data/sig/raysetta/object/base.rbs +15 -0
- data/sig/raysetta/object/box.rbs +13 -0
- data/sig/raysetta/object/bvh.rbs +23 -0
- data/sig/raysetta/object/group.rbs +16 -0
- data/sig/raysetta/object/moving_sphere.rbs +15 -0
- data/sig/raysetta/object/quad.rbs +26 -0
- data/sig/raysetta/object/sphere.rbs +14 -0
- data/sig/raysetta/object/tri.rbs +15 -0
- data/sig/raysetta/output/base.rbs +15 -0
- data/sig/raysetta/output/png.rbs +8 -0
- data/sig/raysetta/output/ppm.rbs +7 -0
- data/sig/raysetta/perlin.rbs +19 -0
- data/sig/raysetta/ray.rbs +18 -0
- data/sig/raysetta/runner/base.rbs +15 -0
- data/sig/raysetta/runner/concurrent.rbs +10 -0
- data/sig/raysetta/runner/processes.rbs +9 -0
- data/sig/raysetta/runner/ractors.rbs +11 -0
- data/sig/raysetta/runner/sync.rbs +11 -0
- data/sig/raysetta/runner/threads.rbs +9 -0
- data/sig/raysetta/runner.rbs +5 -0
- data/sig/raysetta/scatter.rbs +8 -0
- data/sig/raysetta/scene.rbs +69 -0
- data/sig/raysetta/texture/base.rbs +11 -0
- data/sig/raysetta/texture/checker.rbs +15 -0
- data/sig/raysetta/texture/image.rbs +11 -0
- data/sig/raysetta/texture/noise.rbs +13 -0
- data/sig/raysetta/texture/solid_color.rbs +10 -0
- data/sig/raysetta/tracer.rbs +16 -0
- data/sig/raysetta/util.rbs +15 -0
- data/sig/raysetta/vec2.rbs +48 -0
- data/sig/raysetta/vec3.rbs +67 -0
- data/sig/raysetta.rbs +6 -0
- data/sig/stdlib/chunky_png.rbs +24 -0
- data/sig/stdlib/etc.rbs +3 -0
- data/sig/stdlib/json.rbs +3 -0
- data/sig/stdlib/optparse.rbs +4 -0
- data/sig/stdlib/parallel.rbs +5 -0
- data/sig/stdlib/progress.rbs +5 -0
- metadata +206 -0
data/scenes/quads.json
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
{
|
|
2
|
+
"world": {
|
|
3
|
+
"left": { "type": "Tri", "a": [-3.0, -2.0, 5.0], "b": [-3.0, -2.0, 1.0], "c": [-3.0, 2.0, 5.0], "material": "left_red" },
|
|
4
|
+
"back": { "type": "Quad", "q": [-2.0, -2.0, 0.0], "u": [4.0, 0.0, 0.0], "v": [0.0, 4.0, 0.0], "material": "back_green" },
|
|
5
|
+
"right": { "type": "Quad", "q": [ 3.0, -2.0, 1.0], "u": [0.0, 0.0, 4.0], "v": [0.0, 4.0, 0.0], "material": "right_blue" },
|
|
6
|
+
"upper": { "type": "Quad", "q": [-2.0, 3.0, 1.0], "u": [4.0, 0.0, 0.0], "v": [0.0, 0.0, 4.0], "material": "upper_orange" },
|
|
7
|
+
"lower": { "type": "Quad", "q": [-2.0, -3.0, 5.0], "u": [4.0, 0.0, 0.0], "v": [0.0, 0.0, -4.0], "material": "lower_teal" }
|
|
8
|
+
},
|
|
9
|
+
"materials": {
|
|
10
|
+
"left_red": { "type": "Lambertian", "texture": "left_red" },
|
|
11
|
+
"back_green": { "type": "Lambertian", "texture": "back_green" },
|
|
12
|
+
"right_blue": { "type": "Lambertian", "texture": "right_blue" },
|
|
13
|
+
"upper_orange": { "type": "Lambertian", "texture": "upper_orange" },
|
|
14
|
+
"lower_teal": { "type": "Lambertian", "texture": "lower_teal" }
|
|
15
|
+
},
|
|
16
|
+
"textures": {
|
|
17
|
+
"left_red": { "type": "SolidColor", "albedo": [1.0, 0.2, 0.2] },
|
|
18
|
+
"back_green": { "type": "SolidColor", "albedo": [0.2, 1.0, 0.2] },
|
|
19
|
+
"right_blue": { "type": "SolidColor", "albedo": [0.2, 0.2, 1.0] },
|
|
20
|
+
"upper_orange": { "type": "SolidColor", "albedo": [1.0, 0.5, 0.0] },
|
|
21
|
+
"lower_teal": { "type": "SolidColor", "albedo": [0.2, 0.8, 0.8] }
|
|
22
|
+
},
|
|
23
|
+
"images": {},
|
|
24
|
+
"noises": {},
|
|
25
|
+
"camera": {
|
|
26
|
+
"vfov": 80.0,
|
|
27
|
+
"lookfrom": [0.0, 0.0, 9.0],
|
|
28
|
+
"lookat": [0.0, 0.0, 0.0],
|
|
29
|
+
"vup": [0.0, 1.0, 0.0],
|
|
30
|
+
"defocus_angle": 0.0,
|
|
31
|
+
"focus_dist": 10.0
|
|
32
|
+
},
|
|
33
|
+
"background": {
|
|
34
|
+
"type": "Gradient",
|
|
35
|
+
"top": [0.5, 0.7, 1.0],
|
|
36
|
+
"bottom": [1.0, 1.0, 1.0]
|
|
37
|
+
}
|
|
38
|
+
}
|