未验证 提交 f941b59e 编写于 作者: M Michael Herzog 提交者: GitHub

Merge pull request #18225 from Mugen87/dev29

Examples: Clean up.
......@@ -1335,7 +1335,7 @@ THREE.GLTFExporter.prototype = {
attribute.getX( j ) - baseAttribute.getX( j ),
attribute.getY( j ) - baseAttribute.getY( j ),
attribute.getZ( j ) - baseAttribute.getZ( j )
);
);
}
......
......@@ -155,7 +155,7 @@ THREE.LineSegments2.prototype = Object.assign( Object.create( THREE.Mesh.prototy
// check if the intersection point is within clip space
var zPos = THREE.Math.lerp( start.z, end.z, param );
var isInClipSpace = zPos >= -1 && zPos <= 1;
var isInClipSpace = zPos >= - 1 && zPos <= 1;
var isInside = ssOrigin3.distanceTo( closestPoint ) < lineWidth * 0.5;
......@@ -190,8 +190,8 @@ THREE.LineSegments2.prototype = Object.assign( Object.create( THREE.Mesh.prototy
}
}
};
} () )
}() )
} );
import {
AnimationClip,
Scene,
Vector3
Scene
} from '../../../src/Three';
export class TimelinerController {
......
import { Camera, MOUSE, Object3D, TOUCH, Vector3 } from '../../../src/Three';
import { Camera, MOUSE, TOUCH, Vector3 } from '../../../src/Three';
export class OrbitControls {
......
import {
Object3D,
Camera,
Vector3,
Euler,
MOUSE
} from '../../../src/Three';
......
......@@ -1357,7 +1357,7 @@ GLTFExporter.prototype = {
attribute.getX( j ) - baseAttribute.getX( j ),
attribute.getY( j ) - baseAttribute.getY( j ),
attribute.getZ( j ) - baseAttribute.getZ( j )
);
);
}
......
......@@ -7,7 +7,7 @@ import {
export namespace LightProbeGenerator {
export function fromCubeTexture(cubeTexture: CubeTexture): LightProbe;
export function fromRenderTargetCube(renderer: WebGLRenderer, renderTargetCube: WebGLRenderTargetCube): LightProbe;
export function fromCubeTexture( cubeTexture: CubeTexture ): LightProbe;
export function fromRenderTargetCube( renderer: WebGLRenderer, renderTargetCube: WebGLRenderTargetCube ): LightProbe;
}
......@@ -168,7 +168,7 @@ LineSegments2.prototype = Object.assign( Object.create( Mesh.prototype ), {
// check if the intersection point is within clip space
var zPos = _Math.lerp( start.z, end.z, param );
var isInClipSpace = zPos >= -1 && zPos <= 1;
var isInClipSpace = zPos >= - 1 && zPos <= 1;
var isInside = ssOrigin3.distanceTo( closestPoint ) < lineWidth * 0.5;
......@@ -203,9 +203,9 @@ LineSegments2.prototype = Object.assign( Object.create( Mesh.prototype ), {
}
}
};
} () )
}() )
} );
......
......@@ -43,7 +43,7 @@ export class GLTFParser {
json: any;
getDependency: (type: string, index: number) => Promise<any>;
getDependencies: (type: string) => Promise<any[]>;
getDependency: ( type: string, index: number ) => Promise<any>;
getDependencies: ( type: string ) => Promise<any[]>;
}
import {
Material,
LoadingManager,
Group
LoadingManager
} from '../../../src/Three';
import {
......
import {
Material,
Loader,
LoadingManager,
Group
......
import {
BufferGeometry,
Loader,
LoadingManager
} from '../../../src/Three';
......
export namespace ObjectManipulator {
export function applyProperties(objToAlter: object, params: object, forceCreation: boolean): void;
export function applyProperties( objToAlter: object, params: object, forceCreation: boolean ): void;
}
......
......@@ -11,24 +11,24 @@ const ObjectManipulator = {
* @param {Object} objToAlter The objToAlter instance
* @param {Object} params The parameter object
*/
applyProperties: function (objToAlter, params, forceCreation) {
applyProperties: function ( objToAlter, params, forceCreation ) {
// fast-fail
if (objToAlter === undefined || objToAlter === null || params === undefined || params === null) return;
if ( objToAlter === undefined || objToAlter === null || params === undefined || params === null ) return;
let property, funcName, values;
for (property in params) {
for ( property in params ) {
funcName = 'set' + property.substring(0, 1).toLocaleUpperCase() + property.substring(1);
values = params[property];
funcName = 'set' + property.substring( 0, 1 ).toLocaleUpperCase() + property.substring( 1 );
values = params[ property ];
if (typeof objToAlter[funcName] === 'function') {
if ( typeof objToAlter[ funcName ] === 'function' ) {
objToAlter[funcName](values);
objToAlter[ funcName ]( values );
} else if (objToAlter.hasOwnProperty(property) || forceCreation) {
} else if ( objToAlter.hasOwnProperty( property ) || forceCreation ) {
objToAlter[property] = values;
objToAlter[ property ] = values;
}
......
......@@ -20,7 +20,7 @@ var MeshSurfaceSampler = ( function () {
var _face = new Triangle();
function MeshSurfaceSampler ( mesh ) {
function MeshSurfaceSampler( mesh ) {
var geometry = mesh.geometry;
......@@ -45,7 +45,7 @@ var MeshSurfaceSampler = ( function () {
this.distribution = null;
};
}
MeshSurfaceSampler.prototype = {
......@@ -124,7 +124,7 @@ var MeshSurfaceSampler = ( function () {
var start = 0;
var end = dist.length - 1;
var index = -1;
var index = - 1;
while ( start <= end ) {
......
import { AnimationAction } from '../../../src/animation/AnimationAction'
import { AnimationAction } from '../../../src/animation/AnimationAction';
import {
AnimationMixer,
BufferGeometry,
......
import { Camera } from '../../../../src/Three';
import { NodeBuilder } from '../core/NodeBuilder';
import { NodeFrame } from '../core/NodeFrame';
import { TempNode } from '../core/TempNode';
import { FunctionNode } from '../core/FunctionNode';
......
import { NodeBuilder } from '../core/NodeBuilder';
import { TempNode } from '../core/TempNode';
export class ColorsNode extends TempNode {
......
import { NodeBuilder } from '../core/NodeBuilder';
import { TempNode } from '../core/TempNode';
export class LightNode extends TempNode {
......
import { NodeBuilder } from '../core/NodeBuilder';
import { TempNode } from '../core/TempNode';
export class NormalNode extends TempNode {
......
import { NodeBuilder } from '../core/NodeBuilder';
import { TempNode } from '../core/TempNode';
export class PositionNode extends TempNode {
......
import { Vector2 } from '../../../../src/Three';
import { NodeBuilder } from '../core/NodeBuilder';
import { TempNode } from '../core/TempNode';
export class ReflectNode extends TempNode {
......
import { Vector2 } from '../../../../src/Three';
import { NodeBuilder } from '../core/NodeBuilder';
import { NodeFrame } from '../core/NodeFrame';
import { Vector2Node } from '../inputs/Vector2Node';
......
import { NodeBuilder } from '../core/NodeBuilder';
import { TempNode } from '../core/TempNode';
import { ResolutionNode } from './ResolutionNode';
......
import { NodeBuilder } from '../core/NodeBuilder';
import { TempNode } from '../core/TempNode';
export class UVNode extends TempNode {
......
import { Node } from './Node';
import { FunctionNode } from './FunctionNode';
import { TempNode } from './TempNode';
import { NodeBuilder } from './NodeBuilder';
export class FunctionCallNode extends TempNode {
......
import { Vector2 } from '../../../../src/Three';
import { TempNode } from '../core/TempNode';
import { NodeBuilder } from '../core/NodeBuilder';
import { NodeFrame } from '../core/NodeFrame';
import { UVNode } from '../accessors/UVNode';
import { Vector2Node } from '../inputs/Vector2Node';
......
import { TempNode } from '../core/TempNode';
import { NodeBuilder } from '../core/NodeBuilder';
import { FloatNode } from '../inputs/FloatNode';
import { FunctionNode } from '../core/FunctionNode';
import { Node } from '../core/Node';
......
import { TempNode } from '../core/TempNode';
import { NodeBuilder } from '../core/NodeBuilder';
import { FunctionNode } from '../core/FunctionNode';
import { ConstNode } from '../core/ConstNode';
import { Node } from '../core/Node';
......
import { NodeBuilder } from '../core/NodeBuilder';
import { TempNode } from '../core/TempNode';
import { Matrix4Node } from './Matrix4Node';
import { OperatorNode } from '../math/OperatorNode';
......
import {
Matrix4,
Texture
} from '../../../../src/Three';
......
......@@ -5,8 +5,6 @@ import {
import { NodeBuilder } from '../core/NodeBuilder';
import { NodeFrame } from '../core/NodeFrame';
import { StandardNode } from './nodes/StandardNode';
import { PropertyNode } from '../inputs/PropertyNode';
import { MeshStandardNode } from './nodes/MeshStandardNode';
import { RawNode } from './nodes/RawNode';
......
import { TempNode } from '../core/TempNode';
import { NodeBuilder } from '../core/NodeBuilder';
import { Node } from '../core/Node';
export class OperatorNode extends TempNode {
......
import { TempNode } from '../core/TempNode';
import { NodeBuilder } from '../core/NodeBuilder';
import { FloatNode } from '../inputs/FloatNode';
import { FunctionNode } from '../core/FunctionNode';
import { TextureNode } from '../inputs/TextureNode';
......
import { TempNode } from '../core/TempNode';
import { NodeBuilder } from '../core/NodeBuilder';
import { FunctionNode } from '../core/FunctionNode';
import { TextureNode } from '../inputs/TextureNode';
import { Vector2Node } from '../inputs/Vector2Node';
......
......@@ -3,7 +3,7 @@
*/
import {
BackSide
BackSide
} from '../../../../build/three.module.js';
import { TempNode } from '../core/TempNode.js';
......@@ -29,41 +29,41 @@ NormalMapNode.Nodes = ( function () {
// Per-Pixel Tangent Space Normal Mapping
// http://hacksoflife.blogspot.ch/2009/11/per-pixel-tangent-space-normal-mapping.html
`vec3 perturbNormal2Arb( vec3 eye_pos, vec3 surf_norm, vec3 map, vec2 vUv, vec2 normalScale ) {
`vec3 perturbNormal2Arb( vec3 eye_pos, vec3 surf_norm, vec3 map, vec2 vUv, vec2 normalScale ) {
// Workaround for Adreno 3XX dFd*( vec3 ) bug. See #9988
// Workaround for Adreno 3XX dFd*( vec3 ) bug. See #9988
vec3 q0 = vec3( dFdx( eye_pos.x ), dFdx( eye_pos.y ), dFdx( eye_pos.z ) );
vec3 q1 = vec3( dFdy( eye_pos.x ), dFdy( eye_pos.y ), dFdy( eye_pos.z ) );
vec2 st0 = dFdx( vUv.st );
vec2 st1 = dFdy( vUv.st );
vec3 q0 = vec3( dFdx( eye_pos.x ), dFdx( eye_pos.y ), dFdx( eye_pos.z ) );
vec3 q1 = vec3( dFdy( eye_pos.x ), dFdy( eye_pos.y ), dFdy( eye_pos.z ) );
vec2 st0 = dFdx( vUv.st );
vec2 st1 = dFdy( vUv.st );
float scale = sign( st1.t * st0.s - st0.t * st1.s ); // we do not care about the magnitude
float scale = sign( st1.t * st0.s - st0.t * st1.s ); // we do not care about the magnitude
vec3 S = normalize( ( q0 * st1.t - q1 * st0.t ) * scale );
vec3 T = normalize( ( - q0 * st1.s + q1 * st0.s ) * scale );
vec3 N = normalize( surf_norm );
vec3 S = normalize( ( q0 * st1.t - q1 * st0.t ) * scale );
vec3 T = normalize( ( - q0 * st1.s + q1 * st0.s ) * scale );
vec3 N = normalize( surf_norm );
vec3 mapN = map * 2.0 - 1.0;
vec3 mapN = map * 2.0 - 1.0;
mapN.xy *= normalScale;
mapN.xy *= normalScale;
#ifdef DOUBLE_SIDED
#ifdef DOUBLE_SIDED
// Workaround for Adreno GPUs gl_FrontFacing bug. See #15850 and #10331
// Workaround for Adreno GPUs gl_FrontFacing bug. See #15850 and #10331
if ( dot( cross( S, T ), N ) < 0.0 ) mapN.xy *= - 1.0;
if ( dot( cross( S, T ), N ) < 0.0 ) mapN.xy *= - 1.0;
#else
#else
mapN.xy *= ( float( gl_FrontFacing ) * 2.0 - 1.0 );
mapN.xy *= ( float( gl_FrontFacing ) * 2.0 - 1.0 );
#endif
#endif
mat3 tsn = mat3( S, T, N );
return normalize( tsn * mapN );
mat3 tsn = mat3( S, T, N );
return normalize( tsn * mapN );
}`, null, { derivatives: true } );
}`, null, { derivatives: true } );
return {
perturbNormal2Arb: perturbNormal2Arb
......
import { TempNode } from '../core/TempNode';
import { NodeBuilder } from '../core/NodeBuilder';
import { FloatNode } from '../inputs/FloatNode';
import { StructNode } from '../core/StructNode';
import { FunctionNode } from '../core/FunctionNode';
......
import { NodeMaterial } from '../materials/NodeMaterial';
import { ShaderPass } from '../../postprocessing/ShaderPass';
import { ScreenNode } from '../inputs/ScreenNode';
......
import { TempNode } from '../core/TempNode';
import { NodeBuilder } from '../core/NodeBuilder';
import { FunctionNode } from '../core/FunctionNode';
import { UVNode } from '../accessors/UVNode';
import { UVTransformNode } from '../utils/UVTransformNode';
......
import { TempNode } from '../core/TempNode';
import { NodeBuilder } from '../core/NodeBuilder';
import { FunctionNode } from '../core/FunctionNode';
import { UVNode } from '../accessors/UVNode';
import { UVTransformNode } from '../utils/UVTransformNode';
......
import { Node } from '../core/Node';
import { NodeBuilder } from '../core/NodeBuilder';
export class BypassNode extends Node {
......
import { Node } from '../core/Node';
import { TempNode } from '../core/TempNode';
import { FunctionNode } from '../core/FunctionNode';
import { NodeBuilder } from '../core/NodeBuilder';
export class ColorSpaceNode extends TempNode {
......
import { TempNode } from '../core/TempNode';
import { NodeBuilder } from '../core/NodeBuilder';
export class JoinNode extends TempNode {
......
import { TempNode } from '../core/TempNode';
import { NodeBuilder } from '../core/NodeBuilder';
import { MaxMIPLevelNode } from '../utils/MaxMIPLevelNode';
import { FunctionNode } from '../core/FunctionNode';
......
import { TempNode } from '../core/TempNode';
import { NodeBuilder } from '../core/NodeBuilder';
export class SubSlots extends TempNode {
......
import { Node } from '../core/Node';
import { NodeBuilder } from '../core/NodeBuilder';
export class SwitchNode extends Node {
......
import { ExpressionNode } from '../core/ExpressionNode';
import { NodeBuilder } from '../core/NodeBuilder';
import { Matrix3Node } from '../inputs/Matrix3Node';
import { UVNode } from '../accessors/UVNode';
......
import {
Vector2,
ShaderMaterial
} from '../../../src/Three';
......
import {
Camera,
Scene,
Vector2,
WebGLRenderer
} from '../../../src/Three';
......
import {
Uniform
} from '../../../src/Three';
export const BasicShader: {
uniforms: {};
vertexShader: string;
......
import {
Texture,
Uniform,
Vector2,
} from '../../../src/Three';
export const OceanShaders: {
......
import {
WebGLRenderer,
MeshStandardMaterial
MeshStandardMaterial
} from '../../../src/Three';
export class RoughnessMipmapper {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册