diff --git a/Assets/WL/Combat/Stage/Barrier/StageBarrierVisual.cs b/Assets/WL/Combat/Stage/Barrier/StageBarrierVisual.cs
index ccfacc48c..3b501d3ca 100644
--- a/Assets/WL/Combat/Stage/Barrier/StageBarrierVisual.cs
+++ b/Assets/WL/Combat/Stage/Barrier/StageBarrierVisual.cs
@@ -146,6 +146,22 @@ namespace WL.Combat.Stage
s_phaseLen = Mathf.Max(0.01f, cfg != null ? cfg.fadeSeconds : 0.6f);
}
+ ///
+ /// 2026-09-15 Lead 실측 — 던전에서 섬으로 나온 뒤 `[WL815c] StageBarrierVisual`(HideAndDontSave · 씬 무관)의 울타리·바위가
+ /// 섬 물 위에 그대로 남아 PD 화면의 「허공에 뜬 울타리」였다(Hide 는 페이드라 Tick 이 끊기면 영영 안 사라진다).
+ /// 섬 진입 시 연출 없이 즉시 풀에 반납한다. 슬롯이 없으면 무동작(비용 0).
+ ///
+ public static int HideImmediate()
+ {
+ int n = s_live.Count;
+ s_showing = false;
+ if (n == 0 && s_t <= 0f) return 0;
+ ApplyPhase(0f);
+ ReturnAll();
+ s_t = 0f;
+ return n;
+ }
+
/// 연출 진행. StageBarrier.Tick 이 부른다.
internal static void Tick(WLStageBarrierSettings cfg)
{
diff --git a/Assets/WL/Island/WLIslandFlowV2.cs b/Assets/WL/Island/WLIslandFlowV2.cs
index 6126ae15d..1a1068ecd 100644
--- a/Assets/WL/Island/WLIslandFlowV2.cs
+++ b/Assets/WL/Island/WLIslandFlowV2.cs
@@ -381,7 +381,8 @@ namespace WL.Island
{
var p = all[i];
if (p == null) continue;
- if (scene.IsValid() && p.gameObject.scene != scene) continue;
+ // 2026-09-15 Lead 실측 — FI 가 Instantiate 한 `Purchaser(Clone)` 은 섬 씬이 아니라 **활성 씬(InGame)** 에 생긴다 → 활성 씬도 허용
+ if (scene.IsValid() && p.gameObject.scene != scene && p.gameObject.scene != SceneManager.GetActiveScene()) continue;
if (p.GetComponentInParent() != null) continue; // 우리 발판은 건드리지 않는다
var rends = p.GetComponentsInChildren(true);
diff --git a/Assets/WL/Island/WLIslandGateFlow.cs b/Assets/WL/Island/WLIslandGateFlow.cs
index 975d5d739..a7cdac5cf 100644
--- a/Assets/WL/Island/WLIslandGateFlow.cs
+++ b/Assets/WL/Island/WLIslandGateFlow.cs
@@ -90,6 +90,10 @@ namespace WL.Island
bool haveFarm = HideFarms(cfg, scene, out farmCenter);
HideIslandFences(cfg, scene, null);
+ // 2026-09-15 Lead 실측(광선·전수 조회) — PD 화면의 「허공에 뜬 울타리·바위」 = 전투 스테이지 「보이는 장벽」(WL815c · HideAndDontSave)이
+ // 던전 → 섬 전환 뒤에도 남은 것. 섬 진입마다 즉시 풀에 반납한다(슬롯 없으면 비용 0).
+ int barrier = WL.Combat.Stage.StageBarrierVisual.HideImmediate();
+ if (barrier > 0) WLIslandBridge.Log(cfg, "전투 장벽 그림 " + barrier + "개 즉시 정리(섬 진입)");
WLIslandTileFenceStrip.Apply(cfg, scene); // 2026-09-15 Lead 실측 — 타일 메시에 구워진 난간 제거
HookFenceGuard(cfg, scene); // 2026-09-15 — 그리기 직전마다 fence 렌더러 차단 + 정체 기록
// 2026-09-15 PD 「게임 시작 시 섬에 울타리가 여전히 남아 있다」 — 시작 직후 FI 타일 활성화가 렌더러를 다시 켜므로
@@ -540,6 +544,7 @@ namespace WL.Island
yield return new WaitForSeconds(wait);
if (cfg == null || cfg.hideIslandFences == 0 || !scene.IsValid() || !scene.isLoaded) yield break;
HideIslandFences(cfg, scene, null);
+ WL.Combat.Stage.StageBarrierVisual.HideImmediate(); // 늦게 페이드 중이던 전투 장벽 그림까지(슬롯 없으면 비용 0)
WLIslandTileFenceStrip.Apply(cfg, scene); // 확장·재구성으로 타일 메시가 바뀌면 다시 잘라낸다(멱등)
if (cfg.hideFarms != 0) { Vector3 _c; HideFarms(cfg, scene, out _c); } // 늦게 생긴 밭의 울타리·소품도
}
diff --git a/Assets/WL/Look/Farm/Materials/Farm_Grass_Demo3.mat b/Assets/WL/Look/Farm/Materials/Farm_Grass_Demo3.mat
index e68a11b0d..cfd9020a8 100644
--- a/Assets/WL/Look/Farm/Materials/Farm_Grass_Demo3.mat
+++ b/Assets/WL/Look/Farm/Materials/Farm_Grass_Demo3.mat
@@ -98,8 +98,8 @@ Material:
- _ClearCoatSmoothness: 0
- _Cloud_Change: 0.005
- _Cloud_Cover: 0.5
- - _Cloud_Density: 0.01
- - _Cloud_Strength: 1
+ - _Cloud_Density: 0.06
+ - _Cloud_Strength: 0.7
- _Cull: 2
- _Cutoff: 0.5
- _DetailAlbedoMapScale: 1
@@ -138,7 +138,7 @@ Material:
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _DiffuseColor: {r: 0.77647066, g: 0.95294124, b: 0.59607846, a: 0}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- - _ShadowDiffuseColor: {r: 0.2509804, g: 0.3254902, b: 0.23529413, a: 0}
+ - _ShadowDiffuseColor: {r: 0.77647066, g: 0.95294124, b: 0.59607846, a: 0}
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
- _WindMovement: {r: 6, g: 0, b: 0, a: 0}
m_BuildTextureStacks: []
diff --git a/Assets/WL/Look/Farm/Materials/Farm_IslandTop_Demo3.mat b/Assets/WL/Look/Farm/Materials/Farm_IslandTop_Demo3.mat
index 90cd85410..32755852a 100644
--- a/Assets/WL/Look/Farm/Materials/Farm_IslandTop_Demo3.mat
+++ b/Assets/WL/Look/Farm/Materials/Farm_IslandTop_Demo3.mat
@@ -29,11 +29,11 @@ Material:
serializedVersion: 3
m_TexEnvs:
- _BaseMap:
- m_Texture: {fileID: 2800000, guid: 6fd28da5d8014083aed0633dfd21c3a5, type: 3}
+ m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ShadowBaseMap:
- m_Texture: {fileID: 2800000, guid: 6fd28da5d8014083aed0633dfd21c3a5, type: 3}
+ m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_Lightmaps:
@@ -57,8 +57,8 @@ Material:
- _CastShadows: 1
- _Cloud_Change: 0.005
- _Cloud_Cover: 0.5
- - _Cloud_Density: 0.01
- - _Cloud_Strength: 1
+ - _Cloud_Density: 0.06
+ - _Cloud_Strength: 0.7
- _Cull: 2
- _DepthEdgeStrength: 0.5
- _DepthThreshold: 0.01
diff --git a/Assets/WL/Look/Farm/Resources/WL/WLIslandLookSettings.asset b/Assets/WL/Look/Farm/Resources/WL/WLIslandLookSettings.asset
index bc806261d..65fc41118 100644
--- a/Assets/WL/Look/Farm/Resources/WL/WLIslandLookSettings.asset
+++ b/Assets/WL/Look/Farm/Resources/WL/WLIslandLookSettings.asset
@@ -85,23 +85,23 @@ MonoBehaviour:
mesh: {fileID: -4413095505993930501, guid: 1f298817fdd2a184480e8af5b21278bc, type: 3}
material: {fileID: 2100000, guid: 3b82f6a1cd074e2f9a15d8e73c40b592, type: 2}
probability: 100
- scale: 0.35
+ scale: 0.15
normalOffset: 0.04
- density: 2.5
+ density: 4
- enabled_: 1
label: "\uAF43"
mesh: {fileID: -6327915695457451627, guid: dab2c84bf0b5ced4aaf0cffc4c491d55, type: 3}
material: {fileID: 2100000, guid: d50a40cb47ec86444b898d9121bbe0f7, type: 2}
probability: 1
- scale: 0.35
+ scale: 0.15
normalOffset: 0.04
- density: 2.5
+ density: 4
- enabled_: 1
label: "\uC790\uAC08"
mesh: {fileID: 2928966540353291585, guid: 7f1f11ac2c783374b876f8dc2bb7c7db, type: 3}
material: {fileID: 2100000, guid: 77d84437c100f274aad603219110357d, type: 2}
probability: 1
- scale: 0.7
+ scale: 0.35
normalOffset: 0.1
density: 0.05
positionVariance: 0.5