diff --git a/examples-testing/changes.patch b/examples-testing/changes.patch index 71f1772b3..69b913d37 100644 --- a/examples-testing/changes.patch +++ b/examples-testing/changes.patch @@ -19217,7 +19217,7 @@ index 20118247a..877b921bd 100644 gui.add(threshold, 'value', 0, 0.9).name('threshold'); gui.add(samples, 'value', 2, 128, 1).name('samples'); diff --git a/examples-testing/examples/webgpu_postprocessing_ao.ts b/examples-testing/examples/webgpu_postprocessing_ao.ts -index 5b50fe485..77f0f2818 100644 +index 6e7261a46..b14adae3d 100644 --- a/examples-testing/examples/webgpu_postprocessing_ao.ts +++ b/examples-testing/examples/webgpu_postprocessing_ao.ts @@ -13,8 +13,8 @@ import { @@ -19231,7 +19231,7 @@ index 5b50fe485..77f0f2818 100644 import { OrbitControls } from 'three/addons/controls/OrbitControls.js'; import { DRACOLoader } from 'three/addons/loaders/DRACOLoader.js'; -@@ -23,9 +23,15 @@ import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'; +@@ -24,9 +24,15 @@ import { RoundedBoxGeometry } from 'three/addons/geometries/RoundedBoxGeometry.j import { Inspector } from 'three/addons/inspector/Inspector.js'; @@ -19249,9 +19249,45 @@ index 5b50fe485..77f0f2818 100644 const params = { samples: 16, -@@ -159,7 +165,7 @@ async function init() { +@@ -139,7 +145,7 @@ async function init() { - // + // wall-mounted spotlights + +- function addSpotLight(position, targetPosition) { ++ function addSpotLight(position: THREE.Vector3, targetPosition: THREE.Vector3) { + const light = new THREE.SpotLight(0xffe09e, 40); + light.position.copy(position); + light.angle = 0.6; +@@ -162,7 +168,7 @@ async function init() { + const floorCanvas = document.createElement('canvas'); + floorCanvas.width = tilesX * 32; + floorCanvas.height = tilesZ * 32; +- const floorCtx = floorCanvas.getContext('2d'); ++ const floorCtx = floorCanvas.getContext('2d')!; + + for (let x = 0; x < tilesX; x++) { + for (let z = 0; z < tilesZ; z++) { +@@ -222,7 +228,7 @@ async function init() { + + const columnMat = new THREE.MeshStandardMaterial({ color: '#e8e4de', roughness: 0.5, metalness: 0 }); + +- function addColumn(x, z) { ++ function addColumn(x: number, z: number) { + const columnGroup = new THREE.Group(); + + const base = new THREE.Mesh(new THREE.BoxGeometry(0.6, 0.2, 0.6), columnMat); +@@ -363,7 +369,7 @@ async function init() { + + // picture frames + +- function addFrame(x, y, z, width, height, paintColor, rotY = 0) { ++ function addFrame(x: number, y: number, z: number, width: number, height: number, paintColor: string, rotY = 0) { + const frameGroup = new THREE.Group(); + const t = 0.1; + +@@ -464,7 +470,7 @@ async function init() { + + // GUI - const gui = renderer.inspector.createParameters('Settings'); + const gui = (renderer.inspector as Inspector).createParameters('Settings'); diff --git a/jsdoc-testing/changes.patch b/jsdoc-testing/changes.patch index 183301e43..f2e2260ea 100644 --- a/jsdoc-testing/changes.patch +++ b/jsdoc-testing/changes.patch @@ -3967,7 +3967,7 @@ index f561855ff..0d5ada0ac 100644 + +export default ProjectorLight; diff --git a/jsdoc-testing/jsdoc/src/materials/LineBasicMaterial.d.ts b/jsdoc-testing/jsdoc/src/materials/LineBasicMaterial.d.ts -index 64e5c7024..699b4951f 100644 +index b7fb9b69a..04111f284 100644 --- a/jsdoc-testing/jsdoc/src/materials/LineBasicMaterial.d.ts +++ b/jsdoc-testing/jsdoc/src/materials/LineBasicMaterial.d.ts @@ -1,38 +1,11 @@ @@ -4014,15 +4014,7 @@ index 64e5c7024..699b4951f 100644 * @default (1,1,1) */ color: Color; -@@ -40,7 +13,6 @@ export class LineBasicMaterial extends Material { - * Sets the color of the lines using data from a texture. The texture map - * color is modulated by the diffuse `color`. - * -- * @type {?Texture} - * @default null - */ - map: Texture | null; -@@ -51,7 +23,6 @@ export class LineBasicMaterial extends Material { +@@ -55,7 +28,6 @@ export class LineBasicMaterial extends Material { * ignore this setting and always render line primitives with a * width of one pixel. * @@ -4030,7 +4022,7 @@ index 64e5c7024..699b4951f 100644 * @default 1 */ linewidth: number; -@@ -60,7 +31,6 @@ export class LineBasicMaterial extends Material { +@@ -64,7 +36,6 @@ export class LineBasicMaterial extends Material { * * Can only be used with {@link SVGRenderer}. * @@ -4038,7 +4030,7 @@ index 64e5c7024..699b4951f 100644 * @default 'round' */ linecap: ("butt" | "round" | "square"); -@@ -69,18 +39,48 @@ export class LineBasicMaterial extends Material { +@@ -73,18 +44,48 @@ export class LineBasicMaterial extends Material { * * Can only be used with {@link SVGRenderer}. * @@ -4920,7 +4912,7 @@ index 3f555b856..9e8afdfb9 100644 +export * from './LineBasicMaterial.js'; +export * from './Material.js'; diff --git a/jsdoc-testing/jsdoc/src/materials/MeshBasicMaterial.d.ts b/jsdoc-testing/jsdoc/src/materials/MeshBasicMaterial.d.ts -index 83636586f..227df8acf 100644 +index e124b7403..c4885274d 100644 --- a/jsdoc-testing/jsdoc/src/materials/MeshBasicMaterial.d.ts +++ b/jsdoc-testing/jsdoc/src/materials/MeshBasicMaterial.d.ts @@ -1,35 +1,13 @@ @@ -4966,21 +4958,7 @@ index 83636586f..227df8acf 100644 * @default (1,1,1) */ color: Color; -@@ -38,21 +16,18 @@ export class MeshBasicMaterial extends Material { - * with {@link Material#transparent} or {@link Material#alphaTest}. The texture map - * color is modulated by the diffuse `color`. - * -- * @type {?Texture} - * @default null - */ - map: Texture | null; - /** - * The light map. Requires a second set of UVs. - * -- * @type {?Texture} - * @default null - */ - lightMap: Texture | null; +@@ -61,7 +39,6 @@ export class MeshBasicMaterial extends Material { /** * Intensity of the baked light. * @@ -4988,15 +4966,7 @@ index 83636586f..227df8acf 100644 * @default 1 */ lightMapIntensity: number; -@@ -60,7 +35,6 @@ export class MeshBasicMaterial extends Material { - * The red channel of this texture is used as the ambient occlusion map. - * Requires a second set of UVs. - * -- * @type {?Texture} - * @default null - */ - aoMap: Texture | null; -@@ -69,14 +43,12 @@ export class MeshBasicMaterial extends Material { +@@ -81,7 +58,6 @@ export class MeshBasicMaterial extends Material { * disables ambient occlusion. Where intensity is `1` and the AO map's * red channel is also `1`, ambient light is fully occluded on a surface. * @@ -5004,28 +4974,7 @@ index 83636586f..227df8acf 100644 * @default 1 */ aoMapIntensity: number; - /** - * Specular map used by the material. - * -- * @type {?Texture} - * @default null - */ - specularMap: Texture | null; -@@ -90,21 +62,18 @@ export class MeshBasicMaterial extends Material { - * green in DXT-compressed and uncompressed RGB 565 formats. Luminance-only and - * luminance/alpha textures will also still work as expected. - * -- * @type {?Texture} - * @default null - */ - alphaMap: Texture | null; - /** - * The environment map. - * -- * @type {?Texture} - * @default null - */ - envMap: Texture | null; +@@ -128,7 +104,6 @@ export class MeshBasicMaterial extends Material { /** * The rotation of the environment map in radians. * @@ -5033,7 +4982,7 @@ index 83636586f..227df8acf 100644 * @default (0,0,0) */ envMapRotation: Euler; -@@ -114,15 +83,13 @@ export class MeshBasicMaterial extends Material { +@@ -138,15 +113,13 @@ export class MeshBasicMaterial extends Material { * When set to `MixOperation`, the {@link MeshBasicMaterial#reflectivity} is used to * blend between the two colors. * @@ -5050,7 +4999,7 @@ index 83636586f..227df8acf 100644 * @default 1 */ reflectivity: number; -@@ -132,14 +99,12 @@ export class MeshBasicMaterial extends Material { +@@ -156,14 +129,12 @@ export class MeshBasicMaterial extends Material { * modes {@link CubeRefractionMapping} and {@link EquirectangularRefractionMapping}. * The refraction ratio should not exceed `1`. * @@ -5065,7 +5014,7 @@ index 83636586f..227df8acf 100644 * @default false */ wireframe: boolean; -@@ -148,7 +113,6 @@ export class MeshBasicMaterial extends Material { +@@ -172,7 +143,6 @@ export class MeshBasicMaterial extends Material { * * Can only be used with {@link SVGRenderer}. * @@ -5073,7 +5022,7 @@ index 83636586f..227df8acf 100644 * @default 1 */ wireframeLinewidth: number; -@@ -157,7 +121,6 @@ export class MeshBasicMaterial extends Material { +@@ -181,7 +151,6 @@ export class MeshBasicMaterial extends Material { * * Can only be used with {@link SVGRenderer}. * @@ -5081,7 +5030,7 @@ index 83636586f..227df8acf 100644 * @default 'round' */ wireframeLinecap: ("round" | "bevel" | "miter"); -@@ -166,19 +129,44 @@ export class MeshBasicMaterial extends Material { +@@ -190,19 +159,44 @@ export class MeshBasicMaterial extends Material { * * Can only be used with {@link SVGRenderer}. * @@ -5133,10 +5082,10 @@ index 83636586f..227df8acf 100644 +// eslint-disable-next-line @typescript-eslint/no-empty-interface +export interface MeshBasicMaterial extends MeshBasicMaterialProperties {} diff --git a/jsdoc-testing/jsdoc/src/materials/MeshDepthMaterial.d.ts b/jsdoc-testing/jsdoc/src/materials/MeshDepthMaterial.d.ts -index a85883a0e..b27cb65e2 100644 +index 0b95d4608..df76c01bb 100644 --- a/jsdoc-testing/jsdoc/src/materials/MeshDepthMaterial.d.ts +++ b/jsdoc-testing/jsdoc/src/materials/MeshDepthMaterial.d.ts -@@ -1,42 +1,18 @@ +@@ -1,37 +1,14 @@ -/** - * A material for drawing geometry by depth. Depth is based off of the camera - * near and far plane. White is nearest, black is farthest. @@ -5180,28 +5129,7 @@ index a85883a0e..b27cb65e2 100644 /** * The color map. May optionally include an alpha channel, typically combined * with {@link Material#transparent} or {@link Material#alphaTest}. - * -- * @type {?Texture} - * @default null - */ - map: Texture | null; -@@ -50,7 +26,6 @@ export class MeshDepthMaterial extends Material { - * green in DXT-compressed and uncompressed RGB 565 formats. Luminance-only and - * luminance/alpha textures will also still work as expected. - * -- * @type {?Texture} - * @default null - */ - alphaMap: Texture | null; -@@ -62,7 +37,6 @@ export class MeshDepthMaterial extends Material { - * of each pixel (white being the highest) is mapped against, and - * repositions, the vertices of the mesh. - * -- * @type {?Texture} - * @default null - */ - displacementMap: Texture | null; -@@ -71,7 +45,6 @@ export class MeshDepthMaterial extends Material { +@@ -81,7 +58,6 @@ export class MeshDepthMaterial extends Material { * displacement, and white is maximum displacement). Without a displacement * map set, this value is not applied. * @@ -5209,7 +5137,7 @@ index a85883a0e..b27cb65e2 100644 * @default 0 */ displacementScale: number; -@@ -80,14 +53,12 @@ export class MeshDepthMaterial extends Material { +@@ -90,14 +66,12 @@ export class MeshDepthMaterial extends Material { * The bias is added to the scaled sample of the displacement map. * Without a displacement map set, this value is not applied. * @@ -5224,7 +5152,7 @@ index a85883a0e..b27cb65e2 100644 * @default false */ wireframe: boolean; -@@ -97,10 +68,37 @@ export class MeshDepthMaterial extends Material { +@@ -107,10 +81,37 @@ export class MeshDepthMaterial extends Material { * WebGL and WebGPU ignore this property and always render * 1 pixel wide lines. * @@ -5266,10 +5194,10 @@ index a85883a0e..b27cb65e2 100644 +// eslint-disable-next-line @typescript-eslint/no-empty-interface +export interface MeshDepthMaterial extends MeshDepthMaterialProperties {} diff --git a/jsdoc-testing/jsdoc/src/materials/MeshDistanceMaterial.d.ts b/jsdoc-testing/jsdoc/src/materials/MeshDistanceMaterial.d.ts -index bddc4ff5c..4e7170f46 100644 +index 459c2a606..c45bf3e61 100644 --- a/jsdoc-testing/jsdoc/src/materials/MeshDistanceMaterial.d.ts +++ b/jsdoc-testing/jsdoc/src/materials/MeshDistanceMaterial.d.ts -@@ -1,39 +1,11 @@ +@@ -1,34 +1,7 @@ -/** - * A material used internally for implementing shadow mapping with - * point lights. @@ -5308,28 +5236,7 @@ index bddc4ff5c..4e7170f46 100644 /** * The color map. May optionally include an alpha channel, typically combined * with {@link Material#transparent} or {@link Material#alphaTest}. - * -- * @type {?Texture} - * @default null - */ - map: Texture | null; -@@ -47,7 +19,6 @@ export class MeshDistanceMaterial extends Material { - * green in DXT-compressed and uncompressed RGB 565 formats. Luminance-only and - * luminance/alpha textures will also still work as expected. - * -- * @type {?Texture} - * @default null - */ - alphaMap: Texture | null; -@@ -59,7 +30,6 @@ export class MeshDistanceMaterial extends Material { - * of each pixel (white being the highest) is mapped against, and - * repositions, the vertices of the mesh. - * -- * @type {?Texture} - * @default null - */ - displacementMap: Texture | null; -@@ -68,7 +38,6 @@ export class MeshDistanceMaterial extends Material { +@@ -78,7 +51,6 @@ export class MeshDistanceMaterial extends Material { * displacement, and white is maximum displacement). Without a displacement * map set, this value is not applied. * @@ -5337,7 +5244,7 @@ index bddc4ff5c..4e7170f46 100644 * @default 0 */ displacementScale: number; -@@ -77,10 +46,42 @@ export class MeshDistanceMaterial extends Material { +@@ -87,10 +59,42 @@ export class MeshDistanceMaterial extends Material { * The bias is added to the scaled sample of the displacement map. * Without a displacement map set, this value is not applied. * @@ -5384,7 +5291,7 @@ index bddc4ff5c..4e7170f46 100644 +// eslint-disable-next-line @typescript-eslint/no-empty-interface +export interface MeshDistanceMaterial extends MeshDistanceMaterialProperties {} diff --git a/jsdoc-testing/jsdoc/src/materials/MeshLambertMaterial.d.ts b/jsdoc-testing/jsdoc/src/materials/MeshLambertMaterial.d.ts -index 1fd0fda22..51f1f9beb 100644 +index 375147a59..72461c386 100644 --- a/jsdoc-testing/jsdoc/src/materials/MeshLambertMaterial.d.ts +++ b/jsdoc-testing/jsdoc/src/materials/MeshLambertMaterial.d.ts @@ -1,44 +1,14 @@ @@ -5440,21 +5347,7 @@ index 1fd0fda22..51f1f9beb 100644 * @default (1,1,1) */ color: Color; -@@ -47,21 +17,18 @@ export class MeshLambertMaterial extends Material { - * with {@link Material#transparent} or {@link Material#alphaTest}. The texture map - * color is modulated by the diffuse `color`. - * -- * @type {?Texture} - * @default null - */ - map: Texture | null; - /** - * The light map. Requires a second set of UVs. - * -- * @type {?Texture} - * @default null - */ - lightMap: Texture | null; +@@ -70,7 +40,6 @@ export class MeshLambertMaterial extends Material { /** * Intensity of the baked light. * @@ -5462,15 +5355,7 @@ index 1fd0fda22..51f1f9beb 100644 * @default 1 */ lightMapIntensity: number; -@@ -69,7 +36,6 @@ export class MeshLambertMaterial extends Material { - * The red channel of this texture is used as the ambient occlusion map. - * Requires a second set of UVs. - * -- * @type {?Texture} - * @default null - */ - aoMap: Texture | null; -@@ -78,7 +44,6 @@ export class MeshLambertMaterial extends Material { +@@ -90,7 +59,6 @@ export class MeshLambertMaterial extends Material { * disables ambient occlusion. Where intensity is `1` and the AO map's * red channel is also `1`, ambient light is fully occluded on a surface. * @@ -5478,7 +5363,7 @@ index 1fd0fda22..51f1f9beb 100644 * @default 1 */ aoMapIntensity: number; -@@ -86,14 +51,12 @@ export class MeshLambertMaterial extends Material { +@@ -98,14 +66,12 @@ export class MeshLambertMaterial extends Material { * Emissive (light) color of the material, essentially a solid color * unaffected by other lighting. * @@ -5493,22 +5378,7 @@ index 1fd0fda22..51f1f9beb 100644 * @default 1 */ emissiveIntensity: number; -@@ -102,7 +65,6 @@ export class MeshLambertMaterial extends Material { - * emissive color and the emissive intensity. If you have an emissive map, - * be sure to set the emissive color to something other than black. - * -- * @type {?Texture} - * @default null - */ - emissiveMap: Texture | null; -@@ -112,14 +74,12 @@ export class MeshLambertMaterial extends Material { - * the geometry of the object, only the lighting. If a normal map is defined - * this will be ignored. - * -- * @type {?Texture} - * @default null - */ - bumpMap: Texture | null; +@@ -138,7 +104,6 @@ export class MeshLambertMaterial extends Material { /** * How much the bump map affects the material. Typical range is `[0,1]`. * @@ -5516,14 +5386,7 @@ index 1fd0fda22..51f1f9beb 100644 * @default 1 */ bumpScale: number; -@@ -131,21 +91,18 @@ export class MeshLambertMaterial extends Material { - * convention, the `y` component of `normalScale` should be negated to compensate - * for the different handedness. - * -- * @type {?Texture} - * @default null - */ - normalMap: Texture | null; +@@ -160,14 +125,12 @@ export class MeshLambertMaterial extends Material { /** * The type of normal map. * @@ -5539,15 +5402,7 @@ index 1fd0fda22..51f1f9beb 100644 * @default (1,1) */ normalScale: Vector2; -@@ -159,7 +116,6 @@ export class MeshLambertMaterial extends Material { - * displacement map with a matching normal map, since the renderer can - * not recompute surface normals from the displaced vertices. - * -- * @type {?Texture} - * @default null - */ - displacementMap: Texture | null; -@@ -168,7 +124,6 @@ export class MeshLambertMaterial extends Material { +@@ -193,7 +156,6 @@ export class MeshLambertMaterial extends Material { * displacement, and white is maximum displacement). Without a displacement * map set, this value is not applied. * @@ -5555,7 +5410,7 @@ index 1fd0fda22..51f1f9beb 100644 * @default 0 */ displacementScale: number; -@@ -177,14 +132,12 @@ export class MeshLambertMaterial extends Material { +@@ -202,7 +164,6 @@ export class MeshLambertMaterial extends Material { * The bias is added to the scaled sample of the displacement map. * Without a displacement map set, this value is not applied. * @@ -5563,28 +5418,7 @@ index 1fd0fda22..51f1f9beb 100644 * @default 0 */ displacementBias: number; - /** - * Specular map used by the material. - * -- * @type {?Texture} - * @default null - */ - specularMap: Texture | null; -@@ -198,21 +151,18 @@ export class MeshLambertMaterial extends Material { - * green in DXT-compressed and uncompressed RGB 565 formats. Luminance-only and - * luminance/alpha textures will also still work as expected. - * -- * @type {?Texture} - * @default null - */ - alphaMap: Texture | null; - /** - * The environment map. - * -- * @type {?Texture} - * @default null - */ - envMap: Texture | null; +@@ -249,7 +210,6 @@ export class MeshLambertMaterial extends Material { /** * The rotation of the environment map in radians. * @@ -5592,7 +5426,7 @@ index 1fd0fda22..51f1f9beb 100644 * @default (0,0,0) */ envMapRotation: Euler; -@@ -222,22 +172,19 @@ export class MeshLambertMaterial extends Material { +@@ -259,22 +219,19 @@ export class MeshLambertMaterial extends Material { * When set to `MixOperation`, the {@link MeshBasicMaterial#reflectivity} is used to * blend between the two colors. * @@ -5616,7 +5450,7 @@ index 1fd0fda22..51f1f9beb 100644 * @default 1 */ envMapIntensity: number; -@@ -247,14 +194,12 @@ export class MeshLambertMaterial extends Material { +@@ -284,14 +241,12 @@ export class MeshLambertMaterial extends Material { * modes {@link CubeRefractionMapping} and {@link EquirectangularRefractionMapping}. * The refraction ratio should not exceed `1`. * @@ -5631,7 +5465,7 @@ index 1fd0fda22..51f1f9beb 100644 * @default false */ wireframe: boolean; -@@ -263,7 +208,6 @@ export class MeshLambertMaterial extends Material { +@@ -300,7 +255,6 @@ export class MeshLambertMaterial extends Material { * * Can only be used with {@link SVGRenderer}. * @@ -5639,7 +5473,7 @@ index 1fd0fda22..51f1f9beb 100644 * @default 1 */ wireframeLinewidth: number; -@@ -272,7 +216,6 @@ export class MeshLambertMaterial extends Material { +@@ -309,7 +263,6 @@ export class MeshLambertMaterial extends Material { * * Can only be used with {@link SVGRenderer}. * @@ -5647,7 +5481,7 @@ index 1fd0fda22..51f1f9beb 100644 * @default 'round' */ wireframeLinecap: ("round" | "bevel" | "miter"); -@@ -281,27 +224,59 @@ export class MeshLambertMaterial extends Material { +@@ -318,27 +271,59 @@ export class MeshLambertMaterial extends Material { * * Can only be used with {@link SVGRenderer}. * @@ -5716,10 +5550,10 @@ index 1fd0fda22..51f1f9beb 100644 +// eslint-disable-next-line @typescript-eslint/no-empty-interface +export interface MeshLambertMaterial extends MeshLambertMaterialProperties {} diff --git a/jsdoc-testing/jsdoc/src/materials/MeshMatcapMaterial.d.ts b/jsdoc-testing/jsdoc/src/materials/MeshMatcapMaterial.d.ts -index 8597043ad..167b583bf 100644 +index f345fb9f5..ec290b546 100644 --- a/jsdoc-testing/jsdoc/src/materials/MeshMatcapMaterial.d.ts +++ b/jsdoc-testing/jsdoc/src/materials/MeshMatcapMaterial.d.ts -@@ -1,49 +1,19 @@ +@@ -1,42 +1,13 @@ -/** - * This material is defined by a MatCap (or Lit Sphere) texture, which encodes the - * material color and shading. @@ -5769,29 +5603,7 @@ index 8597043ad..167b583bf 100644 * @default (1,1,1) */ color: Color; - /** - * The matcap map. - * -- * @type {?Texture} - * @default null - */ - matcap: Texture | null; -@@ -52,7 +22,6 @@ export class MeshMatcapMaterial extends Material { - * with {@link Material#transparent} or {@link Material#alphaTest}. The texture map - * color is modulated by the diffuse `color`. - * -- * @type {?Texture} - * @default null - */ - map: Texture | null; -@@ -62,14 +31,12 @@ export class MeshMatcapMaterial extends Material { - * the geometry of the object, only the lighting. If a normal map is defined - * this will be ignored. - * -- * @type {?Texture} - * @default null - */ - bumpMap: Texture | null; +@@ -82,7 +53,6 @@ export class MeshMatcapMaterial extends Material { /** * How much the bump map affects the material. Typical range is `[0,1]`. * @@ -5799,14 +5611,7 @@ index 8597043ad..167b583bf 100644 * @default 1 */ bumpScale: number; -@@ -81,21 +48,18 @@ export class MeshMatcapMaterial extends Material { - * convention, the `y` component of `normalScale` should be negated to compensate - * for the different handedness. - * -- * @type {?Texture} - * @default null - */ - normalMap: Texture | null; +@@ -104,14 +74,12 @@ export class MeshMatcapMaterial extends Material { /** * The type of normal map. * @@ -5822,15 +5627,7 @@ index 8597043ad..167b583bf 100644 * @default (1,1) */ normalScale: Vector2; -@@ -109,7 +73,6 @@ export class MeshMatcapMaterial extends Material { - * displacement map with a matching normal map, since the renderer can - * not recompute surface normals from the displaced vertices. - * -- * @type {?Texture} - * @default null - */ - displacementMap: Texture | null; -@@ -118,7 +81,6 @@ export class MeshMatcapMaterial extends Material { +@@ -137,7 +105,6 @@ export class MeshMatcapMaterial extends Material { * displacement, and white is maximum displacement). Without a displacement * map set, this value is not applied. * @@ -5838,7 +5635,7 @@ index 8597043ad..167b583bf 100644 * @default 0 */ displacementScale: number; -@@ -127,7 +89,6 @@ export class MeshMatcapMaterial extends Material { +@@ -146,7 +113,6 @@ export class MeshMatcapMaterial extends Material { * The bias is added to the scaled sample of the displacement map. * Without a displacement map set, this value is not applied. * @@ -5846,14 +5643,7 @@ index 8597043ad..167b583bf 100644 * @default 0 */ displacementBias: number; -@@ -141,14 +102,12 @@ export class MeshMatcapMaterial extends Material { - * green in DXT-compressed and uncompressed RGB 565 formats. Luminance-only and - * luminance/alpha textures will also still work as expected. - * -- * @type {?Texture} - * @default null - */ - alphaMap: Texture | null; +@@ -170,7 +136,6 @@ export class MeshMatcapMaterial extends Material { /** * Renders the geometry as a wireframe. * @@ -5861,7 +5651,7 @@ index 8597043ad..167b583bf 100644 * @default false */ wireframe: boolean; -@@ -157,26 +116,54 @@ export class MeshMatcapMaterial extends Material { +@@ -179,26 +144,54 @@ export class MeshMatcapMaterial extends Material { * * Can only be used with {@link SVGRenderer}. * @@ -5924,10 +5714,10 @@ index 8597043ad..167b583bf 100644 +// eslint-disable-next-line @typescript-eslint/no-empty-interface +export interface MeshMatcapMaterial extends MeshMatcapMaterialProperties {} diff --git a/jsdoc-testing/jsdoc/src/materials/MeshNormalMaterial.d.ts b/jsdoc-testing/jsdoc/src/materials/MeshNormalMaterial.d.ts -index 50a3a855d..7106112f8 100644 +index 794b28e73..3c8418294 100644 --- a/jsdoc-testing/jsdoc/src/materials/MeshNormalMaterial.d.ts +++ b/jsdoc-testing/jsdoc/src/materials/MeshNormalMaterial.d.ts -@@ -1,43 +1,21 @@ +@@ -1,29 +1,9 @@ -/** - * A material that maps the normal vectors to RGB colors. - * @@ -5963,13 +5753,7 @@ index 50a3a855d..7106112f8 100644 /** * The texture to create a bump map. The black and white values map to the * perceived depth in relation to the lights. Bump doesn't actually affect - * the geometry of the object, only the lighting. If a normal map is defined - * this will be ignored. - * -- * @type {?Texture} - * @default null - */ - bumpMap: Texture | null; +@@ -40,7 +20,6 @@ export class MeshNormalMaterial extends Material { /** * How much the bump map affects the material. Typical range is `[0,1]`. * @@ -5977,14 +5761,7 @@ index 50a3a855d..7106112f8 100644 * @default 1 */ bumpScale: number; -@@ -49,21 +27,18 @@ export class MeshNormalMaterial extends Material { - * convention, the `y` component of `normalScale` should be negated to compensate - * for the different handedness. - * -- * @type {?Texture} - * @default null - */ - normalMap: Texture | null; +@@ -62,14 +41,12 @@ export class MeshNormalMaterial extends Material { /** * The type of normal map. * @@ -6000,7 +5777,7 @@ index 50a3a855d..7106112f8 100644 * @default (1,1) */ normalScale: Vector2; -@@ -77,7 +52,6 @@ export class MeshNormalMaterial extends Material { +@@ -83,7 +60,6 @@ export class MeshNormalMaterial extends Material { * displacement map with a matching normal map, since the renderer can * not recompute surface normals from the displaced vertices. * @@ -6008,7 +5785,7 @@ index 50a3a855d..7106112f8 100644 * @default null */ displacementMap: Texture | null; -@@ -86,7 +60,6 @@ export class MeshNormalMaterial extends Material { +@@ -92,7 +68,6 @@ export class MeshNormalMaterial extends Material { * displacement, and white is maximum displacement). Without a displacement * map set, this value is not applied. * @@ -6016,7 +5793,7 @@ index 50a3a855d..7106112f8 100644 * @default 0 */ displacementScale: number; -@@ -95,14 +68,12 @@ export class MeshNormalMaterial extends Material { +@@ -101,14 +76,12 @@ export class MeshNormalMaterial extends Material { * The bias is added to the scaled sample of the displacement map. * Without a displacement map set, this value is not applied. * @@ -6031,7 +5808,7 @@ index 50a3a855d..7106112f8 100644 * @default false */ wireframe: boolean; -@@ -112,18 +83,42 @@ export class MeshNormalMaterial extends Material { +@@ -118,18 +91,42 @@ export class MeshNormalMaterial extends Material { * WebGL and WebGPU ignore this property and always render * 1 pixel wide lines. * @@ -6080,7 +5857,7 @@ index 50a3a855d..7106112f8 100644 +// eslint-disable-next-line @typescript-eslint/no-empty-interface +export interface MeshNormalMaterial extends MeshNormalMaterialProperties {} diff --git a/jsdoc-testing/jsdoc/src/materials/MeshPhongMaterial.d.ts b/jsdoc-testing/jsdoc/src/materials/MeshPhongMaterial.d.ts -index 187fcc1ec..736279e3d 100644 +index 6fb55c994..aa891d3c3 100644 --- a/jsdoc-testing/jsdoc/src/materials/MeshPhongMaterial.d.ts +++ b/jsdoc-testing/jsdoc/src/materials/MeshPhongMaterial.d.ts @@ -1,42 +1,14 @@ @@ -6149,21 +5926,7 @@ index 187fcc1ec..736279e3d 100644 * @default 30 */ shininess: number; -@@ -60,21 +29,18 @@ export class MeshPhongMaterial extends Material { - * with {@link Material#transparent} or {@link Material#alphaTest}. The texture map - * color is modulated by the diffuse `color`. - * -- * @type {?Texture} - * @default null - */ - map: Texture | null; - /** - * The light map. Requires a second set of UVs. - * -- * @type {?Texture} - * @default null - */ - lightMap: Texture | null; +@@ -83,7 +52,6 @@ export class MeshPhongMaterial extends Material { /** * Intensity of the baked light. * @@ -6171,15 +5934,7 @@ index 187fcc1ec..736279e3d 100644 * @default 1 */ lightMapIntensity: number; -@@ -82,7 +48,6 @@ export class MeshPhongMaterial extends Material { - * The red channel of this texture is used as the ambient occlusion map. - * Requires a second set of UVs. - * -- * @type {?Texture} - * @default null - */ - aoMap: Texture | null; -@@ -91,7 +56,6 @@ export class MeshPhongMaterial extends Material { +@@ -103,7 +71,6 @@ export class MeshPhongMaterial extends Material { * disables ambient occlusion. Where intensity is `1` and the AO map's * red channel is also `1`, ambient light is fully occluded on a surface. * @@ -6187,7 +5942,7 @@ index 187fcc1ec..736279e3d 100644 * @default 1 */ aoMapIntensity: number; -@@ -99,14 +63,12 @@ export class MeshPhongMaterial extends Material { +@@ -111,14 +78,12 @@ export class MeshPhongMaterial extends Material { * Emissive (light) color of the material, essentially a solid color * unaffected by other lighting. * @@ -6202,22 +5957,7 @@ index 187fcc1ec..736279e3d 100644 * @default 1 */ emissiveIntensity: number; -@@ -115,7 +77,6 @@ export class MeshPhongMaterial extends Material { - * emissive color and the emissive intensity. If you have an emissive map, - * be sure to set the emissive color to something other than black. - * -- * @type {?Texture} - * @default null - */ - emissiveMap: Texture | null; -@@ -125,14 +86,12 @@ export class MeshPhongMaterial extends Material { - * the geometry of the object, only the lighting. If a normal map is defined - * this will be ignored. - * -- * @type {?Texture} - * @default null - */ - bumpMap: Texture | null; +@@ -151,7 +116,6 @@ export class MeshPhongMaterial extends Material { /** * How much the bump map affects the material. Typical range is `[0,1]`. * @@ -6225,14 +5965,7 @@ index 187fcc1ec..736279e3d 100644 * @default 1 */ bumpScale: number; -@@ -144,21 +103,18 @@ export class MeshPhongMaterial extends Material { - * convention, the `y` component of `normalScale` should be negated to compensate - * for the different handedness. - * -- * @type {?Texture} - * @default null - */ - normalMap: Texture | null; +@@ -173,14 +137,12 @@ export class MeshPhongMaterial extends Material { /** * The type of normal map. * @@ -6248,15 +5981,7 @@ index 187fcc1ec..736279e3d 100644 * @default (1,1) */ normalScale: Vector2; -@@ -172,7 +128,6 @@ export class MeshPhongMaterial extends Material { - * displacement map with a matching normal map, since the renderer can - * not recompute surface normals from the displaced vertices. - * -- * @type {?Texture} - * @default null - */ - displacementMap: Texture | null; -@@ -181,7 +136,6 @@ export class MeshPhongMaterial extends Material { +@@ -206,7 +168,6 @@ export class MeshPhongMaterial extends Material { * displacement, and white is maximum displacement). Without a displacement * map set, this value is not applied. * @@ -6264,7 +5989,7 @@ index 187fcc1ec..736279e3d 100644 * @default 0 */ displacementScale: number; -@@ -190,7 +144,6 @@ export class MeshPhongMaterial extends Material { +@@ -215,7 +176,6 @@ export class MeshPhongMaterial extends Material { * The bias is added to the scaled sample of the displacement map. * Without a displacement map set, this value is not applied. * @@ -6272,29 +5997,7 @@ index 187fcc1ec..736279e3d 100644 * @default 0 */ displacementBias: number; -@@ -199,7 +152,6 @@ export class MeshPhongMaterial extends Material { - * highlight contributes and how much of the environment map affects the - * surface. - * -- * @type {?Texture} - * @default null - */ - specularMap: Texture | null; -@@ -213,21 +165,18 @@ export class MeshPhongMaterial extends Material { - * green in DXT-compressed and uncompressed RGB 565 formats. Luminance-only and - * luminance/alpha textures will also still work as expected. - * -- * @type {?Texture} - * @default null - */ - alphaMap: Texture | null; - /** - * The environment map. - * -- * @type {?Texture} - * @default null - */ - envMap: Texture | null; +@@ -264,7 +224,6 @@ export class MeshPhongMaterial extends Material { /** * The rotation of the environment map in radians. * @@ -6302,7 +6005,7 @@ index 187fcc1ec..736279e3d 100644 * @default (0,0,0) */ envMapRotation: Euler; -@@ -237,22 +186,19 @@ export class MeshPhongMaterial extends Material { +@@ -274,22 +233,19 @@ export class MeshPhongMaterial extends Material { * When set to `MixOperation`, the {@link MeshBasicMaterial#reflectivity} is used to * blend between the two colors. * @@ -6326,7 +6029,7 @@ index 187fcc1ec..736279e3d 100644 * @default 1 */ envMapIntensity: number; -@@ -262,14 +208,12 @@ export class MeshPhongMaterial extends Material { +@@ -299,14 +255,12 @@ export class MeshPhongMaterial extends Material { * modes {@link CubeRefractionMapping} and {@link EquirectangularRefractionMapping}. * The refraction ratio should not exceed `1`. * @@ -6341,7 +6044,7 @@ index 187fcc1ec..736279e3d 100644 * @default false */ wireframe: boolean; -@@ -278,7 +222,6 @@ export class MeshPhongMaterial extends Material { +@@ -315,7 +269,6 @@ export class MeshPhongMaterial extends Material { * * Can only be used with {@link SVGRenderer}. * @@ -6349,7 +6052,7 @@ index 187fcc1ec..736279e3d 100644 * @default 1 */ wireframeLinewidth: number; -@@ -287,7 +230,6 @@ export class MeshPhongMaterial extends Material { +@@ -324,7 +277,6 @@ export class MeshPhongMaterial extends Material { * * Can only be used with {@link SVGRenderer}. * @@ -6357,7 +6060,7 @@ index 187fcc1ec..736279e3d 100644 * @default 'round' */ wireframeLinecap: ("round" | "bevel" | "miter"); -@@ -296,27 +238,57 @@ export class MeshPhongMaterial extends Material { +@@ -333,27 +285,57 @@ export class MeshPhongMaterial extends Material { * * Can only be used with {@link SVGRenderer}. * @@ -6424,7 +6127,7 @@ index 187fcc1ec..736279e3d 100644 +// eslint-disable-next-line @typescript-eslint/no-empty-interface +export interface MeshPhongMaterial extends MeshPhongMaterialProperties {} diff --git a/jsdoc-testing/jsdoc/src/materials/MeshPhysicalMaterial.d.ts b/jsdoc-testing/jsdoc/src/materials/MeshPhysicalMaterial.d.ts -index 3dd61375e..4dfcd84c5 100644 +index 00b55a7b4..2c9100cf2 100644 --- a/jsdoc-testing/jsdoc/src/materials/MeshPhysicalMaterial.d.ts +++ b/jsdoc-testing/jsdoc/src/materials/MeshPhysicalMaterial.d.ts @@ -1,48 +1,18 @@ @@ -6486,22 +6189,7 @@ index 3dd61375e..4dfcd84c5 100644 * @default 1 */ anisotropyRotation: number; -@@ -51,7 +21,6 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { - * bitangent space, to be rotated by `anisotropyRotation`. The blue channel - * contains strength as `[0, 1]` to be multiplied by `anisotropy`. - * -- * @type {?Texture} - * @default null - */ - anisotropyMap: Texture | null; -@@ -59,14 +28,12 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { - * The red channel of this texture is multiplied against `clearcoat`, - * for per-pixel control over a coating's intensity. - * -- * @type {?Texture} - * @default null - */ - clearcoatMap: Texture | null; +@@ -72,7 +42,6 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { /** * Roughness of the clear coat layer, from `0.0` to `1.0`. * @@ -6509,15 +6197,7 @@ index 3dd61375e..4dfcd84c5 100644 * @default 0 */ clearcoatRoughness: number; -@@ -74,7 +41,6 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { - * The green channel of this texture is multiplied against - * `clearcoatRoughness`, for per-pixel control over a coating's roughness. - * -- * @type {?Texture} - * @default null - */ - clearcoatRoughnessMap: Texture | null; -@@ -82,29 +48,37 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { +@@ -91,7 +60,6 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { * How much `clearcoatNormalMap` affects the clear coat layer, from * `(0,0)` to `(1,1)`. * @@ -6525,13 +6205,7 @@ index 3dd61375e..4dfcd84c5 100644 * @default (1,1) */ clearcoatNormalScale: Vector2; - /** - * Can be used to enable independent normals for the clear coat layer. - * -- * @type {?Texture} - * @default null - */ - clearcoatNormalMap: Texture | null; +@@ -108,10 +76,21 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { /** * Index-of-refraction for non-metallic materials, from `1.0` to `2.333`. * @@ -6554,12 +6228,7 @@ index 3dd61375e..4dfcd84c5 100644 /** * The red channel of this texture is multiplied against `iridescence`, for per-pixel * control over iridescence. - * -- * @type {?Texture} - * @default null - */ - iridescenceMap: Texture | null; -@@ -112,7 +86,6 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { +@@ -127,7 +106,6 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { * Strength of the iridescence RGB color shift effect, represented by an index-of-refraction. * Between `1.0` to `2.333`. * @@ -6567,7 +6236,7 @@ index 3dd61375e..4dfcd84c5 100644 * @default 1.3 */ iridescenceIOR: number; -@@ -120,10 +93,9 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { +@@ -135,10 +113,9 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { *Array of exactly 2 elements, specifying minimum and maximum thickness of the iridescence layer. Thickness of iridescence layer has an equivalent effect of the one `thickness` has on `ior`. * @@ -6579,14 +6248,7 @@ index 3dd61375e..4dfcd84c5 100644 /** * A texture that defines the thickness of the iridescence layer, stored in the green channel. * Minimum and maximum values of thickness are defined by `iridescenceThicknessRange` array: -@@ -131,14 +103,12 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { - * - `1.0` in the green channel will result in thickness equal to second element of the array. - * - Values in-between will linearly interpolate between the elements of the array. - * -- * @type {?Texture} - * @default null - */ - iridescenceThicknessMap: Texture | null; +@@ -156,7 +133,6 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { /** * The sheen tint. * @@ -6594,14 +6256,7 @@ index 3dd61375e..4dfcd84c5 100644 * @default (0,0,0) */ sheenColor: Color; -@@ -146,14 +116,12 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { - * The RGB channels of this texture are multiplied against `sheenColor`, for per-pixel control - * over sheen tint. - * -- * @type {?Texture} - * @default null - */ - sheenColorMap: Texture | null; +@@ -175,7 +151,6 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { /** * Roughness of the sheen layer, from `0.0` to `1.0`. * @@ -6609,23 +6264,7 @@ index 3dd61375e..4dfcd84c5 100644 * @default 1 */ sheenRoughness: number; -@@ -161,7 +129,6 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { - * The alpha channel of this texture is multiplied against `sheenRoughness`, for per-pixel control - * over sheen roughness. - * -- * @type {?Texture} - * @default null - */ - sheenRoughnessMap: Texture | null; -@@ -169,7 +136,6 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { - * The red channel of this texture is multiplied against `transmission`, for per-pixel control over - * optical transparency. - * -- * @type {?Texture} - * @default null - */ - transmissionMap: Texture | null; -@@ -178,7 +144,6 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { +@@ -206,7 +181,6 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { * coordinate space of the mesh. If the value is `0` the material is * thin-walled. Otherwise the material is a volume boundary. * @@ -6633,15 +6272,7 @@ index 3dd61375e..4dfcd84c5 100644 * @default 0 */ thickness: number; -@@ -186,7 +151,6 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { - * A texture that defines the thickness, stored in the green channel. This will - * be multiplied by `thickness`. - * -- * @type {?Texture} - * @default null - */ - thicknessMap: Texture | null; -@@ -195,7 +159,6 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { +@@ -226,7 +200,6 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { * the medium before interacting with a particle. The value is given in world * space units, and must be greater than zero. * @@ -6649,7 +6280,7 @@ index 3dd61375e..4dfcd84c5 100644 * @default Infinity */ attenuationDistance: number; -@@ -203,7 +166,6 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { +@@ -234,7 +207,6 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { * The color that white light turns into due to absorption when reaching the * attenuation distance. * @@ -6657,7 +6288,7 @@ index 3dd61375e..4dfcd84c5 100644 * @default (1,1,1) */ attenuationColor: Color; -@@ -211,7 +173,6 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { +@@ -242,7 +214,6 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { * A float that scales the amount of specular reflection for non-metals only. * When set to zero, the model is effectively Lambertian. From `0.0` to `1.0`. * @@ -6665,14 +6296,7 @@ index 3dd61375e..4dfcd84c5 100644 * @default 1 */ specularIntensity: number; -@@ -219,14 +180,12 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { - * The alpha channel of this texture is multiplied against `specularIntensity`, - * for per-pixel control over specular intensity. - * -- * @type {?Texture} - * @default null - */ - specularIntensityMap: Texture | null; +@@ -260,7 +231,6 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { /** * Tints the specular reflection at normal incidence for non-metals only. * @@ -6680,11 +6304,7 @@ index 3dd61375e..4dfcd84c5 100644 * @default (1,1,1) */ specularColor: Color; -@@ -234,21 +193,13 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { - * The RGB channels of this texture are multiplied against `specularColor`, - * for per-pixel control over specular color. - * -- * @type {?Texture} +@@ -276,17 +246,10 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { * @default null */ specularColorMap: Texture | null; @@ -6702,7 +6322,7 @@ index 3dd61375e..4dfcd84c5 100644 * @default 0 */ get anisotropy(): number; -@@ -258,7 +209,6 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { +@@ -296,7 +259,6 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { * clear coat related properties to enable multilayer materials that have a * thin translucent layer over the base layer. * @@ -6710,7 +6330,7 @@ index 3dd61375e..4dfcd84c5 100644 * @default 0 */ get clearcoat(): number; -@@ -267,7 +217,6 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { +@@ -305,7 +267,6 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { * The intensity of the iridescence layer, simulating RGB color shift based on the angle between * the surface and the viewer, from `0.0` to `1.0`. * @@ -6718,7 +6338,7 @@ index 3dd61375e..4dfcd84c5 100644 * @default 0 */ get iridescence(): number; -@@ -277,7 +226,6 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { +@@ -315,7 +276,6 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { * through a relatively clear volume. Any value zero or larger is valid, the typical range of * realistic values is `[0, 1]`. This property can be only be used with transmissive objects. * @@ -6726,7 +6346,7 @@ index 3dd61375e..4dfcd84c5 100644 * @default 0 */ get dispersion(): number; -@@ -285,7 +233,6 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { +@@ -323,7 +283,6 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { /** * The intensity of the sheen layer, from `0.0` to `1.0`. * @@ -6734,7 +6354,7 @@ index 3dd61375e..4dfcd84c5 100644 * @default 0 */ get sheen(): number; -@@ -299,12 +246,49 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { +@@ -337,12 +296,49 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { * * When transmission is non-zero, `opacity` should be set to `1`. * @@ -6790,7 +6410,7 @@ index 3dd61375e..4dfcd84c5 100644 +// eslint-disable-next-line @typescript-eslint/no-empty-interface +export interface MeshPhysicalMaterial extends MeshPhysicalMaterialProperties {} diff --git a/jsdoc-testing/jsdoc/src/materials/MeshStandardMaterial.d.ts b/jsdoc-testing/jsdoc/src/materials/MeshStandardMaterial.d.ts -index 087811b7f..7f3ae937a 100644 +index d95b258b5..0d09ec170 100644 --- a/jsdoc-testing/jsdoc/src/materials/MeshStandardMaterial.d.ts +++ b/jsdoc-testing/jsdoc/src/materials/MeshStandardMaterial.d.ts @@ -1,64 +1,18 @@ @@ -6886,21 +6506,7 @@ index 087811b7f..7f3ae937a 100644 * @default 0 */ metalness: number; -@@ -86,21 +38,18 @@ export class MeshStandardMaterial extends Material { - * with {@link Material#transparent} or {@link Material#alphaTest}. The texture map - * color is modulated by the diffuse `color`. - * -- * @type {?Texture} - * @default null - */ - map: Texture | null; - /** - * The light map. Requires a second set of UVs. - * -- * @type {?Texture} - * @default null - */ - lightMap: Texture | null; +@@ -109,7 +61,6 @@ export class MeshStandardMaterial extends Material { /** * Intensity of the baked light. * @@ -6908,15 +6514,7 @@ index 087811b7f..7f3ae937a 100644 * @default 1 */ lightMapIntensity: number; -@@ -108,7 +57,6 @@ export class MeshStandardMaterial extends Material { - * The red channel of this texture is used as the ambient occlusion map. - * Requires a second set of UVs. - * -- * @type {?Texture} - * @default null - */ - aoMap: Texture | null; -@@ -117,7 +65,6 @@ export class MeshStandardMaterial extends Material { +@@ -129,7 +80,6 @@ export class MeshStandardMaterial extends Material { * disables ambient occlusion. Where intensity is `1` and the AO map's * red channel is also `1`, ambient light is fully occluded on a surface. * @@ -6924,7 +6522,7 @@ index 087811b7f..7f3ae937a 100644 * @default 1 */ aoMapIntensity: number; -@@ -125,14 +72,12 @@ export class MeshStandardMaterial extends Material { +@@ -137,14 +87,12 @@ export class MeshStandardMaterial extends Material { * Emissive (light) color of the material, essentially a solid color * unaffected by other lighting. * @@ -6939,22 +6537,7 @@ index 087811b7f..7f3ae937a 100644 * @default 1 */ emissiveIntensity: number; -@@ -141,7 +86,6 @@ export class MeshStandardMaterial extends Material { - * emissive color and the emissive intensity. If you have an emissive map, - * be sure to set the emissive color to something other than black. - * -- * @type {?Texture} - * @default null - */ - emissiveMap: Texture | null; -@@ -151,14 +95,12 @@ export class MeshStandardMaterial extends Material { - * the geometry of the object, only the lighting. If a normal map is defined - * this will be ignored. - * -- * @type {?Texture} - * @default null - */ - bumpMap: Texture | null; +@@ -177,7 +125,6 @@ export class MeshStandardMaterial extends Material { /** * How much the bump map affects the material. Typical range is `[0,1]`. * @@ -6962,14 +6545,7 @@ index 087811b7f..7f3ae937a 100644 * @default 1 */ bumpScale: number; -@@ -170,21 +112,18 @@ export class MeshStandardMaterial extends Material { - * convention, the `y` component of `normalScale` should be negated to compensate - * for the different handedness. - * -- * @type {?Texture} - * @default null - */ - normalMap: Texture | null; +@@ -199,14 +146,12 @@ export class MeshStandardMaterial extends Material { /** * The type of normal map. * @@ -6985,15 +6561,7 @@ index 087811b7f..7f3ae937a 100644 * @default (1,1) */ normalScale: Vector2; -@@ -198,7 +137,6 @@ export class MeshStandardMaterial extends Material { - * displacement map with a matching normal map, since the renderer can - * not recompute surface normals from the displaced vertices. - * -- * @type {?Texture} - * @default null - */ - displacementMap: Texture | null; -@@ -207,7 +145,6 @@ export class MeshStandardMaterial extends Material { +@@ -232,7 +177,6 @@ export class MeshStandardMaterial extends Material { * displacement, and white is maximum displacement). Without a displacement * map set, this value is not applied. * @@ -7001,7 +6569,7 @@ index 087811b7f..7f3ae937a 100644 * @default 0 */ displacementScale: number; -@@ -216,7 +153,6 @@ export class MeshStandardMaterial extends Material { +@@ -241,7 +185,6 @@ export class MeshStandardMaterial extends Material { * The bias is added to the scaled sample of the displacement map. * Without a displacement map set, this value is not applied. * @@ -7009,38 +6577,7 @@ index 087811b7f..7f3ae937a 100644 * @default 0 */ displacementBias: number; -@@ -224,7 +160,6 @@ export class MeshStandardMaterial extends Material { - * The green channel of this texture is used to alter the roughness of the - * material. - * -- * @type {?Texture} - * @default null - */ - roughnessMap: Texture | null; -@@ -232,7 +167,6 @@ export class MeshStandardMaterial extends Material { - * The blue channel of this texture is used to alter the metalness of the - * material. - * -- * @type {?Texture} - * @default null - */ - metalnessMap: Texture | null; -@@ -246,7 +180,6 @@ export class MeshStandardMaterial extends Material { - * green in DXT-compressed and uncompressed RGB 565 formats. Luminance-only and - * luminance/alpha textures will also still work as expected. - * -- * @type {?Texture} - * @default null - */ - alphaMap: Texture | null; -@@ -254,28 +187,24 @@ export class MeshStandardMaterial extends Material { - * The environment map. To ensure a physically correct rendering, environment maps - * are internally pre-processed with {@link PMREMGenerator}. - * -- * @type {?Texture} - * @default null - */ - envMap: Texture | null; +@@ -300,21 +243,18 @@ export class MeshStandardMaterial extends Material { /** * The rotation of the environment map in radians. * @@ -7062,7 +6599,7 @@ index 087811b7f..7f3ae937a 100644 * @default false */ wireframe: boolean; -@@ -284,7 +213,6 @@ export class MeshStandardMaterial extends Material { +@@ -323,7 +263,6 @@ export class MeshStandardMaterial extends Material { * * Can only be used with {@link SVGRenderer}. * @@ -7070,7 +6607,7 @@ index 087811b7f..7f3ae937a 100644 * @default 1 */ wireframeLinewidth: number; -@@ -293,7 +221,6 @@ export class MeshStandardMaterial extends Material { +@@ -332,7 +271,6 @@ export class MeshStandardMaterial extends Material { * * Can only be used with {@link SVGRenderer}. * @@ -7078,7 +6615,7 @@ index 087811b7f..7f3ae937a 100644 * @default 'round' */ wireframeLinecap: ("round" | "bevel" | "miter"); -@@ -302,27 +229,76 @@ export class MeshStandardMaterial extends Material { +@@ -341,27 +279,76 @@ export class MeshStandardMaterial extends Material { * * Can only be used with {@link SVGRenderer}. * @@ -7164,7 +6701,7 @@ index 087811b7f..7f3ae937a 100644 +// eslint-disable-next-line @typescript-eslint/no-empty-interface +export interface MeshStandardMaterial extends MeshStandardMaterialProperties {} diff --git a/jsdoc-testing/jsdoc/src/materials/MeshToonMaterial.d.ts b/jsdoc-testing/jsdoc/src/materials/MeshToonMaterial.d.ts -index 4003cc6aa..22d1322e4 100644 +index 8777c4e00..65097898f 100644 --- a/jsdoc-testing/jsdoc/src/materials/MeshToonMaterial.d.ts +++ b/jsdoc-testing/jsdoc/src/materials/MeshToonMaterial.d.ts @@ -1,36 +1,13 @@ @@ -7211,29 +6748,7 @@ index 4003cc6aa..22d1322e4 100644 * @default (1,1,1) */ color: Color; -@@ -39,7 +16,6 @@ export class MeshToonMaterial extends Material { - * with {@link Material#transparent} or {@link Material#alphaTest}. The texture map - * color is modulated by the diffuse `color`. - * -- * @type {?Texture} - * @default null - */ - map: Texture | null; -@@ -48,21 +24,18 @@ export class MeshToonMaterial extends Material { - * {@link Texture#minFilter} and {@link Texture#magFilter} to {@link NearestFilter} - * when using this type of texture. - * -- * @type {?Texture} - * @default null - */ - gradientMap: Texture | null; - /** - * The light map. Requires a second set of UVs. - * -- * @type {?Texture} - * @default null - */ - lightMap: Texture | null; +@@ -74,7 +51,6 @@ export class MeshToonMaterial extends Material { /** * Intensity of the baked light. * @@ -7241,15 +6756,7 @@ index 4003cc6aa..22d1322e4 100644 * @default 1 */ lightMapIntensity: number; -@@ -70,7 +43,6 @@ export class MeshToonMaterial extends Material { - * The red channel of this texture is used as the ambient occlusion map. - * Requires a second set of UVs. - * -- * @type {?Texture} - * @default null - */ - aoMap: Texture | null; -@@ -79,7 +51,6 @@ export class MeshToonMaterial extends Material { +@@ -94,7 +70,6 @@ export class MeshToonMaterial extends Material { * disables ambient occlusion. Where intensity is `1` and the AO map's * red channel is also `1`, ambient light is fully occluded on a surface. * @@ -7257,7 +6764,7 @@ index 4003cc6aa..22d1322e4 100644 * @default 1 */ aoMapIntensity: number; -@@ -87,14 +58,12 @@ export class MeshToonMaterial extends Material { +@@ -102,14 +77,12 @@ export class MeshToonMaterial extends Material { * Emissive (light) color of the material, essentially a solid color * unaffected by other lighting. * @@ -7272,22 +6779,7 @@ index 4003cc6aa..22d1322e4 100644 * @default 1 */ emissiveIntensity: number; -@@ -103,7 +72,6 @@ export class MeshToonMaterial extends Material { - * emissive color and the emissive intensity. If you have an emissive map, - * be sure to set the emissive color to something other than black. - * -- * @type {?Texture} - * @default null - */ - emissiveMap: Texture | null; -@@ -113,14 +81,12 @@ export class MeshToonMaterial extends Material { - * the geometry of the object, only the lighting. If a normal map is defined - * this will be ignored. - * -- * @type {?Texture} - * @default null - */ - bumpMap: Texture | null; +@@ -142,7 +115,6 @@ export class MeshToonMaterial extends Material { /** * How much the bump map affects the material. Typical range is `[0,1]`. * @@ -7295,14 +6787,7 @@ index 4003cc6aa..22d1322e4 100644 * @default 1 */ bumpScale: number; -@@ -132,21 +98,18 @@ export class MeshToonMaterial extends Material { - * convention, the `y` component of `normalScale` should be negated to compensate - * for the different handedness. - * -- * @type {?Texture} - * @default null - */ - normalMap: Texture | null; +@@ -164,14 +136,12 @@ export class MeshToonMaterial extends Material { /** * The type of normal map. * @@ -7318,15 +6803,7 @@ index 4003cc6aa..22d1322e4 100644 * @default (1,1) */ normalScale: Vector2; -@@ -160,7 +123,6 @@ export class MeshToonMaterial extends Material { - * displacement map with a matching normal map, since the renderer can - * not recompute surface normals from the displaced vertices. - * -- * @type {?Texture} - * @default null - */ - displacementMap: Texture | null; -@@ -169,7 +131,6 @@ export class MeshToonMaterial extends Material { +@@ -197,7 +167,6 @@ export class MeshToonMaterial extends Material { * displacement, and white is maximum displacement). Without a displacement * map set, this value is not applied. * @@ -7334,7 +6811,7 @@ index 4003cc6aa..22d1322e4 100644 * @default 0 */ displacementScale: number; -@@ -178,7 +139,6 @@ export class MeshToonMaterial extends Material { +@@ -206,7 +175,6 @@ export class MeshToonMaterial extends Material { * The bias is added to the scaled sample of the displacement map. * Without a displacement map set, this value is not applied. * @@ -7342,14 +6819,7 @@ index 4003cc6aa..22d1322e4 100644 * @default 0 */ displacementBias: number; -@@ -192,14 +152,12 @@ export class MeshToonMaterial extends Material { - * green in DXT-compressed and uncompressed RGB 565 formats. Luminance-only and - * luminance/alpha textures will also still work as expected. - * -- * @type {?Texture} - * @default null - */ - alphaMap: Texture | null; +@@ -230,7 +198,6 @@ export class MeshToonMaterial extends Material { /** * Renders the geometry as a wireframe. * @@ -7357,7 +6827,7 @@ index 4003cc6aa..22d1322e4 100644 * @default false */ wireframe: boolean; -@@ -208,7 +166,6 @@ export class MeshToonMaterial extends Material { +@@ -239,7 +206,6 @@ export class MeshToonMaterial extends Material { * * Can only be used with {@link SVGRenderer}. * @@ -7365,7 +6835,7 @@ index 4003cc6aa..22d1322e4 100644 * @default 1 */ wireframeLinewidth: number; -@@ -217,7 +174,6 @@ export class MeshToonMaterial extends Material { +@@ -248,7 +214,6 @@ export class MeshToonMaterial extends Material { * * Can only be used with {@link SVGRenderer}. * @@ -7373,7 +6843,7 @@ index 4003cc6aa..22d1322e4 100644 * @default 'round' */ wireframeLinecap: ("round" | "bevel" | "miter"); -@@ -226,19 +182,42 @@ export class MeshToonMaterial extends Material { +@@ -257,19 +222,42 @@ export class MeshToonMaterial extends Material { * * Can only be used with {@link SVGRenderer}. * @@ -7423,7 +6893,7 @@ index 4003cc6aa..22d1322e4 100644 +// eslint-disable-next-line @typescript-eslint/no-empty-interface +export interface MeshToonMaterial extends MeshToonMaterialProperties {} diff --git a/jsdoc-testing/jsdoc/src/materials/PointsMaterial.d.ts b/jsdoc-testing/jsdoc/src/materials/PointsMaterial.d.ts -index b6869b31b..30892740e 100644 +index 69665f811..f6da027aa 100644 --- a/jsdoc-testing/jsdoc/src/materials/PointsMaterial.d.ts +++ b/jsdoc-testing/jsdoc/src/materials/PointsMaterial.d.ts @@ -1,52 +1,11 @@ @@ -7484,23 +6954,7 @@ index b6869b31b..30892740e 100644 * @default (1,1,1) */ color: Color; -@@ -55,7 +14,6 @@ export class PointsMaterial extends Material { - * with {@link Material#transparent} or {@link Material#alphaTest}. The texture map - * color is modulated by the diffuse `color`. - * -- * @type {?Texture} - * @default null - */ - map: Texture | null; -@@ -69,7 +27,6 @@ export class PointsMaterial extends Material { - * green in DXT-compressed and uncompressed RGB 565 formats. Luminance-only and - * luminance/alpha textures will also still work as expected. - * -- * @type {?Texture} - * @default null - */ - alphaMap: Texture | null; -@@ -78,25 +35,68 @@ export class PointsMaterial extends Material { +@@ -85,25 +44,68 @@ export class PointsMaterial extends Material { * * Might be capped if the value exceeds hardware dependent parameters like [gl.ALIASED_POINT_SIZE_RANGE](https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext/getParamete). * @@ -8110,7 +7564,7 @@ index 2e66a5668..6f44ea4ef 100644 +// eslint-disable-next-line @typescript-eslint/no-empty-interface +export interface ShadowMaterial extends ShadowMaterialProperties {} diff --git a/jsdoc-testing/jsdoc/src/materials/SpriteMaterial.d.ts b/jsdoc-testing/jsdoc/src/materials/SpriteMaterial.d.ts -index e44d5d72d..f676390c3 100644 +index dfe9816f7..aa354534b 100644 --- a/jsdoc-testing/jsdoc/src/materials/SpriteMaterial.d.ts +++ b/jsdoc-testing/jsdoc/src/materials/SpriteMaterial.d.ts @@ -1,41 +1,11 @@ @@ -8160,22 +7614,7 @@ index e44d5d72d..f676390c3 100644 * @default (1,1,1) */ color: Color; -@@ -44,7 +14,6 @@ export class SpriteMaterial extends Material { - * with {@link Material#transparent} or {@link Material#alphaTest}. The texture map - * color is modulated by the diffuse `color`. - * -- * @type {?Texture} - * @default null - */ - map: Texture | null; -@@ -58,32 +27,63 @@ export class SpriteMaterial extends Material { - * green in DXT-compressed and uncompressed RGB 565 formats. Luminance-only and - * luminance/alpha textures will also still work as expected. - * -- * @type {?Texture} - * @default null - */ - alphaMap: Texture | null; +@@ -72,25 +42,57 @@ export class SpriteMaterial extends Material { /** * The rotation of the sprite in radians. * diff --git a/three.js b/three.js index 0b6dc718c..d59cf621f 160000 --- a/three.js +++ b/three.js @@ -1 +1 @@ -Subproject commit 0b6dc718c923122d81590fa0e595a7ef85851808 +Subproject commit d59cf621fbdc7ee35068008fd5007a3b2653e881 diff --git a/types/three/src/materials/LineBasicMaterial.d.ts b/types/three/src/materials/LineBasicMaterial.d.ts index 32ebeefc7..905aaafe6 100644 --- a/types/three/src/materials/LineBasicMaterial.d.ts +++ b/types/three/src/materials/LineBasicMaterial.d.ts @@ -13,6 +13,11 @@ export interface LineBasicMaterialProperties extends MaterialProperties { * Sets the color of the lines using data from a texture. The texture map * color is modulated by the diffuse `color`. * + * `map` represents color data, and the texture must be assigned a + * {@link Texture#colorSpace}. Most `map` textures set + * `texture.colorSpace = SRGBColorSpace`. + * + * @type {?Texture} * @default null */ map: Texture | null; diff --git a/types/three/src/materials/MeshBasicMaterial.d.ts b/types/three/src/materials/MeshBasicMaterial.d.ts index cfe54992a..a36b4e9c9 100644 --- a/types/three/src/materials/MeshBasicMaterial.d.ts +++ b/types/three/src/materials/MeshBasicMaterial.d.ts @@ -16,12 +16,23 @@ export interface MeshBasicMaterialProperties extends MaterialProperties { * with {@link Material#transparent} or {@link Material#alphaTest}. The texture map * color is modulated by the diffuse `color`. * + * `map` represents color data, and the texture must be assigned a + * {@link Texture#colorSpace}. Most `map` textures set + * `texture.colorSpace = SRGBColorSpace`. + * + * @type {?Texture} * @default null */ map: Texture | null; /** * The light map. Requires a second set of UVs. * + * `lightMap` represents pre-baked illuminance data, and the texture must be assigned + * a {@link Texture#colorSpace}. Most `lightMap` textures set + * `texture.colorSpace = LinearSRGBColorSpace` and use float-type formats + * such as `.exr` or `.hdr`. + * + * @type {?Texture} * @default null */ lightMap: Texture | null; @@ -35,6 +46,10 @@ export interface MeshBasicMaterialProperties extends MaterialProperties { * The red channel of this texture is used as the ambient occlusion map. * Requires a second set of UVs. * + * `aoMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ aoMap: Texture | null; @@ -49,6 +64,11 @@ export interface MeshBasicMaterialProperties extends MaterialProperties { /** * Specular map used by the material. * + * `specularMap` represents color data, and the texture must be assigned a + * {@link Texture#colorSpace}. Most `specularMap` textures set + * `texture.colorSpace = SRGBColorSpace`. + * + * @type {?Texture} * @default null */ specularMap: Texture | null; @@ -62,12 +82,22 @@ export interface MeshBasicMaterialProperties extends MaterialProperties { * green in DXT-compressed and uncompressed RGB 565 formats. Luminance-only and * luminance/alpha textures will also still work as expected. * + * `alphaMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ alphaMap: Texture | null; /** * The environment map. * + * `envMap` represents luminance data, and the texture must be assigned + * a {@link Texture#colorSpace}. Most `envMap` textures set + * `texture.colorSpace = LinearSRGBColorSpace` and use float-type formats + * such as `.exr` or `.hdr`. + * + * @type {?Texture} * @default null */ envMap: Texture | null; diff --git a/types/three/src/materials/MeshDepthMaterial.d.ts b/types/three/src/materials/MeshDepthMaterial.d.ts index 0ac60817a..9c4d2b586 100644 --- a/types/three/src/materials/MeshDepthMaterial.d.ts +++ b/types/three/src/materials/MeshDepthMaterial.d.ts @@ -13,6 +13,11 @@ export interface MeshDepthMaterialProperties extends MaterialProperties { * The color map. May optionally include an alpha channel, typically combined * with {@link Material#transparent} or {@link Material#alphaTest}. * + * `map` represents color data, and the texture must be assigned a + * {@link Texture#colorSpace}. Most `map` textures set + * `texture.colorSpace = SRGBColorSpace`. + * + * @type {?Texture} * @default null */ map: Texture | null; @@ -26,6 +31,10 @@ export interface MeshDepthMaterialProperties extends MaterialProperties { * green in DXT-compressed and uncompressed RGB 565 formats. Luminance-only and * luminance/alpha textures will also still work as expected. * + * `alphaMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ alphaMap: Texture | null; @@ -37,6 +46,10 @@ export interface MeshDepthMaterialProperties extends MaterialProperties { * of each pixel (white being the highest) is mapped against, and * repositions, the vertices of the mesh. * + * `displacementMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ displacementMap: Texture | null; diff --git a/types/three/src/materials/MeshDistanceMaterial.d.ts b/types/three/src/materials/MeshDistanceMaterial.d.ts index b704fc907..43f9128e3 100644 --- a/types/three/src/materials/MeshDistanceMaterial.d.ts +++ b/types/three/src/materials/MeshDistanceMaterial.d.ts @@ -6,6 +6,11 @@ export interface MeshDistanceMaterialProperties extends MaterialProperties { * The color map. May optionally include an alpha channel, typically combined * with {@link Material#transparent} or {@link Material#alphaTest}. * + * `map` represents color data, and the texture must be assigned a + * {@link Texture#colorSpace}. Most `map` textures set + * `texture.colorSpace = SRGBColorSpace`. + * + * @type {?Texture} * @default null */ map: Texture | null; @@ -19,6 +24,10 @@ export interface MeshDistanceMaterialProperties extends MaterialProperties { * green in DXT-compressed and uncompressed RGB 565 formats. Luminance-only and * luminance/alpha textures will also still work as expected. * + * `alphaMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ alphaMap: Texture | null; @@ -30,6 +39,10 @@ export interface MeshDistanceMaterialProperties extends MaterialProperties { * of each pixel (white being the highest) is mapped against, and * repositions, the vertices of the mesh. * + * `displacementMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ displacementMap: Texture | null; diff --git a/types/three/src/materials/MeshLambertMaterial.d.ts b/types/three/src/materials/MeshLambertMaterial.d.ts index 4f96bab32..15f8d91b8 100644 --- a/types/three/src/materials/MeshLambertMaterial.d.ts +++ b/types/three/src/materials/MeshLambertMaterial.d.ts @@ -17,12 +17,23 @@ export interface MeshLambertMaterialProperties extends MaterialProperties { * with {@link Material#transparent} or {@link Material#alphaTest}. The texture map * color is modulated by the diffuse `color`. * + * `map` represents color data, and the texture must be assigned a + * {@link Texture#colorSpace}. Most `map` textures set + * `texture.colorSpace = SRGBColorSpace`. + * + * @type {?Texture} * @default null */ map: Texture | null; /** * The light map. Requires a second set of UVs. * + * `lightMap` represents pre-baked illuminance data, and the texture must be assigned + * a {@link Texture#colorSpace}. Most `lightMap` textures set + * `texture.colorSpace = LinearSRGBColorSpace` and use float-type formats + * such as `.exr` or `.hdr`. + * + * @type {?Texture} * @default null */ lightMap: Texture | null; @@ -36,6 +47,10 @@ export interface MeshLambertMaterialProperties extends MaterialProperties { * The red channel of this texture is used as the ambient occlusion map. * Requires a second set of UVs. * + * `aoMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ aoMap: Texture | null; @@ -65,6 +80,11 @@ export interface MeshLambertMaterialProperties extends MaterialProperties { * emissive color and the emissive intensity. If you have an emissive map, * be sure to set the emissive color to something other than black. * + * `emissiveMap` represents color data, and the texture must be assigned a + * {@link Texture#colorSpace}. Most `emissiveMap` textures set + * `texture.colorSpace = SRGBColorSpace`. + * + * @type {?Texture} * @default null */ emissiveMap: Texture | null; @@ -74,6 +94,10 @@ export interface MeshLambertMaterialProperties extends MaterialProperties { * the geometry of the object, only the lighting. If a normal map is defined * this will be ignored. * + * `bumpMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ bumpMap: Texture | null; @@ -91,6 +115,10 @@ export interface MeshLambertMaterialProperties extends MaterialProperties { * convention, the `y` component of `normalScale` should be negated to compensate * for the different handedness. * + * `normalMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ normalMap: Texture | null; @@ -116,6 +144,10 @@ export interface MeshLambertMaterialProperties extends MaterialProperties { * displacement map with a matching normal map, since the renderer can * not recompute surface normals from the displaced vertices. * + * `displacementMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ displacementMap: Texture | null; @@ -138,6 +170,11 @@ export interface MeshLambertMaterialProperties extends MaterialProperties { /** * Specular map used by the material. * + * `specularMap` represents color data, and the texture must be assigned a + * {@link Texture#colorSpace}. Most `specularMap` textures set + * `texture.colorSpace = SRGBColorSpace`. + * + * @type {?Texture} * @default null */ specularMap: Texture | null; @@ -151,12 +188,22 @@ export interface MeshLambertMaterialProperties extends MaterialProperties { * green in DXT-compressed and uncompressed RGB 565 formats. Luminance-only and * luminance/alpha textures will also still work as expected. * + * `alphaMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ alphaMap: Texture | null; /** * The environment map. * + * `envMap` represents luminance data, and the texture must be assigned + * a {@link Texture#colorSpace}. Most `envMap` textures set + * `texture.colorSpace = LinearSRGBColorSpace` and use float-type formats + * such as `.exr` or `.hdr`. + * + * @type {?Texture} * @default null */ envMap: Texture | null; diff --git a/types/three/src/materials/MeshMatcapMaterial.d.ts b/types/three/src/materials/MeshMatcapMaterial.d.ts index e76eafaf7..cd386a253 100644 --- a/types/three/src/materials/MeshMatcapMaterial.d.ts +++ b/types/three/src/materials/MeshMatcapMaterial.d.ts @@ -14,6 +14,13 @@ export interface MeshMatcapMaterialProperties extends MaterialProperties { /** * The matcap map. * + * `matcap` represents luminance data, and the texture must be assigned + * a {@link Texture#colorSpace}. HDR `matcap` textures (e.g. `.exr`) + * typically set `texture.colorSpace = LinearSRGBColorSpace`, while LDR + * `matcap` textures (e.g. `.png`, `.jpg`, `.webp`) typically set + * `texture.colorSpace = SRGBColorSpace`. + * + * @type {?Texture} * @default null */ matcap: Texture | null; @@ -22,6 +29,11 @@ export interface MeshMatcapMaterialProperties extends MaterialProperties { * with {@link Material#transparent} or {@link Material#alphaTest}. The texture map * color is modulated by the diffuse `color`. * + * `map` represents color data, and the texture must be assigned a + * {@link Texture#colorSpace}. Most `map` textures set + * `texture.colorSpace = SRGBColorSpace`. + * + * @type {?Texture} * @default null */ map: Texture | null; @@ -31,6 +43,10 @@ export interface MeshMatcapMaterialProperties extends MaterialProperties { * the geometry of the object, only the lighting. If a normal map is defined * this will be ignored. * + * `bumpMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ bumpMap: Texture | null; @@ -48,6 +64,10 @@ export interface MeshMatcapMaterialProperties extends MaterialProperties { * convention, the `y` component of `normalScale` should be negated to compensate * for the different handedness. * + * `normalMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ normalMap: Texture | null; @@ -73,6 +93,10 @@ export interface MeshMatcapMaterialProperties extends MaterialProperties { * displacement map with a matching normal map, since the renderer can * not recompute surface normals from the displaced vertices. * + * `displacementMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ displacementMap: Texture | null; @@ -102,6 +126,10 @@ export interface MeshMatcapMaterialProperties extends MaterialProperties { * green in DXT-compressed and uncompressed RGB 565 formats. Luminance-only and * luminance/alpha textures will also still work as expected. * + * `alphaMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ alphaMap: Texture | null; diff --git a/types/three/src/materials/MeshNormalMaterial.d.ts b/types/three/src/materials/MeshNormalMaterial.d.ts index e6a5da3cd..43310f976 100644 --- a/types/three/src/materials/MeshNormalMaterial.d.ts +++ b/types/three/src/materials/MeshNormalMaterial.d.ts @@ -10,6 +10,10 @@ export interface MeshNormalMaterialProperties extends MaterialProperties { * the geometry of the object, only the lighting. If a normal map is defined * this will be ignored. * + * `bumpMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ bumpMap: Texture | null; @@ -27,6 +31,10 @@ export interface MeshNormalMaterialProperties extends MaterialProperties { * convention, the `y` component of `normalScale` should be negated to compensate * for the different handedness. * + * `normalMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ normalMap: Texture | null; diff --git a/types/three/src/materials/MeshPhongMaterial.d.ts b/types/three/src/materials/MeshPhongMaterial.d.ts index b1f13c609..2ef81d856 100644 --- a/types/three/src/materials/MeshPhongMaterial.d.ts +++ b/types/three/src/materials/MeshPhongMaterial.d.ts @@ -29,12 +29,23 @@ export interface MeshPhongMaterialProperties extends MaterialProperties { * with {@link Material#transparent} or {@link Material#alphaTest}. The texture map * color is modulated by the diffuse `color`. * + * `map` represents color data, and the texture must be assigned a + * {@link Texture#colorSpace}. Most `map` textures set + * `texture.colorSpace = SRGBColorSpace`. + * + * @type {?Texture} * @default null */ map: Texture | null; /** * The light map. Requires a second set of UVs. * + * `lightMap` represents pre-baked illuminance data, and the texture must be assigned + * a {@link Texture#colorSpace}. Most `lightMap` textures set + * `texture.colorSpace = LinearSRGBColorSpace` and use float-type formats + * such as `.exr` or `.hdr`. + * + * @type {?Texture} * @default null */ lightMap: Texture | null; @@ -48,6 +59,10 @@ export interface MeshPhongMaterialProperties extends MaterialProperties { * The red channel of this texture is used as the ambient occlusion map. * Requires a second set of UVs. * + * `aoMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ aoMap: Texture | null; @@ -77,6 +92,11 @@ export interface MeshPhongMaterialProperties extends MaterialProperties { * emissive color and the emissive intensity. If you have an emissive map, * be sure to set the emissive color to something other than black. * + * `emissiveMap` represents color data, and the texture must be assigned a + * {@link Texture#colorSpace}. Most `emissiveMap` textures set + * `texture.colorSpace = SRGBColorSpace`. + * + * @type {?Texture} * @default null */ emissiveMap: Texture | null; @@ -86,6 +106,10 @@ export interface MeshPhongMaterialProperties extends MaterialProperties { * the geometry of the object, only the lighting. If a normal map is defined * this will be ignored. * + * `bumpMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ bumpMap: Texture | null; @@ -103,6 +127,10 @@ export interface MeshPhongMaterialProperties extends MaterialProperties { * convention, the `y` component of `normalScale` should be negated to compensate * for the different handedness. * + * `normalMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ normalMap: Texture | null; @@ -128,6 +156,10 @@ export interface MeshPhongMaterialProperties extends MaterialProperties { * displacement map with a matching normal map, since the renderer can * not recompute surface normals from the displaced vertices. * + * `displacementMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ displacementMap: Texture | null; @@ -152,6 +184,11 @@ export interface MeshPhongMaterialProperties extends MaterialProperties { * highlight contributes and how much of the environment map affects the * surface. * + * `specularMap` represents color data, and the texture must be assigned a + * {@link Texture#colorSpace}. Most `specularMap` textures set + * `texture.colorSpace = SRGBColorSpace`. + * + * @type {?Texture} * @default null */ specularMap: Texture | null; @@ -165,12 +202,22 @@ export interface MeshPhongMaterialProperties extends MaterialProperties { * green in DXT-compressed and uncompressed RGB 565 formats. Luminance-only and * luminance/alpha textures will also still work as expected. * + * `alphaMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ alphaMap: Texture | null; /** * The environment map. * + * `envMap` represents luminance data, and the texture must be assigned + * a {@link Texture#colorSpace}. Most `envMap` textures set + * `texture.colorSpace = LinearSRGBColorSpace` and use float-type formats + * such as `.exr` or `.hdr`. + * + * @type {?Texture} * @default null */ envMap: Texture | null; diff --git a/types/three/src/materials/MeshPhysicalMaterial.d.ts b/types/three/src/materials/MeshPhysicalMaterial.d.ts index 5dc1ad6e4..581d5b3a5 100644 --- a/types/three/src/materials/MeshPhysicalMaterial.d.ts +++ b/types/three/src/materials/MeshPhysicalMaterial.d.ts @@ -18,6 +18,10 @@ export interface MeshPhysicalMaterialProperties extends MeshStandardMaterialProp * bitangent space, to be rotated by `anisotropyRotation`. The blue channel * contains strength as `[0, 1]` to be multiplied by `anisotropy`. * + * `anisotropyMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ anisotropyMap: Texture | null; @@ -25,6 +29,10 @@ export interface MeshPhysicalMaterialProperties extends MeshStandardMaterialProp * The red channel of this texture is multiplied against `clearcoat`, * for per-pixel control over a coating's intensity. * + * `clearcoatMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ clearcoatMap: Texture | null; @@ -38,6 +46,10 @@ export interface MeshPhysicalMaterialProperties extends MeshStandardMaterialProp * The green channel of this texture is multiplied against * `clearcoatRoughness`, for per-pixel control over a coating's roughness. * + * `clearcoatRoughnessMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ clearcoatRoughnessMap: Texture | null; @@ -51,6 +63,10 @@ export interface MeshPhysicalMaterialProperties extends MeshStandardMaterialProp /** * Can be used to enable independent normals for the clear coat layer. * + * `clearcoatNormalMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ clearcoatNormalMap: Texture | null; @@ -76,6 +92,10 @@ export interface MeshPhysicalMaterialProperties extends MeshStandardMaterialProp * The red channel of this texture is multiplied against `iridescence`, for per-pixel * control over iridescence. * + * `iridescenceMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ iridescenceMap: Texture | null; @@ -100,6 +120,10 @@ export interface MeshPhysicalMaterialProperties extends MeshStandardMaterialProp * - `1.0` in the green channel will result in thickness equal to second element of the array. * - Values in-between will linearly interpolate between the elements of the array. * + * `iridescenceThicknessMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ iridescenceThicknessMap: Texture | null; @@ -113,6 +137,11 @@ export interface MeshPhysicalMaterialProperties extends MeshStandardMaterialProp * The RGB channels of this texture are multiplied against `sheenColor`, for per-pixel control * over sheen tint. * + * `sheenColorMap` represents color data, and the texture must be assigned a + * {@link Texture#colorSpace}. Most `sheenColorMap` textures set + * `texture.colorSpace = SRGBColorSpace`. + * + * @type {?Texture} * @default null */ sheenColorMap: Texture | null; @@ -126,6 +155,10 @@ export interface MeshPhysicalMaterialProperties extends MeshStandardMaterialProp * The alpha channel of this texture is multiplied against `sheenRoughness`, for per-pixel control * over sheen roughness. * + * `sheenRoughnessMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ sheenRoughnessMap: Texture | null; @@ -133,6 +166,10 @@ export interface MeshPhysicalMaterialProperties extends MeshStandardMaterialProp * The red channel of this texture is multiplied against `transmission`, for per-pixel control over * optical transparency. * + * `transmissionMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ transmissionMap: Texture | null; @@ -148,6 +185,10 @@ export interface MeshPhysicalMaterialProperties extends MeshStandardMaterialProp * A texture that defines the thickness, stored in the green channel. This will * be multiplied by `thickness`. * + * `thicknessMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ thicknessMap: Texture | null; @@ -177,6 +218,10 @@ export interface MeshPhysicalMaterialProperties extends MeshStandardMaterialProp * The alpha channel of this texture is multiplied against `specularIntensity`, * for per-pixel control over specular intensity. * + * `specularIntensityMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ specularIntensityMap: Texture | null; @@ -190,6 +235,11 @@ export interface MeshPhysicalMaterialProperties extends MeshStandardMaterialProp * The RGB channels of this texture are multiplied against `specularColor`, * for per-pixel control over specular color. * + * `specularColorMap` represents color data, and the texture must be assigned a + * {@link Texture#colorSpace}. Most `specularColorMap` textures set + * `texture.colorSpace = SRGBColorSpace`. + * + * @type {?Texture} * @default null */ specularColorMap: Texture | null; diff --git a/types/three/src/materials/MeshStandardMaterial.d.ts b/types/three/src/materials/MeshStandardMaterial.d.ts index 8314bb396..0d5318e22 100644 --- a/types/three/src/materials/MeshStandardMaterial.d.ts +++ b/types/three/src/materials/MeshStandardMaterial.d.ts @@ -34,12 +34,23 @@ export interface MeshStandardMaterialProperties extends MaterialProperties { * with {@link Material#transparent} or {@link Material#alphaTest}. The texture map * color is modulated by the diffuse `color`. * + * `map` represents color data, and the texture must be assigned a + * {@link Texture#colorSpace}. Most `map` textures set + * `texture.colorSpace = SRGBColorSpace`. + * + * @type {?Texture} * @default null */ map: Texture | null; /** * The light map. Requires a second set of UVs. * + * `lightMap` represents pre-baked illuminance data, and the texture must be assigned + * a {@link Texture#colorSpace}. Most `lightMap` textures set + * `texture.colorSpace = LinearSRGBColorSpace` and use float-type formats + * such as `.exr` or `.hdr`. + * + * @type {?Texture} * @default null */ lightMap: Texture | null; @@ -53,6 +64,10 @@ export interface MeshStandardMaterialProperties extends MaterialProperties { * The red channel of this texture is used as the ambient occlusion map. * Requires a second set of UVs. * + * `aoMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ aoMap: Texture | null; @@ -82,6 +97,11 @@ export interface MeshStandardMaterialProperties extends MaterialProperties { * emissive color and the emissive intensity. If you have an emissive map, * be sure to set the emissive color to something other than black. * + * `emissiveMap` represents color data, and the texture must be assigned a + * {@link Texture#colorSpace}. Most `emissiveMap` textures set + * `texture.colorSpace = SRGBColorSpace`. + * + * @type {?Texture} * @default null */ emissiveMap: Texture | null; @@ -91,6 +111,10 @@ export interface MeshStandardMaterialProperties extends MaterialProperties { * the geometry of the object, only the lighting. If a normal map is defined * this will be ignored. * + * `bumpMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ bumpMap: Texture | null; @@ -108,6 +132,10 @@ export interface MeshStandardMaterialProperties extends MaterialProperties { * convention, the `y` component of `normalScale` should be negated to compensate * for the different handedness. * + * `normalMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ normalMap: Texture | null; @@ -133,6 +161,10 @@ export interface MeshStandardMaterialProperties extends MaterialProperties { * displacement map with a matching normal map, since the renderer can * not recompute surface normals from the displaced vertices. * + * `displacementMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ displacementMap: Texture | null; @@ -156,6 +188,10 @@ export interface MeshStandardMaterialProperties extends MaterialProperties { * The green channel of this texture is used to alter the roughness of the * material. * + * `roughnessMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ roughnessMap: Texture | null; @@ -163,6 +199,10 @@ export interface MeshStandardMaterialProperties extends MaterialProperties { * The blue channel of this texture is used to alter the metalness of the * material. * + * `metalnessMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ metalnessMap: Texture | null; @@ -176,6 +216,10 @@ export interface MeshStandardMaterialProperties extends MaterialProperties { * green in DXT-compressed and uncompressed RGB 565 formats. Luminance-only and * luminance/alpha textures will also still work as expected. * + * `alphaMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ alphaMap: Texture | null; @@ -183,6 +227,12 @@ export interface MeshStandardMaterialProperties extends MaterialProperties { * The environment map. To ensure a physically correct rendering, environment maps * are internally pre-processed with {@link PMREMGenerator}. * + * `envMap` represents luminance data, and the texture must be assigned + * a {@link Texture#colorSpace}. Most `envMap` textures set + * `texture.colorSpace = LinearSRGBColorSpace` and use float-type formats + * such as `.exr` or `.hdr`. + * + * @type {?Texture} * @default null */ envMap: Texture | null; diff --git a/types/three/src/materials/MeshToonMaterial.d.ts b/types/three/src/materials/MeshToonMaterial.d.ts index de2640d3b..558b45faa 100644 --- a/types/three/src/materials/MeshToonMaterial.d.ts +++ b/types/three/src/materials/MeshToonMaterial.d.ts @@ -16,6 +16,11 @@ export interface MeshToonMaterialProperties extends MaterialProperties { * with {@link Material#transparent} or {@link Material#alphaTest}. The texture map * color is modulated by the diffuse `color`. * + * `map` represents color data, and the texture must be assigned a + * {@link Texture#colorSpace}. Most `map` textures set + * `texture.colorSpace = SRGBColorSpace`. + * + * @type {?Texture} * @default null */ map: Texture | null; @@ -24,12 +29,22 @@ export interface MeshToonMaterialProperties extends MaterialProperties { * {@link Texture#minFilter} and {@link Texture#magFilter} to {@link NearestFilter} * when using this type of texture. * + * `gradientMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ gradientMap: Texture | null; /** * The light map. Requires a second set of UVs. * + * `lightMap` represents pre-baked illuminance data, and the texture must be assigned + * a {@link Texture#colorSpace}. Most `lightMap` textures set + * `texture.colorSpace = LinearSRGBColorSpace` and use float-type formats + * such as `.exr` or `.hdr`. + * + * @type {?Texture} * @default null */ lightMap: Texture | null; @@ -43,6 +58,10 @@ export interface MeshToonMaterialProperties extends MaterialProperties { * The red channel of this texture is used as the ambient occlusion map. * Requires a second set of UVs. * + * `aoMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ aoMap: Texture | null; @@ -72,6 +91,11 @@ export interface MeshToonMaterialProperties extends MaterialProperties { * emissive color and the emissive intensity. If you have an emissive map, * be sure to set the emissive color to something other than black. * + * `emissiveMap` represents color data, and the texture must be assigned a + * {@link Texture#colorSpace}. Most `emissiveMap` textures set + * `texture.colorSpace = SRGBColorSpace`. + * + * @type {?Texture} * @default null */ emissiveMap: Texture | null; @@ -81,6 +105,10 @@ export interface MeshToonMaterialProperties extends MaterialProperties { * the geometry of the object, only the lighting. If a normal map is defined * this will be ignored. * + * `bumpMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ bumpMap: Texture | null; @@ -98,6 +126,10 @@ export interface MeshToonMaterialProperties extends MaterialProperties { * convention, the `y` component of `normalScale` should be negated to compensate * for the different handedness. * + * `normalMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ normalMap: Texture | null; @@ -123,6 +155,10 @@ export interface MeshToonMaterialProperties extends MaterialProperties { * displacement map with a matching normal map, since the renderer can * not recompute surface normals from the displaced vertices. * + * `displacementMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ displacementMap: Texture | null; @@ -152,6 +188,10 @@ export interface MeshToonMaterialProperties extends MaterialProperties { * green in DXT-compressed and uncompressed RGB 565 formats. Luminance-only and * luminance/alpha textures will also still work as expected. * + * `alphaMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ alphaMap: Texture | null; diff --git a/types/three/src/materials/PointsMaterial.d.ts b/types/three/src/materials/PointsMaterial.d.ts index 3cdc56177..4c873f686 100644 --- a/types/three/src/materials/PointsMaterial.d.ts +++ b/types/three/src/materials/PointsMaterial.d.ts @@ -14,6 +14,11 @@ export interface PointsMaterialProperties extends MaterialProperties { * with {@link Material#transparent} or {@link Material#alphaTest}. The texture map * color is modulated by the diffuse `color`. * + * `map` represents color data, and the texture must be assigned a + * {@link Texture#colorSpace}. Most `map` textures set + * `texture.colorSpace = SRGBColorSpace`. + * + * @type {?Texture} * @default null */ map: Texture | null; @@ -27,6 +32,10 @@ export interface PointsMaterialProperties extends MaterialProperties { * green in DXT-compressed and uncompressed RGB 565 formats. Luminance-only and * luminance/alpha textures will also still work as expected. * + * `alphaMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ alphaMap: Texture | null; diff --git a/types/three/src/materials/SpriteMaterial.d.ts b/types/three/src/materials/SpriteMaterial.d.ts index e5fff0a18..03abf16df 100644 --- a/types/three/src/materials/SpriteMaterial.d.ts +++ b/types/three/src/materials/SpriteMaterial.d.ts @@ -14,6 +14,11 @@ export interface SpriteMaterialProperties extends MaterialProperties { * with {@link Material#transparent} or {@link Material#alphaTest}. The texture map * color is modulated by the diffuse `color`. * + * `map` represents color data, and the texture must be assigned a + * {@link Texture#colorSpace}. Most `map` textures set + * `texture.colorSpace = SRGBColorSpace`. + * + * @type {?Texture} * @default null */ map: Texture | null; @@ -27,6 +32,10 @@ export interface SpriteMaterialProperties extends MaterialProperties { * green in DXT-compressed and uncompressed RGB 565 formats. Luminance-only and * luminance/alpha textures will also still work as expected. * + * `alphaMap` represents non-color data. Any texture assigned must have + * `texture.colorSpace = NoColorSpace` (default). + * + * @type {?Texture} * @default null */ alphaMap: Texture | null;