Skip to content

Commit 8ba09f4

Browse files
committed
Update
feat & fix: Add polygon move tool, fix memory leaks, and optimize rendering [Features] - Added `Shift + Drag` to move entire CellSpace polygons without altering shape. - Added `Ctrl + S` shortcut for quick project saving. - Enabled developer log window (F12) by default on startup. [Performance & Optimization] - Fixed critical VRAM/Memory leaks by introducing `NativeResourceCleanup` for hidden meshes and materials. - Implemented Lazy Loading for storey rendering, drastically improving `Undo` speed and large-scale editing performance. - Reduced max Undo stack steps (10 -> 5) to optimize RAM usage. - Optimized Save logic by removing heavy validation steps for instant saving. [Bug Fixes] - Fixed camera Y-axis altitude synchronization when switching storeys via dropdown. - Resolved orphan/zombie data issues by ensuring Edge and Duality references are synchronized across all storeys upon ID changes or object deletions. - Fixed standalone node deletion bug caused by incorrect ID naming conventions.
1 parent 783f882 commit 8ba09f4

4 files changed

Lines changed: 608 additions & 180 deletions

File tree

Assets/.gitignore

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
# This .gitignore file should be placed at the root of your Unity project directory
2+
#
3+
# Get latest from https://github.com/github/gitignore/blob/main/Unity.gitignore
4+
#
5+
.utmp/
6+
/[Ll]ibrary/
7+
/[Tt]emp/
8+
/[Oo]bj/
9+
/[Bb]uild_OLD/
10+
/[Bb]uilds/
11+
/[Ll]ogs/
12+
/[Uu]ser[Ss]ettings/
13+
*.log
14+
15+
# MemoryCaptures can get excessive in size.
16+
# They also could contain extremely sensitive data
17+
/[Mm]emoryCaptures/
18+
19+
# Recordings can get excessive in size
20+
/[Rr]ecordings/
21+
22+
# Uncomment this line if you wish to ignore the asset store tools plugin
23+
# /[Aa]ssets/AssetStoreTools*
24+
25+
# Autogenerated Jetbrains Rider plugin
26+
/[Aa]ssets/Plugins/Editor/JetBrains*
27+
28+
# Visual Studio cache directory
29+
.vs/
30+
31+
# Gradle cache directory
32+
.gradle/
33+
34+
# Autogenerated VS/MD/Consulo solution and project files
35+
ExportedObj/
36+
.consulo/
37+
*.csproj
38+
*.unityproj
39+
*.sln
40+
*.suo
41+
*.tmp
42+
*.user
43+
*.userprefs
44+
*.pidb
45+
*.booproj
46+
*.svd
47+
*.pdb
48+
*.mdb
49+
*.opendb
50+
*.VC.db
51+
52+
# Unity3D generated meta files
53+
*.pidb.meta
54+
*.pdb.meta
55+
*.mdb.meta
56+
57+
# Unity3D generated file on crash reports
58+
sysinfo.txt
59+
60+
# Builds
61+
*.apk
62+
*.aab
63+
*.unitypackage
64+
*.unitypackage.meta
65+
*.app
66+
67+
# Crashlytics generated file
68+
crashlytics-build.properties
69+
70+
# Packed Addressables
71+
/[Aa]ssets/[Aa]ddressable[Aa]ssets[Dd]ata/*/*.bin*
72+
73+
# Temporary auto-generated Android Assets
74+
/[Aa]ssets/[Ss]treamingAssets/aa.meta
75+
/[Aa]ssets/[Ss]treamingAssets/aa/*

Assets/Scenes/MainScene.unity

Lines changed: 144 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1946,6 +1946,143 @@ CanvasRenderer:
19461946
m_PrefabAsset: {fileID: 0}
19471947
m_GameObject: {fileID: 255784361}
19481948
m_CullTransparentMesh: 1
1949+
--- !u!1 &266025697
1950+
GameObject:
1951+
m_ObjectHideFlags: 0
1952+
m_CorrespondingSourceObject: {fileID: 0}
1953+
m_PrefabInstance: {fileID: 0}
1954+
m_PrefabAsset: {fileID: 0}
1955+
serializedVersion: 6
1956+
m_Component:
1957+
- component: {fileID: 266025698}
1958+
- component: {fileID: 266025700}
1959+
- component: {fileID: 266025699}
1960+
m_Layer: 5
1961+
m_Name: Text_FileName
1962+
m_TagString: Untagged
1963+
m_Icon: {fileID: 0}
1964+
m_NavMeshLayer: 0
1965+
m_StaticEditorFlags: 0
1966+
m_IsActive: 1
1967+
--- !u!224 &266025698
1968+
RectTransform:
1969+
m_ObjectHideFlags: 0
1970+
m_CorrespondingSourceObject: {fileID: 0}
1971+
m_PrefabInstance: {fileID: 0}
1972+
m_PrefabAsset: {fileID: 0}
1973+
m_GameObject: {fileID: 266025697}
1974+
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
1975+
m_LocalPosition: {x: 0, y: 0, z: 0}
1976+
m_LocalScale: {x: 1, y: 1, z: 1}
1977+
m_ConstrainProportionsScale: 0
1978+
m_Children: []
1979+
m_Father: {fileID: 1833606715}
1980+
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
1981+
m_AnchorMin: {x: 0, y: 1}
1982+
m_AnchorMax: {x: 0, y: 1}
1983+
m_AnchoredPosition: {x: 570, y: -22.400024}
1984+
m_SizeDelta: {x: 1112.2069, y: 39.25659}
1985+
m_Pivot: {x: 0.5, y: 0.5}
1986+
--- !u!114 &266025699
1987+
MonoBehaviour:
1988+
m_ObjectHideFlags: 0
1989+
m_CorrespondingSourceObject: {fileID: 0}
1990+
m_PrefabInstance: {fileID: 0}
1991+
m_PrefabAsset: {fileID: 0}
1992+
m_GameObject: {fileID: 266025697}
1993+
m_Enabled: 1
1994+
m_EditorHideFlags: 0
1995+
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
1996+
m_Name:
1997+
m_EditorClassIdentifier: Unity.TextMeshPro::TMPro.TextMeshProUGUI
1998+
m_Material: {fileID: 0}
1999+
m_Color: {r: 1, g: 1, b: 1, a: 1}
2000+
m_RaycastTarget: 1
2001+
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
2002+
m_Maskable: 1
2003+
m_OnCullStateChanged:
2004+
m_PersistentCalls:
2005+
m_Calls: []
2006+
m_text: 'IndoorGML Editor - [New Project]'
2007+
m_isRightToLeft: 0
2008+
m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
2009+
m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
2010+
m_fontSharedMaterials: []
2011+
m_fontMaterial: {fileID: 0}
2012+
m_fontMaterials: []
2013+
m_fontColor32:
2014+
serializedVersion: 2
2015+
rgba: 4294967295
2016+
m_fontColor: {r: 1, g: 1, b: 1, a: 1}
2017+
m_enableVertexGradient: 0
2018+
m_colorMode: 3
2019+
m_fontColorGradient:
2020+
topLeft: {r: 1, g: 1, b: 1, a: 1}
2021+
topRight: {r: 1, g: 1, b: 1, a: 1}
2022+
bottomLeft: {r: 1, g: 1, b: 1, a: 1}
2023+
bottomRight: {r: 1, g: 1, b: 1, a: 1}
2024+
m_fontColorGradientPreset: {fileID: 0}
2025+
m_spriteAsset: {fileID: 0}
2026+
m_tintAllSprites: 0
2027+
m_StyleSheet: {fileID: 0}
2028+
m_TextStyleHashCode: -1183493901
2029+
m_overrideHtmlColors: 0
2030+
m_faceColor:
2031+
serializedVersion: 2
2032+
rgba: 4294967295
2033+
m_fontSize: 20
2034+
m_fontSizeBase: 20
2035+
m_fontWeight: 400
2036+
m_enableAutoSizing: 0
2037+
m_fontSizeMin: 18
2038+
m_fontSizeMax: 72
2039+
m_fontStyle: 0
2040+
m_HorizontalAlignment: 1
2041+
m_VerticalAlignment: 256
2042+
m_textAlignment: 65535
2043+
m_characterSpacing: 0
2044+
m_characterHorizontalScale: 1
2045+
m_wordSpacing: 0
2046+
m_lineSpacing: 0
2047+
m_lineSpacingMax: 0
2048+
m_paragraphSpacing: 0
2049+
m_charWidthMaxAdj: 0
2050+
m_TextWrappingMode: 1
2051+
m_wordWrappingRatios: 0.4
2052+
m_overflowMode: 0
2053+
m_linkedTextComponent: {fileID: 0}
2054+
parentLinkedComponent: {fileID: 0}
2055+
m_enableKerning: 0
2056+
m_ActiveFontFeatures: 6e72656b
2057+
m_enableExtraPadding: 0
2058+
checkPaddingRequired: 0
2059+
m_isRichText: 1
2060+
m_EmojiFallbackSupport: 1
2061+
m_parseCtrlCharacters: 1
2062+
m_isOrthographic: 1
2063+
m_isCullingEnabled: 0
2064+
m_horizontalMapping: 0
2065+
m_verticalMapping: 0
2066+
m_uvLineOffset: 0
2067+
m_geometrySortingOrder: 0
2068+
m_IsTextObjectScaleStatic: 0
2069+
m_VertexBufferAutoSizeReduction: 0
2070+
m_useMaxVisibleDescender: 1
2071+
m_pageToDisplay: 1
2072+
m_margin: {x: 0, y: 0, z: 0, w: 0}
2073+
m_isUsingLegacyAnimationComponent: 0
2074+
m_isVolumetricText: 0
2075+
m_hasFontAssetChanged: 0
2076+
m_baseMaterial: {fileID: 0}
2077+
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
2078+
--- !u!222 &266025700
2079+
CanvasRenderer:
2080+
m_ObjectHideFlags: 0
2081+
m_CorrespondingSourceObject: {fileID: 0}
2082+
m_PrefabInstance: {fileID: 0}
2083+
m_PrefabAsset: {fileID: 0}
2084+
m_GameObject: {fileID: 266025697}
2085+
m_CullTransparentMesh: 1
19492086
--- !u!1 &271005135
19502087
GameObject:
19512088
m_ObjectHideFlags: 0
@@ -11013,6 +11150,7 @@ MonoBehaviour:
1101311150
isCreatingStandaloneNode: 0
1101411151
editorUI: {fileID: 139642535}
1101511152
developerLogWindow: {fileID: 327956773}
11153+
titleTextUI: {fileID: 266025699}
1101611154
isSettingDualityMode: 0
1101711155
isSplitMode: 0
1101811156
--- !u!4 &971414497
@@ -12790,7 +12928,7 @@ RectTransform:
1279012928
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
1279112929
m_AnchorMin: {x: 0, y: 1}
1279212930
m_AnchorMax: {x: 0, y: 1}
12793-
m_AnchoredPosition: {x: -1762.9, y: 556}
12931+
m_AnchoredPosition: {x: -1762.9, y: 517}
1279412932
m_SizeDelta: {x: 182.9, y: 733.1}
1279512933
m_Pivot: {x: 0.5, y: 0.5}
1279612934
--- !u!114 &1156529100
@@ -16406,8 +16544,8 @@ MonoBehaviour:
1640616544
m_TargetGraphic: {fileID: 209759566}
1640716545
m_HandleRect: {fileID: 209759565}
1640816546
m_Direction: 0
16409-
m_Value: 1
16410-
m_Size: 0.99999994
16547+
m_Value: 0
16548+
m_Size: 1
1641116549
m_NumberOfSteps: 0
1641216550
m_OnValueChanged:
1641316551
m_PersistentCalls:
@@ -17700,8 +17838,8 @@ RectTransform:
1770017838
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
1770117839
m_AnchorMin: {x: 0, y: 1}
1770217840
m_AnchorMax: {x: 1, y: 1}
17703-
m_AnchoredPosition: {x: 0, y: 0}
17704-
m_SizeDelta: {x: 0, y: 0}
17841+
m_AnchoredPosition: {x: 5, y: 0}
17842+
m_SizeDelta: {x: -5, y: 0}
1770517843
m_Pivot: {x: 0, y: 1}
1770617844
--- !u!114 &1762061918
1770717845
MonoBehaviour:
@@ -19146,6 +19284,7 @@ RectTransform:
1914619284
- {fileID: 959442947}
1914719285
- {fileID: 327956774}
1914819286
- {fileID: 1992668022}
19287+
- {fileID: 266025698}
1914919288
m_Father: {fileID: 0}
1915019289
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
1915119290
m_AnchorMin: {x: 0, y: 0}

0 commit comments

Comments
 (0)