Merge branch 'main-dev' of http://185.100.212.76:7778/Dwinzo-Beta/Dwinzo_Demo into main-dev
This commit is contained in:
@@ -25,9 +25,10 @@ function DecalInstance({ parent, visible = true, decal, zPosition = decal.decalP
|
|||||||
if (selectedDecal?.decalData.decalUuid === decal.decalUuid && !selectedDecal.decalMesh) {
|
if (selectedDecal?.decalData.decalUuid === decal.decalUuid && !selectedDecal.decalMesh) {
|
||||||
setSelectedDecal({ decalData: selectedDecal.decalData, decalMesh: decalRef.current });
|
setSelectedDecal({ decalData: selectedDecal.decalData, decalMesh: decalRef.current });
|
||||||
}
|
}
|
||||||
|
// eslint-disable-next-line
|
||||||
}, [selectedDecal])
|
}, [selectedDecal])
|
||||||
|
|
||||||
const { handlePointerMissed, handlePointerLeave, handleClick, handlePointerDown, handlePointerEnter, handleDecalUp } = useDecalEventHandlers({ parent, decal, visible });
|
const { handlePointerMissed, handlePointerLeave, handleClick, handlePointerDown, handlePointerEnter } = useDecalEventHandlers({ parent, decal, visible });
|
||||||
|
|
||||||
const [texture, setTexture] = useState<THREE.Texture | null>(null);
|
const [texture, setTexture] = useState<THREE.Texture | null>(null);
|
||||||
|
|
||||||
@@ -126,6 +127,7 @@ function DecalInstance({ parent, visible = true, decal, zPosition = decal.decalP
|
|||||||
} else {
|
} else {
|
||||||
loadDefaultTexture();
|
loadDefaultTexture();
|
||||||
}
|
}
|
||||||
|
// eslint-disable-next-line
|
||||||
}, [decal.decalId]);
|
}, [decal.decalId]);
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
@@ -140,6 +142,7 @@ function DecalInstance({ parent, visible = true, decal, zPosition = decal.decalP
|
|||||||
if (selectedDecal) setSelectedDecal(null);
|
if (selectedDecal) setSelectedDecal(null);
|
||||||
if (deletableDecal) setDeletableDecal(null);
|
if (deletableDecal) setDeletableDecal(null);
|
||||||
}
|
}
|
||||||
|
// eslint-disable-next-line
|
||||||
}, [toggleView, toolMode, activeModule, selectedDecal, deletableDecal]);
|
}, [toggleView, toolMode, activeModule, selectedDecal, deletableDecal]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
@@ -152,7 +155,6 @@ function DecalInstance({ parent, visible = true, decal, zPosition = decal.decalP
|
|||||||
scale={[(decal.decalType.type === 'Floor' || zPosition < 0) ? -decal.decalScale : decal.decalScale, decal.decalScale, 0.01]}
|
scale={[(decal.decalType.type === 'Floor' || zPosition < 0) ? -decal.decalScale : decal.decalScale, decal.decalScale, 0.01]}
|
||||||
userData={decal}
|
userData={decal}
|
||||||
onPointerDown={(e) => { if (e.button === 0) handlePointerDown(e) }}
|
onPointerDown={(e) => { if (e.button === 0) handlePointerDown(e) }}
|
||||||
onPointerUp={(e) => { if (e.button === 0) handleDecalUp(e) }}
|
|
||||||
onClick={(e) => { handleClick(e) }}
|
onClick={(e) => { handleClick(e) }}
|
||||||
onPointerEnter={(e) => { handlePointerEnter(e) }}
|
onPointerEnter={(e) => { handlePointerEnter(e) }}
|
||||||
onPointerLeave={(e) => { handlePointerLeave(e) }}
|
onPointerLeave={(e) => { handlePointerLeave(e) }}
|
||||||
|
|||||||
@@ -254,15 +254,6 @@ export function useDecalEventHandlers({
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
const handleDecalUp = (e: ThreeEvent<MouseEvent>) => {
|
|
||||||
e.stopPropagation();
|
|
||||||
if (visible && !toggleView && activeModule === 'builder') {
|
|
||||||
if (!decalDragState.isDragging && !selectedDecal && e.object.userData.decalUuid && toolMode === 'cursor') {
|
|
||||||
setSelectedDecal({ decalMesh: e.object, decalData: decal });
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
const handleClick = (e: ThreeEvent<MouseEvent>) => {
|
const handleClick = (e: ThreeEvent<MouseEvent>) => {
|
||||||
if (visible && !toggleView && activeModule === 'builder') {
|
if (visible && !toggleView && activeModule === 'builder') {
|
||||||
if (e.object.userData.decalUuid) {
|
if (e.object.userData.decalUuid) {
|
||||||
@@ -342,11 +333,11 @@ export function useDecalEventHandlers({
|
|||||||
canvasElement?.removeEventListener("keyup", onKeyUp);
|
canvasElement?.removeEventListener("keyup", onKeyUp);
|
||||||
canvasElement.removeEventListener("keydown", onKeyDown);
|
canvasElement.removeEventListener("keydown", onKeyDown);
|
||||||
};
|
};
|
||||||
|
// eslint-disable-next-line
|
||||||
}, [gl, activeModule, toggleView, selectedDecal, camera, controls, visible, parent, decal, decalDragState]);
|
}, [gl, activeModule, toggleView, selectedDecal, camera, controls, visible, parent, decal, decalDragState]);
|
||||||
|
|
||||||
return {
|
return {
|
||||||
handlePointerDown,
|
handlePointerDown,
|
||||||
handleDecalUp,
|
|
||||||
handleClick,
|
handleClick,
|
||||||
handlePointerEnter,
|
handlePointerEnter,
|
||||||
handlePointerLeave,
|
handlePointerLeave,
|
||||||
|
|||||||
Reference in New Issue
Block a user