@xrift/world-components 0.33.2 → 0.34.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.
- package/dist/components/Mirror/index.d.ts +1 -1
- package/dist/components/Mirror/index.d.ts.map +1 -1
- package/dist/components/Mirror/index.js +66 -5
- package/dist/components/Mirror/index.js.map +1 -1
- package/dist/components/Mirror/types.d.ts +2 -0
- package/dist/components/Mirror/types.d.ts.map +1 -1
- package/dist/contexts/AudioVolumeContext.d.ts +16 -6
- package/dist/contexts/AudioVolumeContext.d.ts.map +1 -1
- package/dist/contexts/AudioVolumeContext.js +16 -8
- package/dist/contexts/AudioVolumeContext.js.map +1 -1
- package/dist/fonts/constants.d.ts +7 -0
- package/dist/fonts/constants.d.ts.map +1 -0
- package/dist/fonts/constants.js +25 -0
- package/dist/fonts/constants.js.map +1 -0
- package/dist/hooks/useAudioVolume.d.ts +6 -4
- package/dist/hooks/useAudioVolume.d.ts.map +1 -1
- package/dist/hooks/useAudioVolume.js +7 -5
- package/dist/hooks/useAudioVolume.js.map +1 -1
- package/dist/hooks/useJapaneseFont.d.ts +4 -0
- package/dist/hooks/useJapaneseFont.d.ts.map +1 -0
- package/dist/hooks/useJapaneseFont.js +13 -0
- package/dist/hooks/useJapaneseFont.js.map +1 -0
- package/dist/index.d.ts +2 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -3
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { MirrorProps } from './types';
|
|
2
2
|
export type { MirrorProps } from './types';
|
|
3
|
-
export declare function Mirror({ position, rotation, size, color, textureResolution, }: MirrorProps): import("react/jsx-runtime").JSX.Element;
|
|
3
|
+
export declare function Mirror({ position, rotation, size, color, textureResolution, lodDistance, }: MirrorProps): import("react/jsx-runtime").JSX.Element;
|
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Mirror/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Mirror/index.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAGrC,YAAY,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AA6B1C,wBAAgB,MAAM,CAAC,EACrB,QAAuB,EACvB,QAAoB,EACpB,IAAa,EACb,KAAgB,EAChB,iBAAuB,EACvB,WAAkC,GACnC,EAAE,WAAW,2CAkGb"}
|
|
@@ -1,12 +1,40 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { useFrame, useThree } from '@react-three/fiber';
|
|
3
3
|
import { useEffect, useRef } from 'react';
|
|
4
|
-
import { PlaneGeometry } from 'three';
|
|
4
|
+
import { Color, Mesh, PlaneGeometry, ShaderMaterial, Vector3 } from 'three';
|
|
5
5
|
import { Reflector } from 'three/addons/objects/Reflector.js';
|
|
6
|
-
|
|
6
|
+
import { DEFAULT_LOD_DISTANCE, LOD_HYSTERESIS_RATIO } from './constants';
|
|
7
|
+
import { shouldUseReflector } from './utils';
|
|
8
|
+
const _worldPos = new Vector3();
|
|
9
|
+
const fallbackVertexShader = `
|
|
10
|
+
varying vec3 vWorldNormal;
|
|
11
|
+
varying vec3 vWorldPosition;
|
|
12
|
+
void main() {
|
|
13
|
+
vec4 worldPos = modelMatrix * vec4(position, 1.0);
|
|
14
|
+
vWorldPosition = worldPos.xyz;
|
|
15
|
+
vWorldNormal = normalize((modelMatrix * vec4(normal, 0.0)).xyz);
|
|
16
|
+
gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);
|
|
17
|
+
}
|
|
18
|
+
`;
|
|
19
|
+
const fallbackFragmentShader = `
|
|
20
|
+
uniform vec3 baseColor;
|
|
21
|
+
uniform vec3 edgeColor;
|
|
22
|
+
uniform float fresnelPower;
|
|
23
|
+
varying vec3 vWorldNormal;
|
|
24
|
+
varying vec3 vWorldPosition;
|
|
25
|
+
void main() {
|
|
26
|
+
vec3 viewDir = normalize(cameraPosition - vWorldPosition);
|
|
27
|
+
float fresnel = pow(1.0 - max(dot(viewDir, vWorldNormal), 0.0), fresnelPower);
|
|
28
|
+
vec3 color = mix(baseColor, edgeColor, fresnel);
|
|
29
|
+
gl_FragColor = vec4(color, 1.0);
|
|
30
|
+
}
|
|
31
|
+
`;
|
|
32
|
+
export function Mirror({ position = [0, 2.5, -9], rotation = [0, 0, 0], size = [8, 5], color = 0xcccccc, textureResolution = 512, lodDistance = DEFAULT_LOD_DISTANCE, }) {
|
|
7
33
|
const groupRef = useRef(null);
|
|
8
34
|
const reflectorRef = useRef(null);
|
|
9
|
-
const
|
|
35
|
+
const fallbackRef = useRef(null);
|
|
36
|
+
const usingReflectorRef = useRef(true);
|
|
37
|
+
const gl = useThree((s) => s.gl);
|
|
10
38
|
useEffect(() => {
|
|
11
39
|
const currentGroup = groupRef.current;
|
|
12
40
|
if (!currentGroup)
|
|
@@ -26,23 +54,56 @@ export function Mirror({ position = [0, 2.5, -9], rotation = [0, 0, 0], size = [
|
|
|
26
54
|
reflector.position.set(0, 0, 0);
|
|
27
55
|
currentGroup.add(reflector);
|
|
28
56
|
reflectorRef.current = reflector;
|
|
57
|
+
// Fallback mesh: Fresnel シェーダーによる擬似ミラー
|
|
58
|
+
const fallbackGeometry = new PlaneGeometry(size[0], size[1]);
|
|
59
|
+
const fallbackMaterial = new ShaderMaterial({
|
|
60
|
+
vertexShader: fallbackVertexShader,
|
|
61
|
+
fragmentShader: fallbackFragmentShader,
|
|
62
|
+
uniforms: {
|
|
63
|
+
baseColor: { value: new Color(color) },
|
|
64
|
+
edgeColor: { value: new Color(0xffffff) },
|
|
65
|
+
fresnelPower: { value: 3.0 },
|
|
66
|
+
},
|
|
67
|
+
});
|
|
68
|
+
const fallbackMesh = new Mesh(fallbackGeometry, fallbackMaterial);
|
|
69
|
+
fallbackMesh.visible = false;
|
|
70
|
+
currentGroup.add(fallbackMesh);
|
|
71
|
+
fallbackRef.current = fallbackMesh;
|
|
72
|
+
usingReflectorRef.current = true;
|
|
29
73
|
return () => {
|
|
30
|
-
if (currentGroup
|
|
74
|
+
if (currentGroup) {
|
|
31
75
|
currentGroup.remove(reflector);
|
|
76
|
+
currentGroup.remove(fallbackMesh);
|
|
32
77
|
geometry.dispose();
|
|
33
78
|
reflector.dispose?.();
|
|
79
|
+
fallbackGeometry.dispose();
|
|
80
|
+
fallbackMaterial.dispose();
|
|
34
81
|
}
|
|
35
82
|
reflectorRef.current = null;
|
|
83
|
+
fallbackRef.current = null;
|
|
36
84
|
};
|
|
37
85
|
}, [size[0], size[1], color, textureResolution, gl]);
|
|
38
86
|
// Reflectorの内部カメラ(virtualCamera)の全レイヤーを有効化
|
|
39
87
|
// VRMFirstPersonのレイヤー設定により、メインカメラではThirdPersonOnlyレイヤー(頭部)が
|
|
40
88
|
// 非表示になっているが、鏡には全身を映す必要があるため
|
|
41
89
|
// onBeforeRenderでメインカメラの設定がコピーされるため、毎フレーム設定が必要
|
|
42
|
-
useFrame(() => {
|
|
90
|
+
useFrame(({ camera }) => {
|
|
43
91
|
const reflector = reflectorRef.current;
|
|
44
92
|
if (!reflector)
|
|
45
93
|
return;
|
|
94
|
+
// LOD: カメラと鏡の距離に応じて Reflector ↔ envMap を切り替え
|
|
95
|
+
const fallback = fallbackRef.current;
|
|
96
|
+
if (fallback && groupRef.current) {
|
|
97
|
+
const distance = camera.position.distanceTo(groupRef.current.getWorldPosition(_worldPos));
|
|
98
|
+
const useReflector = shouldUseReflector(distance, lodDistance, usingReflectorRef.current, LOD_HYSTERESIS_RATIO);
|
|
99
|
+
if (useReflector !== usingReflectorRef.current) {
|
|
100
|
+
usingReflectorRef.current = useReflector;
|
|
101
|
+
reflector.visible = useReflector;
|
|
102
|
+
fallback.visible = !useReflector;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
if (!reflector.visible)
|
|
106
|
+
return;
|
|
46
107
|
// Reflectorの内部カメラにアクセス(型定義にないためanyでキャスト)
|
|
47
108
|
const virtualCamera = reflector.camera;
|
|
48
109
|
if (virtualCamera) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Mirror/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AAEzC,OAAO,EAAS,aAAa,EAAE,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Mirror/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/Mirror/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,WAAW;IACX,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;IACnC,WAAW;IACX,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;IACnC,oBAAoB;IACpB,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACvB,4BAA4B;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,kDAAkD;IAClD,iBAAiB,CAAC,EAAE,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/Mirror/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,WAAW;IACX,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;IACnC,WAAW;IACX,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;IACnC,oBAAoB;IACpB,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACvB,4BAA4B;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,kDAAkD;IAClD,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,uDAAuD;IACvD,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB"}
|
|
@@ -1,32 +1,42 @@
|
|
|
1
1
|
import { type ReactNode } from 'react';
|
|
2
|
-
export interface
|
|
2
|
+
export interface VoiceVolumeOverrideContextValue {
|
|
3
3
|
setOverride: (userId: string, volume: number) => void;
|
|
4
4
|
clearOverride: (userId: string) => void;
|
|
5
5
|
clearAll: () => void;
|
|
6
6
|
getOverrides: () => ReadonlyMap<string, number>;
|
|
7
7
|
}
|
|
8
|
+
/** @deprecated Use VoiceVolumeOverrideContextValue instead */
|
|
9
|
+
export type AudioVolumeContextValue = VoiceVolumeOverrideContextValue;
|
|
8
10
|
/**
|
|
9
11
|
* 開発環境用のデフォルト実装(no-op)
|
|
10
12
|
* プラットフォーム側が実装を注入しない場合に使用される
|
|
11
13
|
*/
|
|
12
|
-
export declare const
|
|
14
|
+
export declare const createDefaultVoiceVolumeOverrideImplementation: () => VoiceVolumeOverrideContextValue;
|
|
15
|
+
/** @deprecated Use createDefaultVoiceVolumeOverrideImplementation instead */
|
|
16
|
+
export declare const createDefaultAudioVolumeImplementation: () => VoiceVolumeOverrideContextValue;
|
|
13
17
|
/**
|
|
14
18
|
* 音量オーバーライド機能を提供する Context
|
|
15
19
|
* xrift-frontend 側で実装を注入し、ワールド側で利用できる
|
|
16
20
|
*/
|
|
17
|
-
export declare const
|
|
21
|
+
export declare const VoiceVolumeOverrideContext: import("react").Context<VoiceVolumeOverrideContextValue | null>;
|
|
22
|
+
/** @deprecated Use VoiceVolumeOverrideContext instead */
|
|
23
|
+
export declare const AudioVolumeContext: import("react").Context<VoiceVolumeOverrideContextValue | null>;
|
|
18
24
|
interface Props {
|
|
19
|
-
value:
|
|
25
|
+
value: VoiceVolumeOverrideContextValue;
|
|
20
26
|
children: ReactNode;
|
|
21
27
|
}
|
|
22
28
|
/**
|
|
23
29
|
* 音量オーバーライド機能を提供する ContextProvider
|
|
24
30
|
*/
|
|
31
|
+
export declare const VoiceVolumeOverrideProvider: ({ value, children }: Props) => import("react/jsx-runtime").JSX.Element;
|
|
32
|
+
/** @deprecated Use VoiceVolumeOverrideProvider instead */
|
|
25
33
|
export declare const AudioVolumeProvider: ({ value, children }: Props) => import("react/jsx-runtime").JSX.Element;
|
|
26
34
|
/**
|
|
27
35
|
* 音量オーバーライドの Context を取得する hook
|
|
28
|
-
* @throws {Error}
|
|
36
|
+
* @throws {Error} VoiceVolumeOverrideProvider の外で呼び出された場合
|
|
29
37
|
*/
|
|
30
|
-
export declare const
|
|
38
|
+
export declare const useVoiceVolumeOverrideContext: () => VoiceVolumeOverrideContextValue;
|
|
39
|
+
/** @deprecated Use useVoiceVolumeOverrideContext instead */
|
|
40
|
+
export declare const useAudioVolumeContext: () => VoiceVolumeOverrideContextValue;
|
|
31
41
|
export {};
|
|
32
42
|
//# sourceMappingURL=AudioVolumeContext.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AudioVolumeContext.d.ts","sourceRoot":"","sources":["../../src/contexts/AudioVolumeContext.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,SAAS,EAAc,MAAM,OAAO,CAAA;AAEjE,MAAM,WAAW
|
|
1
|
+
{"version":3,"file":"AudioVolumeContext.d.ts","sourceRoot":"","sources":["../../src/contexts/AudioVolumeContext.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,SAAS,EAAc,MAAM,OAAO,CAAA;AAEjE,MAAM,WAAW,+BAA+B;IAC9C,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;IACrD,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;IACvC,QAAQ,EAAE,MAAM,IAAI,CAAA;IACpB,YAAY,EAAE,MAAM,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAChD;AAED,8DAA8D;AAC9D,MAAM,MAAM,uBAAuB,GAAG,+BAA+B,CAAA;AAErE;;;GAGG;AACH,eAAO,MAAM,8CAA8C,QAAO,+BAKhE,CAAA;AAEF,6EAA6E;AAC7E,eAAO,MAAM,sCAAsC,QARe,+BAQkC,CAAA;AAEpG;;;GAGG;AACH,eAAO,MAAM,0BAA0B,iEAA8D,CAAA;AAErG,yDAAyD;AACzD,eAAO,MAAM,kBAAkB,iEAA6B,CAAA;AAE5D,UAAU,KAAK;IACb,KAAK,EAAE,+BAA+B,CAAA;IACtC,QAAQ,EAAE,SAAS,CAAA;CACpB;AAED;;GAEG;AACH,eAAO,MAAM,2BAA2B,GAAI,qBAAqB,KAAK,4CAErE,CAAA;AAED,0DAA0D;AAC1D,eAAO,MAAM,mBAAmB,wBALiC,KAAK,4CAKR,CAAA;AAE9D;;;GAGG;AACH,eAAO,MAAM,6BAA6B,QAAO,+BAMhD,CAAA;AAED,4DAA4D;AAC5D,eAAO,MAAM,qBAAqB,QATe,+BASiB,CAAA"}
|
|
@@ -4,32 +4,40 @@ import { createContext, useContext } from 'react';
|
|
|
4
4
|
* 開発環境用のデフォルト実装(no-op)
|
|
5
5
|
* プラットフォーム側が実装を注入しない場合に使用される
|
|
6
6
|
*/
|
|
7
|
-
export const
|
|
7
|
+
export const createDefaultVoiceVolumeOverrideImplementation = () => ({
|
|
8
8
|
setOverride: () => { },
|
|
9
9
|
clearOverride: () => { },
|
|
10
10
|
clearAll: () => { },
|
|
11
11
|
getOverrides: () => new Map(),
|
|
12
12
|
});
|
|
13
|
+
/** @deprecated Use createDefaultVoiceVolumeOverrideImplementation instead */
|
|
14
|
+
export const createDefaultAudioVolumeImplementation = createDefaultVoiceVolumeOverrideImplementation;
|
|
13
15
|
/**
|
|
14
16
|
* 音量オーバーライド機能を提供する Context
|
|
15
17
|
* xrift-frontend 側で実装を注入し、ワールド側で利用できる
|
|
16
18
|
*/
|
|
17
|
-
export const
|
|
19
|
+
export const VoiceVolumeOverrideContext = createContext(null);
|
|
20
|
+
/** @deprecated Use VoiceVolumeOverrideContext instead */
|
|
21
|
+
export const AudioVolumeContext = VoiceVolumeOverrideContext;
|
|
18
22
|
/**
|
|
19
23
|
* 音量オーバーライド機能を提供する ContextProvider
|
|
20
24
|
*/
|
|
21
|
-
export const
|
|
22
|
-
return _jsx(
|
|
25
|
+
export const VoiceVolumeOverrideProvider = ({ value, children }) => {
|
|
26
|
+
return _jsx(VoiceVolumeOverrideContext.Provider, { value: value, children: children });
|
|
23
27
|
};
|
|
28
|
+
/** @deprecated Use VoiceVolumeOverrideProvider instead */
|
|
29
|
+
export const AudioVolumeProvider = VoiceVolumeOverrideProvider;
|
|
24
30
|
/**
|
|
25
31
|
* 音量オーバーライドの Context を取得する hook
|
|
26
|
-
* @throws {Error}
|
|
32
|
+
* @throws {Error} VoiceVolumeOverrideProvider の外で呼び出された場合
|
|
27
33
|
*/
|
|
28
|
-
export const
|
|
29
|
-
const context = useContext(
|
|
34
|
+
export const useVoiceVolumeOverrideContext = () => {
|
|
35
|
+
const context = useContext(VoiceVolumeOverrideContext);
|
|
30
36
|
if (!context) {
|
|
31
|
-
throw new Error('
|
|
37
|
+
throw new Error('useVoiceVolumeOverrideContext must be used within VoiceVolumeOverrideProvider');
|
|
32
38
|
}
|
|
33
39
|
return context;
|
|
34
40
|
};
|
|
41
|
+
/** @deprecated Use useVoiceVolumeOverrideContext instead */
|
|
42
|
+
export const useAudioVolumeContext = useVoiceVolumeOverrideContext;
|
|
35
43
|
//# sourceMappingURL=AudioVolumeContext.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AudioVolumeContext.js","sourceRoot":"","sources":["../../src/contexts/AudioVolumeContext.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAkB,UAAU,EAAE,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"AudioVolumeContext.js","sourceRoot":"","sources":["../../src/contexts/AudioVolumeContext.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAkB,UAAU,EAAE,MAAM,OAAO,CAAA;AAYjE;;;GAGG;AACH,MAAM,CAAC,MAAM,8CAA8C,GAAG,GAAoC,EAAE,CAAC,CAAC;IACpG,WAAW,EAAE,GAAG,EAAE,GAAE,CAAC;IACrB,aAAa,EAAE,GAAG,EAAE,GAAE,CAAC;IACvB,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC;IAClB,YAAY,EAAE,GAAG,EAAE,CAAC,IAAI,GAAG,EAAE;CAC9B,CAAC,CAAA;AAEF,6EAA6E;AAC7E,MAAM,CAAC,MAAM,sCAAsC,GAAG,8CAA8C,CAAA;AAEpG;;;GAGG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,aAAa,CAAyC,IAAI,CAAC,CAAA;AAErG,yDAAyD;AACzD,MAAM,CAAC,MAAM,kBAAkB,GAAG,0BAA0B,CAAA;AAO5D;;GAEG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAS,EAAE,EAAE;IACxE,OAAO,KAAC,0BAA0B,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,YAAG,QAAQ,GAAuC,CAAA;AAC5G,CAAC,CAAA;AAED,0DAA0D;AAC1D,MAAM,CAAC,MAAM,mBAAmB,GAAG,2BAA2B,CAAA;AAE9D;;;GAGG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,GAAoC,EAAE;IACjF,MAAM,OAAO,GAAG,UAAU,CAAC,0BAA0B,CAAC,CAAA;IACtD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,+EAA+E,CAAC,CAAA;IAClG,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAED,4DAA4D;AAC5D,MAAM,CAAC,MAAM,qBAAqB,GAAG,6BAA6B,CAAA"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/** Noto Sans JP Regular (CDN) */
|
|
2
|
+
export declare const JAPANESE_FONT_URL = "https://cdn.jsdelivr.net/fontsource/fonts/noto-sans-jp@latest/japanese-400-normal.ttf";
|
|
3
|
+
/** MSDF 生成に含める文字セット(ひらがな・カタカナ・常用句読点・ASCII) */
|
|
4
|
+
export declare const JAPANESE_CHARSET: string;
|
|
5
|
+
/** MSDF テクスチャサイズ(日本語文字数に対応するため大きめ) */
|
|
6
|
+
export declare const JAPANESE_TEXTURE_SIZE: [number, number];
|
|
7
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/fonts/constants.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,eAAO,MAAM,iBAAiB,0FAC2D,CAAA;AAEzF,8CAA8C;AAC9C,eAAO,MAAM,gBAAgB,QAkBnB,CAAA;AAEV,sCAAsC;AACtC,eAAO,MAAM,qBAAqB,EAAE,CAAC,MAAM,EAAE,MAAM,CAAgB,CAAA"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/** Noto Sans JP Regular (CDN) */
|
|
2
|
+
export const JAPANESE_FONT_URL = 'https://cdn.jsdelivr.net/fontsource/fonts/noto-sans-jp@latest/japanese-400-normal.ttf';
|
|
3
|
+
/** MSDF 生成に含める文字セット(ひらがな・カタカナ・常用句読点・ASCII) */
|
|
4
|
+
export const JAPANESE_CHARSET = [
|
|
5
|
+
// ASCII
|
|
6
|
+
' !"#$%&\'()*+,-./0123456789:;<=>?@',
|
|
7
|
+
'ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`',
|
|
8
|
+
'abcdefghijklmnopqrstuvwxyz{|}~',
|
|
9
|
+
// ひらがな
|
|
10
|
+
'ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞ',
|
|
11
|
+
'ただちぢっつづてでとどなにぬねのはばぱひびぴふぶぷへべぺほぼぽ',
|
|
12
|
+
'まみむめもゃやゅゆょよらりるれろゎわゐゑをん',
|
|
13
|
+
// カタカナ
|
|
14
|
+
'ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾ',
|
|
15
|
+
'タダチヂッツヅテデトドナニヌネノハバパヒビピフブプヘベペホボポ',
|
|
16
|
+
'マミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ',
|
|
17
|
+
// 日本語句読点・記号
|
|
18
|
+
'。、・「」『』()〔〕【】〜ー―…‥々〇〈〉《》!?',
|
|
19
|
+
' .,:;/¥$#&*+−=|<>_',
|
|
20
|
+
// 長音・半濁点
|
|
21
|
+
'ーー゛゜',
|
|
22
|
+
].join('');
|
|
23
|
+
/** MSDF テクスチャサイズ(日本語文字数に対応するため大きめ) */
|
|
24
|
+
export const JAPANESE_TEXTURE_SIZE = [2048, 2048];
|
|
25
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/fonts/constants.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,MAAM,CAAC,MAAM,iBAAiB,GAC5B,uFAAuF,CAAA;AAEzF,8CAA8C;AAC9C,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,QAAQ;IACR,oCAAoC;IACpC,mCAAmC;IACnC,gCAAgC;IAChC,OAAO;IACP,gCAAgC;IAChC,iCAAiC;IACjC,wBAAwB;IACxB,OAAO;IACP,gCAAgC;IAChC,iCAAiC;IACjC,2BAA2B;IAC3B,YAAY;IACZ,4BAA4B;IAC5B,oBAAoB;IACpB,SAAS;IACT,MAAM;CACP,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;AAEV,sCAAsC;AACtC,MAAM,CAAC,MAAM,qBAAqB,GAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type VoiceVolumeOverrideContextValue } from '../contexts/AudioVolumeContext';
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
3
|
+
* 特定ユーザーのボイスチャット音量をオーバーライドするhook
|
|
4
4
|
* ワールド制作者が演壇やステージなどで特定ユーザーの音量を制御するために使用
|
|
5
5
|
*
|
|
6
6
|
* @example
|
|
7
|
-
* const { setOverride, clearOverride } =
|
|
7
|
+
* const { setOverride, clearOverride } = useVoiceVolumeOverride()
|
|
8
8
|
*
|
|
9
9
|
* // 演壇に立った人の声を全体に届ける
|
|
10
10
|
* setOverride(speakerUserId, 1.0)
|
|
@@ -12,5 +12,7 @@ import { type AudioVolumeContextValue } from '../contexts/AudioVolumeContext';
|
|
|
12
12
|
* // オーバーライドを解除
|
|
13
13
|
* clearOverride(speakerUserId)
|
|
14
14
|
*/
|
|
15
|
-
export declare const
|
|
15
|
+
export declare const useVoiceVolumeOverride: () => VoiceVolumeOverrideContextValue;
|
|
16
|
+
/** @deprecated Use useVoiceVolumeOverride instead */
|
|
17
|
+
export declare const useAudioVolume: () => VoiceVolumeOverrideContextValue;
|
|
16
18
|
//# sourceMappingURL=useAudioVolume.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useAudioVolume.d.ts","sourceRoot":"","sources":["../../src/hooks/useAudioVolume.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"useAudioVolume.d.ts","sourceRoot":"","sources":["../../src/hooks/useAudioVolume.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,+BAA+B,EAAiC,MAAM,gCAAgC,CAAA;AAEpH;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,sBAAsB,QAAO,+BAEzC,CAAA;AAED,qDAAqD;AACrD,eAAO,MAAM,cAAc,QALe,+BAKU,CAAA"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { useVoiceVolumeOverrideContext } from '../contexts/AudioVolumeContext';
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
3
|
+
* 特定ユーザーのボイスチャット音量をオーバーライドするhook
|
|
4
4
|
* ワールド制作者が演壇やステージなどで特定ユーザーの音量を制御するために使用
|
|
5
5
|
*
|
|
6
6
|
* @example
|
|
7
|
-
* const { setOverride, clearOverride } =
|
|
7
|
+
* const { setOverride, clearOverride } = useVoiceVolumeOverride()
|
|
8
8
|
*
|
|
9
9
|
* // 演壇に立った人の声を全体に届ける
|
|
10
10
|
* setOverride(speakerUserId, 1.0)
|
|
@@ -12,7 +12,9 @@ import { useAudioVolumeContext } from '../contexts/AudioVolumeContext';
|
|
|
12
12
|
* // オーバーライドを解除
|
|
13
13
|
* clearOverride(speakerUserId)
|
|
14
14
|
*/
|
|
15
|
-
export const
|
|
16
|
-
return
|
|
15
|
+
export const useVoiceVolumeOverride = () => {
|
|
16
|
+
return useVoiceVolumeOverrideContext();
|
|
17
17
|
};
|
|
18
|
+
/** @deprecated Use useVoiceVolumeOverride instead */
|
|
19
|
+
export const useAudioVolume = useVoiceVolumeOverride;
|
|
18
20
|
//# sourceMappingURL=useAudioVolume.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useAudioVolume.js","sourceRoot":"","sources":["../../src/hooks/useAudioVolume.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"useAudioVolume.js","sourceRoot":"","sources":["../../src/hooks/useAudioVolume.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwC,6BAA6B,EAAE,MAAM,gCAAgC,CAAA;AAEpH;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAoC,EAAE;IAC1E,OAAO,6BAA6B,EAAE,CAAA;AACxC,CAAC,CAAA;AAED,qDAAqD;AACrD,MAAM,CAAC,MAAM,cAAc,GAAG,sBAAsB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useJapaneseFont.d.ts","sourceRoot":"","sources":["../../src/hooks/useJapaneseFont.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,eAAe,GAAI,UAAU;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,gDAS7D,CAAA"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { useTTF } from '@react-three/uikit/dist/use-ttf';
|
|
2
|
+
import { JAPANESE_FONT_URL, JAPANESE_CHARSET, JAPANESE_TEXTURE_SIZE, } from '../fonts/constants';
|
|
3
|
+
export const useJapaneseFont = (options) => {
|
|
4
|
+
const input = [
|
|
5
|
+
{
|
|
6
|
+
url: JAPANESE_FONT_URL,
|
|
7
|
+
charset: options?.charset ?? JAPANESE_CHARSET,
|
|
8
|
+
textureSize: JAPANESE_TEXTURE_SIZE,
|
|
9
|
+
},
|
|
10
|
+
];
|
|
11
|
+
return useTTF(input);
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=useJapaneseFont.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useJapaneseFont.js","sourceRoot":"","sources":["../../src/hooks/useJapaneseFont.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAqB,MAAM,iCAAiC,CAAA;AAC3E,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,GACtB,MAAM,oBAAoB,CAAA;AAE3B,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,OAA8B,EAAE,EAAE;IAChE,MAAM,KAAK,GAAmB;QAC5B;YACE,GAAG,EAAE,iBAAiB;YACtB,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,gBAAgB;YAC7C,WAAW,EAAE,qBAAqB;SACnC;KACF,CAAA;IACD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAA;AACtB,CAAC,CAAA"}
|
package/dist/index.d.ts
CHANGED
|
@@ -10,7 +10,7 @@ export { WorldContext, WorldProvider, useWorldContext, createDefaultWorldImpleme
|
|
|
10
10
|
export { TeleportContext, TeleportProvider, useTeleportContext, createDefaultTeleportImplementation, type TeleportContextValue, type TeleportDestination, } from './contexts/TeleportContext';
|
|
11
11
|
export { InstanceEventContext, InstanceEventProvider, useInstanceEventContext, createDefaultInstanceEventImplementation, type InstanceEventContextValue, } from './contexts/InstanceEventContext';
|
|
12
12
|
export { PlacementStateProvider, usePlacementState, type PlacementMode, type PlacementStateContextValue, } from './contexts/PlacementStateContext';
|
|
13
|
-
export { AudioVolumeContext, AudioVolumeProvider, useAudioVolumeContext, createDefaultAudioVolumeImplementation, type AudioVolumeContextValue, } from './contexts/AudioVolumeContext';
|
|
13
|
+
export { VoiceVolumeOverrideContext, VoiceVolumeOverrideProvider, useVoiceVolumeOverrideContext, createDefaultVoiceVolumeOverrideImplementation, type VoiceVolumeOverrideContextValue, AudioVolumeContext, AudioVolumeProvider, useAudioVolumeContext, createDefaultAudioVolumeImplementation, type AudioVolumeContextValue, } from './contexts/AudioVolumeContext';
|
|
14
14
|
export { Interactable, type InteractableProps, } from './components/Interactable';
|
|
15
15
|
export { Mirror, type MirrorProps } from './components/Mirror';
|
|
16
16
|
export { Skybox, type SkyboxProps } from './components/Skybox';
|
|
@@ -33,9 +33,8 @@ export { useConfirm } from './hooks/useConfirm';
|
|
|
33
33
|
export { useTeleport } from './hooks/useTeleport';
|
|
34
34
|
export { useInstance } from './hooks/useInstance';
|
|
35
35
|
export { useWorld } from './hooks/useWorld';
|
|
36
|
-
export { useWebAudioVolume } from './hooks/useWebAudioVolume';
|
|
37
36
|
export { useInstanceEvent } from './hooks/useInstanceEvent';
|
|
38
|
-
export { useAudioVolume } from './hooks/useAudioVolume';
|
|
37
|
+
export { useVoiceVolumeOverride, useAudioVolume } from './hooks/useAudioVolume';
|
|
39
38
|
export { LAYERS, type LayerName, type LayerNumber } from './constants/layers';
|
|
40
39
|
export { type PlayerMovement, type Position3D, type Rotation3D, type VRTrackingData, type VRMovementDirection, } from './types/movement';
|
|
41
40
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -11,7 +11,9 @@ export { WorldContext, WorldProvider, useWorldContext, createDefaultWorldImpleme
|
|
|
11
11
|
export { TeleportContext, TeleportProvider, useTeleportContext, createDefaultTeleportImplementation, } from './contexts/TeleportContext';
|
|
12
12
|
export { InstanceEventContext, InstanceEventProvider, useInstanceEventContext, createDefaultInstanceEventImplementation, } from './contexts/InstanceEventContext';
|
|
13
13
|
export { PlacementStateProvider, usePlacementState, } from './contexts/PlacementStateContext';
|
|
14
|
-
export {
|
|
14
|
+
export { VoiceVolumeOverrideContext, VoiceVolumeOverrideProvider, useVoiceVolumeOverrideContext, createDefaultVoiceVolumeOverrideImplementation,
|
|
15
|
+
// Deprecated aliases
|
|
16
|
+
AudioVolumeContext, AudioVolumeProvider, useAudioVolumeContext, createDefaultAudioVolumeImplementation, } from './contexts/AudioVolumeContext';
|
|
15
17
|
// Components
|
|
16
18
|
export { Interactable, } from './components/Interactable';
|
|
17
19
|
export { Mirror } from './components/Mirror';
|
|
@@ -35,9 +37,8 @@ export { useConfirm } from './hooks/useConfirm';
|
|
|
35
37
|
export { useTeleport } from './hooks/useTeleport';
|
|
36
38
|
export { useInstance } from './hooks/useInstance';
|
|
37
39
|
export { useWorld } from './hooks/useWorld';
|
|
38
|
-
export { useWebAudioVolume } from './hooks/useWebAudioVolume';
|
|
39
40
|
export { useInstanceEvent } from './hooks/useInstanceEvent';
|
|
40
|
-
export { useAudioVolume } from './hooks/useAudioVolume';
|
|
41
|
+
export { useVoiceVolumeOverride, useAudioVolume } from './hooks/useAudioVolume';
|
|
41
42
|
// Constants
|
|
42
43
|
export { LAYERS } from './constants/layers';
|
|
43
44
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,WAAW;AACX,OAAO,EACL,YAAY,EACZ,aAAa,EACb,QAAQ,GAET,MAAM,yBAAyB,CAAA;AAEhC,OAAO,EACL,oBAAoB,EACpB,uBAAuB,GAExB,MAAM,iCAAiC,CAAA;AAExC,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,GAEtB,MAAM,+BAA+B,CAAA;AAEtC,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,GAGrB,MAAM,8BAA8B,CAAA;AAErC,OAAO,EACL,YAAY,EACZ,aAAa,EACb,QAAQ,GAGT,MAAM,yBAAyB,CAAA;AAEhC,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,oCAAoC,GAGrC,MAAM,6BAA6B,CAAA;AAEpC,OAAO,EACL,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,kCAAkC,GAGnC,MAAM,2BAA2B,CAAA;AAElC,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,mCAAmC,GAGpC,MAAM,4BAA4B,CAAA;AAEnC,OAAO,EACL,YAAY,EACZ,aAAa,EACb,eAAe,EACf,gCAAgC,GAGjC,MAAM,yBAAyB,CAAA;AAEhC,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,mCAAmC,GAGpC,MAAM,4BAA4B,CAAA;AAEnC,OAAO,EACL,oBAAoB,EACpB,qBAAqB,EACrB,uBAAuB,EACvB,wCAAwC,GAEzC,MAAM,iCAAiC,CAAA;AAExC,OAAO,EACL,sBAAsB,EACtB,iBAAiB,GAGlB,MAAM,kCAAkC,CAAA;AAEzC,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,sCAAsC,GAEvC,MAAM,+BAA+B,CAAA;AAEtC,aAAa;AACb,OAAO,EACL,YAAY,GAEb,MAAM,2BAA2B,CAAA;AAElC,OAAO,EAAE,MAAM,EAAoB,MAAM,qBAAqB,CAAA;AAE9D,OAAO,EAAE,MAAM,EAAoB,MAAM,qBAAqB,CAAA;AAE9D,OAAO,EACL,WAAW,GAGZ,MAAM,0BAA0B,CAAA;AAEjC,OAAO,EAAE,WAAW,EAAyB,MAAM,0BAA0B,CAAA;AAE7E,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AAE9D,OAAO,EACL,kBAAkB,GAEnB,MAAM,iCAAiC,CAAA;AAExC,OAAO,EACL,UAAU,GAEX,MAAM,yBAAyB,CAAA;AAEhC,OAAO,EACL,SAAS,GAEV,MAAM,wBAAwB,CAAA;AAE/B,OAAO,EACL,QAAQ,GAGT,MAAM,uBAAuB,CAAA;AAE9B,OAAO,EACL,cAAc,GAEf,MAAM,6BAA6B,CAAA;AAEpC,OAAO,EACL,cAAc,GAEf,MAAM,6BAA6B,CAAA;AAEpC,OAAO,EACL,aAAa,GAEd,MAAM,4BAA4B,CAAA;AAEnC,OAAO,EAAE,MAAM,EAAoB,MAAM,qBAAqB,CAAA;AAE9D,OAAO,EACL,UAAU,EACV,aAAa,EACb,qBAAqB,GACtB,MAAM,yBAAyB,CAAA;AAOhC,QAAQ;AACR,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|