use separate handin profile
This commit is contained in:
parent
00000420b2
commit
00000430af
7 changed files with 17 additions and 14 deletions
|
@ -8,6 +8,12 @@ edition = "2021"
|
|||
[profile.release]
|
||||
debug = true
|
||||
|
||||
# Optimize for size when creating handin
|
||||
[profile.release-handin]
|
||||
inherits = "release"
|
||||
strip = true
|
||||
lto = true
|
||||
|
||||
[[bin]]
|
||||
name = "raytracer1b"
|
||||
path = "src/main.rs"
|
||||
|
|
|
@ -10,7 +10,7 @@ CONVERT := convert
|
|||
HANDIN := hw1b.michael.zhang.zip
|
||||
BINARY := ./raytracer1b
|
||||
WRITEUP := writeup.pdf
|
||||
SOURCES := $(shell find -name "*.rs")
|
||||
SOURCES := Cargo.toml $(shell find -name "*.rs")
|
||||
|
||||
EXAMPLES := $(shell find examples -name "*.txt")
|
||||
EXAMPLES_PPM := $(patsubst %.txt,%.ppm,$(EXAMPLES))
|
||||
|
@ -28,8 +28,8 @@ $(BINARY): $(SOURCES)
|
|||
-w /usr/src/myapp \
|
||||
-e CARGO_TARGET_DIR=/usr/src/myapp/target/docker \
|
||||
rust \
|
||||
cargo build --release
|
||||
mv target/release/raytracer1b $@
|
||||
cargo build --profile release-handin
|
||||
mv target/docker/release-handin/raytracer1b $@
|
||||
|
||||
$(HANDIN): $(BINARY) $(WRITEUP) Makefile Cargo.toml Cargo.lock README.md $(EXAMPLES_PNG) $(EXAMPLES_PPM)
|
||||
$(ZIP) -r $@ src examples $^
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
|
||||
Writeup is located at `/writeup.pdf`.
|
||||
|
||||
The binary can be found at `/assignment-1`. Run `./assignment-1 --help` to see
|
||||
The binary can be found at `/raytracer1b`. Run `./raytracer1b --help` to see
|
||||
how to use it. The binary has been built using the Rust Docker image, which
|
||||
should have an environment similar to CSELabs. If there is trouble running the
|
||||
binary, try building from source, as documented below.
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#![doc = include_str!("../writeup.md")]
|
||||
#![doc = include_str!("../README.md")]
|
||||
|
||||
#[macro_use]
|
||||
extern crate anyhow;
|
||||
|
|
|
@ -1,16 +1,13 @@
|
|||
use std::fs::File;
|
||||
use std::path::PathBuf;
|
||||
|
||||
use anyhow::{ensure, Result};
|
||||
use anyhow::{Result};
|
||||
use assignment_1b::image::Image;
|
||||
use assignment_1b::ray::Ray;
|
||||
use assignment_1b::scene::Scene;
|
||||
use base64::{engine::general_purpose::STANDARD as BASE64, Engine};
|
||||
|
||||
use clap::Parser;
|
||||
use rand::{
|
||||
rngs::{StdRng, ThreadRng},
|
||||
thread_rng, Rng, RngCore, SeedableRng,
|
||||
};
|
||||
|
||||
use rayon::prelude::{IntoParallelIterator, ParallelIterator};
|
||||
|
||||
/// Simple raycaster.
|
||||
|
|
|
@ -5,7 +5,7 @@ use ordered_float::NotNan;
|
|||
use crate::ray::Ray;
|
||||
use crate::utils::compute_rotation_matrix;
|
||||
|
||||
use super::{data::ObjectKind, illumination::IntersectionContext};
|
||||
use super::{illumination::IntersectionContext};
|
||||
|
||||
#[derive(Debug)]
|
||||
pub struct Cylinder {
|
||||
|
@ -181,7 +181,7 @@ impl Cylinder {
|
|||
mod tests {
|
||||
use nalgebra::Vector3;
|
||||
|
||||
use crate::{ray::Ray, scene::data::ObjectKind};
|
||||
use crate::{ray::Ray};
|
||||
|
||||
use super::Cylinder;
|
||||
|
||||
|
|
|
@ -4,7 +4,7 @@ use ordered_float::NotNan;
|
|||
|
||||
use crate::{ray::Ray, utils::min_f64};
|
||||
|
||||
use super::{data::ObjectKind, illumination::IntersectionContext};
|
||||
use super::{illumination::IntersectionContext};
|
||||
|
||||
#[derive(Debug)]
|
||||
pub struct Sphere {
|
||||
|
|
Loading…
Reference in a new issue