Bruno BELANYI
197e8104e0
library: render: light_aggregate: add *_iter
...
You can iterate over the two types of lights in the aggregate: the ones
implementing `SpatialLight`, and the ones that are only `Light`.
2020-03-17 22:47:30 +01:00
Bruno BELANYI
d6f5f29a2a
library: render: rename LightAggregate fields
2020-03-17 22:46:25 +01:00
Bruno BELANYI
852cd65c6a
library: render: add LightAggregate implementation
2020-03-17 20:49:49 +01:00
Bruno BELANYI
7112873715
library: replace super::super
by crate
import
...
Done with the following shell command:
`sed -e 's/super::super/crate/' -i $(git grep -l super::super)`.
Followed by a `cargo fmt --all`.
2020-03-17 20:49:30 +01:00
Bruno BELANYI
4f3af74c22
library: render: add Object implementation
2020-03-17 20:44:47 +01:00
Bruno BELANYI
2dab475f68
library: add render module
2020-03-17 19:30:01 +01:00
Bruno BELANYI
dd6b50f785
library: texture: add UniformTexture implementation
2020-03-17 19:29:33 +01:00
Bruno BELANYI
63feed70c6
library: texture: add Texture trait definition
2020-03-17 19:29:33 +01:00
Bruno BELANYI
4052dd41d3
library: add texture module
2020-03-17 19:29:29 +01:00
Bruno BELANYI
d785800bfe
library: material: split Material into trait
...
The former `Material` type is now `UniformMaterial` and implements the
`Material` trait.
2020-03-17 19:29:05 +01:00
Bruno BELANYI
2a36728468
library: material: add Material implementation
2020-03-17 19:17:52 +01:00
Bruno BELANYI
9fa0da1b83
library: add material module
2020-03-17 19:17:52 +01:00
Bruno BELANYI
48b3f03d40
library: core: color: add Mul-like ops by self
2020-03-17 19:17:52 +01:00
Bruno BELANYI
2dd5c675af
library: core: add Camera implementation
2020-03-17 19:17:52 +01:00
Bruno BELANYI
a4caa456ce
library: core: add Film implementation
2020-03-17 19:17:52 +01:00
Bruno BELANYI
8d6d4cf7d7
library: shape: add Triangle implementation
2020-03-16 22:22:13 +01:00
Bruno BELANYI
2088877bd2
library: light: add SpotLight implementation
2020-03-16 18:35:32 +01:00
Bruno BELANYI
3a487d956e
library: light: add AmbientLight implementation
2020-03-16 17:54:44 +01:00
Bruno BELANYI
d759c16f5d
library: light: add DirectionalLight implementation
2020-03-16 17:52:33 +01:00
Bruno BELANYI
22167a1b93
library: light: add PointLight implementation
2020-03-16 17:45:35 +01:00
Bruno BELANYI
7c8cc0d970
library: shape: add Sphere implementation
2020-03-16 17:29:11 +01:00
Bruno BELANYI
7d28e21a70
library: move from f64 to f32
...
They are faster to compute with, take less space --which means faster
access because we use less cache lines--, and they are what is used by
`bvh`...
2020-03-16 17:26:04 +01:00
Bruno BELANYI
5d03df960c
project: use non-nightly image by default in CI
...
Only use the nightly features for `cargo fmt`. This avoids having the CI
be red because `clippy` is not available for the nightly version that
was used to run it.
2020-03-16 16:36:13 +01:00
Bruno BELANYI
31272bceac
library: core: color: add arithmetic operations
...
The only operations that are not supported right now are term-by-term
division and multiplication between two colors.
I deemed the multiplication and division by a scalar more important than
those operations for the moment.
2020-03-16 16:14:40 +01:00
Bruno BELANYI
708fec536e
project: add derive_more dependency
2020-03-16 16:07:21 +01:00
Bruno BELANYI
924f6bcc3c
library: shape: add Shape trait definition
2020-03-16 15:25:21 +01:00
Bruno BELANYI
6aaf927823
library: add shape module
2020-03-16 15:25:03 +01:00
Bruno BELANYI
30c48ea021
library: light: add SpatialLight trait definition
2020-03-16 15:22:56 +01:00
Bruno BELANYI
20d9103d39
library: light: add Light trait definition
2020-03-16 15:22:56 +01:00
Bruno BELANYI
c0e21d2f66
library: add light module
2020-03-16 15:18:15 +01:00
Bruno BELANYI
b89631adce
library: core: add LinearColor type
2020-03-16 15:16:37 +01:00
Bruno BELANYI
ecde825407
library: add core module
2020-03-16 15:16:20 +01:00
Bruno BELANYI
fe6a58f00e
library: define point and vector type aliases
2020-03-16 15:15:01 +01:00
Bruno BELANYI
ea9120fab3
project: split project into library and executable
2020-03-16 14:57:55 +01:00
Bruno BELANYI
1a3d0ca2a7
project: add BVH dependency
2020-03-16 14:30:38 +01:00
Bruno BELANYI
1eeedf3d7f
project: use nightly in CI
...
The `rustfmt` configuration uses unstable features.
2020-03-08 17:34:17 +01:00
Bruno BELANYI
01c21c352d
gitlab: add minimal CI
2020-03-08 17:27:30 +01:00
Bruno BELANYI
85650d1be2
project: add default formatting configuration
...
This file was obtained by running `rustfmt --print-config default`.
2020-03-08 17:27:30 +01:00
Bruno BELANYI
35626278d1
project: add Cargo project files
...
Those files were generated using `cargo init pathtracer`.
2020-03-08 16:22:44 +01:00