Antoine Martin
ce37fcda52
library: render: bidirectional: use progress bar
2020-05-09 22:21:53 +02:00
Antoine Martin
a50732b998
library: render: bidirectional: first draft
2020-05-09 22:21:53 +02:00
Antoine Martin
d86b47f111
library: light: add luminance to Light trait
2020-05-09 22:21:48 +02:00
Bruno BELANYI
394a1ad43d
pathtracer: examples: cornell box w/o material light
2020-05-09 22:21:48 +02:00
Bruno BELANYI
7567b93f9c
library: render: take advantage of cosine-weighted
2020-05-09 16:31:39 +02:00
Antoine Martin
311b7cd03b
library: light: add SampleLight trait and iterator
2020-05-09 14:04:20 +02:00
Antoine Martin
c4557adce1
bidirectional: implement path building
2020-05-09 13:25:41 +02:00
Bruno BELANYI
a774ecce47
library: light: spot_light: add sample_ray method
2020-05-09 13:25:41 +02:00
Bruno BELANYI
cd871055ba
library: light: point_light: add sample_ray method
2020-05-09 13:25:41 +02:00
Antoine Martin
7526e41938
project: justify every dependency
2020-05-09 13:08:37 +02:00
Antoine Martin
ae3931e796
library: render: don't return infinite weight
...
hemisphere sampling previously could return infinite, producing NaNs
when later multiplying that weight by 0.
2020-05-09 02:10:05 +02:00
Antoine Martin
dad5113724
scene: store number of intermediate steps
2020-05-08 12:51:25 +02:00
Antoine Martin
e650655d73
rustfmt: remove requirement on version
2020-05-08 12:51:07 +02:00
Antoine Martin
bcaaca2c9a
examples: reduce cornell-box resolution to 1080
2020-05-08 12:49:17 +02:00
Antoine Martin
28df5d18a4
cargo: performance flags in release
2020-04-08 21:58:39 +02:00
Bruno BELANYI
1e7d0a2807
library: render: pathtracer: fix off-by-one exports
2020-04-08 20:24:15 +02:00
Antoine Martin
faa1ef1fb8
library: render: pathtracer: avoid row allocation
2020-04-08 19:31:46 +02:00
Antoine Martin
00dae425d9
library: render: write passes in steps
2020-04-08 18:05:11 +02:00
Antoine Martin
be1f400b34
library: render: pathtracer: sequential passes
2020-04-08 17:54:45 +02:00
Bruno BELANYI
2fe65e9bc6
examples: cornell-box: change FOV and positions
...
To make sure we see the entirety of the box, with a point-of-view which
is similar to the pictures that can be found online, the box has to be
farther away.
I also re-centered the point-light to have it beneath the lamp in the
middle of the ceiling.
2020-04-08 01:22:34 +02:00
Antoine Martin
9596bb3d00
library: render: pathtracer: simple progress
2020-04-07 23:54:28 +02:00
Antoine Martin
82dee9fde5
library: render: progress: fix refresh for pathtracing
2020-04-07 23:54:28 +02:00
Antoine Martin
b89e01107d
library: unnest scene module to please clippy
...
warning: module has the same name as its containing module
--> pathtracer/src/scene/mod.rs:12:1
|
12 | pub mod scene;
| ^^^^^^^^^^^^^^
|
= note: `#[warn(clippy::module_inception)]` on by default
2020-04-07 23:01:56 +02:00
Antoine Martin
f7780cb54e
rustfmt: bump to latest version to please CI
2020-04-07 22:56:00 +02:00
Antoine Martin
3f2c7b40e8
library: render: pathtracer: draft parallelize
2020-04-07 22:53:21 +02:00
Antoine Martin
c0c34fba7d
library: scene: mesh: use unknown_param for Ke
...
tobj actually has an `unknown_param` map with everything that's not in
the official MTL spec, so let's use that instead of forking tobj
2020-04-07 22:53:21 +02:00
Antoine Martin
0c289ca482
library: scene: mesh: parse emitted light from MTL
2020-04-07 17:31:19 +02:00
Bruno BELANYI
a10fd07f43
library: render: pathtracer: basic pathtracing
2020-04-06 15:40:34 +02:00
Bruno BELANYI
ddebd55fcd
library: render: utils: use Unit for vectors
2020-04-06 15:25:39 +02:00
Bruno BELANYI
c1801a7a78
library: render: pathtracer: use map_or_else
2020-04-06 15:07:43 +02:00
Bruno BELANYI
482e6bea3f
library: render: add basics for Pathtracer
...
This is simple ray-tracing, with a binary white-or-black color depending
on whether we hit an object or not.
2020-04-06 14:58:07 +02:00
Bruno BELANYI
6066fe00dc
library: render: move progressbar creation to module
2020-04-02 00:13:43 +02:00
Bruno BELANYI
70a923cf26
library: render: move raytracer to own directory
2020-04-02 00:06:33 +02:00
Bruno BELANYI
4bb20e2f30
executable: add bidirectional renderer option
2020-04-02 00:03:43 +02:00
Bruno BELANYI
c0fc885159
library: render: add #[allow(unused)] attributes
2020-04-02 00:02:11 +02:00
Bruno BELANYI
fc2de38b1a
library: render: split bidirectional pathtracer
2020-04-01 23:58:27 +02:00
Bruno BELANYI
96995e7ef1
library: core: light_properties: add emitted light
2020-04-01 23:43:01 +02:00
Bruno BELANYI
7eefd7b574
WIP: library: render: pathtracer: add build_path
2020-03-31 12:09:28 +02:00
Bruno BELANYI
6d0de72e57
WIP: library: render: pathtrace: add Path struct
2020-03-31 12:09:28 +02:00
Bruno BELANYI
a200a839b6
examples: rename aliasing_limit to shot_rays
2020-03-31 12:09:28 +02:00
Bruno BELANYI
d4345e6ea4
library: scene: rename aliasing_limit to shot_rays
2020-03-31 12:09:28 +02:00
Bruno BELANYI
e68ceb484d
executable: use dummy pahtracer renderer
2020-03-31 12:09:09 +02:00
Bruno BELANYI
b624ced37f
library: render: pathtrace: add dummy Pathtracer
2020-03-30 02:25:58 +02:00
Bruno BELANYI
9c6b9af31a
library: render: add Renderer trait
2020-03-29 21:28:06 +02:00
Bruno BELANYI
83ed6406ac
executable: allow the choice of renderer
2020-03-29 21:28:06 +02:00
Bruno BELANYI
5ebad7c1ab
pathtracer: move rendering logic to 'render' module
2020-03-29 20:41:19 +02:00
Bruno BELANYI
ad668251d4
beevee: bvh: accelerated: add missing link to BVH
2020-03-29 20:20:01 +02:00
Bruno BELANYI
a59bd026bc
library: rename 'render' module to 'scene'
2020-03-29 20:15:27 +02:00
Bruno BELANYI
aa47b54e4c
examples: move OBJ-related files to subdirectory
2020-03-29 19:44:12 +02:00
Bruno BELANYI
4593e276c4
library: core: camera: fix documentation phrasing
2020-03-29 19:36:51 +02:00