@tresjs/core 0.2.1 → 0.4.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.
@@ -1,6 +1,6 @@
1
1
  export declare const isProd: boolean;
2
2
  interface LoggerComposition {
3
- logError: (message: string, error: Error) => void;
3
+ logError: (message: string, error?: Error | ErrorEvent) => void;
4
4
  logWarning: (message: string) => void;
5
5
  logMessage: (name: string, value: any) => void;
6
6
  }
@@ -1,10 +1,9 @@
1
- export * from './useCamera/useCamera';
2
- export * from './useCatalog/useCatalog';
3
- export * from './useInstanceCreator/useInstanceCreator';
4
- export * from './useLoop/useLoop';
5
- export * from './useRenderer/useRenderer';
6
- export * from './useScene/useScene';
7
- export * from './useLoader/useLoader';
8
- export * from './useTexture/useTexture';
1
+ export * from './useCamera';
2
+ export * from './useCatalog';
3
+ export * from './useInstanceCreator';
4
+ export * from './useRenderLoop/';
5
+ export * from './useRenderer/';
6
+ export * from './useScene/';
7
+ export * from './useLoader';
8
+ export * from './useTexture';
9
9
  export * from './useTres';
10
- export * from './useTweakPane';
@@ -0,0 +1,15 @@
1
+ import { EventHookOn, Fn } from '@vueuse/core';
2
+ import { Ref } from 'vue';
3
+ export interface RenderLoop {
4
+ delta: number;
5
+ elapsed: number;
6
+ }
7
+ export interface UseRenderLoopReturn {
8
+ onBeforeLoop: EventHookOn<RenderLoop>;
9
+ onLoop: EventHookOn<RenderLoop>;
10
+ onAfterLoop: EventHookOn<RenderLoop>;
11
+ pause: Fn;
12
+ resume: Fn;
13
+ isActive: Ref<boolean>;
14
+ }
15
+ export declare function useRenderLoop(): UseRenderLoopReturn;
@@ -0,0 +1,37 @@
1
+ import { ShadowMapType, TextureEncoding, ToneMapping } from 'three';
2
+ import { PropType } from 'vue';
3
+ /**
4
+ * Vue component for rendering a Tres component.
5
+ */
6
+ export declare const TresCanvas: import("vue").DefineComponent<{
7
+ shadows: BooleanConstructor;
8
+ shadowMapType: PropType<ShadowMapType>;
9
+ physicallyCorrectLights: BooleanConstructor;
10
+ outputEncoding: PropType<TextureEncoding>;
11
+ toneMapping: PropType<ToneMapping>;
12
+ toneMappingExposure: NumberConstructor;
13
+ context: PropType<WebGLRenderingContext>;
14
+ powerPreference: PropType<"high-performance" | "low-power" | "default">;
15
+ preserveDrawingBuffer: BooleanConstructor;
16
+ clearColor: StringConstructor;
17
+ windowSize: BooleanConstructor;
18
+ }, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
19
+ [key: string]: any;
20
+ }> | undefined, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
21
+ shadows: BooleanConstructor;
22
+ shadowMapType: PropType<ShadowMapType>;
23
+ physicallyCorrectLights: BooleanConstructor;
24
+ outputEncoding: PropType<TextureEncoding>;
25
+ toneMapping: PropType<ToneMapping>;
26
+ toneMappingExposure: NumberConstructor;
27
+ context: PropType<WebGLRenderingContext>;
28
+ powerPreference: PropType<"high-performance" | "low-power" | "default">;
29
+ preserveDrawingBuffer: BooleanConstructor;
30
+ clearColor: StringConstructor;
31
+ windowSize: BooleanConstructor;
32
+ }>>, {
33
+ shadows: boolean;
34
+ physicallyCorrectLights: boolean;
35
+ preserveDrawingBuffer: boolean;
36
+ windowSize: boolean;
37
+ }>;
@@ -0,0 +1,81 @@
1
+ import { MaybeComputedRef, MaybeElementRef } from '@vueuse/core';
2
+ import { WebGLRendererParameters, WebGLRenderer, ShadowMapType } from 'three';
3
+ import type { TextureEncoding, ToneMapping } from 'three';
4
+ export interface UseRendererOptions extends WebGLRendererParameters {
5
+ /**
6
+ * Enable shadows in the Renderer
7
+ *
8
+ * @default false
9
+ */
10
+ shadows?: MaybeComputedRef<boolean>;
11
+ /**
12
+ * Set the shadow map type
13
+ *
14
+ * @default PCFSoftShadowMap
15
+ */
16
+ shadowMapType?: MaybeComputedRef<ShadowMapType>;
17
+ /**
18
+ * Whether to use physically correct lighting mode.
19
+ * See the [lights / physical example](https://threejs.org/examples/#webgl_lights_physical).
20
+ *
21
+ * @default false
22
+ */
23
+ physicallyCorrectLights?: MaybeComputedRef<boolean>;
24
+ /**
25
+ * Defines the output encoding of the renderer.
26
+ *
27
+ * @default LinearEncoding
28
+ */
29
+ outputEncoding?: MaybeComputedRef<TextureEncoding>;
30
+ /**
31
+ * Defines the tone mapping used by the renderer.
32
+ *
33
+ * @default NoToneMapping
34
+ */
35
+ toneMapping?: MaybeComputedRef<ToneMapping>;
36
+ /**
37
+ * Defines the tone mapping exposure used by the renderer.
38
+ *
39
+ * @default 1
40
+ */
41
+ toneMappingExposure?: MaybeComputedRef<number>;
42
+ /**
43
+ * The context used by the renderer.
44
+ *
45
+ * @default undefined
46
+ */
47
+ context?: WebGLRenderingContext | undefined;
48
+ /**
49
+ * Provides a hint to the user agent indicating what configuration of GPU is suitable for this WebGL context.
50
+ * Can be "high-performance", "low-power" or "default".
51
+ *
52
+ * @default "default"
53
+ */
54
+ powerPreference?: 'high-performance' | 'low-power' | 'default';
55
+ /**
56
+ * Whether to preserve the buffers until manually cleared or overwritten.
57
+ *
58
+ * @default false
59
+ */
60
+ preserveDrawingBuffer?: boolean;
61
+ /**
62
+ * The color value to use when clearing the canvas.
63
+ *
64
+ * @default 0x000000
65
+ */
66
+ clearColor?: MaybeComputedRef<string | number>;
67
+ windowSize?: MaybeComputedRef<boolean>;
68
+ }
69
+ /**
70
+ * Reactive Three.js WebGLRenderer instance
71
+ *
72
+ * @param canvas
73
+ * @param options
74
+ */
75
+ export declare function useRenderer(canvas: MaybeElementRef, container: MaybeElementRef, options: UseRendererOptions): {
76
+ renderer: import("vue").ShallowRef<WebGLRenderer | undefined>;
77
+ isReady: import("vue").Ref<boolean>;
78
+ dispose: () => void;
79
+ aspectRatio: import("vue").ComputedRef<number>;
80
+ };
81
+ export declare type UseRendererReturn = ReturnType<typeof useRenderer>;
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Vue component for rendering a Tres component.
3
+ */
4
+ export declare const Scene: import("vue").DefineComponent<{}, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
5
+ [key: string]: any;
6
+ }>[] | undefined, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
@@ -0,0 +1,4 @@
1
+ import { Scene } from 'three';
2
+ export declare function useScene(): {
3
+ scene: import("vue").ShallowRef<Scene>;
4
+ };
package/dist/index.d.ts CHANGED
@@ -1,6 +1,5 @@
1
1
  import { App } from 'vue';
2
2
  export * from './core';
3
- export * as TresCanvas from './components/TresCanvas.vue';
4
3
  export * from './keys';
5
4
  export interface TresPlugin {
6
5
  [key: string]: any;