@tresjs/cientos 3.6.0 → 3.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/README.md +7 -6
  2. package/dist/core/abstractions/GlobalAudio.d.ts +1 -1
  3. package/dist/core/abstractions/Lensflare/component.vue.d.ts +52 -14
  4. package/dist/core/abstractions/Levioso.vue.d.ts +1 -1
  5. package/dist/core/abstractions/MouseParallax.vue.d.ts +1 -1
  6. package/dist/core/abstractions/Reflector.vue.d.ts +107 -0
  7. package/dist/core/abstractions/Text3D.vue.d.ts +2 -2
  8. package/dist/core/abstractions/index.d.ts +4 -1
  9. package/dist/core/abstractions/useFBO/component.vue.d.ts +1 -1
  10. package/dist/core/abstractions/useSurfaceSampler/component.vue.d.ts +21 -0
  11. package/dist/core/abstractions/useSurfaceSampler/index.d.ts +620 -0
  12. package/dist/core/controls/CameraControls.vue.d.ts +959 -1034
  13. package/dist/core/controls/KeyboardControls.vue.d.ts +1 -1
  14. package/dist/core/controls/MapControls.vue.d.ts +1 -1
  15. package/dist/core/controls/OrbitControls.vue.d.ts +893 -963
  16. package/dist/core/controls/PointerLockControls.vue.d.ts +3 -1
  17. package/dist/core/controls/ScrollControls.vue.d.ts +1 -1
  18. package/dist/core/controls/TransformControls.vue.d.ts +1 -1
  19. package/dist/core/loaders/SVG/component.vue.d.ts +1 -1
  20. package/dist/core/loaders/useFBX/component.vue.d.ts +44 -3
  21. package/dist/core/loaders/useGLTF/component.vue.d.ts +31 -1
  22. package/dist/core/loaders/useGLTF/index.d.ts +1 -1
  23. package/dist/core/materials/blurPass.d.ts +22 -0
  24. package/dist/core/materials/convolutionMaterial.d.ts +7 -0
  25. package/dist/core/materials/customShaderMaterial/index.vue.d.ts +1 -1
  26. package/dist/core/materials/index.d.ts +2 -1
  27. package/dist/core/materials/meshGlassMaterial/index.vue.d.ts +1 -1
  28. package/dist/core/materials/meshReflectionMaterial/index.vue.d.ts +74 -0
  29. package/dist/core/materials/meshReflectionMaterial/material.d.ts +51 -0
  30. package/dist/core/materials/meshWobbleMaterial/index.vue.d.ts +1 -1
  31. package/dist/core/misc/BakeShadows.d.ts +1 -0
  32. package/dist/core/misc/Stats.d.ts +1 -1
  33. package/dist/core/misc/StatsGl.d.ts +1 -1
  34. package/dist/core/misc/html/HTML.vue.d.ts +3 -3
  35. package/dist/core/misc/index.d.ts +3 -1
  36. package/dist/core/misc/useGLTFExporter.d.ts +12 -0
  37. package/dist/core/shapes/Box.vue.d.ts +1 -1
  38. package/dist/core/shapes/CatmullRomCurve3.vue.d.ts +1 -1
  39. package/dist/core/shapes/Circle.vue.d.ts +1 -1
  40. package/dist/core/shapes/Cone.vue.d.ts +1 -1
  41. package/dist/core/shapes/Dodecahedron.vue.d.ts +1 -1
  42. package/dist/core/shapes/Icosahedron.vue.d.ts +1 -1
  43. package/dist/core/shapes/Line2.vue.d.ts +1 -1
  44. package/dist/core/shapes/Octahedron.vue.d.ts +1 -1
  45. package/dist/core/shapes/Plane.vue.d.ts +1 -1
  46. package/dist/core/shapes/Ring.vue.d.ts +1 -1
  47. package/dist/core/shapes/Sphere.vue.d.ts +1 -1
  48. package/dist/core/shapes/Superformula.vue.d.ts +1 -1
  49. package/dist/core/shapes/Tetrahedron.vue.d.ts +1 -1
  50. package/dist/core/shapes/Torus.vue.d.ts +1 -1
  51. package/dist/core/shapes/TorusKnot.vue.d.ts +1 -1
  52. package/dist/core/shapes/Tube.vue.d.ts +1 -1
  53. package/dist/core/staging/Backdrop.vue.d.ts +1 -1
  54. package/dist/core/staging/Precipitation.vue.d.ts +2 -2
  55. package/dist/core/staging/Sky.vue.d.ts +23 -1
  56. package/dist/core/staging/Smoke.vue.d.ts +1 -1
  57. package/dist/core/staging/Sparkles/component.vue.d.ts +3 -3
  58. package/dist/core/staging/Stars.vue.d.ts +3 -3
  59. package/dist/trescientos.js +7769 -5714
  60. package/dist/trescientos.umd.cjs +302 -114
  61. package/dist/utils/constants.d.ts +1 -0
  62. package/package.json +26 -26
package/README.md CHANGED
@@ -1,7 +1,8 @@
1
1
  ![repository-banner.png](/public/repo-banner.png)
2
2
 
3
3
  <p align="center">
4
- <a href="https://www.npmjs.com/package/@tresjs/cientos"><img src="https://img.shields.io/npm/v/@tresjs/cientos/latest?color=%2382DBCA" alt="npm package"></a>
4
+ <a href="https://www.npmjs.com/package/@tresjs/cientos"><img src="https://img.shields.io/npm/v/@tresjs/cientos/latest?color=FBB03B" alt="npm package"></a>
5
+ <a href="https://www.npmjs.com/package/@tresjs/cientos"><img src="https://img.shields.io/npm/dm/@tresjs/cientos?color=FBB03B" alt="npm downloads"></a>
5
6
  <a href="https://discord.gg/UCr96AQmWn"><img src="https://img.shields.io/badge/chat-discord-purple?style=flat&logo=discord" alt="discord chat"></a>
6
7
  </p>
7
8
  <br/>
@@ -12,12 +13,12 @@
12
13
 
13
14
  - 💡 Build a 3D scene working only with Vue components.
14
15
  - ⚡️ Powered by Vite
15
- - 🥰 It brings all the updated features of ThreeJS right awayregardless the version
16
+ - 🥰 It brings all the updated features of ThreeJS right away regardless the version
16
17
  - 🦾 Fully Typed
17
18
 
18
- Cientos (Spanish word for "hundreds", pronounced /θjentos/ ) is is a collection of useful ready-to-go helpers and components that are not part of the core package. The name uses the word uses in spanish to multiply by 100, to refer to the potential reach of the package to hold a amazing abstractions.
19
+ Cientos (the Spanish word for "hundreds", pronounced /θjentos/ ) is a collection of useful ready-to-go helpers and components that are not part of the core package. The name uses the word used in Spanish to multiply by 100, to refer to the potential reach of the package to hold an amazing abstraction.
19
20
 
20
- The cientos package uses three-stdlib module under the hood instead of the three/examples/jsm module. This means that you don't need to extend the catalogue of components using the extend method from the `core`, cientos does it for you.
21
+ The cientos package uses `three-stdlib` module under the hood instead of the three/examples/jsm module. This means that you don't need to extend the catalog of components using the extend method from the `core`, cientos does it for you.
21
22
 
22
23
  It just works. 💯
23
24
 
@@ -49,9 +50,9 @@ pnpm run build
49
50
 
50
51
  ### Playground
51
52
 
52
- To run the playground run, its a great way to test the components and helpers locally:
53
+ To run the playground run, is a great way to test the components and helpers locally:
53
54
 
54
- First install dependencies
55
+ First, install dependencies
55
56
 
56
57
  ```
57
58
  pnpm i
@@ -47,4 +47,4 @@ export interface AudioProps {
47
47
  */
48
48
  playbackRate?: number;
49
49
  }
50
- export declare const GlobalAudio: import("vue").DefineComponent<AudioProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<AudioProps>, {}, {}>;
50
+ export declare const GlobalAudio: import("vue").DefineComponent<AudioProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<AudioProps>, {}, {}>;
@@ -1,32 +1,70 @@
1
1
  import { Lensflare } from 'three/examples/jsm/objects/Lensflare';
2
+ import type { Texture } from 'three';
3
+ import type { TresColor } from '@tresjs/core';
2
4
  import type { LensflareElementProps, SeedProps } from '.';
3
- declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Partial<LensflareElementProps> & {
4
- elements?: Partial<LensflareElementProps>[] | undefined;
5
- scale?: number | undefined;
6
- seed?: number | undefined;
7
- seedProps?: SeedProps[] | undefined;
8
- }>, {
9
- elements: undefined;
5
+ export interface LensflareProps {
6
+ /**
7
+ * scale of the lensflare
8
+ */
9
+ scale?: number;
10
+ /**
11
+ * array of lensflare element properties
12
+ */
13
+ elements?: Partial<LensflareElementProps>[];
14
+ /**
15
+ * random seed for generating random seeded elements
16
+ */
17
+ seed?: number;
18
+ /**
19
+ * specifications for generating random seeded elements
20
+ */
21
+ seedProps?: SeedProps[];
22
+ /**
23
+ * default color of lensflare elements
24
+ */
25
+ color?: TresColor;
26
+ /**
27
+ * default distance of lensflare elements from flare center
28
+ */
29
+ distance?: number;
30
+ /**
31
+ * default size of lensflare elements
32
+ */
33
+ size?: number;
34
+ /**
35
+ * default texture of lensflare elements
36
+ */
37
+ texture?: Texture | string[];
38
+ }
39
+ declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<LensflareProps>, {
10
40
  scale: number;
41
+ elements: undefined;
11
42
  seed: undefined;
12
43
  seedProps: undefined;
44
+ color: undefined;
45
+ distance: undefined;
46
+ size: undefined;
47
+ texture: undefined;
13
48
  }>, {
14
49
  value: import("vue").ShallowRef<Lensflare | undefined>;
15
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Partial<LensflareElementProps> & {
16
- elements?: Partial<LensflareElementProps>[] | undefined;
17
- scale?: number | undefined;
18
- seed?: number | undefined;
19
- seedProps?: SeedProps[] | undefined;
20
- }>, {
21
- elements: undefined;
50
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<LensflareProps>, {
22
51
  scale: number;
52
+ elements: undefined;
23
53
  seed: undefined;
24
54
  seedProps: undefined;
55
+ color: undefined;
56
+ distance: undefined;
57
+ size: undefined;
58
+ texture: undefined;
25
59
  }>>>, {
60
+ color: import("three").ColorRepresentation | [r: number, g: number, b: number];
61
+ texture: string[] | Texture;
26
62
  scale: number;
27
63
  elements: Partial<LensflareElementProps>[];
64
+ size: number;
28
65
  seed: number;
29
66
  seedProps: SeedProps[];
67
+ distance: number;
30
68
  }, {}>;
31
69
  export default _default;
32
70
  type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
@@ -10,7 +10,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
10
10
  range: () => number[];
11
11
  }>, {
12
12
  value: import("vue").ShallowRef<any>;
13
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
13
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
14
14
  speed: number;
15
15
  rotationFactor?: number | undefined;
16
16
  floatFactor?: number | undefined;
@@ -28,7 +28,7 @@ declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_T
28
28
  disabled: boolean;
29
29
  factor: number;
30
30
  ease: number;
31
- }>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<MouseParallaxProps>, {
31
+ }>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<MouseParallaxProps>, {
32
32
  disabled: boolean;
33
33
  factor: number;
34
34
  ease: number;
@@ -0,0 +1,107 @@
1
+ import type { TresColor } from '@tresjs/core';
2
+ import { Reflector } from 'three/examples/jsm/objects/Reflector.js';
3
+ export interface ReflectorProps {
4
+ /**
5
+ * The color of the reflector.
6
+ *
7
+ * @default '#333'
8
+ * @type {TresColor}
9
+ * @memberof ReflectorProps
10
+ *
11
+ */
12
+ color?: TresColor;
13
+ /**
14
+ * The textureWidth of the internal WebGLRenderTarget.
15
+ *
16
+ * @default window.innerWidth
17
+ * @type {number}
18
+ * @memberof ReflectorProps
19
+ *
20
+ */
21
+ textureWidth?: number;
22
+ /**
23
+ * The textureHeight of the internal WebGLRenderTarget.
24
+ *
25
+ * @default window.innerHeight
26
+ * @type {number}
27
+ * @memberof ReflectorProps
28
+ *
29
+ */
30
+ textureHeight?: number;
31
+ /**
32
+ * The clipBias.
33
+ *
34
+ * @default 0
35
+ * @type {number}
36
+ * @memberof ReflectorProps
37
+ *
38
+ */
39
+ clipBias?: number;
40
+ /**
41
+ * The multisample.
42
+ *
43
+ * @default 4
44
+ * @type {number}
45
+ * @memberof ReflectorProps
46
+ *
47
+ */
48
+ multisample?: number;
49
+ /**
50
+ * Custom shader.
51
+ *
52
+ * @default Reflector.ReflectorShader
53
+ * @type {object}
54
+ * @memberof ReflectorProps
55
+ *
56
+ */
57
+ shader?: object;
58
+ }
59
+ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<ReflectorProps>, {
60
+ color: string;
61
+ textureWidth: number;
62
+ textureHeight: number;
63
+ clipBias: number;
64
+ multisample: number;
65
+ shader: any;
66
+ }>, {
67
+ reflectorRef: import("vue").ShallowRef<Reflector | undefined>;
68
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<ReflectorProps>, {
69
+ color: string;
70
+ textureWidth: number;
71
+ textureHeight: number;
72
+ clipBias: number;
73
+ multisample: number;
74
+ shader: any;
75
+ }>>>, {
76
+ color: import("three").ColorRepresentation | [r: number, g: number, b: number];
77
+ textureWidth: number;
78
+ textureHeight: number;
79
+ clipBias: number;
80
+ multisample: number;
81
+ shader: object;
82
+ }, {}>, {
83
+ default?(_: {}): any;
84
+ }>;
85
+ export default _default;
86
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
87
+ type __VLS_TypePropsToRuntimeProps<T> = {
88
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
89
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
90
+ } : {
91
+ type: import('vue').PropType<T[K]>;
92
+ required: true;
93
+ };
94
+ };
95
+ type __VLS_WithDefaults<P, D> = {
96
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
97
+ default: D[K];
98
+ }> : P[K];
99
+ };
100
+ type __VLS_Prettify<T> = {
101
+ [K in keyof T]: T[K];
102
+ } & {};
103
+ type __VLS_WithTemplateSlots<T, S> = T & {
104
+ new (): {
105
+ $slots: S;
106
+ };
107
+ };
@@ -127,7 +127,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
127
127
  needUpdates: boolean;
128
128
  }>, {
129
129
  value: import("vue").ShallowRef<any>;
130
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Text3DProps>, {
130
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Text3DProps>, {
131
131
  size: number;
132
132
  height: number;
133
133
  curveSegments: number;
@@ -140,6 +140,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
140
140
  needUpdates: boolean;
141
141
  }>>>, {
142
142
  height: number;
143
+ center: boolean;
143
144
  size: number;
144
145
  curveSegments: number;
145
146
  bevelEnabled: boolean;
@@ -147,7 +148,6 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
147
148
  bevelSize: number;
148
149
  bevelOffset: number;
149
150
  bevelSegments: number;
150
- center: boolean;
151
151
  needUpdates: boolean;
152
152
  }, {}>, {
153
153
  default?(_: {}): any;
@@ -1,10 +1,13 @@
1
1
  import Text3D from './Text3D.vue';
2
2
  import { useAnimations } from './useAnimations';
3
3
  import Levioso from './Levioso.vue';
4
+ import Reflector from './Reflector.vue';
4
5
  import MouseParallax from './MouseParallax.vue';
5
6
  import { GlobalAudio } from './GlobalAudio';
6
7
  import Lensflare from './Lensflare/component.vue';
7
8
  import Fbo from './useFBO/component.vue';
9
+ import Sampler from './useSurfaceSampler/component.vue';
8
10
  export * from './useFBO/';
11
+ export * from './useSurfaceSampler';
9
12
  export * from '../staging/useEnvironment';
10
- export { Text3D, useAnimations, MouseParallax, Levioso, Lensflare, GlobalAudio, Fbo, };
13
+ export { Text3D, useAnimations, MouseParallax, Levioso, Reflector, Lensflare, GlobalAudio, Fbo, Sampler, };
@@ -4,7 +4,7 @@ declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_T
4
4
  settings: undefined;
5
5
  }>, {
6
6
  value: import("vue").Ref<import("three").WebGLRenderTarget<import("three").Texture> | null>;
7
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<FboOptions>, {
7
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<FboOptions>, {
8
8
  depth: boolean;
9
9
  settings: undefined;
10
10
  }>>>, {
@@ -0,0 +1,21 @@
1
+ import type { useSurfaceSamplerProps } from '.';
2
+ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<useSurfaceSamplerProps>, {
3
+ samplerRef: import("vue").Ref<any>;
4
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<useSurfaceSamplerProps>>>, {}, {}>, {
5
+ default?(_: {}): any;
6
+ }>;
7
+ export default _default;
8
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
9
+ type __VLS_TypePropsToRuntimeProps<T> = {
10
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
11
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
12
+ } : {
13
+ type: import('vue').PropType<T[K]>;
14
+ required: true;
15
+ };
16
+ };
17
+ type __VLS_WithTemplateSlots<T, S> = T & {
18
+ new (): {
19
+ $slots: S;
20
+ };
21
+ };