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

Merge pull request #18225 from Mugen87/dev29

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