remove position hack for zone + fade-in-out anims
This commit is contained in:
@@ -25,16 +25,10 @@ export const ViewerZoneSystem = () => {
|
||||
|
||||
obj.visible = shouldShow
|
||||
|
||||
// Also hide the label
|
||||
const label = obj.getObjectByName('label')
|
||||
if (label) {
|
||||
// Hide label if zone layer is off OR if in solo mode on a different level
|
||||
const labelPosition = obj.userData.labelPosition as [number, number, number] | undefined
|
||||
if (shouldShow && labelPosition) {
|
||||
label.position.set(...labelPosition)
|
||||
} else {
|
||||
label.position.set(-9999, -9999, -9999)
|
||||
}
|
||||
const targetOpacity = shouldShow ? '1' : '0'
|
||||
const labelEl = document.getElementById(`${id}-label`)
|
||||
if (labelEl && labelEl.style.opacity !== targetOpacity) {
|
||||
labelEl.style.opacity = targetOpacity
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
@@ -27,20 +27,12 @@ export const ZoneSystem = () => {
|
||||
obj.visible = visible
|
||||
}
|
||||
|
||||
const label = obj.getObjectByName('label')
|
||||
if (label) {
|
||||
// Hide label if zone layer is off OR if in solo mode on a different level
|
||||
const showLabel = visible && !hideInSoloMode;
|
||||
const labelPosition = obj.userData.labelPosition as [number, number, number] | undefined
|
||||
|
||||
const targetX = showLabel && labelPosition ? labelPosition[0] : -9999
|
||||
if (label.position.x !== targetX) {
|
||||
if (showLabel && labelPosition) {
|
||||
label.position.set(...labelPosition)
|
||||
} else {
|
||||
label.position.set(-9999, -9999, -9999)
|
||||
}
|
||||
}
|
||||
// Hide label if zone layer is off OR if in solo mode on a different level
|
||||
const showLabel = visible && !hideInSoloMode
|
||||
const targetOpacity = showLabel ? '1' : '0'
|
||||
const labelEl = document.getElementById(`${zoneId}-label`)
|
||||
if (labelEl && labelEl.style.opacity !== targetOpacity) {
|
||||
labelEl.style.opacity = targetOpacity
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
@@ -190,6 +190,8 @@ export const ZoneRenderer = ({ node }: { node: ZoneNode }) => {
|
||||
flexDirection: 'column',
|
||||
alignItems: 'center',
|
||||
transform: 'translate3d(-50%, -50%, 0)',
|
||||
opacity: 0,
|
||||
transition: 'opacity 0.3s ease-in-out',
|
||||
}}>
|
||||
<div
|
||||
style={{
|
||||
|
||||
Reference in New Issue
Block a user