├── Assembly-CSharp.csproj ├── Assets ├── DegradedRectangles.cs ├── DegradedRectangles.cs.meta ├── ProceduralGeometry.cs ├── ProceduralGeometry.cs.meta ├── ProceduralGeometry.mat ├── ProceduralGeometry.mat.meta ├── ProceduralGeometry.shader ├── ProceduralGeometry.shader.meta ├── Scenes.meta ├── Scenes │ ├── SampleScene.unity │ └── SampleScene.unity.meta ├── TCP2_Demo_UnityChan.fbx ├── TCP2_Demo_UnityChan.fbx.meta ├── body.asset ├── body.asset.meta ├── def_mat.mat ├── def_mat.mat.meta ├── face.asset ├── face.asset.meta ├── fhair.asset ├── fhair.asset.meta ├── fhair2.asset ├── fhair2.asset.meta ├── head.asset └── head.asset.meta ├── Packages └── manifest.json ├── ProjectSettings ├── AudioManager.asset ├── ClusterInputManager.asset ├── DynamicsManager.asset ├── EditorBuildSettings.asset ├── EditorSettings.asset ├── GraphicsSettings.asset ├── InputManager.asset ├── NavMeshAreas.asset ├── NetworkManager.asset ├── Physics2DSettings.asset ├── PresetManager.asset ├── ProjectSettings.asset ├── ProjectVersion.txt ├── QualitySettings.asset ├── TagManager.asset ├── TimeManager.asset ├── UnityConnectSettings.asset └── VFXManager.asset ├── README.md ├── UnityCartoonLine.sln ├── demo.png ├── preview.gif └── preview2.gif /Assembly-CSharp.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | latest 5 | 6 | 7 | Debug 8 | AnyCPU 9 | 10.0.20506 10 | 2.0 11 | 12 | {C9C5ACED-AF37-B251-9AC8-2374AADD4A08} 13 | Library 14 | Properties 15 | Assembly-CSharp 16 | v4.7.1 17 | 512 18 | . 19 | 20 | 21 | true 22 | full 23 | false 24 | Temp\bin\Debug\ 25 | DEBUG;TRACE;UNITY_5_3_OR_NEWER;UNITY_5_4_OR_NEWER;UNITY_5_5_OR_NEWER;UNITY_5_6_OR_NEWER;UNITY_2017_1_OR_NEWER;UNITY_2017_2_OR_NEWER;UNITY_2017_3_OR_NEWER;UNITY_2017_4_OR_NEWER;UNITY_2018_1_OR_NEWER;UNITY_2018_2_OR_NEWER;UNITY_2018_3_OR_NEWER;UNITY_2018_4_OR_NEWER;UNITY_2018_4_8;UNITY_2018_4;UNITY_2018;PLATFORM_ARCH_64;UNITY_64;UNITY_INCLUDE_TESTS;UNITY_ANALYTICS;ENABLE_AUDIO;ENABLE_CACHING;ENABLE_CLOTH;ENABLE_DUCK_TYPING;ENABLE_MICROPHONE;ENABLE_MULTIPLE_DISPLAYS;ENABLE_PHYSICS;ENABLE_SPRITES;ENABLE_GRID;ENABLE_TILEMAP;ENABLE_TERRAIN;ENABLE_TEXTURE_STREAMING;ENABLE_DIRECTOR;ENABLE_UNET;ENABLE_LZMA;ENABLE_UNITYEVENTS;ENABLE_WEBCAM;ENABLE_WWW;ENABLE_CLOUD_SERVICES_COLLAB;ENABLE_CLOUD_SERVICES_COLLAB_SOFTLOCKS;ENABLE_CLOUD_SERVICES_ADS;ENABLE_CLOUD_HUB;ENABLE_CLOUD_PROJECT_ID;ENABLE_CLOUD_SERVICES_USE_WEBREQUEST;ENABLE_CLOUD_SERVICES_UNET;ENABLE_CLOUD_SERVICES_BUILD;ENABLE_CLOUD_LICENSE;ENABLE_EDITOR_HUB;ENABLE_EDITOR_HUB_LICENSE;ENABLE_WEBSOCKET_CLIENT;ENABLE_DIRECTOR_AUDIO;ENABLE_DIRECTOR_TEXTURE;ENABLE_TIMELINE;ENABLE_EDITOR_METRICS;ENABLE_EDITOR_METRICS_CACHING;ENABLE_MANAGED_JOBS;ENABLE_MANAGED_TRANSFORM_JOBS;ENABLE_MANAGED_ANIMATION_JOBS;INCLUDE_DYNAMIC_GI;INCLUDE_GI;ENABLE_MONO_BDWGC;PLATFORM_SUPPORTS_MONO;RENDER_SOFTWARE_CURSOR;INCLUDE_PUBNUB;ENABLE_VIDEO;ENABLE_CUSTOM_RENDER_TEXTURE;ENABLE_LOCALIZATION;PLATFORM_STANDALONE_WIN;PLATFORM_STANDALONE;UNITY_STANDALONE_WIN;UNITY_STANDALONE;ENABLE_SUBSTANCE;ENABLE_RUNTIME_GI;ENABLE_MOVIES;ENABLE_NETWORK;ENABLE_CRUNCH_TEXTURE_COMPRESSION;ENABLE_UNITYWEBREQUEST;ENABLE_CLOUD_SERVICES;ENABLE_CLOUD_SERVICES_ANALYTICS;ENABLE_CLOUD_SERVICES_PURCHASING;ENABLE_CLOUD_SERVICES_CRASH_REPORTING;ENABLE_OUT_OF_PROCESS_CRASH_HANDLER;ENABLE_EVENT_QUEUE;ENABLE_CLUSTER_SYNC;ENABLE_CLUSTERINPUT;ENABLE_VR;ENABLE_AR;ENABLE_WEBSOCKET_HOST;ENABLE_MONO;NET_STANDARD_2_0;ENABLE_PROFILER;UNITY_ASSERTIONS;UNITY_EDITOR;UNITY_EDITOR_64;UNITY_EDITOR_WIN;ENABLE_UNITY_COLLECTIONS_CHECKS;ENABLE_BURST_AOT;UNITY_TEAM_LICENSE;ENABLE_VSTU;CSHARP_7_OR_LATER;CSHARP_7_3_OR_NEWER 26 | prompt 27 | 4 28 | 0169;CS0649;IDE0051 29 | False 30 | 31 | 32 | pdbonly 33 | true 34 | Temp\bin\Release\ 35 | prompt 36 | 4 37 | 0169;CS0649;IDE0051 38 | False 39 | 40 | 41 | true 42 | true 43 | false 44 | false 45 | false 46 | 47 | 48 | {E097FAD1-6243-4DAD-9C02-E9B9EFC3FFC1};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} 49 | Unity/VSTU 50 | Game:1 51 | StandaloneWindows64:19 52 | 2018.4.8f1 53 | 54 | 55 | 56 | D:\Unity\2018.4.8f1\Editor\Data\Managed/UnityEngine/UnityEngine.dll 57 | 58 | 59 | D:\Unity\2018.4.8f1\Editor\Data\Managed/UnityEditor.dll 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | E:/cloud_code/github/me/UnitySimpleCartoonLine.git/trunk/Library/ScriptAssemblies/Unity.TextMeshPro.Editor.dll 68 | 69 | 70 | E:/cloud_code/github/me/UnitySimpleCartoonLine.git/trunk/Library/ScriptAssemblies/Unity.PackageManagerUI.Editor.dll 71 | 72 | 73 | E:/cloud_code/github/me/UnitySimpleCartoonLine.git/trunk/Library/ScriptAssemblies/Unity.CollabProxy.Editor.dll 74 | 75 | 76 | E:/cloud_code/github/me/UnitySimpleCartoonLine.git/trunk/Library/ScriptAssemblies/Unity.TextMeshPro.dll 77 | 78 | 79 | E:/cloud_code/github/me/UnitySimpleCartoonLine.git/trunk/Library/ScriptAssemblies/Unity.Analytics.DataPrivacy.dll 80 | 81 | 82 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.AIModule.dll 83 | 84 | 85 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.ARModule.dll 86 | 87 | 88 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.AccessibilityModule.dll 89 | 90 | 91 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.AnimationModule.dll 92 | 93 | 94 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.AssetBundleModule.dll 95 | 96 | 97 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.AudioModule.dll 98 | 99 | 100 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.BaselibModule.dll 101 | 102 | 103 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.ClothModule.dll 104 | 105 | 106 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.ClusterInputModule.dll 107 | 108 | 109 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.ClusterRendererModule.dll 110 | 111 | 112 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.CoreModule.dll 113 | 114 | 115 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.CrashReportingModule.dll 116 | 117 | 118 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.DirectorModule.dll 119 | 120 | 121 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.FileSystemHttpModule.dll 122 | 123 | 124 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.GameCenterModule.dll 125 | 126 | 127 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.GridModule.dll 128 | 129 | 130 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.HotReloadModule.dll 131 | 132 | 133 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.IMGUIModule.dll 134 | 135 | 136 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.ImageConversionModule.dll 137 | 138 | 139 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.InputModule.dll 140 | 141 | 142 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.JSONSerializeModule.dll 143 | 144 | 145 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.LocalizationModule.dll 146 | 147 | 148 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.ParticleSystemModule.dll 149 | 150 | 151 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.PerformanceReportingModule.dll 152 | 153 | 154 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.PhysicsModule.dll 155 | 156 | 157 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.Physics2DModule.dll 158 | 159 | 160 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.ProfilerModule.dll 161 | 162 | 163 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.ScreenCaptureModule.dll 164 | 165 | 166 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.SharedInternalsModule.dll 167 | 168 | 169 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.SpriteMaskModule.dll 170 | 171 | 172 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.SpriteShapeModule.dll 173 | 174 | 175 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.StreamingModule.dll 176 | 177 | 178 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.StyleSheetsModule.dll 179 | 180 | 181 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.SubstanceModule.dll 182 | 183 | 184 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.TLSModule.dll 185 | 186 | 187 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.TerrainModule.dll 188 | 189 | 190 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.TerrainPhysicsModule.dll 191 | 192 | 193 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.TextCoreModule.dll 194 | 195 | 196 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.TextRenderingModule.dll 197 | 198 | 199 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.TilemapModule.dll 200 | 201 | 202 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.TimelineModule.dll 203 | 204 | 205 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.UIModule.dll 206 | 207 | 208 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.UIElementsModule.dll 209 | 210 | 211 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.UNETModule.dll 212 | 213 | 214 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.UmbraModule.dll 215 | 216 | 217 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityAnalyticsModule.dll 218 | 219 | 220 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityConnectModule.dll 221 | 222 | 223 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityTestProtocolModule.dll 224 | 225 | 226 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityWebRequestModule.dll 227 | 228 | 229 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityWebRequestAssetBundleModule.dll 230 | 231 | 232 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityWebRequestAudioModule.dll 233 | 234 | 235 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityWebRequestTextureModule.dll 236 | 237 | 238 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.UnityWebRequestWWWModule.dll 239 | 240 | 241 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.VFXModule.dll 242 | 243 | 244 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.VRModule.dll 245 | 246 | 247 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.VehiclesModule.dll 248 | 249 | 250 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.VideoModule.dll 251 | 252 | 253 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.WindModule.dll 254 | 255 | 256 | D:/Unity/2018.4.8f1/Editor/Data/Managed/UnityEngine/UnityEngine.XRModule.dll 257 | 258 | 259 | D:/Unity/2018.4.8f1/Editor/Data/Managed/Unity.Locator.dll 260 | 261 | 262 | D:/Unity/2018.4.8f1/Editor/Data/UnityExtensions/Unity/GUISystem/UnityEngine.UI.dll 263 | 264 | 265 | D:/Unity/2018.4.8f1/Editor/Data/UnityExtensions/Unity/TestRunner/UnityEngine.TestRunner.dll 266 | 267 | 268 | D:/Unity/2018.4.8f1/Editor/Data/UnityExtensions/Unity/TestRunner/net35/unity-custom/nunit.framework.dll 269 | 270 | 271 | D:/Unity/2018.4.8f1/Editor/Data/UnityExtensions/Unity/Timeline/RuntimeEditor/UnityEngine.Timeline.dll 272 | 273 | 274 | D:/Unity/2018.4.8f1/Editor/Data/UnityExtensions/Unity/Networking/UnityEngine.Networking.dll 275 | 276 | 277 | D:/Unity/2018.4.8f1/Editor/Data/UnityExtensions/Unity/UnityGoogleAudioSpatializer/RuntimeEditor/UnityEngine.GoogleAudioSpatializer.dll 278 | 279 | 280 | D:/Unity/2018.4.8f1/Editor/Data/UnityExtensions/Unity/UnitySpatialTracking/RuntimeEditor/UnityEngine.SpatialTracking.dll 281 | 282 | 283 | E:/cloud_code/github/me/UnitySimpleCartoonLine.git/trunk/Library/PackageCache/com.unity.analytics@3.2.2/Unity.Analytics.Editor.dll 284 | 285 | 286 | E:/cloud_code/github/me/UnitySimpleCartoonLine.git/trunk/Library/PackageCache/com.unity.analytics@3.2.2/Unity.Analytics.StandardEvents.dll 287 | 288 | 289 | E:/cloud_code/github/me/UnitySimpleCartoonLine.git/trunk/Library/PackageCache/com.unity.analytics@3.2.2/Unity.Analytics.Tracker.dll 290 | 291 | 292 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/ref/2.0.0/netstandard.dll 293 | 294 | 295 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/Microsoft.Win32.Primitives.dll 296 | 297 | 298 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.AppContext.dll 299 | 300 | 301 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Collections.Concurrent.dll 302 | 303 | 304 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Collections.dll 305 | 306 | 307 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Collections.NonGeneric.dll 308 | 309 | 310 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Collections.Specialized.dll 311 | 312 | 313 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.ComponentModel.dll 314 | 315 | 316 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.ComponentModel.EventBasedAsync.dll 317 | 318 | 319 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.ComponentModel.Primitives.dll 320 | 321 | 322 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.ComponentModel.TypeConverter.dll 323 | 324 | 325 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Console.dll 326 | 327 | 328 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Data.Common.dll 329 | 330 | 331 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Diagnostics.Contracts.dll 332 | 333 | 334 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Diagnostics.Debug.dll 335 | 336 | 337 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Diagnostics.FileVersionInfo.dll 338 | 339 | 340 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Diagnostics.Process.dll 341 | 342 | 343 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Diagnostics.StackTrace.dll 344 | 345 | 346 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Diagnostics.TextWriterTraceListener.dll 347 | 348 | 349 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Diagnostics.Tools.dll 350 | 351 | 352 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Diagnostics.TraceSource.dll 353 | 354 | 355 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Diagnostics.Tracing.dll 356 | 357 | 358 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Drawing.Primitives.dll 359 | 360 | 361 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Dynamic.Runtime.dll 362 | 363 | 364 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Globalization.Calendars.dll 365 | 366 | 367 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Globalization.dll 368 | 369 | 370 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Globalization.Extensions.dll 371 | 372 | 373 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.IO.Compression.dll 374 | 375 | 376 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.IO.Compression.ZipFile.dll 377 | 378 | 379 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.IO.dll 380 | 381 | 382 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.IO.FileSystem.dll 383 | 384 | 385 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.IO.FileSystem.DriveInfo.dll 386 | 387 | 388 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.IO.FileSystem.Primitives.dll 389 | 390 | 391 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.IO.FileSystem.Watcher.dll 392 | 393 | 394 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.IO.IsolatedStorage.dll 395 | 396 | 397 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.IO.MemoryMappedFiles.dll 398 | 399 | 400 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.IO.Pipes.dll 401 | 402 | 403 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.IO.UnmanagedMemoryStream.dll 404 | 405 | 406 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Linq.dll 407 | 408 | 409 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Linq.Expressions.dll 410 | 411 | 412 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Linq.Parallel.dll 413 | 414 | 415 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Linq.Queryable.dll 416 | 417 | 418 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Net.Http.dll 419 | 420 | 421 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Net.NameResolution.dll 422 | 423 | 424 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Net.NetworkInformation.dll 425 | 426 | 427 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Net.Ping.dll 428 | 429 | 430 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Net.Primitives.dll 431 | 432 | 433 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Net.Requests.dll 434 | 435 | 436 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Net.Security.dll 437 | 438 | 439 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Net.Sockets.dll 440 | 441 | 442 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Net.WebHeaderCollection.dll 443 | 444 | 445 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Net.WebSockets.Client.dll 446 | 447 | 448 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Net.WebSockets.dll 449 | 450 | 451 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.ObjectModel.dll 452 | 453 | 454 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Reflection.dll 455 | 456 | 457 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Reflection.Extensions.dll 458 | 459 | 460 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Reflection.Primitives.dll 461 | 462 | 463 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Resources.Reader.dll 464 | 465 | 466 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Resources.ResourceManager.dll 467 | 468 | 469 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Resources.Writer.dll 470 | 471 | 472 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Runtime.CompilerServices.VisualC.dll 473 | 474 | 475 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Runtime.dll 476 | 477 | 478 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Runtime.Extensions.dll 479 | 480 | 481 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Runtime.Handles.dll 482 | 483 | 484 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Runtime.InteropServices.dll 485 | 486 | 487 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Runtime.InteropServices.RuntimeInformation.dll 488 | 489 | 490 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Runtime.Numerics.dll 491 | 492 | 493 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Runtime.Serialization.Formatters.dll 494 | 495 | 496 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Runtime.Serialization.Json.dll 497 | 498 | 499 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Runtime.Serialization.Primitives.dll 500 | 501 | 502 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Runtime.Serialization.Xml.dll 503 | 504 | 505 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Security.Claims.dll 506 | 507 | 508 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Security.Cryptography.Algorithms.dll 509 | 510 | 511 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Security.Cryptography.Csp.dll 512 | 513 | 514 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Security.Cryptography.Encoding.dll 515 | 516 | 517 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Security.Cryptography.Primitives.dll 518 | 519 | 520 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Security.Cryptography.X509Certificates.dll 521 | 522 | 523 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Security.Principal.dll 524 | 525 | 526 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Security.SecureString.dll 527 | 528 | 529 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Text.Encoding.dll 530 | 531 | 532 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Text.Encoding.Extensions.dll 533 | 534 | 535 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Text.RegularExpressions.dll 536 | 537 | 538 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Threading.dll 539 | 540 | 541 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Threading.Overlapped.dll 542 | 543 | 544 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Threading.Tasks.dll 545 | 546 | 547 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Threading.Tasks.Parallel.dll 548 | 549 | 550 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Threading.Thread.dll 551 | 552 | 553 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Threading.ThreadPool.dll 554 | 555 | 556 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Threading.Timer.dll 557 | 558 | 559 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.ValueTuple.dll 560 | 561 | 562 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Xml.ReaderWriter.dll 563 | 564 | 565 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Xml.XDocument.dll 566 | 567 | 568 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Xml.XmlDocument.dll 569 | 570 | 571 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Xml.XmlSerializer.dll 572 | 573 | 574 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Xml.XPath.dll 575 | 576 | 577 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netstandard/System.Xml.XPath.XDocument.dll 578 | 579 | 580 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/Extensions/2.0.0/System.Numerics.Vectors.dll 581 | 582 | 583 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/Extensions/2.0.0/System.Runtime.InteropServices.WindowsRuntime.dll 584 | 585 | 586 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netfx/mscorlib.dll 587 | 588 | 589 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netfx/System.ComponentModel.Composition.dll 590 | 591 | 592 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netfx/System.Core.dll 593 | 594 | 595 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netfx/System.Data.dll 596 | 597 | 598 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netfx/System.dll 599 | 600 | 601 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netfx/System.Drawing.dll 602 | 603 | 604 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netfx/System.IO.Compression.FileSystem.dll 605 | 606 | 607 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netfx/System.Net.dll 608 | 609 | 610 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netfx/System.Numerics.dll 611 | 612 | 613 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netfx/System.Runtime.Serialization.dll 614 | 615 | 616 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netfx/System.ServiceModel.Web.dll 617 | 618 | 619 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netfx/System.Transactions.dll 620 | 621 | 622 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netfx/System.Web.dll 623 | 624 | 625 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netfx/System.Windows.dll 626 | 627 | 628 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netfx/System.Xml.dll 629 | 630 | 631 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netfx/System.Xml.Linq.dll 632 | 633 | 634 | D:/Unity/2018.4.8f1/Editor/Data/NetStandard/compat/2.0.0/shims/netfx/System.Xml.Serialization.dll 635 | 636 | 637 | 638 | 639 | 646 | -------------------------------------------------------------------------------- /Assets/DegradedRectangles.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | [CreateAssetMenu(fileName = "DegradedRectanglesData", menuName = "Degraded Rectangles")] 6 | public class DegradedRectangles : ScriptableObject { 7 | public Mesh mesh; 8 | public List degraded_rectangles; 9 | 10 | [ContextMenu("Generate Degraded Rectangle")] 11 | private void GenerateDegradedRectangle() { 12 | if (mesh == null) { 13 | Debug.LogError("mesh is null"); 14 | return; 15 | } 16 | 17 | int[] triangles = mesh.triangles; 18 | Vector3[] vertices = mesh.vertices; 19 | 20 | // 遍历Mesh.triangles来找到所有退化四边形,要求无重复 21 | var custom_lines = new List(); 22 | int length = triangles.Length / 3; 23 | for (int i = 0; i < length; i++) { 24 | int vertex1_index = triangles[i * 3]; 25 | int vertex2_index = triangles[i * 3 + 1]; 26 | int vertex3_index = triangles[i * 3 + 2]; 27 | 28 | AddCustomLine(vertex1_index, vertex2_index, vertex3_index, vertices, custom_lines);//添加三角图元vertex1和vertex2构成的退化四边形(或叫边) 29 | AddCustomLine(vertex2_index, vertex3_index, vertex1_index, vertices, custom_lines);//添加三角图元vertex2和vertex3构成的退化四边形(或叫边) 30 | AddCustomLine(vertex3_index, vertex1_index, vertex2_index, vertices, custom_lines);//添加三角图元vertex3和vertex1构成的退化四边形(或叫边) 31 | } 32 | 33 | degraded_rectangles = new List(custom_lines.Count); 34 | for (int i = 0; i < custom_lines.Count; i++) { 35 | degraded_rectangles.Add(custom_lines[i].degraded_rectangle); 36 | } 37 | Debug.Log("成功生产退化四边形"); 38 | } 39 | private void AddCustomLine(int vertex1Index, int vertex2Index, int vertex3Index, Vector3[] meshVertices, List customLines) { 40 | Vector3 point1 = meshVertices[vertex1Index]; 41 | Vector3 point2 = meshVertices[vertex2Index]; 42 | MeshLine customLine = new MeshLine(point1, point2); 43 | if (!customLines.Contains(customLine)) { 44 | customLine.degraded_rectangle = new DegradedRectangle(); 45 | customLine.degraded_rectangle.vertex1 = vertex1Index; 46 | customLine.degraded_rectangle.vertex2 = vertex2Index; 47 | customLine.degraded_rectangle.triangle1_vertex3 = vertex3Index; 48 | customLine.degraded_rectangle.triangle2_vertex3 = -1; 49 | customLines.Add(customLine); 50 | } 51 | else { 52 | int i = customLines.IndexOf(customLine); 53 | var rectangle = customLines[i].degraded_rectangle; 54 | if (rectangle.triangle2_vertex3 == -1) { 55 | rectangle.triangle2_vertex3 = vertex3Index; 56 | customLines[i].degraded_rectangle = rectangle; 57 | } 58 | } 59 | } 60 | private class MeshLine { 61 | public Vector3 point1; 62 | public Vector3 point2; 63 | public DegradedRectangle degraded_rectangle; 64 | 65 | public MeshLine(Vector3 point1, Vector3 point2) { 66 | this.point1 = point1; 67 | this.point2 = point2; 68 | } 69 | 70 | public static bool operator ==(MeshLine line1, MeshLine line2) { 71 | return line1.Equals(line2); 72 | } 73 | 74 | public static bool operator !=(MeshLine line1, MeshLine line2) { 75 | return !line1.Equals(line2); 76 | } 77 | 78 | public override bool Equals(object obj) { 79 | if (obj == null || GetType() != obj.GetType()) { 80 | return false; 81 | } 82 | 83 | MeshLine line2 = (MeshLine)obj; 84 | 85 | if (point1 == line2.point1 && point2 == line2.point2) { 86 | return true; 87 | } 88 | 89 | if (point1 == line2.point2 && point2 == line2.point1) { 90 | return true; 91 | } 92 | 93 | return false; 94 | } 95 | 96 | public override int GetHashCode() { 97 | return base.GetHashCode(); 98 | } 99 | 100 | public override string ToString() { 101 | return string.Format("point1: {0}\npoint2: {1}\nindex.point1: {2}\nindex.point2: {3}\nindex.face_point1: {4}\nindex.face_point2: {5}", point1, point2, degraded_rectangle.vertex1, degraded_rectangle.vertex2, degraded_rectangle.triangle1_vertex3, degraded_rectangle.triangle2_vertex3); 102 | } 103 | } 104 | 105 | } 106 | 107 | //退化四边形 108 | [System.Serializable] 109 | public struct DegradedRectangle { 110 | public int vertex1;// 构成边的顶点1的索引 111 | public int vertex2;// 构成边的顶点2的索引 112 | public int triangle1_vertex3;// 边所在三角面1的顶点3索引 113 | public int triangle2_vertex3;// 边所在三角面2的顶点3索引 114 | } 115 | 116 | public class CustomLine { 117 | public Vector3 point1; 118 | public Vector3 point2; 119 | public DegradedRectangle degraded_rectangle; 120 | } -------------------------------------------------------------------------------- /Assets/DegradedRectangles.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 45d0f3e5603d4dc4590e42266f0a90da 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/ProceduralGeometry.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Runtime.InteropServices; 3 | using UnityEngine.Rendering; 4 | using System.Collections.Generic; 5 | 6 | /* 7 | 思路是退化成点,输入到顶点着色器中,并在几何着色器等图元着色器进化成边 8 | 输入: 9 | 所有顶点,长度为vertices.length。 10 | 所有边的点1索引,长度为n。 11 | 所有边的点2索引,长度为n。 12 | 邻接面1除开边2点的点索引,长度为n。 13 | 邻接面2除开边2点的点索引,长度为n。 14 | (注:退化四边形和三角面一样,模型建立完成后顶点的索引不会改变,因此可以保存。) 15 | */ 16 | [ExecuteInEditMode] 17 | [RequireComponent(typeof(SkinnedMeshRenderer))] 18 | public class ProceduralGeometry : MonoBehaviour { 19 | [Range(0, 0.01f)] 20 | public float edgeWidth = 0.01f; 21 | public Material prefab_material; // 预置材质,用于实例化 22 | public DegradedRectangles degraded_rectangles;// 退化四边形资源文件 23 | 24 | private Mesh bake_mesh; // 用于接收动态网格 25 | private Material material; // 动态网格用到的描边材质,由预置材质实例化生成 26 | private SkinnedMeshRenderer mesh_renderer; 27 | private CommandBuffer command_buffer; // 指令缓存 28 | private List mesh_vertices; // 网格顶点,用来接收动态网格的顶点信息 29 | private MaterialBufferManager buffer_manager; // 材质缓存管理器 30 | private List cameras; // 用来清空指令缓存 31 | private int degraded_rectangles_count = 0; // 退化四边形的个数 32 | private bool is_visible = false;// 该动态网格是否可见 33 | private CameraEvent camera_event = CameraEvent.AfterForwardOpaque; 34 | 35 | private void OnEnable() { 36 | if (prefab_material == null || degraded_rectangles == null) { 37 | return; 38 | } 39 | ReleaseBuffer(); 40 | bake_mesh = new Mesh(); 41 | material = Instantiate(prefab_material); 42 | mesh_renderer = GetComponent(); 43 | mesh_vertices = new List(); 44 | command_buffer = new CommandBuffer(); 45 | buffer_manager = new MaterialBufferManager(mesh_renderer.sharedMesh, degraded_rectangles.degraded_rectangles, material); 46 | degraded_rectangles_count = buffer_manager.GetLines().count; 47 | cameras = new List(); 48 | Camera.onPreCull += DrawWithCamera; 49 | command_buffer.name = "Cartoon Line";// 让描边同时在Scene视图和Game视图显示 50 | } 51 | 52 | private void DrawWithCamera(Camera camera) { 53 | mesh_renderer.BakeMesh(bake_mesh); 54 | bake_mesh.GetVertices(mesh_vertices); 55 | buffer_manager.GetVertices().SetData(mesh_vertices); 56 | 57 | if (camera) { 58 | if (!cameras.Contains(camera)) { 59 | cameras.Add(camera); 60 | camera.AddCommandBuffer(camera_event, command_buffer); 61 | } 62 | 63 | command_buffer.Clear(); 64 | if (is_visible) { // 模型可见时才进行描边 65 | command_buffer.DrawProcedural(transform.localToWorldMatrix, material, 0, MeshTopology.Points, degraded_rectangles_count); 66 | //Graphics.ExecuteCommandBuffer(command_buffer); 67 | material.SetFloat("EdgeWidth", edgeWidth); 68 | buffer_manager.SetBuffer(); 69 | } 70 | } 71 | } 72 | 73 | private void OnDestroy() { 74 | ReleaseBuffer(); 75 | } 76 | 77 | private void OnDisable() { 78 | ReleaseBuffer(); 79 | } 80 | 81 | private void ReleaseBuffer() { 82 | if (cameras != null) { 83 | for (int i = 0; i < cameras.Count; i++) { 84 | var camera = cameras[i]; 85 | if (camera != null && command_buffer != null) { 86 | camera.RemoveCommandBuffer(camera_event, command_buffer); 87 | } 88 | } 89 | } 90 | 91 | if (command_buffer != null) command_buffer.Release(); 92 | if (buffer_manager != null) buffer_manager.Release(); 93 | 94 | buffer_manager = null; 95 | command_buffer = null; 96 | 97 | Camera.onPreCull -= DrawWithCamera; 98 | } 99 | 100 | void OnBecameVisible() { 101 | is_visible = true; 102 | } 103 | 104 | void OnBecameInvisible() { 105 | is_visible = false; 106 | } 107 | } 108 | 109 | // ComputeBuffer比较多,新建一个类来进行管理 110 | public class MaterialBufferManager { 111 | private Material material; 112 | private ComputeBuffer vertices; 113 | private ComputeBuffer normals; 114 | private ComputeBuffer uvs; 115 | private ComputeBuffer degraded_rectangles; 116 | 117 | public MaterialBufferManager(Mesh mesh, List degraded_rectangles, Material material) { 118 | Vector3[] vertices = mesh.vertices; 119 | Vector3[] normals = mesh.normals; 120 | Vector2[] uvs = mesh.uv; 121 | 122 | this.normals = new ComputeBuffer(normals.Length, 12, ComputeBufferType.Default);// normals中每个元素都是3个4位的float, 所以是3 * 4 = 12 123 | this.uvs = new ComputeBuffer(uvs.Length, 8, ComputeBufferType.Default); 124 | this.degraded_rectangles = new ComputeBuffer(degraded_rectangles.Count, Marshal.SizeOf(typeof(DegradedRectangle)), ComputeBufferType.Default); 125 | this.vertices = new ComputeBuffer(mesh.vertexCount, 12, ComputeBufferType.Default); 126 | 127 | this.uvs.SetData(uvs); 128 | this.normals.SetData(normals); 129 | this.degraded_rectangles.SetData(degraded_rectangles); 130 | 131 | // SetBuffer只需一次,后续直接操作ComputeBuffer即可 132 | this.material = material; 133 | material.SetBuffer("_Normals", this.normals); 134 | material.SetBuffer("_Uvs", this.uvs); 135 | material.SetBuffer("_DegradedRectangles", this.degraded_rectangles); 136 | material.SetBuffer("_Vertices", this.vertices); 137 | } 138 | 139 | public void SetBuffer() { 140 | material.SetBuffer("_Normals", normals); 141 | material.SetBuffer("_Uvs", uvs); 142 | material.SetBuffer("_DegradedRectangles", degraded_rectangles); 143 | material.SetBuffer("_Vertices", vertices); 144 | } 145 | 146 | ~MaterialBufferManager() { 147 | Release(); 148 | } 149 | 150 | public ComputeBuffer GetVertices() { 151 | return vertices; 152 | } 153 | 154 | public ComputeBuffer GetNormals() { 155 | return normals; 156 | } 157 | 158 | public ComputeBuffer GetUvs() { 159 | return uvs; 160 | } 161 | 162 | public ComputeBuffer GetLines() { 163 | return degraded_rectangles; 164 | } 165 | 166 | public void Release() { 167 | if (vertices != null) vertices.Release(); 168 | if (normals != null) normals.Release(); 169 | if (uvs != null) uvs.Release(); 170 | if (degraded_rectangles != null) degraded_rectangles.Release(); 171 | 172 | vertices = null; 173 | normals = null; 174 | uvs = null; 175 | degraded_rectangles = null; 176 | } 177 | } -------------------------------------------------------------------------------- /Assets/ProceduralGeometry.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 41299aabc357fac42b5d71eed6e1e729 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/ProceduralGeometry.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInstance: {fileID: 0} 9 | m_PrefabAsset: {fileID: 0} 10 | m_Name: ProceduralGeometry 11 | m_Shader: {fileID: 4800000, guid: 66e4023abd7b9cf47ba2564ed44b20ef, type: 3} 12 | m_ShaderKeywords: 13 | m_LightmapFlags: 4 14 | m_EnableInstancingVariants: 0 15 | m_DoubleSidedGI: 0 16 | m_CustomRenderQueue: -1 17 | stringTagMap: {} 18 | disabledShaderPasses: [] 19 | m_SavedProperties: 20 | serializedVersion: 3 21 | m_TexEnvs: 22 | - _BumpMap: 23 | m_Texture: {fileID: 0} 24 | m_Scale: {x: 1, y: 1} 25 | m_Offset: {x: 0, y: 0} 26 | - _DetailAlbedoMap: 27 | m_Texture: {fileID: 0} 28 | m_Scale: {x: 1, y: 1} 29 | m_Offset: {x: 0, y: 0} 30 | - _DetailMask: 31 | m_Texture: {fileID: 0} 32 | m_Scale: {x: 1, y: 1} 33 | m_Offset: {x: 0, y: 0} 34 | - _DetailNormalMap: 35 | m_Texture: {fileID: 0} 36 | m_Scale: {x: 1, y: 1} 37 | m_Offset: {x: 0, y: 0} 38 | - _EmissionMap: 39 | m_Texture: {fileID: 0} 40 | m_Scale: {x: 1, y: 1} 41 | m_Offset: {x: 0, y: 0} 42 | - _MainTex: 43 | m_Texture: {fileID: 0} 44 | m_Scale: {x: 1, y: 1} 45 | m_Offset: {x: 0, y: 0} 46 | - _MetallicGlossMap: 47 | m_Texture: {fileID: 0} 48 | m_Scale: {x: 1, y: 1} 49 | m_Offset: {x: 0, y: 0} 50 | - _OcclusionMap: 51 | m_Texture: {fileID: 0} 52 | m_Scale: {x: 1, y: 1} 53 | m_Offset: {x: 0, y: 0} 54 | - _ParallaxMap: 55 | m_Texture: {fileID: 0} 56 | m_Scale: {x: 1, y: 1} 57 | m_Offset: {x: 0, y: 0} 58 | m_Floats: 59 | - _BumpScale: 1 60 | - _Cutoff: 0.5 61 | - _DetailNormalMapScale: 1 62 | - _DstBlend: 0 63 | - _GlossMapScale: 1 64 | - _Glossiness: 0.5 65 | - _GlossyReflections: 1 66 | - _Metallic: 0 67 | - _Mode: 0 68 | - _OcclusionStrength: 1 69 | - _Parallax: 0.02 70 | - _SmoothnessTextureChannel: 0 71 | - _SpecularHighlights: 1 72 | - _SrcBlend: 1 73 | - _UVSec: 0 74 | - _ZWrite: 1 75 | m_Colors: 76 | - _Color: {r: 1, g: 1, b: 1, a: 1} 77 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 78 | -------------------------------------------------------------------------------- /Assets/ProceduralGeometry.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 380b24f1196ba434cb4424c9e5643e38 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ProceduralGeometry.shader: -------------------------------------------------------------------------------- 1 | // Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)' 2 | 3 | Shader "Custom/ProceduralGeometry" { 4 | Properties{ 5 | //_MainTex("Texture", 2D) = "white" {} 6 | } 7 | 8 | CGINCLUDE 9 | StructuredBuffer _Vertices; 10 | StructuredBuffer _Normals; 11 | StructuredBuffer _Uvs; 12 | float EdgeWidth = 0.01; 13 | ENDCG 14 | 15 | SubShader{ 16 | Tags { "RenderType" = "Opaque" } 17 | 18 | Pass { 19 | Cull Back 20 | CGPROGRAM 21 | #include "UnityCG.cginc" 22 | #pragma target 5.0 23 | #pragma vertex vertex_shader 24 | #pragma fragment fragment_shader 25 | #pragma geometry geometry_shader 26 | 27 | struct g2f { 28 | float4 position : SV_POSITION; 29 | }; 30 | 31 | struct v2g { 32 | float4 vertex1 : POSITION; 33 | float4 vertex2 : COLOR; 34 | }; 35 | 36 | struct Line { 37 | int vertex1; 38 | int vertex2; 39 | int triangle1_vertex3; 40 | int triangle2_vertex3; 41 | }; 42 | 43 | StructuredBuffer _DegradedRectangles; 44 | 45 | v2g vertex_shader(uint id : SV_VertexID, uint inst : SV_InstanceID) { 46 | v2g o; 47 | //获取退化四边形数据,并得到实际的顶点数据。 48 | Line _line = _DegradedRectangles[id]; 49 | float4 vertex1 = float4(_Vertices[_line.vertex1], 1.0f); 50 | float4 vertex2 = float4(_Vertices[_line.vertex2], 1.0f); 51 | float3 vertex1_normal = _Normals[_line.vertex1]; 52 | float3 vertex2_normal = _Normals[_line.vertex2]; 53 | float4 triangle1_vertex3 = float4(_Vertices[_line.triangle1_vertex3], 1.0f); 54 | float4 center_point = (vertex1 + vertex2 + triangle1_vertex3) / 3.0f; 55 | float3 view_dir = ObjSpaceViewDir(center_point); 56 | 57 | bool is_edge = 1; 58 | if (_line.triangle2_vertex3 > 0) { // 非边界边 59 | float4 triangle2_vertex3 = float4(_Vertices[_line.triangle2_vertex3], 1.0f); 60 | 61 | float3 v1 = vertex2 - vertex1; 62 | float3 v2 = triangle1_vertex3 - vertex1; 63 | float3 v3 = triangle2_vertex3 - vertex1; 64 | 65 | float3 face1Normal = cross(v1, v2); 66 | float3 face2Normal = cross(v3, v1); 67 | 68 | bool is_outline = !step(0, dot(face1Normal, view_dir) * dot(face2Normal, view_dir)); 69 | bool is_crease = step(pow(dot(face1Normal, face2Normal) / cos(1.0472f), 2), dot(face1Normal, face1Normal) * dot(face2Normal, face2Normal)); 70 | 71 | is_edge = is_outline | is_crease; 72 | } 73 | 74 | // 把顶点转换到裁剪空间 75 | o.vertex1 = UnityObjectToClipPos(vertex1 + vertex1_normal * 0.001f) * is_edge; 76 | o.vertex2 = UnityObjectToClipPos(vertex2 + vertex2_normal * 0.001f) * is_edge; 77 | return o; 78 | } 79 | 80 | /* 81 | 使用"LineStream"画线条 82 | use "LineStream" to draw line 83 | */ 84 | //[maxvertexcount(2)] 85 | //void geometry_shader(point v2g input[1], inout LineStream stream) { 86 | // // 使用几何着色器把退化四边形进化成线条 87 | // // 直接使用stream.RestartStrip();即可,如有更好的方法请自行实现。 88 | // g2f o; 89 | // o.position = input[0].vertex1; 90 | // stream.Append(o); 91 | // o.position = input[0].vertex2; 92 | // stream.Append(o); 93 | // stream.RestartStrip(); 94 | //} 95 | 96 | /* 97 | 使用"TriangleStream"画2个三角形, 来组成1个四边形模拟线条粗细。 98 | use "TriangleStream" to draw two triangle to make a quad to control the width of line. 99 | */ 100 | [maxvertexcount(6)] 101 | void geometry_shader(point v2g input[1], inout TriangleStream stream) { 102 | // 使用几何着色器把退化四边形进化成线条 103 | // 直接使用stream.RestartStrip();即可,如有更好的方法请自行实现。 104 | g2f o; 105 | 106 | float PctExtend = 0.01; 107 | 108 | float3 e0 = input[0].vertex1.xyz / input[0].vertex1.w; 109 | float3 e1 = input[0].vertex2.xyz / input[0].vertex2.w; 110 | float2 ext = PctExtend * (e1.xy - e0.xy); 111 | float2 v = normalize(float3(e1.xy - e0.xy, 0)).xy; 112 | float2 n = float2(-v.y, v.x) * EdgeWidth; 113 | 114 | float4 v0 = float4(e0.xy + n / 2.0 - ext, e0.z, 1.0); 115 | float4 v1 = float4(e0.xy - n / 2.0 - ext, e0.z, 1.0); 116 | float4 v2 = float4(e1.xy + n / 2.0 + ext, e1.z, 1.0); 117 | float4 v3 = float4(e1.xy - n / 2.0 + ext, e1.z, 1.0); 118 | 119 | o.position = v0; 120 | stream.Append(o); 121 | o.position = v3; 122 | stream.Append(o); 123 | o.position = v2; 124 | stream.Append(o); 125 | stream.RestartStrip(); 126 | 127 | o.position = v0; 128 | stream.Append(o); 129 | o.position = v1; 130 | stream.Append(o); 131 | o.position = v3; 132 | stream.Append(o); 133 | stream.RestartStrip(); 134 | } 135 | 136 | 137 | fixed4 fragment_shader(g2f i) : SV_Target{ 138 | // 给线条一个颜色 139 | return fixed4(0, 0, 0, 0); 140 | } 141 | 142 | ENDCG 143 | } 144 | } 145 | } -------------------------------------------------------------------------------- /Assets/ProceduralGeometry.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 66e4023abd7b9cf47ba2564ed44b20ef 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | nonModifiableTextures: [] 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Scenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: aea63a37ce87a5643adb2a37e24a4170 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Scenes/SampleScene.unity: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!29 &1 4 | OcclusionCullingSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_OcclusionBakeSettings: 8 | smallestOccluder: 5 9 | smallestHole: 0.25 10 | backfaceThreshold: 100 11 | m_SceneGUID: 00000000000000000000000000000000 12 | m_OcclusionCullingData: {fileID: 0} 13 | --- !u!104 &2 14 | RenderSettings: 15 | m_ObjectHideFlags: 0 16 | serializedVersion: 9 17 | m_Fog: 0 18 | m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} 19 | m_FogMode: 3 20 | m_FogDensity: 0.01 21 | m_LinearFogStart: 0 22 | m_LinearFogEnd: 300 23 | m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} 24 | m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} 25 | m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} 26 | m_AmbientIntensity: 1 27 | m_AmbientMode: 0 28 | m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} 29 | m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} 30 | m_HaloStrength: 0.5 31 | m_FlareStrength: 1 32 | m_FlareFadeSpeed: 3 33 | m_HaloTexture: {fileID: 0} 34 | m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} 35 | m_DefaultReflectionMode: 0 36 | m_DefaultReflectionResolution: 128 37 | m_ReflectionBounces: 1 38 | m_ReflectionIntensity: 1 39 | m_CustomReflection: {fileID: 0} 40 | m_Sun: {fileID: 170076734} 41 | m_IndirectSpecularColor: {r: 0.44657898, g: 0.4964133, b: 0.5748178, a: 1} 42 | m_UseRadianceAmbientProbe: 0 43 | --- !u!157 &3 44 | LightmapSettings: 45 | m_ObjectHideFlags: 0 46 | serializedVersion: 11 47 | m_GIWorkflowMode: 0 48 | m_GISettings: 49 | serializedVersion: 2 50 | m_BounceScale: 1 51 | m_IndirectOutputScale: 1 52 | m_AlbedoBoost: 1 53 | m_EnvironmentLightingMode: 0 54 | m_EnableBakedLightmaps: 1 55 | m_EnableRealtimeLightmaps: 0 56 | m_LightmapEditorSettings: 57 | serializedVersion: 10 58 | m_Resolution: 2 59 | m_BakeResolution: 10 60 | m_AtlasSize: 512 61 | m_AO: 0 62 | m_AOMaxDistance: 1 63 | m_CompAOExponent: 1 64 | m_CompAOExponentDirect: 0 65 | m_Padding: 2 66 | m_LightmapParameters: {fileID: 0} 67 | m_LightmapsBakeMode: 1 68 | m_TextureCompression: 1 69 | m_FinalGather: 0 70 | m_FinalGatherFiltering: 1 71 | m_FinalGatherRayCount: 256 72 | m_ReflectionCompression: 2 73 | m_MixedBakeMode: 2 74 | m_BakeBackend: 1 75 | m_PVRSampling: 1 76 | m_PVRDirectSampleCount: 32 77 | m_PVRSampleCount: 256 78 | m_PVRBounces: 2 79 | m_PVRFilterTypeDirect: 0 80 | m_PVRFilterTypeIndirect: 0 81 | m_PVRFilterTypeAO: 0 82 | m_PVRFilteringMode: 1 83 | m_PVRCulling: 1 84 | m_PVRFilteringGaussRadiusDirect: 1 85 | m_PVRFilteringGaussRadiusIndirect: 5 86 | m_PVRFilteringGaussRadiusAO: 2 87 | m_PVRFilteringAtrousPositionSigmaDirect: 0.5 88 | m_PVRFilteringAtrousPositionSigmaIndirect: 2 89 | m_PVRFilteringAtrousPositionSigmaAO: 1 90 | m_ShowResolutionOverlay: 1 91 | m_LightingDataAsset: {fileID: 0} 92 | m_UseShadowmask: 1 93 | --- !u!196 &4 94 | NavMeshSettings: 95 | serializedVersion: 2 96 | m_ObjectHideFlags: 0 97 | m_BuildSettings: 98 | serializedVersion: 2 99 | agentTypeID: 0 100 | agentRadius: 0.5 101 | agentHeight: 2 102 | agentSlope: 45 103 | agentClimb: 0.4 104 | ledgeDropHeight: 0 105 | maxJumpAcrossDistance: 0 106 | minRegionArea: 2 107 | manualCellSize: 0 108 | cellSize: 0.16666667 109 | manualTileSize: 0 110 | tileSize: 256 111 | accuratePlacement: 0 112 | debug: 113 | m_Flags: 0 114 | m_NavMeshData: {fileID: 0} 115 | --- !u!1 &170076733 116 | GameObject: 117 | m_ObjectHideFlags: 0 118 | m_CorrespondingSourceObject: {fileID: 0} 119 | m_PrefabInstance: {fileID: 0} 120 | m_PrefabAsset: {fileID: 0} 121 | serializedVersion: 6 122 | m_Component: 123 | - component: {fileID: 170076735} 124 | - component: {fileID: 170076734} 125 | m_Layer: 0 126 | m_Name: Directional Light 127 | m_TagString: Untagged 128 | m_Icon: {fileID: 0} 129 | m_NavMeshLayer: 0 130 | m_StaticEditorFlags: 0 131 | m_IsActive: 1 132 | --- !u!108 &170076734 133 | Light: 134 | m_ObjectHideFlags: 0 135 | m_CorrespondingSourceObject: {fileID: 0} 136 | m_PrefabInstance: {fileID: 0} 137 | m_PrefabAsset: {fileID: 0} 138 | m_GameObject: {fileID: 170076733} 139 | m_Enabled: 1 140 | serializedVersion: 8 141 | m_Type: 1 142 | m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} 143 | m_Intensity: 1 144 | m_Range: 10 145 | m_SpotAngle: 30 146 | m_CookieSize: 10 147 | m_Shadows: 148 | m_Type: 2 149 | m_Resolution: -1 150 | m_CustomResolution: -1 151 | m_Strength: 1 152 | m_Bias: 0.05 153 | m_NormalBias: 0.4 154 | m_NearPlane: 0.2 155 | m_Cookie: {fileID: 0} 156 | m_DrawHalo: 0 157 | m_Flare: {fileID: 0} 158 | m_RenderMode: 0 159 | m_CullingMask: 160 | serializedVersion: 2 161 | m_Bits: 4294967295 162 | m_Lightmapping: 1 163 | m_LightShadowCasterMode: 0 164 | m_AreaSize: {x: 1, y: 1} 165 | m_BounceIntensity: 1 166 | m_ColorTemperature: 6570 167 | m_UseColorTemperature: 0 168 | m_ShadowRadius: 0 169 | m_ShadowAngle: 0 170 | --- !u!4 &170076735 171 | Transform: 172 | m_ObjectHideFlags: 0 173 | m_CorrespondingSourceObject: {fileID: 0} 174 | m_PrefabInstance: {fileID: 0} 175 | m_PrefabAsset: {fileID: 0} 176 | m_GameObject: {fileID: 170076733} 177 | m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} 178 | m_LocalPosition: {x: 0, y: 3, z: 0} 179 | m_LocalScale: {x: 1, y: 1, z: 1} 180 | m_Children: [] 181 | m_Father: {fileID: 0} 182 | m_RootOrder: 1 183 | m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} 184 | --- !u!1 &534669902 185 | GameObject: 186 | m_ObjectHideFlags: 0 187 | m_CorrespondingSourceObject: {fileID: 0} 188 | m_PrefabInstance: {fileID: 0} 189 | m_PrefabAsset: {fileID: 0} 190 | serializedVersion: 6 191 | m_Component: 192 | - component: {fileID: 534669905} 193 | - component: {fileID: 534669904} 194 | - component: {fileID: 534669903} 195 | m_Layer: 0 196 | m_Name: Main Camera 197 | m_TagString: MainCamera 198 | m_Icon: {fileID: 0} 199 | m_NavMeshLayer: 0 200 | m_StaticEditorFlags: 0 201 | m_IsActive: 1 202 | --- !u!81 &534669903 203 | AudioListener: 204 | m_ObjectHideFlags: 0 205 | m_CorrespondingSourceObject: {fileID: 0} 206 | m_PrefabInstance: {fileID: 0} 207 | m_PrefabAsset: {fileID: 0} 208 | m_GameObject: {fileID: 534669902} 209 | m_Enabled: 1 210 | --- !u!20 &534669904 211 | Camera: 212 | m_ObjectHideFlags: 0 213 | m_CorrespondingSourceObject: {fileID: 0} 214 | m_PrefabInstance: {fileID: 0} 215 | m_PrefabAsset: {fileID: 0} 216 | m_GameObject: {fileID: 534669902} 217 | m_Enabled: 1 218 | serializedVersion: 2 219 | m_ClearFlags: 1 220 | m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} 221 | m_projectionMatrixMode: 1 222 | m_SensorSize: {x: 36, y: 24} 223 | m_LensShift: {x: 0, y: 0} 224 | m_GateFitMode: 2 225 | m_FocalLength: 50 226 | m_NormalizedViewPortRect: 227 | serializedVersion: 2 228 | x: 0 229 | y: 0 230 | width: 1 231 | height: 1 232 | near clip plane: 0.3 233 | far clip plane: 1000 234 | field of view: 60 235 | orthographic: 0 236 | orthographic size: 5 237 | m_Depth: -1 238 | m_CullingMask: 239 | serializedVersion: 2 240 | m_Bits: 4294967295 241 | m_RenderingPath: -1 242 | m_TargetTexture: {fileID: 0} 243 | m_TargetDisplay: 0 244 | m_TargetEye: 3 245 | m_HDR: 1 246 | m_AllowMSAA: 1 247 | m_AllowDynamicResolution: 0 248 | m_ForceIntoRT: 0 249 | m_OcclusionCulling: 1 250 | m_StereoConvergence: 10 251 | m_StereoSeparation: 0.022 252 | --- !u!4 &534669905 253 | Transform: 254 | m_ObjectHideFlags: 0 255 | m_CorrespondingSourceObject: {fileID: 0} 256 | m_PrefabInstance: {fileID: 0} 257 | m_PrefabAsset: {fileID: 0} 258 | m_GameObject: {fileID: 534669902} 259 | m_LocalRotation: {x: 0, y: 0.99552333, z: 0, w: 0.09451657} 260 | m_LocalPosition: {x: -0.35, y: 0.71, z: 1.43} 261 | m_LocalScale: {x: 1, y: 1, z: 1} 262 | m_Children: [] 263 | m_Father: {fileID: 0} 264 | m_RootOrder: 0 265 | m_LocalEulerAnglesHint: {x: 0, y: 169.15302, z: 0} 266 | --- !u!1 &991537517 stripped 267 | GameObject: 268 | m_CorrespondingSourceObject: {fileID: 100000, guid: 5a6377a33ccd7494fa8b48f2d8f40ba9, 269 | type: 3} 270 | m_PrefabInstance: {fileID: 1386412007} 271 | m_PrefabAsset: {fileID: 0} 272 | --- !u!114 &991537519 273 | MonoBehaviour: 274 | m_ObjectHideFlags: 0 275 | m_CorrespondingSourceObject: {fileID: 0} 276 | m_PrefabInstance: {fileID: 0} 277 | m_PrefabAsset: {fileID: 0} 278 | m_GameObject: {fileID: 991537517} 279 | m_Enabled: 1 280 | m_EditorHideFlags: 0 281 | m_Script: {fileID: 11500000, guid: 41299aabc357fac42b5d71eed6e1e729, type: 3} 282 | m_Name: 283 | m_EditorClassIdentifier: 284 | edgeWidth: 0.00792 285 | prefab_material: {fileID: 2100000, guid: 380b24f1196ba434cb4424c9e5643e38, type: 2} 286 | degraded_rectangles: {fileID: 11400000, guid: ccea8f7f39422fa4686d965a91daf0a8, 287 | type: 2} 288 | --- !u!1001 &1386412007 289 | PrefabInstance: 290 | m_ObjectHideFlags: 0 291 | serializedVersion: 2 292 | m_Modification: 293 | m_TransformParent: {fileID: 0} 294 | m_Modifications: 295 | - target: {fileID: 100264, guid: 5a6377a33ccd7494fa8b48f2d8f40ba9, type: 3} 296 | propertyPath: m_Name 297 | value: TCP2_Demo_UnityChan 298 | objectReference: {fileID: 0} 299 | - target: {fileID: 400264, guid: 5a6377a33ccd7494fa8b48f2d8f40ba9, type: 3} 300 | propertyPath: m_LocalPosition.x 301 | value: 0 302 | objectReference: {fileID: 0} 303 | - target: {fileID: 400264, guid: 5a6377a33ccd7494fa8b48f2d8f40ba9, type: 3} 304 | propertyPath: m_LocalPosition.y 305 | value: 0 306 | objectReference: {fileID: 0} 307 | - target: {fileID: 400264, guid: 5a6377a33ccd7494fa8b48f2d8f40ba9, type: 3} 308 | propertyPath: m_LocalPosition.z 309 | value: 0 310 | objectReference: {fileID: 0} 311 | - target: {fileID: 400264, guid: 5a6377a33ccd7494fa8b48f2d8f40ba9, type: 3} 312 | propertyPath: m_LocalRotation.x 313 | value: 0 314 | objectReference: {fileID: 0} 315 | - target: {fileID: 400264, guid: 5a6377a33ccd7494fa8b48f2d8f40ba9, type: 3} 316 | propertyPath: m_LocalRotation.y 317 | value: 0 318 | objectReference: {fileID: 0} 319 | - target: {fileID: 400264, guid: 5a6377a33ccd7494fa8b48f2d8f40ba9, type: 3} 320 | propertyPath: m_LocalRotation.z 321 | value: 0 322 | objectReference: {fileID: 0} 323 | - target: {fileID: 400264, guid: 5a6377a33ccd7494fa8b48f2d8f40ba9, type: 3} 324 | propertyPath: m_LocalRotation.w 325 | value: 1 326 | objectReference: {fileID: 0} 327 | - target: {fileID: 400264, guid: 5a6377a33ccd7494fa8b48f2d8f40ba9, type: 3} 328 | propertyPath: m_RootOrder 329 | value: 2 330 | objectReference: {fileID: 0} 331 | - target: {fileID: 400264, guid: 5a6377a33ccd7494fa8b48f2d8f40ba9, type: 3} 332 | propertyPath: m_LocalEulerAnglesHint.x 333 | value: 0 334 | objectReference: {fileID: 0} 335 | - target: {fileID: 400264, guid: 5a6377a33ccd7494fa8b48f2d8f40ba9, type: 3} 336 | propertyPath: m_LocalEulerAnglesHint.y 337 | value: 0 338 | objectReference: {fileID: 0} 339 | - target: {fileID: 400264, guid: 5a6377a33ccd7494fa8b48f2d8f40ba9, type: 3} 340 | propertyPath: m_LocalEulerAnglesHint.z 341 | value: 0 342 | objectReference: {fileID: 0} 343 | - target: {fileID: 13700004, guid: 5a6377a33ccd7494fa8b48f2d8f40ba9, type: 3} 344 | propertyPath: m_AABB.m_Center.y 345 | value: 0.75360024 346 | objectReference: {fileID: 0} 347 | - target: {fileID: 13700004, guid: 5a6377a33ccd7494fa8b48f2d8f40ba9, type: 3} 348 | propertyPath: m_AABB.m_Center.z 349 | value: 0.04523672 350 | objectReference: {fileID: 0} 351 | - target: {fileID: 13700004, guid: 5a6377a33ccd7494fa8b48f2d8f40ba9, type: 3} 352 | propertyPath: m_AABB.m_Extent.x 353 | value: 0.14050871 354 | objectReference: {fileID: 0} 355 | - target: {fileID: 13700004, guid: 5a6377a33ccd7494fa8b48f2d8f40ba9, type: 3} 356 | propertyPath: m_AABB.m_Extent.y 357 | value: 0.11531976 358 | objectReference: {fileID: 0} 359 | - target: {fileID: 13700004, guid: 5a6377a33ccd7494fa8b48f2d8f40ba9, type: 3} 360 | propertyPath: m_AABB.m_Extent.z 361 | value: 0.06875077 362 | objectReference: {fileID: 0} 363 | - target: {fileID: 13700004, guid: 5a6377a33ccd7494fa8b48f2d8f40ba9, type: 3} 364 | propertyPath: m_DirtyAABB 365 | value: 0 366 | objectReference: {fileID: 0} 367 | m_RemovedComponents: [] 368 | m_SourcePrefab: {fileID: 100100000, guid: 5a6377a33ccd7494fa8b48f2d8f40ba9, type: 3} 369 | --- !u!1 &1460462777 stripped 370 | GameObject: 371 | m_CorrespondingSourceObject: {fileID: 100008, guid: 5a6377a33ccd7494fa8b48f2d8f40ba9, 372 | type: 3} 373 | m_PrefabInstance: {fileID: 1386412007} 374 | m_PrefabAsset: {fileID: 0} 375 | --- !u!114 &1460462780 376 | MonoBehaviour: 377 | m_ObjectHideFlags: 0 378 | m_CorrespondingSourceObject: {fileID: 0} 379 | m_PrefabInstance: {fileID: 0} 380 | m_PrefabAsset: {fileID: 0} 381 | m_GameObject: {fileID: 1460462777} 382 | m_Enabled: 1 383 | m_EditorHideFlags: 0 384 | m_Script: {fileID: 11500000, guid: 41299aabc357fac42b5d71eed6e1e729, type: 3} 385 | m_Name: 386 | m_EditorClassIdentifier: 387 | edgeWidth: 0.00299 388 | prefab_material: {fileID: 2100000, guid: 380b24f1196ba434cb4424c9e5643e38, type: 2} 389 | degraded_rectangles: {fileID: 11400000, guid: e858a67de49195843b16c8fe19ff2b4c, 390 | type: 2} 391 | --- !u!1 &1540843694 stripped 392 | GameObject: 393 | m_CorrespondingSourceObject: {fileID: 100006, guid: 5a6377a33ccd7494fa8b48f2d8f40ba9, 394 | type: 3} 395 | m_PrefabInstance: {fileID: 1386412007} 396 | m_PrefabAsset: {fileID: 0} 397 | --- !u!114 &1540843697 398 | MonoBehaviour: 399 | m_ObjectHideFlags: 0 400 | m_CorrespondingSourceObject: {fileID: 0} 401 | m_PrefabInstance: {fileID: 0} 402 | m_PrefabAsset: {fileID: 0} 403 | m_GameObject: {fileID: 1540843694} 404 | m_Enabled: 1 405 | m_EditorHideFlags: 0 406 | m_Script: {fileID: 11500000, guid: 41299aabc357fac42b5d71eed6e1e729, type: 3} 407 | m_Name: 408 | m_EditorClassIdentifier: 409 | edgeWidth: 0.00364 410 | prefab_material: {fileID: 2100000, guid: 380b24f1196ba434cb4424c9e5643e38, type: 2} 411 | degraded_rectangles: {fileID: 11400000, guid: b6f7cda32bd0e0749b83c548be3dffaf, 412 | type: 2} 413 | --- !u!1 &1786483968 stripped 414 | GameObject: 415 | m_CorrespondingSourceObject: {fileID: 100010, guid: 5a6377a33ccd7494fa8b48f2d8f40ba9, 416 | type: 3} 417 | m_PrefabInstance: {fileID: 1386412007} 418 | m_PrefabAsset: {fileID: 0} 419 | --- !u!114 &1786483971 420 | MonoBehaviour: 421 | m_ObjectHideFlags: 0 422 | m_CorrespondingSourceObject: {fileID: 0} 423 | m_PrefabInstance: {fileID: 0} 424 | m_PrefabAsset: {fileID: 0} 425 | m_GameObject: {fileID: 1786483968} 426 | m_Enabled: 1 427 | m_EditorHideFlags: 0 428 | m_Script: {fileID: 11500000, guid: 41299aabc357fac42b5d71eed6e1e729, type: 3} 429 | m_Name: 430 | m_EditorClassIdentifier: 431 | edgeWidth: 0.01 432 | prefab_material: {fileID: 2100000, guid: 380b24f1196ba434cb4424c9e5643e38, type: 2} 433 | degraded_rectangles: {fileID: 11400000, guid: 57ac2560584ae82418b92d2eed6ef466, 434 | type: 2} 435 | --- !u!1 &1917503869 stripped 436 | GameObject: 437 | m_CorrespondingSourceObject: {fileID: 100004, guid: 5a6377a33ccd7494fa8b48f2d8f40ba9, 438 | type: 3} 439 | m_PrefabInstance: {fileID: 1386412007} 440 | m_PrefabAsset: {fileID: 0} 441 | --- !u!114 &1917503872 442 | MonoBehaviour: 443 | m_ObjectHideFlags: 0 444 | m_CorrespondingSourceObject: {fileID: 0} 445 | m_PrefabInstance: {fileID: 0} 446 | m_PrefabAsset: {fileID: 0} 447 | m_GameObject: {fileID: 1917503869} 448 | m_Enabled: 1 449 | m_EditorHideFlags: 0 450 | m_Script: {fileID: 11500000, guid: 41299aabc357fac42b5d71eed6e1e729, type: 3} 451 | m_Name: 452 | m_EditorClassIdentifier: 453 | edgeWidth: 0.01 454 | prefab_material: {fileID: 2100000, guid: 380b24f1196ba434cb4424c9e5643e38, type: 2} 455 | degraded_rectangles: {fileID: 11400000, guid: e7959a35c4dd22f4ba67e0065da6ff06, 456 | type: 2} 457 | -------------------------------------------------------------------------------- /Assets/Scenes/SampleScene.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 26c6020961d2d104dad4be65a1f9802b 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Assets/TCP2_Demo_UnityChan.fbx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/L-LingRen/UnitySimpleCartoonLine/6b88b6672da15e5a653e26fdf5aea84670223382/Assets/TCP2_Demo_UnityChan.fbx -------------------------------------------------------------------------------- /Assets/TCP2_Demo_UnityChan.fbx.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5a6377a33ccd7494fa8b48f2d8f40ba9 3 | ModelImporter: 4 | serializedVersion: 23 5 | fileIDToRecycleName: 6 | 100000: _body 7 | 100002: _eye 8 | 100004: _face 9 | 100006: _Fhair 10 | 100008: _Fhair2 11 | 100010: _head 12 | 100012: bone_eye_L 13 | 100014: bone_eye_R 14 | 100016: Character1_Head 15 | 100018: Character1_Hips 16 | 100020: Character1_LeftArm 17 | 100022: Character1_LeftFoot 18 | 100024: Character1_LeftForeArm 19 | 100026: Character1_LeftHand 20 | 100028: Character1_LeftHandIndex1 21 | 100030: Character1_LeftHandIndex2 22 | 100032: Character1_LeftHandIndex3 23 | 100034: Character1_LeftHandMiddle1 24 | 100036: Character1_LeftHandMiddle2 25 | 100038: Character1_LeftHandMiddle3 26 | 100040: Character1_LeftHandPinky1 27 | 100042: Character1_LeftHandPinky2 28 | 100044: Character1_LeftHandPinky3 29 | 100046: Character1_LeftHandRing1 30 | 100048: Character1_LeftHandRing2 31 | 100050: Character1_LeftHandRing3 32 | 100052: Character1_LeftHandThumb1 33 | 100054: Character1_LeftHandThumb2 34 | 100056: Character1_LeftHandThumb3 35 | 100058: Character1_LeftHandThumb4 36 | 100060: Character1_LeftLeg 37 | 100062: Character1_LeftShoulder 38 | 100064: Character1_LeftToeBase 39 | 100066: Character1_LeftUpLeg 40 | 100068: Character1_Neck 41 | 100070: Character1_Reference 42 | 100072: Character1_RightArm 43 | 100074: Character1_RightFoot 44 | 100076: Character1_RightForeArm 45 | 100078: Character1_RightHand 46 | 100080: Character1_RightHandIndex1 47 | 100082: Character1_RightHandIndex2 48 | 100084: Character1_RightHandIndex3 49 | 100086: Character1_RightHandMiddle1 50 | 100088: Character1_RightHandMiddle2 51 | 100090: Character1_RightHandMiddle3 52 | 100092: Character1_RightHandPinky1 53 | 100094: Character1_RightHandPinky2 54 | 100096: Character1_RightHandPinky3 55 | 100098: Character1_RightHandRing1 56 | 100100: Character1_RightHandRing2 57 | 100102: Character1_RightHandRing3 58 | 100104: Character1_RightHandThumb1 59 | 100106: Character1_RightHandThumb2 60 | 100108: Character1_RightHandThumb3 61 | 100110: Character1_RightHandThumb4 62 | 100112: Character1_RightLeg 63 | 100114: Character1_RightShoulder 64 | 100116: Character1_RightToeBase 65 | 100118: Character1_RightUpLeg 66 | 100120: Character1_Spine 67 | 100122: Character1_Spine1 68 | 100124: Character1_Spine2 69 | 100126: J_acce_00 70 | 100128: J_acce_01 71 | 100130: J_L_Arm_00_tw 72 | 100132: J_L_Elbow 73 | 100134: J_L_ForeArm_00_tw 74 | 100136: J_L_HairFront_00 75 | 100138: J_L_HairFront_01 76 | 100140: J_L_HairSide2_00 77 | 100142: J_L_HairSide2_01 78 | 100144: J_L_HairSide_00 79 | 100146: J_L_HairSide_01 80 | 100148: J_L_HairSide_02 81 | 100150: J_L_HairTail_00 82 | 100152: J_L_HairTail_01 83 | 100154: J_L_HairTail_02 84 | 100156: J_L_HairTail_03 85 | 100158: J_L_HeadRibbon_00 86 | 100160: J_L_HeadRibbon_01 87 | 100162: J_L_HeadRibbon_02 88 | 100164: J_L_HeadRibbon_03 89 | 100166: J_L_knee 90 | 100168: J_L_Skirt_00 91 | 100170: J_L_Skirt_01 92 | 100172: J_L_Skirt_02 93 | 100174: J_L_SkirtBack_01 94 | 100176: J_L_SkirtBack_02 95 | 100178: J_L_Sode_A00 96 | 100180: J_L_Sode_A01 97 | 100182: J_L_Sode_B00 98 | 100184: J_L_Sode_B01 99 | 100186: J_L_Sode_C00 100 | 100188: J_L_Sode_C01 101 | 100190: J_L_Sode_D00 102 | 100192: J_L_Sode_D01 103 | 100194: J_L_Sode_E00 104 | 100196: J_R_Arm_00_tw 105 | 100198: J_R_Elbow 106 | 100200: J_R_ForeArm_00_tw 107 | 100202: J_R_HairFront_00 108 | 100204: J_R_HairFront_01 109 | 100206: J_R_HairSide2_00 110 | 100208: J_R_HairSide2_01 111 | 100210: J_R_HairSide_00 112 | 100212: J_R_HairSide_01 113 | 100214: J_R_HairSide_02 114 | 100216: J_R_HairTail_00 115 | 100218: J_R_HairTail_01 116 | 100220: J_R_HairTail_02 117 | 100222: J_R_HairTail_03 118 | 100224: J_R_HeadRibbon_00 119 | 100226: J_R_HeadRibbon_01 120 | 100228: J_R_HeadRibbon_02 121 | 100230: J_R_HeadRibbon_03 122 | 100232: J_R_knee 123 | 100234: J_R_Skirt_00 124 | 100236: J_R_Skirt_01 125 | 100238: J_R_Skirt_02 126 | 100240: J_R_SkirtBack_01 127 | 100242: J_R_SkirtBack_02 128 | 100244: J_R_Sode_A00 129 | 100246: J_R_Sode_A01 130 | 100248: J_R_Sode_B00 131 | 100250: J_R_Sode_B01 132 | 100252: J_R_Sode_C00 133 | 100254: J_R_Sode_C01 134 | 100256: J_R_Sode_D00 135 | 100258: J_R_Sode_D01 136 | 100260: J_R_Sode_E00 137 | 100262: Mesh_SD_unitychan 138 | 100264: //RootNode 139 | 400000: _body 140 | 400002: _eye 141 | 400004: _face 142 | 400006: _Fhair 143 | 400008: _Fhair2 144 | 400010: _head 145 | 400012: bone_eye_L 146 | 400014: bone_eye_R 147 | 400016: Character1_Head 148 | 400018: Character1_Hips 149 | 400020: Character1_LeftArm 150 | 400022: Character1_LeftFoot 151 | 400024: Character1_LeftForeArm 152 | 400026: Character1_LeftHand 153 | 400028: Character1_LeftHandIndex1 154 | 400030: Character1_LeftHandIndex2 155 | 400032: Character1_LeftHandIndex3 156 | 400034: Character1_LeftHandMiddle1 157 | 400036: Character1_LeftHandMiddle2 158 | 400038: Character1_LeftHandMiddle3 159 | 400040: Character1_LeftHandPinky1 160 | 400042: Character1_LeftHandPinky2 161 | 400044: Character1_LeftHandPinky3 162 | 400046: Character1_LeftHandRing1 163 | 400048: Character1_LeftHandRing2 164 | 400050: Character1_LeftHandRing3 165 | 400052: Character1_LeftHandThumb1 166 | 400054: Character1_LeftHandThumb2 167 | 400056: Character1_LeftHandThumb3 168 | 400058: Character1_LeftHandThumb4 169 | 400060: Character1_LeftLeg 170 | 400062: Character1_LeftShoulder 171 | 400064: Character1_LeftToeBase 172 | 400066: Character1_LeftUpLeg 173 | 400068: Character1_Neck 174 | 400070: Character1_Reference 175 | 400072: Character1_RightArm 176 | 400074: Character1_RightFoot 177 | 400076: Character1_RightForeArm 178 | 400078: Character1_RightHand 179 | 400080: Character1_RightHandIndex1 180 | 400082: Character1_RightHandIndex2 181 | 400084: Character1_RightHandIndex3 182 | 400086: Character1_RightHandMiddle1 183 | 400088: Character1_RightHandMiddle2 184 | 400090: Character1_RightHandMiddle3 185 | 400092: Character1_RightHandPinky1 186 | 400094: Character1_RightHandPinky2 187 | 400096: Character1_RightHandPinky3 188 | 400098: Character1_RightHandRing1 189 | 400100: Character1_RightHandRing2 190 | 400102: Character1_RightHandRing3 191 | 400104: Character1_RightHandThumb1 192 | 400106: Character1_RightHandThumb2 193 | 400108: Character1_RightHandThumb3 194 | 400110: Character1_RightHandThumb4 195 | 400112: Character1_RightLeg 196 | 400114: Character1_RightShoulder 197 | 400116: Character1_RightToeBase 198 | 400118: Character1_RightUpLeg 199 | 400120: Character1_Spine 200 | 400122: Character1_Spine1 201 | 400124: Character1_Spine2 202 | 400126: J_acce_00 203 | 400128: J_acce_01 204 | 400130: J_L_Arm_00_tw 205 | 400132: J_L_Elbow 206 | 400134: J_L_ForeArm_00_tw 207 | 400136: J_L_HairFront_00 208 | 400138: J_L_HairFront_01 209 | 400140: J_L_HairSide2_00 210 | 400142: J_L_HairSide2_01 211 | 400144: J_L_HairSide_00 212 | 400146: J_L_HairSide_01 213 | 400148: J_L_HairSide_02 214 | 400150: J_L_HairTail_00 215 | 400152: J_L_HairTail_01 216 | 400154: J_L_HairTail_02 217 | 400156: J_L_HairTail_03 218 | 400158: J_L_HeadRibbon_00 219 | 400160: J_L_HeadRibbon_01 220 | 400162: J_L_HeadRibbon_02 221 | 400164: J_L_HeadRibbon_03 222 | 400166: J_L_knee 223 | 400168: J_L_Skirt_00 224 | 400170: J_L_Skirt_01 225 | 400172: J_L_Skirt_02 226 | 400174: J_L_SkirtBack_01 227 | 400176: J_L_SkirtBack_02 228 | 400178: J_L_Sode_A00 229 | 400180: J_L_Sode_A01 230 | 400182: J_L_Sode_B00 231 | 400184: J_L_Sode_B01 232 | 400186: J_L_Sode_C00 233 | 400188: J_L_Sode_C01 234 | 400190: J_L_Sode_D00 235 | 400192: J_L_Sode_D01 236 | 400194: J_L_Sode_E00 237 | 400196: J_R_Arm_00_tw 238 | 400198: J_R_Elbow 239 | 400200: J_R_ForeArm_00_tw 240 | 400202: J_R_HairFront_00 241 | 400204: J_R_HairFront_01 242 | 400206: J_R_HairSide2_00 243 | 400208: J_R_HairSide2_01 244 | 400210: J_R_HairSide_00 245 | 400212: J_R_HairSide_01 246 | 400214: J_R_HairSide_02 247 | 400216: J_R_HairTail_00 248 | 400218: J_R_HairTail_01 249 | 400220: J_R_HairTail_02 250 | 400222: J_R_HairTail_03 251 | 400224: J_R_HeadRibbon_00 252 | 400226: J_R_HeadRibbon_01 253 | 400228: J_R_HeadRibbon_02 254 | 400230: J_R_HeadRibbon_03 255 | 400232: J_R_knee 256 | 400234: J_R_Skirt_00 257 | 400236: J_R_Skirt_01 258 | 400238: J_R_Skirt_02 259 | 400240: J_R_SkirtBack_01 260 | 400242: J_R_SkirtBack_02 261 | 400244: J_R_Sode_A00 262 | 400246: J_R_Sode_A01 263 | 400248: J_R_Sode_B00 264 | 400250: J_R_Sode_B01 265 | 400252: J_R_Sode_C00 266 | 400254: J_R_Sode_C01 267 | 400256: J_R_Sode_D00 268 | 400258: J_R_Sode_D01 269 | 400260: J_R_Sode_E00 270 | 400262: Mesh_SD_unitychan 271 | 400264: //RootNode 272 | 2100000: def_mat 273 | 4300000: _face 274 | 4300002: _head 275 | 4300004: _body 276 | 4300006: _Fhair 277 | 4300008: _eye 278 | 4300010: _Fhair2 279 | 9500000: //RootNode 280 | 13700000: _body 281 | 13700002: _eye 282 | 13700004: _face 283 | 13700006: _Fhair 284 | 13700008: _Fhair2 285 | 13700010: _head 286 | externalObjects: 287 | - first: 288 | type: UnityEngine:Material 289 | assembly: UnityEngine.CoreModule 290 | name: def_mat 291 | second: {fileID: 2100000, guid: 792b825b7e7f8eb45aaf5088c2f8926e, type: 2} 292 | materials: 293 | importMaterials: 1 294 | materialName: 0 295 | materialSearch: 1 296 | materialLocation: 1 297 | animations: 298 | legacyGenerateAnimations: 4 299 | bakeSimulation: 0 300 | resampleCurves: 1 301 | optimizeGameObjects: 0 302 | motionNodeName: 303 | rigImportErrors: 304 | rigImportWarnings: 305 | animationImportErrors: 306 | animationImportWarnings: 307 | animationRetargetingWarnings: 308 | animationDoRetargetingWarnings: 0 309 | importAnimatedCustomProperties: 0 310 | importConstraints: 0 311 | animationCompression: 1 312 | animationRotationError: 0.5 313 | animationPositionError: 0.5 314 | animationScaleError: 0.5 315 | animationWrapMode: 0 316 | extraExposedTransformPaths: [] 317 | extraUserProperties: [] 318 | clipAnimations: [] 319 | isReadable: 1 320 | meshes: 321 | lODScreenPercentages: [] 322 | globalScale: 1 323 | meshCompression: 0 324 | addColliders: 0 325 | useSRGBMaterialColor: 1 326 | importVisibility: 1 327 | importBlendShapes: 1 328 | importCameras: 1 329 | importLights: 1 330 | swapUVChannels: 0 331 | generateSecondaryUV: 0 332 | useFileUnits: 1 333 | optimizeMeshForGPU: 1 334 | keepQuads: 0 335 | weldVertices: 1 336 | preserveHierarchy: 0 337 | indexFormat: 0 338 | secondaryUVAngleDistortion: 8 339 | secondaryUVAreaDistortion: 15.000001 340 | secondaryUVHardAngle: 88 341 | secondaryUVPackMargin: 4 342 | useFileScale: 1 343 | previousCalculatedGlobalScale: 0.01 344 | hasPreviousCalculatedGlobalScale: 1 345 | tangentSpace: 346 | normalSmoothAngle: 60 347 | normalImportMode: 0 348 | tangentImportMode: 3 349 | normalCalculationMode: 4 350 | legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 351 | blendShapeNormalImportMode: 1 352 | normalSmoothingSource: 0 353 | importAnimation: 1 354 | copyAvatar: 0 355 | humanDescription: 356 | serializedVersion: 2 357 | human: [] 358 | skeleton: [] 359 | armTwist: 0.5 360 | foreArmTwist: 0.5 361 | upperLegTwist: 0.5 362 | legTwist: 0.5 363 | armStretch: 0.05 364 | legStretch: 0.05 365 | feetSpacing: 0 366 | rootMotionBoneName: 367 | hasTranslationDoF: 0 368 | hasExtraRoot: 0 369 | skeletonHasParents: 1 370 | lastHumanDescriptionAvatarSource: {instanceID: 0} 371 | animationType: 2 372 | humanoidOversampling: 1 373 | additionalBone: 0 374 | userData: 375 | assetBundleName: 376 | assetBundleVariant: 377 | -------------------------------------------------------------------------------- /Assets/body.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ccea8f7f39422fa4686d965a91daf0a8 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/def_mat.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInstance: {fileID: 0} 9 | m_PrefabAsset: {fileID: 0} 10 | m_Name: def_mat 11 | m_Shader: {fileID: 10752, guid: 0000000000000000f000000000000000, type: 0} 12 | m_ShaderKeywords: 13 | m_LightmapFlags: 4 14 | m_EnableInstancingVariants: 0 15 | m_DoubleSidedGI: 0 16 | m_CustomRenderQueue: -1 17 | stringTagMap: {} 18 | disabledShaderPasses: [] 19 | m_SavedProperties: 20 | serializedVersion: 3 21 | m_TexEnvs: 22 | - _BumpMap: 23 | m_Texture: {fileID: 0} 24 | m_Scale: {x: 1, y: 1} 25 | m_Offset: {x: 0, y: 0} 26 | - _DetailAlbedoMap: 27 | m_Texture: {fileID: 0} 28 | m_Scale: {x: 1, y: 1} 29 | m_Offset: {x: 0, y: 0} 30 | - _DetailMask: 31 | m_Texture: {fileID: 0} 32 | m_Scale: {x: 1, y: 1} 33 | m_Offset: {x: 0, y: 0} 34 | - _DetailNormalMap: 35 | m_Texture: {fileID: 0} 36 | m_Scale: {x: 1, y: 1} 37 | m_Offset: {x: 0, y: 0} 38 | - _EmissionMap: 39 | m_Texture: {fileID: 0} 40 | m_Scale: {x: 1, y: 1} 41 | m_Offset: {x: 0, y: 0} 42 | - _MainTex: 43 | m_Texture: {fileID: 0} 44 | m_Scale: {x: 1, y: 1} 45 | m_Offset: {x: 0, y: 0} 46 | - _MetallicGlossMap: 47 | m_Texture: {fileID: 0} 48 | m_Scale: {x: 1, y: 1} 49 | m_Offset: {x: 0, y: 0} 50 | - _OcclusionMap: 51 | m_Texture: {fileID: 0} 52 | m_Scale: {x: 1, y: 1} 53 | m_Offset: {x: 0, y: 0} 54 | - _ParallaxMap: 55 | m_Texture: {fileID: 0} 56 | m_Scale: {x: 1, y: 1} 57 | m_Offset: {x: 0, y: 0} 58 | m_Floats: 59 | - _BumpScale: 1 60 | - _Cutoff: 0.5 61 | - _DetailNormalMapScale: 1 62 | - _DstBlend: 0 63 | - _GlossMapScale: 1 64 | - _Glossiness: 0 65 | - _GlossyReflections: 1 66 | - _Metallic: 0 67 | - _Mode: 0 68 | - _OcclusionStrength: 1 69 | - _Parallax: 0.02 70 | - _SmoothnessTextureChannel: 0 71 | - _SpecularHighlights: 1 72 | - _SrcBlend: 1 73 | - _UVSec: 0 74 | - _ZWrite: 1 75 | m_Colors: 76 | - _Color: {r: 1, g: 1, b: 1, a: 1} 77 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 0} 78 | -------------------------------------------------------------------------------- /Assets/def_mat.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 792b825b7e7f8eb45aaf5088c2f8926e 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/face.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e7959a35c4dd22f4ba67e0065da6ff06 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/fhair.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b6f7cda32bd0e0749b83c548be3dffaf 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/fhair2.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: 45d0f3e5603d4dc4590e42266f0a90da, type: 3} 13 | m_Name: fhair2 14 | m_EditorClassIdentifier: 15 | mesh: {fileID: 4300010, guid: 5a6377a33ccd7494fa8b48f2d8f40ba9, type: 3} 16 | degraded_rectangles: 17 | - vertex1: 0 18 | vertex2: 1 19 | triangle1_vertex3: 2 20 | triangle2_vertex3: -1 21 | - vertex1: 1 22 | vertex2: 2 23 | triangle1_vertex3: 0 24 | triangle2_vertex3: 14 25 | - vertex1: 2 26 | vertex2: 0 27 | triangle1_vertex3: 1 28 | triangle2_vertex3: 3 29 | - vertex1: 2 30 | vertex2: 3 31 | triangle1_vertex3: 0 32 | triangle2_vertex3: 4 33 | - vertex1: 3 34 | vertex2: 0 35 | triangle1_vertex3: 2 36 | triangle2_vertex3: 81 37 | - vertex1: 2 38 | vertex2: 4 39 | triangle1_vertex3: 3 40 | triangle2_vertex3: 11 41 | - vertex1: 4 42 | vertex2: 3 43 | triangle1_vertex3: 2 44 | triangle2_vertex3: 5 45 | - vertex1: 5 46 | vertex2: 3 47 | triangle1_vertex3: 4 48 | triangle2_vertex3: 81 49 | - vertex1: 4 50 | vertex2: 5 51 | triangle1_vertex3: 3 52 | triangle2_vertex3: 6 53 | - vertex1: 6 54 | vertex2: 5 55 | triangle1_vertex3: 4 56 | triangle2_vertex3: 7 57 | - vertex1: 4 58 | vertex2: 6 59 | triangle1_vertex3: 5 60 | triangle2_vertex3: 10 61 | - vertex1: 6 62 | vertex2: 7 63 | triangle1_vertex3: 5 64 | triangle2_vertex3: 8 65 | - vertex1: 7 66 | vertex2: 5 67 | triangle1_vertex3: 6 68 | triangle2_vertex3: 90 69 | - vertex1: 8 70 | vertex2: 7 71 | triangle1_vertex3: 6 72 | triangle2_vertex3: 9 73 | - vertex1: 6 74 | vertex2: 8 75 | triangle1_vertex3: 7 76 | triangle2_vertex3: 20 77 | - vertex1: 8 78 | vertex2: 9 79 | triangle1_vertex3: 7 80 | triangle2_vertex3: 22 81 | - vertex1: 9 82 | vertex2: 7 83 | triangle1_vertex3: 8 84 | triangle2_vertex3: 87 85 | - vertex1: 4 86 | vertex2: 10 87 | triangle1_vertex3: 6 88 | triangle2_vertex3: 11 89 | - vertex1: 10 90 | vertex2: 6 91 | triangle1_vertex3: 4 92 | triangle2_vertex3: 20 93 | - vertex1: 4 94 | vertex2: 11 95 | triangle1_vertex3: 10 96 | triangle2_vertex3: 2 97 | - vertex1: 11 98 | vertex2: 10 99 | triangle1_vertex3: 4 100 | triangle2_vertex3: 12 101 | - vertex1: 2 102 | vertex2: 11 103 | triangle1_vertex3: 4 104 | triangle2_vertex3: 14 105 | - vertex1: 11 106 | vertex2: 12 107 | triangle1_vertex3: 10 108 | triangle2_vertex3: 13 109 | - vertex1: 12 110 | vertex2: 10 111 | triangle1_vertex3: 11 112 | triangle2_vertex3: 19 113 | - vertex1: 11 114 | vertex2: 13 115 | triangle1_vertex3: 12 116 | triangle2_vertex3: 14 117 | - vertex1: 13 118 | vertex2: 12 119 | triangle1_vertex3: 11 120 | triangle2_vertex3: 16 121 | - vertex1: 11 122 | vertex2: 14 123 | triangle1_vertex3: 13 124 | triangle2_vertex3: 15 125 | - vertex1: 14 126 | vertex2: 13 127 | triangle1_vertex3: 11 128 | triangle2_vertex3: 16 129 | - vertex1: 15 130 | vertex2: 14 131 | triangle1_vertex3: 11 132 | triangle2_vertex3: 23 133 | - vertex1: 14 134 | vertex2: 16 135 | triangle1_vertex3: 13 136 | triangle2_vertex3: 17 137 | - vertex1: 16 138 | vertex2: 13 139 | triangle1_vertex3: 14 140 | triangle2_vertex3: 12 141 | - vertex1: 16 142 | vertex2: 12 143 | triangle1_vertex3: 13 144 | triangle2_vertex3: 18 145 | - vertex1: 14 146 | vertex2: 17 147 | triangle1_vertex3: 16 148 | triangle2_vertex3: 23 149 | - vertex1: 17 150 | vertex2: 16 151 | triangle1_vertex3: 14 152 | triangle2_vertex3: 91 153 | - vertex1: 16 154 | vertex2: 18 155 | triangle1_vertex3: 12 156 | triangle2_vertex3: 91 157 | - vertex1: 18 158 | vertex2: 12 159 | triangle1_vertex3: 16 160 | triangle2_vertex3: 19 161 | - vertex1: 19 162 | vertex2: 10 163 | triangle1_vertex3: 12 164 | triangle2_vertex3: 20 165 | - vertex1: 12 166 | vertex2: 19 167 | triangle1_vertex3: 10 168 | triangle2_vertex3: 18 169 | - vertex1: 18 170 | vertex2: 19 171 | triangle1_vertex3: 12 172 | triangle2_vertex3: 28 173 | - vertex1: 19 174 | vertex2: 20 175 | triangle1_vertex3: 10 176 | triangle2_vertex3: 25 177 | - vertex1: 20 178 | vertex2: 10 179 | triangle1_vertex3: 19 180 | triangle2_vertex3: 6 181 | - vertex1: 20 182 | vertex2: 6 183 | triangle1_vertex3: 10 184 | triangle2_vertex3: 8 185 | - vertex1: 20 186 | vertex2: 8 187 | triangle1_vertex3: 6 188 | triangle2_vertex3: 21 189 | - vertex1: 21 190 | vertex2: 8 191 | triangle1_vertex3: 20 192 | triangle2_vertex3: 22 193 | - vertex1: 20 194 | vertex2: 21 195 | triangle1_vertex3: 8 196 | triangle2_vertex3: 25 197 | - vertex1: 21 198 | vertex2: 22 199 | triangle1_vertex3: 8 200 | triangle2_vertex3: 24 201 | - vertex1: 22 202 | vertex2: 8 203 | triangle1_vertex3: 21 204 | triangle2_vertex3: 9 205 | - vertex1: 22 206 | vertex2: 9 207 | triangle1_vertex3: 8 208 | triangle2_vertex3: 31 209 | - vertex1: 23 210 | vertex2: 14 211 | triangle1_vertex3: 15 212 | triangle2_vertex3: 17 213 | - vertex1: 23 214 | vertex2: 17 215 | triangle1_vertex3: 14 216 | triangle2_vertex3: -1 217 | - vertex1: 24 218 | vertex2: 22 219 | triangle1_vertex3: 21 220 | triangle2_vertex3: 30 221 | - vertex1: 21 222 | vertex2: 24 223 | triangle1_vertex3: 22 224 | triangle2_vertex3: 25 225 | - vertex1: 25 226 | vertex2: 24 227 | triangle1_vertex3: 21 228 | triangle2_vertex3: 26 229 | - vertex1: 21 230 | vertex2: 25 231 | triangle1_vertex3: 24 232 | triangle2_vertex3: 20 233 | - vertex1: 20 234 | vertex2: 25 235 | triangle1_vertex3: 21 236 | triangle2_vertex3: 19 237 | - vertex1: 19 238 | vertex2: 25 239 | triangle1_vertex3: 20 240 | triangle2_vertex3: 27 241 | - vertex1: 25 242 | vertex2: 26 243 | triangle1_vertex3: 24 244 | triangle2_vertex3: 27 245 | - vertex1: 26 246 | vertex2: 24 247 | triangle1_vertex3: 25 248 | triangle2_vertex3: 40 249 | - vertex1: 19 250 | vertex2: 27 251 | triangle1_vertex3: 25 252 | triangle2_vertex3: 28 253 | - vertex1: 27 254 | vertex2: 25 255 | triangle1_vertex3: 19 256 | triangle2_vertex3: 26 257 | - vertex1: 27 258 | vertex2: 26 259 | triangle1_vertex3: 25 260 | triangle2_vertex3: 29 261 | - vertex1: 19 262 | vertex2: 28 263 | triangle1_vertex3: 27 264 | triangle2_vertex3: 18 265 | - vertex1: 28 266 | vertex2: 27 267 | triangle1_vertex3: 19 268 | triangle2_vertex3: 86 269 | - vertex1: 18 270 | vertex2: 28 271 | triangle1_vertex3: 19 272 | triangle2_vertex3: 89 273 | - vertex1: 27 274 | vertex2: 29 275 | triangle1_vertex3: 26 276 | triangle2_vertex3: 83 277 | - vertex1: 29 278 | vertex2: 26 279 | triangle1_vertex3: 27 280 | triangle2_vertex3: 41 281 | - vertex1: 30 282 | vertex2: 22 283 | triangle1_vertex3: 24 284 | triangle2_vertex3: 31 285 | - vertex1: 24 286 | vertex2: 30 287 | triangle1_vertex3: 22 288 | triangle2_vertex3: 40 289 | - vertex1: 31 290 | vertex2: 22 291 | triangle1_vertex3: 30 292 | triangle2_vertex3: 9 293 | - vertex1: 30 294 | vertex2: 31 295 | triangle1_vertex3: 22 296 | triangle2_vertex3: 32 297 | - vertex1: 30 298 | vertex2: 32 299 | triangle1_vertex3: 31 300 | triangle2_vertex3: 33 301 | - vertex1: 32 302 | vertex2: 31 303 | triangle1_vertex3: 30 304 | triangle2_vertex3: 85 305 | - vertex1: 30 306 | vertex2: 33 307 | triangle1_vertex3: 32 308 | triangle2_vertex3: 34 309 | - vertex1: 33 310 | vertex2: 32 311 | triangle1_vertex3: 30 312 | triangle2_vertex3: 84 313 | - vertex1: 30 314 | vertex2: 34 315 | triangle1_vertex3: 33 316 | triangle2_vertex3: 39 317 | - vertex1: 34 318 | vertex2: 33 319 | triangle1_vertex3: 30 320 | triangle2_vertex3: 35 321 | - vertex1: 35 322 | vertex2: 33 323 | triangle1_vertex3: 34 324 | triangle2_vertex3: 36 325 | - vertex1: 34 326 | vertex2: 35 327 | triangle1_vertex3: 33 328 | triangle2_vertex3: 38 329 | - vertex1: 35 330 | vertex2: 36 331 | triangle1_vertex3: 33 332 | triangle2_vertex3: 37 333 | - vertex1: 36 334 | vertex2: 33 335 | triangle1_vertex3: 35 336 | triangle2_vertex3: 97 337 | - vertex1: 35 338 | vertex2: 37 339 | triangle1_vertex3: 36 340 | triangle2_vertex3: 38 341 | - vertex1: 37 342 | vertex2: 36 343 | triangle1_vertex3: 35 344 | triangle2_vertex3: 97 345 | - vertex1: 34 346 | vertex2: 38 347 | triangle1_vertex3: 35 348 | triangle2_vertex3: 39 349 | - vertex1: 38 350 | vertex2: 35 351 | triangle1_vertex3: 34 352 | triangle2_vertex3: 37 353 | - vertex1: 38 354 | vertex2: 37 355 | triangle1_vertex3: 35 356 | triangle2_vertex3: 98 357 | - vertex1: 34 358 | vertex2: 39 359 | triangle1_vertex3: 38 360 | triangle2_vertex3: 30 361 | - vertex1: 39 362 | vertex2: 38 363 | triangle1_vertex3: 34 364 | triangle2_vertex3: 93 365 | - vertex1: 30 366 | vertex2: 39 367 | triangle1_vertex3: 34 368 | triangle2_vertex3: 40 369 | - vertex1: 30 370 | vertex2: 40 371 | triangle1_vertex3: 39 372 | triangle2_vertex3: 24 373 | - vertex1: 40 374 | vertex2: 39 375 | triangle1_vertex3: 30 376 | triangle2_vertex3: 43 377 | - vertex1: 26 378 | vertex2: 40 379 | triangle1_vertex3: 24 380 | triangle2_vertex3: 41 381 | - vertex1: 40 382 | vertex2: 24 383 | triangle1_vertex3: 26 384 | triangle2_vertex3: 30 385 | - vertex1: 26 386 | vertex2: 41 387 | triangle1_vertex3: 40 388 | triangle2_vertex3: 29 389 | - vertex1: 41 390 | vertex2: 40 391 | triangle1_vertex3: 26 392 | triangle2_vertex3: 42 393 | - vertex1: 42 394 | vertex2: 40 395 | triangle1_vertex3: 41 396 | triangle2_vertex3: 43 397 | - vertex1: 41 398 | vertex2: 42 399 | triangle1_vertex3: 40 400 | triangle2_vertex3: 44 401 | - vertex1: 42 402 | vertex2: 43 403 | triangle1_vertex3: 40 404 | triangle2_vertex3: 48 405 | - vertex1: 43 406 | vertex2: 40 407 | triangle1_vertex3: 42 408 | triangle2_vertex3: 39 409 | - vertex1: 43 410 | vertex2: 39 411 | triangle1_vertex3: 40 412 | triangle2_vertex3: 46 413 | - vertex1: 41 414 | vertex2: 44 415 | triangle1_vertex3: 42 416 | triangle2_vertex3: 45 417 | - vertex1: 44 418 | vertex2: 42 419 | triangle1_vertex3: 41 420 | triangle2_vertex3: 51 421 | - vertex1: 41 422 | vertex2: 45 423 | triangle1_vertex3: 44 424 | triangle2_vertex3: 29 425 | - vertex1: 45 426 | vertex2: 44 427 | triangle1_vertex3: 41 428 | triangle2_vertex3: 84 429 | - vertex1: 41 430 | vertex2: 29 431 | triangle1_vertex3: 45 432 | triangle2_vertex3: 26 433 | - vertex1: 29 434 | vertex2: 45 435 | triangle1_vertex3: 41 436 | triangle2_vertex3: 84 437 | - vertex1: 43 438 | vertex2: 46 439 | triangle1_vertex3: 39 440 | triangle2_vertex3: 47 441 | - vertex1: 46 442 | vertex2: 39 443 | triangle1_vertex3: 43 444 | triangle2_vertex3: 95 445 | - vertex1: 43 446 | vertex2: 47 447 | triangle1_vertex3: 46 448 | triangle2_vertex3: 48 449 | - vertex1: 47 450 | vertex2: 46 451 | triangle1_vertex3: 43 452 | triangle2_vertex3: 99 453 | - vertex1: 43 454 | vertex2: 48 455 | triangle1_vertex3: 47 456 | triangle2_vertex3: 42 457 | - vertex1: 48 458 | vertex2: 47 459 | triangle1_vertex3: 43 460 | triangle2_vertex3: 49 461 | - vertex1: 42 462 | vertex2: 48 463 | triangle1_vertex3: 43 464 | triangle2_vertex3: 50 465 | - vertex1: 48 466 | vertex2: 49 467 | triangle1_vertex3: 47 468 | triangle2_vertex3: 50 469 | - vertex1: 49 470 | vertex2: 47 471 | triangle1_vertex3: 48 472 | triangle2_vertex3: 99 473 | - vertex1: 48 474 | vertex2: 50 475 | triangle1_vertex3: 49 476 | triangle2_vertex3: 42 477 | - vertex1: 50 478 | vertex2: 49 479 | triangle1_vertex3: 48 480 | triangle2_vertex3: 51 481 | - vertex1: 42 482 | vertex2: 50 483 | triangle1_vertex3: 48 484 | triangle2_vertex3: 51 485 | - vertex1: 50 486 | vertex2: 51 487 | triangle1_vertex3: 49 488 | triangle2_vertex3: 42 489 | - vertex1: 51 490 | vertex2: 49 491 | triangle1_vertex3: 50 492 | triangle2_vertex3: 100 493 | - vertex1: 42 494 | vertex2: 51 495 | triangle1_vertex3: 50 496 | triangle2_vertex3: 44 497 | - vertex1: 44 498 | vertex2: 51 499 | triangle1_vertex3: 42 500 | triangle2_vertex3: 96 501 | - vertex1: 52 502 | vertex2: 53 503 | triangle1_vertex3: 54 504 | triangle2_vertex3: 55 505 | - vertex1: 53 506 | vertex2: 54 507 | triangle1_vertex3: 52 508 | triangle2_vertex3: 61 509 | - vertex1: 54 510 | vertex2: 52 511 | triangle1_vertex3: 53 512 | triangle2_vertex3: 105 513 | - vertex1: 52 514 | vertex2: 55 515 | triangle1_vertex3: 53 516 | triangle2_vertex3: 56 517 | - vertex1: 55 518 | vertex2: 53 519 | triangle1_vertex3: 52 520 | triangle2_vertex3: 60 521 | - vertex1: 52 522 | vertex2: 56 523 | triangle1_vertex3: 55 524 | triangle2_vertex3: 105 525 | - vertex1: 56 526 | vertex2: 55 527 | triangle1_vertex3: 52 528 | triangle2_vertex3: 57 529 | - vertex1: 56 530 | vertex2: 57 531 | triangle1_vertex3: 55 532 | triangle2_vertex3: 58 533 | - vertex1: 57 534 | vertex2: 55 535 | triangle1_vertex3: 56 536 | triangle2_vertex3: 59 537 | - vertex1: 56 538 | vertex2: 58 539 | triangle1_vertex3: 57 540 | triangle2_vertex3: 109 541 | - vertex1: 58 542 | vertex2: 57 543 | triangle1_vertex3: 56 544 | triangle2_vertex3: 62 545 | - vertex1: 59 546 | vertex2: 55 547 | triangle1_vertex3: 57 548 | triangle2_vertex3: 60 549 | - vertex1: 57 550 | vertex2: 59 551 | triangle1_vertex3: 55 552 | triangle2_vertex3: 67 553 | - vertex1: 59 554 | vertex2: 60 555 | triangle1_vertex3: 55 556 | triangle2_vertex3: 106 557 | - vertex1: 60 558 | vertex2: 55 559 | triangle1_vertex3: 59 560 | triangle2_vertex3: 53 561 | - vertex1: 60 562 | vertex2: 53 563 | triangle1_vertex3: 55 564 | triangle2_vertex3: 61 565 | - vertex1: 60 566 | vertex2: 61 567 | triangle1_vertex3: 53 568 | triangle2_vertex3: 106 569 | - vertex1: 61 570 | vertex2: 53 571 | triangle1_vertex3: 60 572 | triangle2_vertex3: 54 573 | - vertex1: 61 574 | vertex2: 54 575 | triangle1_vertex3: 53 576 | triangle2_vertex3: 107 577 | - vertex1: 62 578 | vertex2: 57 579 | triangle1_vertex3: 58 580 | triangle2_vertex3: 63 581 | - vertex1: 58 582 | vertex2: 62 583 | triangle1_vertex3: 57 584 | triangle2_vertex3: 111 585 | - vertex1: 62 586 | vertex2: 63 587 | triangle1_vertex3: 57 588 | triangle2_vertex3: 64 589 | - vertex1: 63 590 | vertex2: 57 591 | triangle1_vertex3: 62 592 | triangle2_vertex3: 67 593 | - vertex1: 64 594 | vertex2: 63 595 | triangle1_vertex3: 62 596 | triangle2_vertex3: 65 597 | - vertex1: 62 598 | vertex2: 64 599 | triangle1_vertex3: 63 600 | triangle2_vertex3: 113 601 | - vertex1: 64 602 | vertex2: 65 603 | triangle1_vertex3: 63 604 | triangle2_vertex3: 68 605 | - vertex1: 65 606 | vertex2: 63 607 | triangle1_vertex3: 64 608 | triangle2_vertex3: 66 609 | - vertex1: 66 610 | vertex2: 63 611 | triangle1_vertex3: 65 612 | triangle2_vertex3: 67 613 | - vertex1: 65 614 | vertex2: 66 615 | triangle1_vertex3: 63 616 | triangle2_vertex3: 71 617 | - vertex1: 66 618 | vertex2: 67 619 | triangle1_vertex3: 63 620 | triangle2_vertex3: 112 621 | - vertex1: 67 622 | vertex2: 63 623 | triangle1_vertex3: 66 624 | triangle2_vertex3: 57 625 | - vertex1: 67 626 | vertex2: 57 627 | triangle1_vertex3: 63 628 | triangle2_vertex3: 59 629 | - vertex1: 67 630 | vertex2: 59 631 | triangle1_vertex3: 57 632 | triangle2_vertex3: 110 633 | - vertex1: 68 634 | vertex2: 65 635 | triangle1_vertex3: 64 636 | triangle2_vertex3: 69 637 | - vertex1: 64 638 | vertex2: 68 639 | triangle1_vertex3: 65 640 | triangle2_vertex3: 113 641 | - vertex1: 68 642 | vertex2: 69 643 | triangle1_vertex3: 65 644 | triangle2_vertex3: 70 645 | - vertex1: 69 646 | vertex2: 65 647 | triangle1_vertex3: 68 648 | triangle2_vertex3: 71 649 | - vertex1: 70 650 | vertex2: 69 651 | triangle1_vertex3: 68 652 | triangle2_vertex3: 71 653 | - vertex1: 68 654 | vertex2: 70 655 | triangle1_vertex3: 69 656 | triangle2_vertex3: 73 657 | - vertex1: 71 658 | vertex2: 65 659 | triangle1_vertex3: 69 660 | triangle2_vertex3: 66 661 | - vertex1: 69 662 | vertex2: 71 663 | triangle1_vertex3: 65 664 | triangle2_vertex3: 72 665 | - vertex1: 71 666 | vertex2: 66 667 | triangle1_vertex3: 65 668 | triangle2_vertex3: 115 669 | - vertex1: 72 670 | vertex2: 71 671 | triangle1_vertex3: 69 672 | triangle2_vertex3: 77 673 | - vertex1: 68 674 | vertex2: 73 675 | triangle1_vertex3: 70 676 | triangle2_vertex3: 116 677 | - vertex1: 73 678 | vertex2: 70 679 | triangle1_vertex3: 68 680 | triangle2_vertex3: 74 681 | - vertex1: 73 682 | vertex2: 74 683 | triangle1_vertex3: 70 684 | triangle2_vertex3: 75 685 | - vertex1: 74 686 | vertex2: 70 687 | triangle1_vertex3: 73 688 | triangle2_vertex3: 77 689 | - vertex1: 75 690 | vertex2: 74 691 | triangle1_vertex3: 73 692 | triangle2_vertex3: 76 693 | - vertex1: 73 694 | vertex2: 75 695 | triangle1_vertex3: 74 696 | triangle2_vertex3: 118 697 | - vertex1: 76 698 | vertex2: 74 699 | triangle1_vertex3: 75 700 | triangle2_vertex3: 79 701 | - vertex1: 75 702 | vertex2: 76 703 | triangle1_vertex3: 74 704 | triangle2_vertex3: -1 705 | - vertex1: 72 706 | vertex2: 77 707 | triangle1_vertex3: 71 708 | triangle2_vertex3: 78 709 | - vertex1: 77 710 | vertex2: 71 711 | triangle1_vertex3: 72 712 | triangle2_vertex3: 117 713 | - vertex1: 78 714 | vertex2: 77 715 | triangle1_vertex3: 72 716 | triangle2_vertex3: 79 717 | - vertex1: 78 718 | vertex2: 79 719 | triangle1_vertex3: 77 720 | triangle2_vertex3: 80 721 | - vertex1: 79 722 | vertex2: 77 723 | triangle1_vertex3: 78 724 | triangle2_vertex3: 119 725 | - vertex1: 80 726 | vertex2: 79 727 | triangle1_vertex3: 78 728 | triangle2_vertex3: -1 729 | - vertex1: 3 730 | vertex2: 81 731 | triangle1_vertex3: 0 732 | triangle2_vertex3: 5 733 | - vertex1: 81 734 | vertex2: 0 735 | triangle1_vertex3: 3 736 | triangle2_vertex3: -1 737 | - vertex1: 5 738 | vertex2: 81 739 | triangle1_vertex3: 3 740 | triangle2_vertex3: 103 741 | - vertex1: 31 742 | vertex2: 9 743 | triangle1_vertex3: 22 744 | triangle2_vertex3: 87 745 | - vertex1: 82 746 | vertex2: 83 747 | triangle1_vertex3: 84 748 | triangle2_vertex3: 85 749 | - vertex1: 83 750 | vertex2: 84 751 | triangle1_vertex3: 82 752 | triangle2_vertex3: 93 753 | - vertex1: 84 754 | vertex2: 82 755 | triangle1_vertex3: 83 756 | triangle2_vertex3: 94 757 | - vertex1: 85 758 | vertex2: 83 759 | triangle1_vertex3: 82 760 | triangle2_vertex3: 86 761 | - vertex1: 85 762 | vertex2: 86 763 | triangle1_vertex3: 83 764 | triangle2_vertex3: 87 765 | - vertex1: 87 766 | vertex2: 86 767 | triangle1_vertex3: 85 768 | triangle2_vertex3: 88 769 | - vertex1: 87 770 | vertex2: 88 771 | triangle1_vertex3: 86 772 | triangle2_vertex3: 89 773 | - vertex1: 87 774 | vertex2: 89 775 | triangle1_vertex3: 88 776 | triangle2_vertex3: 90 777 | - vertex1: 90 778 | vertex2: 89 779 | triangle1_vertex3: 87 780 | triangle2_vertex3: 91 781 | - vertex1: 90 782 | vertex2: 91 783 | triangle1_vertex3: 89 784 | triangle2_vertex3: 92 785 | - vertex1: 92 786 | vertex2: 91 787 | triangle1_vertex3: 90 788 | triangle2_vertex3: 103 789 | - vertex1: 93 790 | vertex2: 84 791 | triangle1_vertex3: 83 792 | triangle2_vertex3: 97 793 | - vertex1: 84 794 | vertex2: 94 795 | triangle1_vertex3: 82 796 | triangle2_vertex3: 95 797 | - vertex1: 84 798 | vertex2: 95 799 | triangle1_vertex3: 94 800 | triangle2_vertex3: 96 801 | - vertex1: 96 802 | vertex2: 95 803 | triangle1_vertex3: 84 804 | triangle2_vertex3: 99 805 | - vertex1: 93 806 | vertex2: 97 807 | triangle1_vertex3: 84 808 | triangle2_vertex3: 98 809 | - vertex1: 98 810 | vertex2: 97 811 | triangle1_vertex3: 93 812 | triangle2_vertex3: 101 813 | - vertex1: 96 814 | vertex2: 99 815 | triangle1_vertex3: 95 816 | triangle2_vertex3: 100 817 | - vertex1: 100 818 | vertex2: 99 819 | triangle1_vertex3: 96 820 | triangle2_vertex3: 102 821 | - vertex1: 103 822 | vertex2: 91 823 | triangle1_vertex3: 92 824 | triangle2_vertex3: 104 825 | - vertex1: 103 826 | vertex2: 104 827 | triangle1_vertex3: 91 828 | triangle2_vertex3: -1 829 | - vertex1: 105 830 | vertex2: 106 831 | triangle1_vertex3: 107 832 | triangle2_vertex3: 108 833 | - vertex1: 107 834 | vertex2: 105 835 | triangle1_vertex3: 106 836 | triangle2_vertex3: 121 837 | - vertex1: 108 838 | vertex2: 106 839 | triangle1_vertex3: 105 840 | triangle2_vertex3: 109 841 | - vertex1: 109 842 | vertex2: 106 843 | triangle1_vertex3: 108 844 | triangle2_vertex3: 110 845 | - vertex1: 109 846 | vertex2: 110 847 | triangle1_vertex3: 106 848 | triangle2_vertex3: 111 849 | - vertex1: 111 850 | vertex2: 110 851 | triangle1_vertex3: 109 852 | triangle2_vertex3: 112 853 | - vertex1: 111 854 | vertex2: 112 855 | triangle1_vertex3: 110 856 | triangle2_vertex3: 113 857 | - vertex1: 113 858 | vertex2: 112 859 | triangle1_vertex3: 111 860 | triangle2_vertex3: 114 861 | - vertex1: 113 862 | vertex2: 114 863 | triangle1_vertex3: 112 864 | triangle2_vertex3: 115 865 | - vertex1: 113 866 | vertex2: 115 867 | triangle1_vertex3: 114 868 | triangle2_vertex3: 116 869 | - vertex1: 116 870 | vertex2: 115 871 | triangle1_vertex3: 113 872 | triangle2_vertex3: 117 873 | - vertex1: 116 874 | vertex2: 117 875 | triangle1_vertex3: 115 876 | triangle2_vertex3: 118 877 | - vertex1: 118 878 | vertex2: 117 879 | triangle1_vertex3: 116 880 | triangle2_vertex3: 119 881 | - vertex1: 118 882 | vertex2: 119 883 | triangle1_vertex3: 117 884 | triangle2_vertex3: 120 885 | - vertex1: 120 886 | vertex2: 119 887 | triangle1_vertex3: 118 888 | triangle2_vertex3: -1 889 | -------------------------------------------------------------------------------- /Assets/fhair2.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e858a67de49195843b16c8fe19ff2b4c 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/head.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 57ac2560584ae82418b92d2eed6ef466 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Packages/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "com.unity.ads": "2.0.8", 4 | "com.unity.analytics": "3.2.2", 5 | "com.unity.collab-proxy": "1.2.15", 6 | "com.unity.package-manager-ui": "2.0.7", 7 | "com.unity.purchasing": "2.0.3", 8 | "com.unity.textmeshpro": "1.4.1", 9 | "com.unity.modules.ai": "1.0.0", 10 | "com.unity.modules.animation": "1.0.0", 11 | "com.unity.modules.assetbundle": "1.0.0", 12 | "com.unity.modules.audio": "1.0.0", 13 | "com.unity.modules.cloth": "1.0.0", 14 | "com.unity.modules.director": "1.0.0", 15 | "com.unity.modules.imageconversion": "1.0.0", 16 | "com.unity.modules.imgui": "1.0.0", 17 | "com.unity.modules.jsonserialize": "1.0.0", 18 | "com.unity.modules.particlesystem": "1.0.0", 19 | "com.unity.modules.physics": "1.0.0", 20 | "com.unity.modules.physics2d": "1.0.0", 21 | "com.unity.modules.screencapture": "1.0.0", 22 | "com.unity.modules.terrain": "1.0.0", 23 | "com.unity.modules.terrainphysics": "1.0.0", 24 | "com.unity.modules.tilemap": "1.0.0", 25 | "com.unity.modules.ui": "1.0.0", 26 | "com.unity.modules.uielements": "1.0.0", 27 | "com.unity.modules.umbra": "1.0.0", 28 | "com.unity.modules.unityanalytics": "1.0.0", 29 | "com.unity.modules.unitywebrequest": "1.0.0", 30 | "com.unity.modules.unitywebrequestassetbundle": "1.0.0", 31 | "com.unity.modules.unitywebrequestaudio": "1.0.0", 32 | "com.unity.modules.unitywebrequesttexture": "1.0.0", 33 | "com.unity.modules.unitywebrequestwww": "1.0.0", 34 | "com.unity.modules.vehicles": "1.0.0", 35 | "com.unity.modules.video": "1.0.0", 36 | "com.unity.modules.vr": "1.0.0", 37 | "com.unity.modules.wind": "1.0.0", 38 | "com.unity.modules.xr": "1.0.0" 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /ProjectSettings/AudioManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!11 &1 4 | AudioManager: 5 | m_ObjectHideFlags: 0 6 | m_Volume: 1 7 | Rolloff Scale: 1 8 | Doppler Factor: 1 9 | Default Speaker Mode: 2 10 | m_SampleRate: 0 11 | m_DSPBufferSize: 1024 12 | m_VirtualVoiceCount: 512 13 | m_RealVoiceCount: 32 14 | m_SpatializerPlugin: 15 | m_AmbisonicDecoderPlugin: 16 | m_DisableAudio: 0 17 | m_VirtualizeEffects: 1 18 | -------------------------------------------------------------------------------- /ProjectSettings/ClusterInputManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!236 &1 4 | ClusterInputManager: 5 | m_ObjectHideFlags: 0 6 | m_Inputs: [] 7 | -------------------------------------------------------------------------------- /ProjectSettings/DynamicsManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!55 &1 4 | PhysicsManager: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 8 7 | m_Gravity: {x: 0, y: -9.81, z: 0} 8 | m_DefaultMaterial: {fileID: 0} 9 | m_BounceThreshold: 2 10 | m_SleepThreshold: 0.005 11 | m_DefaultContactOffset: 0.01 12 | m_DefaultSolverIterations: 6 13 | m_DefaultSolverVelocityIterations: 1 14 | m_QueriesHitBackfaces: 0 15 | m_QueriesHitTriggers: 1 16 | m_EnableAdaptiveForce: 0 17 | m_ClothInterCollisionDistance: 0 18 | m_ClothInterCollisionStiffness: 0 19 | m_ContactsGeneration: 1 20 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 21 | m_AutoSimulation: 1 22 | m_AutoSyncTransforms: 0 23 | m_ReuseCollisionCallbacks: 1 24 | m_ClothInterCollisionSettingsToggle: 0 25 | m_ContactPairsMode: 0 26 | m_BroadphaseType: 0 27 | m_WorldBounds: 28 | m_Center: {x: 0, y: 0, z: 0} 29 | m_Extent: {x: 250, y: 250, z: 250} 30 | m_WorldSubdivisions: 8 31 | -------------------------------------------------------------------------------- /ProjectSettings/EditorBuildSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1045 &1 4 | EditorBuildSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Scenes: [] 8 | m_configObjects: {} 9 | -------------------------------------------------------------------------------- /ProjectSettings/EditorSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!159 &1 4 | EditorSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 7 7 | m_ExternalVersionControlSupport: Visible Meta Files 8 | m_SerializationMode: 2 9 | m_LineEndingsForNewScripts: 2 10 | m_DefaultBehaviorMode: 0 11 | m_SpritePackerMode: 0 12 | m_SpritePackerPaddingPower: 1 13 | m_EtcTextureCompressorBehavior: 1 14 | m_EtcTextureFastCompressor: 1 15 | m_EtcTextureNormalCompressor: 2 16 | m_EtcTextureBestCompressor: 4 17 | m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd 18 | m_ProjectGenerationRootNamespace: 19 | m_UserGeneratedProjectSuffix: 20 | m_CollabEditorSettings: 21 | inProgressEnabled: 1 22 | -------------------------------------------------------------------------------- /ProjectSettings/GraphicsSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!30 &1 4 | GraphicsSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 12 7 | m_Deferred: 8 | m_Mode: 1 9 | m_Shader: {fileID: 69, guid: 0000000000000000f000000000000000, type: 0} 10 | m_DeferredReflections: 11 | m_Mode: 1 12 | m_Shader: {fileID: 74, guid: 0000000000000000f000000000000000, type: 0} 13 | m_ScreenSpaceShadows: 14 | m_Mode: 1 15 | m_Shader: {fileID: 64, guid: 0000000000000000f000000000000000, type: 0} 16 | m_LegacyDeferred: 17 | m_Mode: 1 18 | m_Shader: {fileID: 63, guid: 0000000000000000f000000000000000, type: 0} 19 | m_DepthNormals: 20 | m_Mode: 1 21 | m_Shader: {fileID: 62, guid: 0000000000000000f000000000000000, type: 0} 22 | m_MotionVectors: 23 | m_Mode: 1 24 | m_Shader: {fileID: 75, guid: 0000000000000000f000000000000000, type: 0} 25 | m_LightHalo: 26 | m_Mode: 1 27 | m_Shader: {fileID: 105, guid: 0000000000000000f000000000000000, type: 0} 28 | m_LensFlare: 29 | m_Mode: 1 30 | m_Shader: {fileID: 102, guid: 0000000000000000f000000000000000, type: 0} 31 | m_AlwaysIncludedShaders: 32 | - {fileID: 7, guid: 0000000000000000f000000000000000, type: 0} 33 | - {fileID: 15104, guid: 0000000000000000f000000000000000, type: 0} 34 | - {fileID: 15105, guid: 0000000000000000f000000000000000, type: 0} 35 | - {fileID: 15106, guid: 0000000000000000f000000000000000, type: 0} 36 | - {fileID: 10753, guid: 0000000000000000f000000000000000, type: 0} 37 | - {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0} 38 | - {fileID: 10783, guid: 0000000000000000f000000000000000, type: 0} 39 | m_PreloadedShaders: [] 40 | m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000, 41 | type: 0} 42 | m_CustomRenderPipeline: {fileID: 0} 43 | m_TransparencySortMode: 0 44 | m_TransparencySortAxis: {x: 0, y: 0, z: 1} 45 | m_DefaultRenderingPath: 1 46 | m_DefaultMobileRenderingPath: 1 47 | m_TierSettings: [] 48 | m_LightmapStripping: 0 49 | m_FogStripping: 0 50 | m_InstancingStripping: 0 51 | m_LightmapKeepPlain: 1 52 | m_LightmapKeepDirCombined: 1 53 | m_LightmapKeepDynamicPlain: 1 54 | m_LightmapKeepDynamicDirCombined: 1 55 | m_LightmapKeepShadowMask: 1 56 | m_LightmapKeepSubtractive: 1 57 | m_FogKeepLinear: 1 58 | m_FogKeepExp: 1 59 | m_FogKeepExp2: 1 60 | m_AlbedoSwatchInfos: [] 61 | m_LightsUseLinearIntensity: 0 62 | m_LightsUseColorTemperature: 0 63 | -------------------------------------------------------------------------------- /ProjectSettings/InputManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!13 &1 4 | InputManager: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Axes: 8 | - serializedVersion: 3 9 | m_Name: Horizontal 10 | descriptiveName: 11 | descriptiveNegativeName: 12 | negativeButton: left 13 | positiveButton: right 14 | altNegativeButton: a 15 | altPositiveButton: d 16 | gravity: 3 17 | dead: 0.001 18 | sensitivity: 3 19 | snap: 1 20 | invert: 0 21 | type: 0 22 | axis: 0 23 | joyNum: 0 24 | - serializedVersion: 3 25 | m_Name: Vertical 26 | descriptiveName: 27 | descriptiveNegativeName: 28 | negativeButton: down 29 | positiveButton: up 30 | altNegativeButton: s 31 | altPositiveButton: w 32 | gravity: 3 33 | dead: 0.001 34 | sensitivity: 3 35 | snap: 1 36 | invert: 0 37 | type: 0 38 | axis: 0 39 | joyNum: 0 40 | - serializedVersion: 3 41 | m_Name: Fire1 42 | descriptiveName: 43 | descriptiveNegativeName: 44 | negativeButton: 45 | positiveButton: left ctrl 46 | altNegativeButton: 47 | altPositiveButton: mouse 0 48 | gravity: 1000 49 | dead: 0.001 50 | sensitivity: 1000 51 | snap: 0 52 | invert: 0 53 | type: 0 54 | axis: 0 55 | joyNum: 0 56 | - serializedVersion: 3 57 | m_Name: Fire2 58 | descriptiveName: 59 | descriptiveNegativeName: 60 | negativeButton: 61 | positiveButton: left alt 62 | altNegativeButton: 63 | altPositiveButton: mouse 1 64 | gravity: 1000 65 | dead: 0.001 66 | sensitivity: 1000 67 | snap: 0 68 | invert: 0 69 | type: 0 70 | axis: 0 71 | joyNum: 0 72 | - serializedVersion: 3 73 | m_Name: Fire3 74 | descriptiveName: 75 | descriptiveNegativeName: 76 | negativeButton: 77 | positiveButton: left shift 78 | altNegativeButton: 79 | altPositiveButton: mouse 2 80 | gravity: 1000 81 | dead: 0.001 82 | sensitivity: 1000 83 | snap: 0 84 | invert: 0 85 | type: 0 86 | axis: 0 87 | joyNum: 0 88 | - serializedVersion: 3 89 | m_Name: Jump 90 | descriptiveName: 91 | descriptiveNegativeName: 92 | negativeButton: 93 | positiveButton: space 94 | altNegativeButton: 95 | altPositiveButton: 96 | gravity: 1000 97 | dead: 0.001 98 | sensitivity: 1000 99 | snap: 0 100 | invert: 0 101 | type: 0 102 | axis: 0 103 | joyNum: 0 104 | - serializedVersion: 3 105 | m_Name: Mouse X 106 | descriptiveName: 107 | descriptiveNegativeName: 108 | negativeButton: 109 | positiveButton: 110 | altNegativeButton: 111 | altPositiveButton: 112 | gravity: 0 113 | dead: 0 114 | sensitivity: 0.1 115 | snap: 0 116 | invert: 0 117 | type: 1 118 | axis: 0 119 | joyNum: 0 120 | - serializedVersion: 3 121 | m_Name: Mouse Y 122 | descriptiveName: 123 | descriptiveNegativeName: 124 | negativeButton: 125 | positiveButton: 126 | altNegativeButton: 127 | altPositiveButton: 128 | gravity: 0 129 | dead: 0 130 | sensitivity: 0.1 131 | snap: 0 132 | invert: 0 133 | type: 1 134 | axis: 1 135 | joyNum: 0 136 | - serializedVersion: 3 137 | m_Name: Mouse ScrollWheel 138 | descriptiveName: 139 | descriptiveNegativeName: 140 | negativeButton: 141 | positiveButton: 142 | altNegativeButton: 143 | altPositiveButton: 144 | gravity: 0 145 | dead: 0 146 | sensitivity: 0.1 147 | snap: 0 148 | invert: 0 149 | type: 1 150 | axis: 2 151 | joyNum: 0 152 | - serializedVersion: 3 153 | m_Name: Horizontal 154 | descriptiveName: 155 | descriptiveNegativeName: 156 | negativeButton: 157 | positiveButton: 158 | altNegativeButton: 159 | altPositiveButton: 160 | gravity: 0 161 | dead: 0.19 162 | sensitivity: 1 163 | snap: 0 164 | invert: 0 165 | type: 2 166 | axis: 0 167 | joyNum: 0 168 | - serializedVersion: 3 169 | m_Name: Vertical 170 | descriptiveName: 171 | descriptiveNegativeName: 172 | negativeButton: 173 | positiveButton: 174 | altNegativeButton: 175 | altPositiveButton: 176 | gravity: 0 177 | dead: 0.19 178 | sensitivity: 1 179 | snap: 0 180 | invert: 1 181 | type: 2 182 | axis: 1 183 | joyNum: 0 184 | - serializedVersion: 3 185 | m_Name: Fire1 186 | descriptiveName: 187 | descriptiveNegativeName: 188 | negativeButton: 189 | positiveButton: joystick button 0 190 | altNegativeButton: 191 | altPositiveButton: 192 | gravity: 1000 193 | dead: 0.001 194 | sensitivity: 1000 195 | snap: 0 196 | invert: 0 197 | type: 0 198 | axis: 0 199 | joyNum: 0 200 | - serializedVersion: 3 201 | m_Name: Fire2 202 | descriptiveName: 203 | descriptiveNegativeName: 204 | negativeButton: 205 | positiveButton: joystick button 1 206 | altNegativeButton: 207 | altPositiveButton: 208 | gravity: 1000 209 | dead: 0.001 210 | sensitivity: 1000 211 | snap: 0 212 | invert: 0 213 | type: 0 214 | axis: 0 215 | joyNum: 0 216 | - serializedVersion: 3 217 | m_Name: Fire3 218 | descriptiveName: 219 | descriptiveNegativeName: 220 | negativeButton: 221 | positiveButton: joystick button 2 222 | altNegativeButton: 223 | altPositiveButton: 224 | gravity: 1000 225 | dead: 0.001 226 | sensitivity: 1000 227 | snap: 0 228 | invert: 0 229 | type: 0 230 | axis: 0 231 | joyNum: 0 232 | - serializedVersion: 3 233 | m_Name: Jump 234 | descriptiveName: 235 | descriptiveNegativeName: 236 | negativeButton: 237 | positiveButton: joystick button 3 238 | altNegativeButton: 239 | altPositiveButton: 240 | gravity: 1000 241 | dead: 0.001 242 | sensitivity: 1000 243 | snap: 0 244 | invert: 0 245 | type: 0 246 | axis: 0 247 | joyNum: 0 248 | - serializedVersion: 3 249 | m_Name: Submit 250 | descriptiveName: 251 | descriptiveNegativeName: 252 | negativeButton: 253 | positiveButton: return 254 | altNegativeButton: 255 | altPositiveButton: joystick button 0 256 | gravity: 1000 257 | dead: 0.001 258 | sensitivity: 1000 259 | snap: 0 260 | invert: 0 261 | type: 0 262 | axis: 0 263 | joyNum: 0 264 | - serializedVersion: 3 265 | m_Name: Submit 266 | descriptiveName: 267 | descriptiveNegativeName: 268 | negativeButton: 269 | positiveButton: enter 270 | altNegativeButton: 271 | altPositiveButton: space 272 | gravity: 1000 273 | dead: 0.001 274 | sensitivity: 1000 275 | snap: 0 276 | invert: 0 277 | type: 0 278 | axis: 0 279 | joyNum: 0 280 | - serializedVersion: 3 281 | m_Name: Cancel 282 | descriptiveName: 283 | descriptiveNegativeName: 284 | negativeButton: 285 | positiveButton: escape 286 | altNegativeButton: 287 | altPositiveButton: joystick button 1 288 | gravity: 1000 289 | dead: 0.001 290 | sensitivity: 1000 291 | snap: 0 292 | invert: 0 293 | type: 0 294 | axis: 0 295 | joyNum: 0 296 | -------------------------------------------------------------------------------- /ProjectSettings/NavMeshAreas.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!126 &1 4 | NavMeshProjectSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | areas: 8 | - name: Walkable 9 | cost: 1 10 | - name: Not Walkable 11 | cost: 1 12 | - name: Jump 13 | cost: 2 14 | - name: 15 | cost: 1 16 | - name: 17 | cost: 1 18 | - name: 19 | cost: 1 20 | - name: 21 | cost: 1 22 | - name: 23 | cost: 1 24 | - name: 25 | cost: 1 26 | - name: 27 | cost: 1 28 | - name: 29 | cost: 1 30 | - name: 31 | cost: 1 32 | - name: 33 | cost: 1 34 | - name: 35 | cost: 1 36 | - name: 37 | cost: 1 38 | - name: 39 | cost: 1 40 | - name: 41 | cost: 1 42 | - name: 43 | cost: 1 44 | - name: 45 | cost: 1 46 | - name: 47 | cost: 1 48 | - name: 49 | cost: 1 50 | - name: 51 | cost: 1 52 | - name: 53 | cost: 1 54 | - name: 55 | cost: 1 56 | - name: 57 | cost: 1 58 | - name: 59 | cost: 1 60 | - name: 61 | cost: 1 62 | - name: 63 | cost: 1 64 | - name: 65 | cost: 1 66 | - name: 67 | cost: 1 68 | - name: 69 | cost: 1 70 | - name: 71 | cost: 1 72 | m_LastAgentTypeID: -887442657 73 | m_Settings: 74 | - serializedVersion: 2 75 | agentTypeID: 0 76 | agentRadius: 0.5 77 | agentHeight: 2 78 | agentSlope: 45 79 | agentClimb: 0.75 80 | ledgeDropHeight: 0 81 | maxJumpAcrossDistance: 0 82 | minRegionArea: 2 83 | manualCellSize: 0 84 | cellSize: 0.16666667 85 | manualTileSize: 0 86 | tileSize: 256 87 | accuratePlacement: 0 88 | debug: 89 | m_Flags: 0 90 | m_SettingNames: 91 | - Humanoid 92 | -------------------------------------------------------------------------------- /ProjectSettings/NetworkManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!149 &1 4 | NetworkManager: 5 | m_ObjectHideFlags: 0 6 | m_DebugLevel: 0 7 | m_Sendrate: 15 8 | m_AssetToPrefab: {} 9 | -------------------------------------------------------------------------------- /ProjectSettings/Physics2DSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!19 &1 4 | Physics2DSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 4 7 | m_Gravity: {x: 0, y: -9.81} 8 | m_DefaultMaterial: {fileID: 0} 9 | m_VelocityIterations: 8 10 | m_PositionIterations: 3 11 | m_VelocityThreshold: 1 12 | m_MaxLinearCorrection: 0.2 13 | m_MaxAngularCorrection: 8 14 | m_MaxTranslationSpeed: 100 15 | m_MaxRotationSpeed: 360 16 | m_BaumgarteScale: 0.2 17 | m_BaumgarteTimeOfImpactScale: 0.75 18 | m_TimeToSleep: 0.5 19 | m_LinearSleepTolerance: 0.01 20 | m_AngularSleepTolerance: 2 21 | m_DefaultContactOffset: 0.01 22 | m_AutoSimulation: 1 23 | m_QueriesHitTriggers: 1 24 | m_QueriesStartInColliders: 1 25 | m_ChangeStopsCallbacks: 0 26 | m_CallbacksOnDisable: 1 27 | m_ReuseCollisionCallbacks: 1 28 | m_AutoSyncTransforms: 0 29 | m_AlwaysShowColliders: 0 30 | m_ShowColliderSleep: 1 31 | m_ShowColliderContacts: 0 32 | m_ShowColliderAABB: 0 33 | m_ContactArrowScale: 0.2 34 | m_ColliderAwakeColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.7529412} 35 | m_ColliderAsleepColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.36078432} 36 | m_ColliderContactColor: {r: 1, g: 0, b: 1, a: 0.6862745} 37 | m_ColliderAABBColor: {r: 1, g: 1, b: 0, a: 0.2509804} 38 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 39 | -------------------------------------------------------------------------------- /ProjectSettings/PresetManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1386491679 &1 4 | PresetManager: 5 | m_ObjectHideFlags: 0 6 | m_DefaultList: 7 | - type: 8 | m_NativeTypeID: 108 9 | m_ManagedTypePPtr: {fileID: 0} 10 | m_ManagedTypeFallback: 11 | defaultPresets: 12 | - m_Preset: {fileID: 2655988077585873504, guid: c1cf8506f04ef2c4a88b64b6c4202eea, 13 | type: 2} 14 | - type: 15 | m_NativeTypeID: 1020 16 | m_ManagedTypePPtr: {fileID: 0} 17 | m_ManagedTypeFallback: 18 | defaultPresets: 19 | - m_Preset: {fileID: 2655988077585873504, guid: 0cd792cc87e492d43b4e95b205fc5cc6, 20 | type: 2} 21 | - type: 22 | m_NativeTypeID: 1006 23 | m_ManagedTypePPtr: {fileID: 0} 24 | m_ManagedTypeFallback: 25 | defaultPresets: 26 | - m_Preset: {fileID: 2655988077585873504, guid: 7a99f8aa944efe94cb9bd74562b7d5f9, 27 | type: 2} 28 | -------------------------------------------------------------------------------- /ProjectSettings/ProjectSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!129 &1 4 | PlayerSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 15 7 | productGUID: 3a4ca06127ea18d4ba20d9634d551d8e 8 | AndroidProfiler: 0 9 | AndroidFilterTouchesWhenObscured: 0 10 | AndroidEnableSustainedPerformanceMode: 0 11 | defaultScreenOrientation: 4 12 | targetDevice: 2 13 | useOnDemandResources: 0 14 | accelerometerFrequency: 60 15 | companyName: DefaultCompany 16 | productName: UnityCartoonLine 17 | defaultCursor: {fileID: 0} 18 | cursorHotspot: {x: 0, y: 0} 19 | m_SplashScreenBackgroundColor: {r: 0.13725491, g: 0.12156863, b: 0.1254902, a: 1} 20 | m_ShowUnitySplashScreen: 1 21 | m_ShowUnitySplashLogo: 1 22 | m_SplashScreenOverlayOpacity: 1 23 | m_SplashScreenAnimation: 1 24 | m_SplashScreenLogoStyle: 1 25 | m_SplashScreenDrawMode: 0 26 | m_SplashScreenBackgroundAnimationZoom: 1 27 | m_SplashScreenLogoAnimationZoom: 1 28 | m_SplashScreenBackgroundLandscapeAspect: 1 29 | m_SplashScreenBackgroundPortraitAspect: 1 30 | m_SplashScreenBackgroundLandscapeUvs: 31 | serializedVersion: 2 32 | x: 0 33 | y: 0 34 | width: 1 35 | height: 1 36 | m_SplashScreenBackgroundPortraitUvs: 37 | serializedVersion: 2 38 | x: 0 39 | y: 0 40 | width: 1 41 | height: 1 42 | m_SplashScreenLogos: [] 43 | m_VirtualRealitySplashScreen: {fileID: 0} 44 | m_HolographicTrackingLossScreen: {fileID: 0} 45 | defaultScreenWidth: 1024 46 | defaultScreenHeight: 768 47 | defaultScreenWidthWeb: 960 48 | defaultScreenHeightWeb: 600 49 | m_StereoRenderingPath: 0 50 | m_ActiveColorSpace: 0 51 | m_MTRendering: 1 52 | m_StackTraceTypes: 010000000100000001000000010000000100000001000000 53 | iosShowActivityIndicatorOnLoading: -1 54 | androidShowActivityIndicatorOnLoading: -1 55 | iosAppInBackgroundBehavior: 0 56 | displayResolutionDialog: 1 57 | iosAllowHTTPDownload: 1 58 | allowedAutorotateToPortrait: 1 59 | allowedAutorotateToPortraitUpsideDown: 1 60 | allowedAutorotateToLandscapeRight: 1 61 | allowedAutorotateToLandscapeLeft: 1 62 | useOSAutorotation: 1 63 | use32BitDisplayBuffer: 1 64 | preserveFramebufferAlpha: 0 65 | disableDepthAndStencilBuffers: 0 66 | androidStartInFullscreen: 1 67 | androidRenderOutsideSafeArea: 0 68 | androidBlitType: 0 69 | defaultIsNativeResolution: 1 70 | macRetinaSupport: 1 71 | runInBackground: 1 72 | captureSingleScreen: 0 73 | muteOtherAudioSources: 0 74 | Prepare IOS For Recording: 0 75 | Force IOS Speakers When Recording: 0 76 | deferSystemGesturesMode: 0 77 | hideHomeButton: 0 78 | submitAnalytics: 1 79 | usePlayerLog: 1 80 | bakeCollisionMeshes: 0 81 | forceSingleInstance: 0 82 | resizableWindow: 0 83 | useMacAppStoreValidation: 0 84 | macAppStoreCategory: public.app-category.games 85 | gpuSkinning: 1 86 | graphicsJobs: 0 87 | xboxPIXTextureCapture: 0 88 | xboxEnableAvatar: 0 89 | xboxEnableKinect: 0 90 | xboxEnableKinectAutoTracking: 0 91 | xboxEnableFitness: 0 92 | visibleInBackground: 1 93 | allowFullscreenSwitch: 1 94 | graphicsJobMode: 0 95 | fullscreenMode: 1 96 | xboxSpeechDB: 0 97 | xboxEnableHeadOrientation: 0 98 | xboxEnableGuest: 0 99 | xboxEnablePIXSampling: 0 100 | metalFramebufferOnly: 0 101 | xboxOneResolution: 0 102 | xboxOneSResolution: 0 103 | xboxOneXResolution: 3 104 | xboxOneMonoLoggingLevel: 0 105 | xboxOneLoggingLevel: 1 106 | xboxOneDisableEsram: 0 107 | xboxOnePresentImmediateThreshold: 0 108 | switchQueueCommandMemory: 0 109 | switchQueueControlMemory: 16384 110 | switchQueueComputeMemory: 262144 111 | switchNVNShaderPoolsGranularity: 33554432 112 | switchNVNDefaultPoolsGranularity: 16777216 113 | switchNVNOtherPoolsGranularity: 16777216 114 | vulkanEnableSetSRGBWrite: 0 115 | m_SupportedAspectRatios: 116 | 4:3: 1 117 | 5:4: 1 118 | 16:10: 1 119 | 16:9: 1 120 | Others: 1 121 | bundleVersion: 0.1 122 | preloadedAssets: [] 123 | metroInputSource: 0 124 | wsaTransparentSwapchain: 0 125 | m_HolographicPauseOnTrackingLoss: 1 126 | xboxOneDisableKinectGpuReservation: 1 127 | xboxOneEnable7thCore: 1 128 | isWsaHolographicRemotingEnabled: 0 129 | vrSettings: 130 | cardboard: 131 | depthFormat: 0 132 | enableTransitionView: 0 133 | daydream: 134 | depthFormat: 0 135 | useSustainedPerformanceMode: 0 136 | enableVideoLayer: 0 137 | useProtectedVideoMemory: 0 138 | minimumSupportedHeadTracking: 0 139 | maximumSupportedHeadTracking: 1 140 | hololens: 141 | depthFormat: 1 142 | depthBufferSharingEnabled: 1 143 | oculus: 144 | sharedDepthBuffer: 1 145 | dashSupport: 1 146 | enable360StereoCapture: 0 147 | protectGraphicsMemory: 0 148 | enableFrameTimingStats: 0 149 | useHDRDisplay: 0 150 | m_ColorGamuts: 00000000 151 | targetPixelDensity: 30 152 | resolutionScalingMode: 0 153 | androidSupportedAspectRatio: 1 154 | androidMaxAspectRatio: 2.1 155 | applicationIdentifier: {} 156 | buildNumber: {} 157 | AndroidBundleVersionCode: 1 158 | AndroidMinSdkVersion: 16 159 | AndroidTargetSdkVersion: 0 160 | AndroidPreferredInstallLocation: 1 161 | aotOptions: 162 | stripEngineCode: 1 163 | iPhoneStrippingLevel: 0 164 | iPhoneScriptCallOptimization: 0 165 | ForceInternetPermission: 0 166 | ForceSDCardPermission: 0 167 | CreateWallpaper: 0 168 | APKExpansionFiles: 0 169 | keepLoadedShadersAlive: 0 170 | StripUnusedMeshComponents: 1 171 | VertexChannelCompressionMask: 4054 172 | iPhoneSdkVersion: 988 173 | iOSTargetOSVersionString: 9.0 174 | tvOSSdkVersion: 0 175 | tvOSRequireExtendedGameController: 0 176 | tvOSTargetOSVersionString: 9.0 177 | uIPrerenderedIcon: 0 178 | uIRequiresPersistentWiFi: 0 179 | uIRequiresFullScreen: 1 180 | uIStatusBarHidden: 1 181 | uIExitOnSuspend: 0 182 | uIStatusBarStyle: 0 183 | iPhoneSplashScreen: {fileID: 0} 184 | iPhoneHighResSplashScreen: {fileID: 0} 185 | iPhoneTallHighResSplashScreen: {fileID: 0} 186 | iPhone47inSplashScreen: {fileID: 0} 187 | iPhone55inPortraitSplashScreen: {fileID: 0} 188 | iPhone55inLandscapeSplashScreen: {fileID: 0} 189 | iPhone58inPortraitSplashScreen: {fileID: 0} 190 | iPhone58inLandscapeSplashScreen: {fileID: 0} 191 | iPadPortraitSplashScreen: {fileID: 0} 192 | iPadHighResPortraitSplashScreen: {fileID: 0} 193 | iPadLandscapeSplashScreen: {fileID: 0} 194 | iPadHighResLandscapeSplashScreen: {fileID: 0} 195 | appleTVSplashScreen: {fileID: 0} 196 | appleTVSplashScreen2x: {fileID: 0} 197 | tvOSSmallIconLayers: [] 198 | tvOSSmallIconLayers2x: [] 199 | tvOSLargeIconLayers: [] 200 | tvOSLargeIconLayers2x: [] 201 | tvOSTopShelfImageLayers: [] 202 | tvOSTopShelfImageLayers2x: [] 203 | tvOSTopShelfImageWideLayers: [] 204 | tvOSTopShelfImageWideLayers2x: [] 205 | iOSLaunchScreenType: 0 206 | iOSLaunchScreenPortrait: {fileID: 0} 207 | iOSLaunchScreenLandscape: {fileID: 0} 208 | iOSLaunchScreenBackgroundColor: 209 | serializedVersion: 2 210 | rgba: 0 211 | iOSLaunchScreenFillPct: 100 212 | iOSLaunchScreenSize: 100 213 | iOSLaunchScreenCustomXibPath: 214 | iOSLaunchScreeniPadType: 0 215 | iOSLaunchScreeniPadImage: {fileID: 0} 216 | iOSLaunchScreeniPadBackgroundColor: 217 | serializedVersion: 2 218 | rgba: 0 219 | iOSLaunchScreeniPadFillPct: 100 220 | iOSLaunchScreeniPadSize: 100 221 | iOSLaunchScreeniPadCustomXibPath: 222 | iOSUseLaunchScreenStoryboard: 0 223 | iOSLaunchScreenCustomStoryboardPath: 224 | iOSDeviceRequirements: [] 225 | iOSURLSchemes: [] 226 | iOSBackgroundModes: 0 227 | iOSMetalForceHardShadows: 0 228 | metalEditorSupport: 1 229 | metalAPIValidation: 1 230 | iOSRenderExtraFrameOnPause: 0 231 | appleDeveloperTeamID: 232 | iOSManualSigningProvisioningProfileID: 233 | tvOSManualSigningProvisioningProfileID: 234 | iOSManualSigningProvisioningProfileType: 0 235 | tvOSManualSigningProvisioningProfileType: 0 236 | appleEnableAutomaticSigning: 0 237 | iOSRequireARKit: 0 238 | iOSAutomaticallyDetectAndAddCapabilities: 1 239 | appleEnableProMotion: 0 240 | clonedFromGUID: c0afd0d1d80e3634a9dac47e8a0426ea 241 | templatePackageId: com.unity.template.3d@1.3.0 242 | templateDefaultScene: Assets/Scenes/SampleScene.unity 243 | AndroidTargetArchitectures: 5 244 | AndroidSplashScreenScale: 0 245 | androidSplashScreen: {fileID: 0} 246 | AndroidKeystoreName: 247 | AndroidKeyaliasName: 248 | AndroidBuildApkPerCpuArchitecture: 0 249 | AndroidTVCompatibility: 1 250 | AndroidIsGame: 1 251 | AndroidEnableTango: 0 252 | androidEnableBanner: 1 253 | androidUseLowAccuracyLocation: 0 254 | m_AndroidBanners: 255 | - width: 320 256 | height: 180 257 | banner: {fileID: 0} 258 | androidGamepadSupportLevel: 0 259 | resolutionDialogBanner: {fileID: 0} 260 | m_BuildTargetIcons: [] 261 | m_BuildTargetPlatformIcons: [] 262 | m_BuildTargetBatching: 263 | - m_BuildTarget: Standalone 264 | m_StaticBatching: 1 265 | m_DynamicBatching: 0 266 | - m_BuildTarget: tvOS 267 | m_StaticBatching: 1 268 | m_DynamicBatching: 0 269 | - m_BuildTarget: Android 270 | m_StaticBatching: 1 271 | m_DynamicBatching: 0 272 | - m_BuildTarget: iPhone 273 | m_StaticBatching: 1 274 | m_DynamicBatching: 0 275 | - m_BuildTarget: WebGL 276 | m_StaticBatching: 0 277 | m_DynamicBatching: 0 278 | m_BuildTargetGraphicsAPIs: 279 | - m_BuildTarget: AndroidPlayer 280 | m_APIs: 0b00000008000000 281 | m_Automatic: 1 282 | - m_BuildTarget: iOSSupport 283 | m_APIs: 10000000 284 | m_Automatic: 1 285 | - m_BuildTarget: AppleTVSupport 286 | m_APIs: 10000000 287 | m_Automatic: 0 288 | - m_BuildTarget: WebGLSupport 289 | m_APIs: 0b000000 290 | m_Automatic: 1 291 | m_BuildTargetVRSettings: 292 | - m_BuildTarget: Standalone 293 | m_Enabled: 0 294 | m_Devices: 295 | - Oculus 296 | - OpenVR 297 | m_BuildTargetEnableVuforiaSettings: [] 298 | openGLRequireES31: 0 299 | openGLRequireES31AEP: 0 300 | m_TemplateCustomTags: {} 301 | mobileMTRendering: 302 | Android: 1 303 | iPhone: 1 304 | tvOS: 1 305 | m_BuildTargetGroupLightmapEncodingQuality: [] 306 | m_BuildTargetGroupLightmapSettings: [] 307 | playModeTestRunnerEnabled: 0 308 | runPlayModeTestAsEditModeTest: 0 309 | actionOnDotNetUnhandledException: 1 310 | enableInternalProfiler: 0 311 | logObjCUncaughtExceptions: 1 312 | enableCrashReportAPI: 0 313 | cameraUsageDescription: 314 | locationUsageDescription: 315 | microphoneUsageDescription: 316 | switchNetLibKey: 317 | switchSocketMemoryPoolSize: 6144 318 | switchSocketAllocatorPoolSize: 128 319 | switchSocketConcurrencyLimit: 14 320 | switchScreenResolutionBehavior: 2 321 | switchUseCPUProfiler: 0 322 | switchApplicationID: 0x01004b9000490000 323 | switchNSODependencies: 324 | switchTitleNames_0: 325 | switchTitleNames_1: 326 | switchTitleNames_2: 327 | switchTitleNames_3: 328 | switchTitleNames_4: 329 | switchTitleNames_5: 330 | switchTitleNames_6: 331 | switchTitleNames_7: 332 | switchTitleNames_8: 333 | switchTitleNames_9: 334 | switchTitleNames_10: 335 | switchTitleNames_11: 336 | switchTitleNames_12: 337 | switchTitleNames_13: 338 | switchTitleNames_14: 339 | switchPublisherNames_0: 340 | switchPublisherNames_1: 341 | switchPublisherNames_2: 342 | switchPublisherNames_3: 343 | switchPublisherNames_4: 344 | switchPublisherNames_5: 345 | switchPublisherNames_6: 346 | switchPublisherNames_7: 347 | switchPublisherNames_8: 348 | switchPublisherNames_9: 349 | switchPublisherNames_10: 350 | switchPublisherNames_11: 351 | switchPublisherNames_12: 352 | switchPublisherNames_13: 353 | switchPublisherNames_14: 354 | switchIcons_0: {fileID: 0} 355 | switchIcons_1: {fileID: 0} 356 | switchIcons_2: {fileID: 0} 357 | switchIcons_3: {fileID: 0} 358 | switchIcons_4: {fileID: 0} 359 | switchIcons_5: {fileID: 0} 360 | switchIcons_6: {fileID: 0} 361 | switchIcons_7: {fileID: 0} 362 | switchIcons_8: {fileID: 0} 363 | switchIcons_9: {fileID: 0} 364 | switchIcons_10: {fileID: 0} 365 | switchIcons_11: {fileID: 0} 366 | switchIcons_12: {fileID: 0} 367 | switchIcons_13: {fileID: 0} 368 | switchIcons_14: {fileID: 0} 369 | switchSmallIcons_0: {fileID: 0} 370 | switchSmallIcons_1: {fileID: 0} 371 | switchSmallIcons_2: {fileID: 0} 372 | switchSmallIcons_3: {fileID: 0} 373 | switchSmallIcons_4: {fileID: 0} 374 | switchSmallIcons_5: {fileID: 0} 375 | switchSmallIcons_6: {fileID: 0} 376 | switchSmallIcons_7: {fileID: 0} 377 | switchSmallIcons_8: {fileID: 0} 378 | switchSmallIcons_9: {fileID: 0} 379 | switchSmallIcons_10: {fileID: 0} 380 | switchSmallIcons_11: {fileID: 0} 381 | switchSmallIcons_12: {fileID: 0} 382 | switchSmallIcons_13: {fileID: 0} 383 | switchSmallIcons_14: {fileID: 0} 384 | switchManualHTML: 385 | switchAccessibleURLs: 386 | switchLegalInformation: 387 | switchMainThreadStackSize: 1048576 388 | switchPresenceGroupId: 389 | switchLogoHandling: 0 390 | switchReleaseVersion: 0 391 | switchDisplayVersion: 1.0.0 392 | switchStartupUserAccount: 0 393 | switchTouchScreenUsage: 0 394 | switchSupportedLanguagesMask: 0 395 | switchLogoType: 0 396 | switchApplicationErrorCodeCategory: 397 | switchUserAccountSaveDataSize: 0 398 | switchUserAccountSaveDataJournalSize: 0 399 | switchApplicationAttribute: 0 400 | switchCardSpecSize: -1 401 | switchCardSpecClock: -1 402 | switchRatingsMask: 0 403 | switchRatingsInt_0: 0 404 | switchRatingsInt_1: 0 405 | switchRatingsInt_2: 0 406 | switchRatingsInt_3: 0 407 | switchRatingsInt_4: 0 408 | switchRatingsInt_5: 0 409 | switchRatingsInt_6: 0 410 | switchRatingsInt_7: 0 411 | switchRatingsInt_8: 0 412 | switchRatingsInt_9: 0 413 | switchRatingsInt_10: 0 414 | switchRatingsInt_11: 0 415 | switchLocalCommunicationIds_0: 416 | switchLocalCommunicationIds_1: 417 | switchLocalCommunicationIds_2: 418 | switchLocalCommunicationIds_3: 419 | switchLocalCommunicationIds_4: 420 | switchLocalCommunicationIds_5: 421 | switchLocalCommunicationIds_6: 422 | switchLocalCommunicationIds_7: 423 | switchParentalControl: 0 424 | switchAllowsScreenshot: 1 425 | switchAllowsVideoCapturing: 1 426 | switchAllowsRuntimeAddOnContentInstall: 0 427 | switchDataLossConfirmation: 0 428 | switchUserAccountLockEnabled: 0 429 | switchSystemResourceMemory: 16777216 430 | switchSupportedNpadStyles: 3 431 | switchNativeFsCacheSize: 32 432 | switchIsHoldTypeHorizontal: 0 433 | switchSupportedNpadCount: 8 434 | switchSocketConfigEnabled: 0 435 | switchTcpInitialSendBufferSize: 32 436 | switchTcpInitialReceiveBufferSize: 64 437 | switchTcpAutoSendBufferSizeMax: 256 438 | switchTcpAutoReceiveBufferSizeMax: 256 439 | switchUdpSendBufferSize: 9 440 | switchUdpReceiveBufferSize: 42 441 | switchSocketBufferEfficiency: 4 442 | switchSocketInitializeEnabled: 1 443 | switchNetworkInterfaceManagerInitializeEnabled: 1 444 | switchPlayerConnectionEnabled: 1 445 | ps4NPAgeRating: 12 446 | ps4NPTitleSecret: 447 | ps4NPTrophyPackPath: 448 | ps4ParentalLevel: 11 449 | ps4ContentID: ED1633-NPXX51362_00-0000000000000000 450 | ps4Category: 0 451 | ps4MasterVersion: 01.00 452 | ps4AppVersion: 01.00 453 | ps4AppType: 0 454 | ps4ParamSfxPath: 455 | ps4VideoOutPixelFormat: 0 456 | ps4VideoOutInitialWidth: 1920 457 | ps4VideoOutBaseModeInitialWidth: 1920 458 | ps4VideoOutReprojectionRate: 60 459 | ps4PronunciationXMLPath: 460 | ps4PronunciationSIGPath: 461 | ps4BackgroundImagePath: 462 | ps4StartupImagePath: 463 | ps4StartupImagesFolder: 464 | ps4IconImagesFolder: 465 | ps4SaveDataImagePath: 466 | ps4SdkOverride: 467 | ps4BGMPath: 468 | ps4ShareFilePath: 469 | ps4ShareOverlayImagePath: 470 | ps4PrivacyGuardImagePath: 471 | ps4NPtitleDatPath: 472 | ps4RemotePlayKeyAssignment: -1 473 | ps4RemotePlayKeyMappingDir: 474 | ps4PlayTogetherPlayerCount: 0 475 | ps4EnterButtonAssignment: 1 476 | ps4ApplicationParam1: 0 477 | ps4ApplicationParam2: 0 478 | ps4ApplicationParam3: 0 479 | ps4ApplicationParam4: 0 480 | ps4DownloadDataSize: 0 481 | ps4GarlicHeapSize: 2048 482 | ps4ProGarlicHeapSize: 2560 483 | ps4Passcode: frAQBc8Wsa1xVPfvJcrgRYwTiizs2trQ 484 | ps4pnSessions: 1 485 | ps4pnPresence: 1 486 | ps4pnFriends: 1 487 | ps4pnGameCustomData: 1 488 | playerPrefsSupport: 0 489 | enableApplicationExit: 0 490 | resetTempFolder: 1 491 | restrictedAudioUsageRights: 0 492 | ps4UseResolutionFallback: 0 493 | ps4ReprojectionSupport: 0 494 | ps4UseAudio3dBackend: 0 495 | ps4SocialScreenEnabled: 0 496 | ps4ScriptOptimizationLevel: 0 497 | ps4Audio3dVirtualSpeakerCount: 14 498 | ps4attribCpuUsage: 0 499 | ps4PatchPkgPath: 500 | ps4PatchLatestPkgPath: 501 | ps4PatchChangeinfoPath: 502 | ps4PatchDayOne: 0 503 | ps4attribUserManagement: 0 504 | ps4attribMoveSupport: 0 505 | ps4attrib3DSupport: 0 506 | ps4attribShareSupport: 0 507 | ps4attribExclusiveVR: 0 508 | ps4disableAutoHideSplash: 0 509 | ps4videoRecordingFeaturesUsed: 0 510 | ps4contentSearchFeaturesUsed: 0 511 | ps4attribEyeToEyeDistanceSettingVR: 0 512 | ps4IncludedModules: [] 513 | monoEnv: 514 | splashScreenBackgroundSourceLandscape: {fileID: 0} 515 | splashScreenBackgroundSourcePortrait: {fileID: 0} 516 | spritePackerPolicy: 517 | webGLMemorySize: 256 518 | webGLExceptionSupport: 1 519 | webGLNameFilesAsHashes: 0 520 | webGLDataCaching: 1 521 | webGLDebugSymbols: 0 522 | webGLEmscriptenArgs: 523 | webGLModulesDirectory: 524 | webGLTemplate: APPLICATION:Default 525 | webGLAnalyzeBuildSize: 0 526 | webGLUseEmbeddedResources: 0 527 | webGLCompressionFormat: 1 528 | webGLLinkerTarget: 1 529 | webGLThreadsSupport: 0 530 | scriptingDefineSymbols: {} 531 | platformArchitecture: {} 532 | scriptingBackend: {} 533 | il2cppCompilerConfiguration: {} 534 | managedStrippingLevel: {} 535 | incrementalIl2cppBuild: {} 536 | allowUnsafeCode: 0 537 | additionalIl2CppArgs: 538 | scriptingRuntimeVersion: 1 539 | apiCompatibilityLevelPerPlatform: {} 540 | m_RenderingPath: 1 541 | m_MobileRenderingPath: 1 542 | metroPackageName: Template_3D 543 | metroPackageVersion: 544 | metroCertificatePath: 545 | metroCertificatePassword: 546 | metroCertificateSubject: 547 | metroCertificateIssuer: 548 | metroCertificateNotAfter: 0000000000000000 549 | metroApplicationDescription: Template_3D 550 | wsaImages: {} 551 | metroTileShortName: 552 | metroTileShowName: 0 553 | metroMediumTileShowName: 0 554 | metroLargeTileShowName: 0 555 | metroWideTileShowName: 0 556 | metroSupportStreamingInstall: 0 557 | metroLastRequiredScene: 0 558 | metroDefaultTileSize: 1 559 | metroTileForegroundText: 2 560 | metroTileBackgroundColor: {r: 0.13333334, g: 0.17254902, b: 0.21568628, a: 0} 561 | metroSplashScreenBackgroundColor: {r: 0.12941177, g: 0.17254902, b: 0.21568628, 562 | a: 1} 563 | metroSplashScreenUseBackgroundColor: 0 564 | platformCapabilities: {} 565 | metroTargetDeviceFamilies: {} 566 | metroFTAName: 567 | metroFTAFileTypes: [] 568 | metroProtocolName: 569 | metroCompilationOverrides: 1 570 | XboxOneProductId: 571 | XboxOneUpdateKey: 572 | XboxOneSandboxId: 573 | XboxOneContentId: 574 | XboxOneTitleId: 575 | XboxOneSCId: 576 | XboxOneGameOsOverridePath: 577 | XboxOnePackagingOverridePath: 578 | XboxOneAppManifestOverridePath: 579 | XboxOneVersion: 1.0.0.0 580 | XboxOnePackageEncryption: 0 581 | XboxOnePackageUpdateGranularity: 2 582 | XboxOneDescription: 583 | XboxOneLanguage: 584 | - enus 585 | XboxOneCapability: [] 586 | XboxOneGameRating: {} 587 | XboxOneIsContentPackage: 0 588 | XboxOneEnableGPUVariability: 1 589 | XboxOneSockets: {} 590 | XboxOneSplashScreen: {fileID: 0} 591 | XboxOneAllowedProductIds: [] 592 | XboxOnePersistentLocalStorageSize: 0 593 | XboxOneXTitleMemory: 8 594 | xboxOneScriptCompiler: 1 595 | XboxOneOverrideIdentityName: 596 | vrEditorSettings: 597 | daydream: 598 | daydreamIconForeground: {fileID: 0} 599 | daydreamIconBackground: {fileID: 0} 600 | cloudServicesEnabled: 601 | UNet: 1 602 | luminIcon: 603 | m_Name: 604 | m_ModelFolderPath: 605 | m_PortalFolderPath: 606 | luminCert: 607 | m_CertPath: 608 | m_PrivateKeyPath: 609 | luminIsChannelApp: 0 610 | luminVersion: 611 | m_VersionCode: 1 612 | m_VersionName: 613 | facebookSdkVersion: 7.9.4 614 | facebookAppId: 615 | facebookCookies: 1 616 | facebookLogging: 1 617 | facebookStatus: 1 618 | facebookXfbml: 0 619 | facebookFrictionlessRequests: 1 620 | apiCompatibilityLevel: 6 621 | cloudProjectId: 6587487f-3a99-41be-bc3a-3ec5d7bb0756 622 | framebufferDepthMemorylessMode: 0 623 | projectName: UnityCartoonLine 624 | organizationId: l-lee 625 | cloudEnabled: 0 626 | enableNativePlatformBackendsForNewInputSystem: 0 627 | disableOldInputManagerSupport: 0 628 | legacyClampBlendShapeWeights: 0 629 | -------------------------------------------------------------------------------- /ProjectSettings/ProjectVersion.txt: -------------------------------------------------------------------------------- 1 | m_EditorVersion: 2018.4.8f1 2 | -------------------------------------------------------------------------------- /ProjectSettings/QualitySettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!47 &1 4 | QualitySettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 5 7 | m_CurrentQuality: 4 8 | m_QualitySettings: 9 | - serializedVersion: 2 10 | name: Very Low 11 | pixelLightCount: 0 12 | shadows: 0 13 | shadowResolution: 0 14 | shadowProjection: 1 15 | shadowCascades: 1 16 | shadowDistance: 15 17 | shadowNearPlaneOffset: 3 18 | shadowCascade2Split: 0.33333334 19 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 20 | shadowmaskMode: 0 21 | blendWeights: 1 22 | textureQuality: 1 23 | anisotropicTextures: 0 24 | antiAliasing: 0 25 | softParticles: 0 26 | softVegetation: 0 27 | realtimeReflectionProbes: 0 28 | billboardsFaceCameraPosition: 0 29 | vSyncCount: 0 30 | lodBias: 0.3 31 | maximumLODLevel: 0 32 | particleRaycastBudget: 4 33 | asyncUploadTimeSlice: 2 34 | asyncUploadBufferSize: 16 35 | resolutionScalingFixedDPIFactor: 1 36 | excludedTargetPlatforms: [] 37 | - serializedVersion: 2 38 | name: Low 39 | pixelLightCount: 0 40 | shadows: 0 41 | shadowResolution: 0 42 | shadowProjection: 1 43 | shadowCascades: 1 44 | shadowDistance: 20 45 | shadowNearPlaneOffset: 3 46 | shadowCascade2Split: 0.33333334 47 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 48 | shadowmaskMode: 0 49 | blendWeights: 2 50 | textureQuality: 0 51 | anisotropicTextures: 0 52 | antiAliasing: 0 53 | softParticles: 0 54 | softVegetation: 0 55 | realtimeReflectionProbes: 0 56 | billboardsFaceCameraPosition: 0 57 | vSyncCount: 0 58 | lodBias: 0.4 59 | maximumLODLevel: 0 60 | particleRaycastBudget: 16 61 | asyncUploadTimeSlice: 2 62 | asyncUploadBufferSize: 16 63 | resolutionScalingFixedDPIFactor: 1 64 | excludedTargetPlatforms: [] 65 | - serializedVersion: 2 66 | name: Medium 67 | pixelLightCount: 1 68 | shadows: 1 69 | shadowResolution: 0 70 | shadowProjection: 1 71 | shadowCascades: 1 72 | shadowDistance: 20 73 | shadowNearPlaneOffset: 3 74 | shadowCascade2Split: 0.33333334 75 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 76 | shadowmaskMode: 0 77 | blendWeights: 2 78 | textureQuality: 0 79 | anisotropicTextures: 1 80 | antiAliasing: 0 81 | softParticles: 0 82 | softVegetation: 0 83 | realtimeReflectionProbes: 0 84 | billboardsFaceCameraPosition: 0 85 | vSyncCount: 1 86 | lodBias: 0.7 87 | maximumLODLevel: 0 88 | particleRaycastBudget: 64 89 | asyncUploadTimeSlice: 2 90 | asyncUploadBufferSize: 16 91 | resolutionScalingFixedDPIFactor: 1 92 | excludedTargetPlatforms: [] 93 | - serializedVersion: 2 94 | name: High 95 | pixelLightCount: 2 96 | shadows: 2 97 | shadowResolution: 1 98 | shadowProjection: 1 99 | shadowCascades: 2 100 | shadowDistance: 40 101 | shadowNearPlaneOffset: 3 102 | shadowCascade2Split: 0.33333334 103 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 104 | shadowmaskMode: 1 105 | blendWeights: 2 106 | textureQuality: 0 107 | anisotropicTextures: 1 108 | antiAliasing: 2 109 | softParticles: 0 110 | softVegetation: 1 111 | realtimeReflectionProbes: 1 112 | billboardsFaceCameraPosition: 1 113 | vSyncCount: 1 114 | lodBias: 1 115 | maximumLODLevel: 0 116 | particleRaycastBudget: 256 117 | asyncUploadTimeSlice: 2 118 | asyncUploadBufferSize: 16 119 | resolutionScalingFixedDPIFactor: 1 120 | excludedTargetPlatforms: [] 121 | - serializedVersion: 2 122 | name: Very High 123 | pixelLightCount: 3 124 | shadows: 2 125 | shadowResolution: 2 126 | shadowProjection: 1 127 | shadowCascades: 2 128 | shadowDistance: 40 129 | shadowNearPlaneOffset: 3 130 | shadowCascade2Split: 0.33333334 131 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 132 | shadowmaskMode: 1 133 | blendWeights: 4 134 | textureQuality: 0 135 | anisotropicTextures: 1 136 | antiAliasing: 4 137 | softParticles: 1 138 | softVegetation: 1 139 | realtimeReflectionProbes: 1 140 | billboardsFaceCameraPosition: 1 141 | vSyncCount: 1 142 | lodBias: 1.5 143 | maximumLODLevel: 0 144 | particleRaycastBudget: 1024 145 | asyncUploadTimeSlice: 2 146 | asyncUploadBufferSize: 16 147 | resolutionScalingFixedDPIFactor: 1 148 | excludedTargetPlatforms: [] 149 | - serializedVersion: 2 150 | name: Ultra 151 | pixelLightCount: 4 152 | shadows: 2 153 | shadowResolution: 2 154 | shadowProjection: 1 155 | shadowCascades: 4 156 | shadowDistance: 150 157 | shadowNearPlaneOffset: 3 158 | shadowCascade2Split: 0.33333334 159 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 160 | shadowmaskMode: 1 161 | blendWeights: 4 162 | textureQuality: 0 163 | anisotropicTextures: 1 164 | antiAliasing: 4 165 | softParticles: 1 166 | softVegetation: 1 167 | realtimeReflectionProbes: 1 168 | billboardsFaceCameraPosition: 1 169 | vSyncCount: 1 170 | lodBias: 2 171 | maximumLODLevel: 0 172 | particleRaycastBudget: 4096 173 | asyncUploadTimeSlice: 2 174 | asyncUploadBufferSize: 16 175 | resolutionScalingFixedDPIFactor: 1 176 | excludedTargetPlatforms: [] 177 | m_PerPlatformDefaultQuality: 178 | Android: 2 179 | Nintendo 3DS: 5 180 | Nintendo Switch: 5 181 | PS4: 5 182 | PSP2: 2 183 | Standalone: 5 184 | Tizen: 2 185 | WebGL: 3 186 | WiiU: 5 187 | Windows Store Apps: 5 188 | XboxOne: 5 189 | iPhone: 2 190 | tvOS: 2 191 | -------------------------------------------------------------------------------- /ProjectSettings/TagManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!78 &1 4 | TagManager: 5 | serializedVersion: 2 6 | tags: [] 7 | layers: 8 | - Default 9 | - TransparentFX 10 | - Ignore Raycast 11 | - 12 | - Water 13 | - UI 14 | - 15 | - 16 | - PostProcessing 17 | - 18 | - 19 | - 20 | - 21 | - 22 | - 23 | - 24 | - 25 | - 26 | - 27 | - 28 | - 29 | - 30 | - 31 | - 32 | - 33 | - 34 | - 35 | - 36 | - 37 | - 38 | - 39 | - 40 | m_SortingLayers: 41 | - name: Default 42 | uniqueID: 0 43 | locked: 0 44 | -------------------------------------------------------------------------------- /ProjectSettings/TimeManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!5 &1 4 | TimeManager: 5 | m_ObjectHideFlags: 0 6 | Fixed Timestep: 0.02 7 | Maximum Allowed Timestep: 0.1 8 | m_TimeScale: 1 9 | Maximum Particle Timestep: 0.03 10 | -------------------------------------------------------------------------------- /ProjectSettings/UnityConnectSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!310 &1 4 | UnityConnectSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 1 7 | m_Enabled: 0 8 | m_TestMode: 0 9 | m_EventOldUrl: https://api.uca.cloud.unity3d.com/v1/events 10 | m_EventUrl: https://cdp.cloud.unity3d.com/v1/events 11 | m_ConfigUrl: https://config.uca.cloud.unity3d.com 12 | m_TestInitMode: 0 13 | CrashReportingSettings: 14 | m_EventUrl: https://perf-events.cloud.unity3d.com 15 | m_Enabled: 0 16 | m_LogBufferSize: 10 17 | m_CaptureEditorExceptions: 1 18 | UnityPurchasingSettings: 19 | m_Enabled: 0 20 | m_TestMode: 0 21 | UnityAnalyticsSettings: 22 | m_Enabled: 1 23 | m_TestMode: 0 24 | m_InitializeOnStartup: 1 25 | UnityAdsSettings: 26 | m_Enabled: 0 27 | m_InitializeOnStartup: 1 28 | m_TestMode: 0 29 | m_IosGameId: 30 | m_AndroidGameId: 31 | m_GameIds: {} 32 | m_GameId: 33 | PerformanceReportingSettings: 34 | m_Enabled: 0 35 | -------------------------------------------------------------------------------- /ProjectSettings/VFXManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!937362698 &1 4 | VFXManager: 5 | m_ObjectHideFlags: 0 6 | m_IndirectShader: {fileID: 0} 7 | m_CopyBufferShader: {fileID: 0} 8 | m_SortShader: {fileID: 0} 9 | m_RenderPipeSettingsPath: 10 | m_FixedTimeStep: 0.016666668 11 | m_MaxDeltaTime: 0.05 12 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # UnitySimpleCartoonLine 2 | 代码整理版本在[这里](https://github.com/L-LingRen/ToonMeshLine) 3 | 使用模型网格生成的卡通描边 4 | 代码有点乱,有些地方写得可能有点小错误,优化也没做到位,但效果是没错的,请自行整理。 5 | 请不要直接用到项目中,仅作为demo提供参考,后果自负。 6 | 使用方法:双击SampleScene场景,点击运行即可。 7 | 实时描边的原理:在[这里](https://www.cnblogs.com/lht666/p/11447199.html) 8 | 控制线条粗细的原理:在[这里](https://www.cnblogs.com/lht666/p/12013323.html) 9 | > ![img](demo.png) 10 | > ![img](preview.gif) 11 | > ![img](preview2.gif) 12 | -------------------------------------------------------------------------------- /UnityCartoonLine.sln: -------------------------------------------------------------------------------- 1 |  2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | # Visual Studio 16 4 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Assembly-CSharp", "Assembly-CSharp.csproj", "{3483C430-35FA-263D-7082-568443BD1879}" 5 | EndProject 6 | Global 7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 8 | Debug|Any CPU = Debug|Any CPU 9 | Release|Any CPU = Release|Any CPU 10 | EndGlobalSection 11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 12 | {3483C430-35FA-263D-7082-568443BD1879}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 13 | {3483C430-35FA-263D-7082-568443BD1879}.Debug|Any CPU.Build.0 = Debug|Any CPU 14 | {3483C430-35FA-263D-7082-568443BD1879}.Release|Any CPU.ActiveCfg = Release|Any CPU 15 | {3483C430-35FA-263D-7082-568443BD1879}.Release|Any CPU.Build.0 = Release|Any CPU 16 | EndGlobalSection 17 | GlobalSection(SolutionProperties) = preSolution 18 | HideSolutionNode = FALSE 19 | EndGlobalSection 20 | GlobalSection(MonoDevelopProperties) = preSolution 21 | StartupItem = Assembly-CSharp.csproj 22 | EndGlobalSection 23 | EndGlobal 24 | -------------------------------------------------------------------------------- /demo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/L-LingRen/UnitySimpleCartoonLine/6b88b6672da15e5a653e26fdf5aea84670223382/demo.png -------------------------------------------------------------------------------- /preview.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/L-LingRen/UnitySimpleCartoonLine/6b88b6672da15e5a653e26fdf5aea84670223382/preview.gif -------------------------------------------------------------------------------- /preview2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/L-LingRen/UnitySimpleCartoonLine/6b88b6672da15e5a653e26fdf5aea84670223382/preview2.gif --------------------------------------------------------------------------------