[한수빈] 홈 화면 프로젝트 호버 이미지 설정

26.02.10
- 마우스 호버 이미지 추가
- 이미지 모서리 변경
This commit is contained in:
SOOBEEN HAN
2026-02-10 12:08:53 +09:00
parent a88d280de1
commit cc228305e0
25 changed files with 858 additions and 95 deletions

View File

@@ -13,9 +13,10 @@ MonoBehaviour:
m_Name: Data_AFAS
m_EditorClassIdentifier: Assembly-CSharp::OCTOPUS_TWIN.ProjectData
projectName: AFAS
description: "Location: \uACBD\uAE30 \uC548\uC0B0\uC2DC \uB2E8\uC6D0\uAD6C \uC0B0\uC131\uB85C
52\nFile Size: 15.2MB\nLast Updated: 2026.02.11"
description: "Location: \uACBD\uAE30 \uC548\uC0B0\uC2DC \uB2E8\uC6D0\uAD6C\nFile
Size: 150.2MB\nLast Updated: 2026.02.11"
thumbnail: {fileID: 21300000, guid: 77287373a259fab409ed7c74935c5102, type: 3}
hover: {fileID: 21300000, guid: 8b3c67ca65ee21643a8906c8ee3c729d, type: 3}
curSceneStatus: 0
modelPrefab: {fileID: 0}
sceneAssets: []

View File

@@ -16,6 +16,7 @@ MonoBehaviour:
description: "Location: \uBD80\uC0B0 \uC0AC\uD558\uAD6C \uD558\uC2E0\nFile Size:
113MB\nLast Updated: 2026.02.11"
thumbnail: {fileID: 21300000, guid: c2dd61a75c3903248971617c8f89b32d, type: 3}
hover: {fileID: 21300000, guid: 8b3c67ca65ee21643a8906c8ee3c729d, type: 3}
curSceneStatus: 0
modelPrefab: {fileID: 0}
sceneAssets: []

View File

@@ -12,10 +12,11 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: c6afc1f7da23fd44d957e1b9874bdf6d, type: 3}
m_Name: Data_Chunil
m_EditorClassIdentifier: Assembly-CSharp::OCTOPUS_TWIN.ProjectData
projectName: Chunil
projectName: "OO\uC5D4\uC9C0\uB2C8\uC5B4\uB9C1"
description: "Location: \uC778\uCC9C\uAD11\uC5ED\uC2DC \uB0A8\uB3D9\uAD6C \uACE0\uC794\uB3D9\nFile
Size: 214.4MB \nLast Updated: 2026.02.11"
thumbnail: {fileID: 21300000, guid: d85da74f58022cd49a25bad0655e3ee3, type: 3}
thumbnail: {fileID: 21300000, guid: 65fe46bd8eb44044485387b91b9d525c, type: 3}
hover: {fileID: 21300000, guid: 984c32caad08205489f1b2725d5e0dd5, type: 3}
curSceneStatus: 1
modelPrefab: {fileID: 1600303972707744018, guid: 02de84299dbbd354fa8fe07b680d5d8c, type: 3}
sceneAssets:

View File

@@ -16,6 +16,7 @@ MonoBehaviour:
description: "Location: \uC778\uCC9C\uAD11\uC5ED\uC2DC \uB0A8\uB3D9\uAD6C\nFile
Size: 114MB\nLast Updated: 2026.02.11"
thumbnail: {fileID: 21300000, guid: cf9aa331ea4a9de40889555cfce67a2e, type: 3}
hover: {fileID: 21300000, guid: 8b3c67ca65ee21643a8906c8ee3c729d, type: 3}
curSceneStatus: 0
modelPrefab: {fileID: 0}
sceneAssets: []

View File

@@ -16,6 +16,7 @@ MonoBehaviour:
description: "Location: \uACBD\uC0C1\uB0A8\uB3C4 \uCC3D\uC6D0\uC2DC \uC131\uC0B0\uAD6C\nFile
Size: 155MB\nLast Updated: 2026.02.11"
thumbnail: {fileID: 21300000, guid: 48812a0cc4b904f4b8dda5a89691424b, type: 3}
hover: {fileID: 21300000, guid: 00207835f82d3a049808bac1edb6420a, type: 3}
curSceneStatus: 3
modelPrefab: {fileID: 7895599977219415672, guid: 1640d857ae03ade4f958a521e19f11cd, type: 3}
sceneAssets: []
@@ -24,4 +25,4 @@ MonoBehaviour:
popupCanvasPrefab: {fileID: 3178617709267424133, guid: f26776b9f8433c34b9e254b2a145b73b, type: 3}
sceneMain: {fileID: 3953432803056626161, guid: a35446b7bf8d6bf4595dac237037fcbd, type: 3}
labelCanvas: {fileID: 5518232223177137399, guid: 7422d603dfb09e9448d89b5fe17a3ef6, type: 3}
isLocked: 1
isLocked: 0

View File

@@ -15,7 +15,8 @@ MonoBehaviour:
projectName: KEPCO
description: "Location: \uACBD\uAE30\uB3C4 \uC758\uC815\uBD80\uC2DC \uC790\uC77C\uB3D9\nFile
Size: 193MB\nLast Updated: 2026.02.11"
thumbnail: {fileID: 21300000, guid: a11db3b67adb5f844b78ee3c762c7e75, type: 3}
thumbnail: {fileID: 21300000, guid: 2cc16eff5df4bff45a782786135df53f, type: 3}
hover: {fileID: 21300000, guid: afe44b78cbec59948ad9053bc2a686e0, type: 3}
curSceneStatus: 2
modelPrefab: {fileID: 1364758469199115521, guid: 423036aa0a8d7e54896acc2d79cf08b5, type: 3}
sceneAssets: []
@@ -24,4 +25,4 @@ MonoBehaviour:
popupCanvasPrefab: {fileID: 6944805395147841475, guid: 211ab265afe9f854bae51f1a2602c3f5, type: 3}
sceneMain: {fileID: 5850141579646257595, guid: 2b7f55830958f804aaad00ae1d4bbe6a, type: 3}
labelCanvas: {fileID: 5307194914983898905, guid: 3611a796a20d61f4faad719a2a0352be, type: 3}
isLocked: 1
isLocked: 0

View File

@@ -16,6 +16,7 @@ MonoBehaviour:
description: "Location: \uC6B8\uC0B0\uAD11\uC5ED\uC2DC \uB0A8\uAD6C\nFile Size:
181MB\nLast Updated: 2026.02.11"
thumbnail: {fileID: 21300000, guid: 677015f688ee11a44af399dfb1e395a6, type: 3}
hover: {fileID: 21300000, guid: 8b3c67ca65ee21643a8906c8ee3c729d, type: 3}
curSceneStatus: 0
modelPrefab: {fileID: 0}
sceneAssets: []

View File

@@ -13,9 +13,10 @@ MonoBehaviour:
m_Name: Data_SH-INT
m_EditorClassIdentifier: Assembly-CSharp::OCTOPUS_TWIN.ProjectData
projectName: SH-INT
description: "Location: \uACBD\uB0A8 \uAE40\uD574\uC2DC \uC9C4\uC601\uC74D \uC11C\uBD80\uB85C
123\uBC88\uAE38\nFile Size: 14.7MB\nLast Updated: 2026.02.11"
description: "Location: \uACBD\uB0A8 \uAE40\uD574\uC2DC \uC9C4\uC601\uC74D\nFile
Size: 147.7MB\nLast Updated: 2026.02.11"
thumbnail: {fileID: 21300000, guid: cab18c80575252e46a468d4abeefe5fc, type: 3}
hover: {fileID: 21300000, guid: 8b3c67ca65ee21643a8906c8ee3c729d, type: 3}
curSceneStatus: 0
modelPrefab: {fileID: 0}
sceneAssets: []

View File

@@ -14,6 +14,7 @@ namespace OCTOPUS_TWIN
public string projectName; // 프로젝트 이름
[TextArea] public string description; // 설명
public Sprite thumbnail; // 썸네일 이미지
public Sprite hover; // 썸네일 호버 이미지
[Header("SceneType")]
public SceneStatus curSceneStatus;

View File

@@ -1,20 +1,50 @@
using System;
using System.Linq;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.EventSystems;
using TMPro;
using DG.Tweening;
namespace OCTOPUS_TWIN
{
public class ProjectItemView : MonoBehaviour
public class ProjectItemView : MonoBehaviour, IPointerEnterHandler, IPointerExitHandler
{
[SerializeField] private TextMeshProUGUI textTitle;
[SerializeField] private TextMeshProUGUI textDesc;
[SerializeField] private Image imageThumbnail;
[SerializeField] private GameObject imageLock;
[SerializeField] private Button btnSelect;
[SerializeField] private Image hoverOverlayImage;
private ProjectData myData;
[Header("애니메이션 시간 (초)")]
[SerializeField] private float fadeDuration = 0.3f;
public void OnPointerEnter(PointerEventData eventData)
{
if (hoverOverlayImage == null) return;
// 실행 중이던 이전 애니메이션이 있다면 즉시 중단 (버벅임 방지)
hoverOverlayImage.DOKill();
// 색상을 1로 duration 동안 변경
hoverOverlayImage.DOFade(1f, fadeDuration);
}
public void OnPointerExit(PointerEventData eventData)
{
if (hoverOverlayImage == null) return;
hoverOverlayImage.DOKill();
// 알파값을 0으로 변경
hoverOverlayImage.DOFade(0f, fadeDuration);
}
// UI 갱신
private void UpdateUI(ProjectData data)
{
@@ -22,6 +52,16 @@ namespace OCTOPUS_TWIN
if (textTitle) textTitle.text = data.projectName;
if (textDesc) textDesc.text = data.description;
if (imageThumbnail) imageThumbnail.sprite = data.thumbnail;
if (hoverOverlayImage != null)
{
hoverOverlayImage.sprite = data.hover;
// 처음엔 투명하게 숨김
Color c = hoverOverlayImage.color;
c.a = 0f;
hoverOverlayImage.color = c;
}
}
// 클릭 가능한 프로젝트 세팅