mirror of
https://github.com/blitzkit/blitzkit.git
synced 2026-10-24 20:19:49 +02:00
fix: shot display suspense
This commit is contained in:
1 parent
447b4629ce
commit
793c07d1ed
2 files changed
+12
-8
No files matched your search
@@ -1,6 +1,6 @@
|
|||||||
import { PerspectiveCamera } from '@react-three/drei';
|
import { PerspectiveCamera } from '@react-three/drei';
|
||||||
import { Canvas } from '@react-three/fiber';
|
import { Canvas } from '@react-three/fiber';
|
||||||
import { use, useEffect, useRef } from 'react';
|
import { Suspense, use, useEffect, useRef } from 'react';
|
||||||
import { Armor } from '../../../../../../components/Armor';
|
import { Armor } from '../../../../../../components/Armor';
|
||||||
import { ShotDisplay } from '../../../../../../components/Armor/components/ShotDisplay';
|
import { ShotDisplay } from '../../../../../../components/Armor/components/ShotDisplay';
|
||||||
import { applyPitchYawLimits } from '../../../../../../core/blitz/applyPitchYawLimits';
|
import { applyPitchYawLimits } from '../../../../../../core/blitz/applyPitchYawLimits';
|
||||||
@@ -13,6 +13,7 @@ import * as TankopediaEphemeral from '../../../../../../stores/tankopediaEphemer
|
|||||||
import { Controls } from '../Control';
|
import { Controls } from '../Control';
|
||||||
import { Lighting } from '../Lighting';
|
import { Lighting } from '../Lighting';
|
||||||
import { SceneProps } from '../SceneProps';
|
import { SceneProps } from '../SceneProps';
|
||||||
|
import { ModelLoader } from './components/ModelLoader';
|
||||||
import { TankModel } from './components/TankModel';
|
import { TankModel } from './components/TankModel';
|
||||||
|
|
||||||
export function TankSandbox() {
|
export function TankSandbox() {
|
||||||
@@ -140,9 +141,14 @@ export function TankSandbox() {
|
|||||||
<Controls />
|
<Controls />
|
||||||
<SceneProps />
|
<SceneProps />
|
||||||
|
|
||||||
<Lighting />
|
|
||||||
<TankModel />
|
<TankModel />
|
||||||
<Armor />
|
|
||||||
|
{/* idk why the shot display doesn't work without suspense here lol */}
|
||||||
|
<Suspense fallback={<ModelLoader />}>
|
||||||
|
<Armor />
|
||||||
|
<Lighting />
|
||||||
|
</Suspense>
|
||||||
|
|
||||||
<ShotDisplay />
|
<ShotDisplay />
|
||||||
</Canvas>
|
</Canvas>
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1,12 +1,10 @@
|
|||||||
import { Progress } from '@radix-ui/themes';
|
import { Spinner } from '@radix-ui/themes';
|
||||||
import { Html, useProgress } from '@react-three/drei';
|
import { Html } from '@react-three/drei';
|
||||||
|
|
||||||
export function ModelLoader() {
|
export function ModelLoader() {
|
||||||
const { progress } = useProgress();
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Html center position={[0, 1.5, 0]}>
|
<Html center position={[0, 1.5, 0]}>
|
||||||
<Progress value={progress} style={{ width: 160 }} />
|
<Spinner size="3" />
|
||||||
</Html>
|
</Html>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
Reference in new issue
Block a user