Skip to content

Commit

Permalink
MeshPhysicalMaterial: Clean up clearcoat code.
Browse files Browse the repository at this point in the history
  • Loading branch information
Don McCurdy committed Feb 28, 2020
1 parent 162fae7 commit ad10ad6
Show file tree
Hide file tree
Showing 7 changed files with 11 additions and 21 deletions.
10 changes: 3 additions & 7 deletions examples/js/loaders/GLTFLoader.js
Original file line number Diff line number Diff line change
Expand Up @@ -414,7 +414,7 @@ THREE.GLTFLoader = ( function () {
};

/**
* Clearcoat Material Properties Extension
* Clearcoat Materials Extension
*
* Specification: https://github.com/KhronosGroup/glTF/tree/master/extensions/2.0/Khronos/KHR_materials_clearcoat
*/
Expand Down Expand Up @@ -2214,15 +2214,11 @@ THREE.GLTFLoader = ( function () {

}

// TODO(donmccurdy): Remove this when we determine whether the extension is attached to the material,
// or to the metallicRoughness sub-object.
var matExtensions = Object.assign({}, materialDef.extensions || {}, metallicRoughness.extensions || {});

if ( matExtensions[ EXTENSIONS.KHR_MATERIALS_CLEARCOAT ] ) {
if ( materialExtensions[ EXTENSIONS.KHR_MATERIALS_CLEARCOAT ] ) {

var clearcoatExtension = extensions[ EXTENSIONS.KHR_MATERIALS_CLEARCOAT ];
materialType = clearcoatExtension.getMaterialType();
pending.push( clearcoatExtension.extendParams( materialParams, {extensions: matExtensions}, parser ) );
pending.push( clearcoatExtension.extendParams( materialParams, { extensions: materialExtensions }, parser ) );

}

Expand Down
10 changes: 3 additions & 7 deletions examples/jsm/loaders/GLTFLoader.js
Original file line number Diff line number Diff line change
Expand Up @@ -478,7 +478,7 @@ var GLTFLoader = ( function () {
};

/**
* Clearcoat Material Properties Extension
* Clearcoat Materials Extension
*
* Specification: https://github.com/KhronosGroup/glTF/tree/master/extensions/2.0/Khronos/KHR_materials_clearcoat
*/
Expand Down Expand Up @@ -2278,15 +2278,11 @@ var GLTFLoader = ( function () {

}

// TODO(donmccurdy): Remove this when we determine whether the extension is attached to the material,
// or to the metallicRoughness sub-object.
var matExtensions = Object.assign({}, materialDef.extensions || {}, metallicRoughness.extensions || {});

if ( matExtensions[ EXTENSIONS.KHR_MATERIALS_CLEARCOAT ] ) {
if ( materialExtensions[ EXTENSIONS.KHR_MATERIALS_CLEARCOAT ] ) {

var clearcoatExtension = extensions[ EXTENSIONS.KHR_MATERIALS_CLEARCOAT ];
materialType = clearcoatExtension.getMaterialType();
pending.push( clearcoatExtension.extendParams( materialParams, {extensions: matExtensions}, parser ) );
pending.push( clearcoatExtension.extendParams( materialParams, { extensions: materialExtensions }, parser ) );

}

Expand Down
2 changes: 1 addition & 1 deletion src/materials/MeshPhysicalMaterial.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import { Color } from '../math/Color.js';
* parameters = {
* clearcoat: <float>,
* clearcoatMap: new THREE.Texture( <Image> ),
* clearcoatRoughness: <float>
* clearcoatRoughness: <float>,
* clearcoatRoughnessMap: new THREE.Texture( <Image> ),
* clearcoatNormalScale: <Vector2>,
* clearcoatNormalMap: new THREE.Texture( <Image> ),
Expand Down
2 changes: 1 addition & 1 deletion src/renderers/shaders/ShaderChunk.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ export let ShaderChunk: {
normalmap_pars_fragment: string;
clearcoat_normal_fragment_begin: string;
clearcoat_normal_fragment_maps: string;
clearcoat_normalmap_pars_fragment: string;
clearcoat_pars_fragment: string;
packing: string;
points_frag: string;
points_vert: string;
Expand Down
4 changes: 2 additions & 2 deletions src/renderers/shaders/ShaderChunk.js
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ import normal_fragment_maps from './ShaderChunk/normal_fragment_maps.glsl.js';
import normalmap_pars_fragment from './ShaderChunk/normalmap_pars_fragment.glsl.js';
import clearcoat_normal_fragment_begin from './ShaderChunk/clearcoat_normal_fragment_begin.glsl.js';
import clearcoat_normal_fragment_maps from './ShaderChunk/clearcoat_normal_fragment_maps.glsl.js';
import clearcoat_normalmap_pars_fragment from './ShaderChunk/clearcoat_normalmap_pars_fragment.glsl.js';
import clearcoat_pars_fragment from './ShaderChunk/clearcoat_pars_fragment.glsl.js';
import packing from './ShaderChunk/packing.glsl.js';
import premultiplied_alpha_fragment from './ShaderChunk/premultiplied_alpha_fragment.glsl.js';
import project_vertex from './ShaderChunk/project_vertex.glsl.js';
Expand Down Expand Up @@ -197,7 +197,7 @@ export var ShaderChunk = {
normalmap_pars_fragment: normalmap_pars_fragment,
clearcoat_normal_fragment_begin: clearcoat_normal_fragment_begin,
clearcoat_normal_fragment_maps: clearcoat_normal_fragment_maps,
clearcoat_normalmap_pars_fragment: clearcoat_normalmap_pars_fragment,
clearcoat_pars_fragment: clearcoat_pars_fragment,
packing: packing,
premultiplied_alpha_fragment: premultiplied_alpha_fragment,
project_vertex: project_vertex,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
export default /* glsl */`
// TODO(donmccurdy): The first two blocks seem out of place given the filename.
#ifdef USE_CLEARCOATMAP
uniform sampler2D clearcoatMap;
Expand Down
2 changes: 1 addition & 1 deletion src/renderers/shaders/ShaderLib/meshphysical_frag.glsl.js
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ varying vec3 vViewPosition;
#include <shadowmap_pars_fragment>
#include <bumpmap_pars_fragment>
#include <normalmap_pars_fragment>
#include <clearcoat_normalmap_pars_fragment>
#include <clearcoat_pars_fragment>
#include <roughnessmap_pars_fragment>
#include <metalnessmap_pars_fragment>
#include <logdepthbuf_pars_fragment>
Expand Down

0 comments on commit ad10ad6

Please sign in to comment.