Add specular-glossiness workflow and some gui for tweaking values #2
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.
This change provides an example of the specular-glossiness workflow and make it easy to see how the shaders calculation differ between the two. It also adds dat.gui for tweaking some properties on the fly.
Changing between metallic-roughness and specular-glossiness workflow makes no difference to the rendered result. The difference is in the underlying parameters being passed to the shader and how the math is calculated.
The following parameters were added:
workflow (switches between specular-glossiness and metallic-roughness)
albedo
opacity
reflectivity (0.16 * reflectivity^2 = dielectric f0 value) (see mrdoob/three.js#8505 (comment))
The current PBR proposal does not include reflectivity, but this comment (KhronosGroup#696 (comment)) seems to indicate that we want to add this.
See here for a live view: https://bghgary.github.io/glTF/add-specular-glossiness-workflow/