Parameterize fragment shader output - #374
Open
jdahlstrom wants to merge 68 commits into
Open
Conversation
Directional, point, and spot lights are implemented.
This allows passing light, material, etc. information to the fragment shader.
Adds functions to Text: * render() for simple 2D rendering * batch() for more customized rendering * shader() returning a suitable shader Other improvements: * finish anchor/alignment support * color field to easily set text color
The stats printing code has a fairly large binary footprint. Collecting the stats may also have a slight performance impact.
The `line` function did not properly interpolate vertex attributes, including depth. This led to visual errors especially when drawing lines together with other geometry. Resolves #324.
Keys 1 to 5 toggle various visualizations. 0 toggles rendering of the mesh itself.
Refactor the animation+debug state in solids to a new type.
col_vec has a pretty unfortunate implementation due to const limitations...
If the last row is 0, ..., 1 (which should always be for affine matrices) inverse and determinant calculations can be simplified quite a bit.
Add a comprehensive API overview to the module docs.
These use Cramer's rule to solve Mx = y without computing the full inverse.
* Parameterize Target with input color * Add FragmentOut associated type to FragmentShader * Rename VertexShader::Output to VertexOut to match * Use different names to avoid ambiguities with combined shaders * Change most shaders in demos to output Color3 Unfortunately Some() wrapping is now needed, as there's no simple way implement a generic impl with Into<Option>. Will need to think how to restore the convenience and whether the ability to discard fragments is even that useful in the end.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.