All notable changes to this project will be documented in this file.
- The translation, rotation, and scale world space matrices have been combined into a single Uniform model matrix
- Example fragment shader now explicity defines output fragment variable
- Decreased mouse movement by 20% so that model movement is smoother
- Added the ability to use the left mouse button to rotate the model
- Up, down, left, and right keys are now mapped to translate the model
- Added link time optimization to binary for better runtime performance
- Texture image file path is now checked for validity
- Framebuffer is now resized to the window dimensions when the window is resized
- Certain runtime errors now exit more gracefully
- Demo gif in README shows status bar with save file actions
- Added a scale uniform variable so that the model can be scaled with key bindings
- Added the ability to translate in the x and y directions
- Added documentation in the README regarding key bindings
- Version, author, and package name now correctly pull from package information
- Model now resets correctly when pressing the reset key (R)
- Demo gif nows displays a more advanced fragment shader
- Apply model view matrix to vertex normals
- Add ability to load texture image as uniform variable
- Use clap crate for command line argument parsing
- Add time and resolution uniform variables
- Parse texture coordinates from OBJ file and send to vertex shader
- Reset the model to its origin by pressing the C key
- Rotation matrix is created from Euler angles so that rotation is persistent across axes
- Examples directory with example obj and fragment shader
- Move non-render code into separate modules
- Update fragula dependencies and pin notify-rs due to alpha semver breaking changes
- Watch the fragment shader file parent directory non-recursively instead of recursively
- Added this CHANGELOG to the project
- Watch the fragment shader file directory rather than only watching the file
- Added README to Cargo.toml
- Change the reflectance model in the given fragment shader from Lambertian to Oren-Nayar
- Show syntax highlighting in the code shown in the demo gif
- Fix code formatting
- Revert OBJ file and fragment shader load as bytes
- Require OBJ file and fragment shader to be passed as command line arguments
- Update usage instructions
- Add description, install, and usage notes in README
- Add license badges in README
- Load OBJ file and fragment shader file as bytes
- Fix typos and unnecessary whitespace in files
- Add crates.io and related badges
- Fragula application that watches fragment shaders for WRITE changes