summaryrefslogtreecommitdiff
path: root/Library/Artifacts/04/04426e5f1d9f70f2a34fd2d4f969be49
blob: 0b87e7d1d35dddb9a627ab040a6a8cdd916d0fbe (plain)
ofshex dumpascii
0000 00 00 0f 81 00 00 98 c0 00 00 00 15 00 00 10 00 00 00 00 00 32 30 31 39 2e 33 2e 36 66 31 00 fe ....................2019.3.6f1..
0020 ff ff ff 01 02 00 00 00 0b 04 00 00 00 ff ff 66 9a 86 21 eb 14 35 98 39 dd 34 1d 51 0e c1 f3 42 ...............f..!..5.9.4.Q...B
0040 00 00 00 ed 00 00 00 02 00 00 00 00 00 00 00 37 00 00 80 ff ff ff ff 00 00 00 00 00 80 00 00 00 ...............7................
0060 00 00 00 00 00 00 00 01 00 01 00 a6 03 00 80 b2 01 00 80 04 00 00 00 01 00 00 00 01 00 00 00 00 ................................
0080 00 00 00 00 00 00 00 01 00 01 00 0d 00 00 00 45 04 00 80 0c 00 00 00 02 00 00 00 01 00 00 00 00 ...............E................
00a0 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 23 00 00 00 04 00 00 00 03 00 00 00 01 00 80 00 00 ...............#................
00c0 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 2c 00 00 00 08 00 00 00 04 00 00 00 01 00 80 00 00 ...............,................
00e0 00 00 00 00 00 00 00 01 00 01 00 35 00 00 00 61 04 00 80 0c 00 00 00 05 00 00 00 01 00 00 00 00 ...........5...a................
0100 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 23 00 00 00 04 00 00 00 06 00 00 00 01 00 80 00 00 ...............#................
0120 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 2c 00 00 00 08 00 00 00 07 00 00 00 01 00 80 00 00 ...............,................
0140 00 00 00 00 00 00 00 01 00 01 00 86 02 00 80 72 04 00 80 0c 00 00 00 08 00 00 00 01 00 00 00 00 ...............r................
0160 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 23 00 00 00 04 00 00 00 09 00 00 00 01 00 80 00 00 ...............#................
0180 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 2c 00 00 00 08 00 00 00 0a 00 00 00 01 00 80 00 00 ...............,................
01a0 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 ab 01 00 80 ff ff ff ff 0b 00 00 00 01 80 08 00 00 ...........H....................
01c0 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 0c 00 00 00 01 40 08 00 00 ...........1...1............@...
01e0 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 0d 00 00 00 01 00 08 00 00 ................................
0200 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a 00 00 80 01 00 00 00 0e 00 00 00 01 00 08 00 00 ...........Q...j................
0220 00 00 00 00 00 00 00 01 00 01 00 f1 00 00 80 4a 00 00 00 ff ff ff ff 0f 00 00 00 00 c0 00 00 00 ...............J................
0240 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 10 00 00 00 00 80 00 00 00 ...........1...1................
0260 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 11 00 00 00 00 00 00 00 00 ................................
0280 00 00 00 00 00 00 00 01 00 03 00 1f 02 00 80 6a 00 00 80 ff ff ff ff 12 00 00 00 00 80 00 00 00 ...............j................
02a0 00 00 00 00 00 00 00 01 00 04 00 5c 00 00 00 9b 00 00 80 ff ff ff ff 13 00 00 00 00 80 00 00 00 ...........\....................
02c0 00 00 00 00 00 00 00 01 00 05 00 48 03 00 80 72 00 00 00 ff ff ff ff 14 00 00 00 00 80 00 00 00 ...........H...r................
02e0 00 00 00 00 00 00 00 01 00 06 01 31 00 00 80 31 00 00 80 ff ff ff ff 15 00 00 00 01 40 00 00 00 ...........1...1............@...
0300 00 00 00 00 00 00 00 01 00 07 00 de 00 00 80 1b 03 00 80 04 00 00 00 16 00 00 00 01 00 00 00 00 ................................
0320 00 00 00 00 00 00 00 01 00 07 00 51 00 00 80 6a 00 00 80 01 00 00 00 17 00 00 00 01 00 00 00 00 ...........Q...j................
0340 00 00 00 00 00 00 00 01 00 05 00 48 03 00 80 77 00 00 00 ff ff ff ff 18 00 00 00 00 80 00 00 00 ...........H...w................
0360 00 00 00 00 00 00 00 01 00 06 01 31 00 00 80 31 00 00 80 ff ff ff ff 19 00 00 00 01 40 00 00 00 ...........1...1............@...
0380 00 00 00 00 00 00 00 01 00 07 00 de 00 00 80 1b 03 00 80 04 00 00 00 1a 00 00 00 01 00 00 00 00 ................................
03a0 00 00 00 00 00 00 00 01 00 07 00 51 00 00 80 6a 00 00 80 01 00 00 00 1b 00 00 00 01 00 00 00 00 ...........Q...j................
03c0 00 00 00 00 00 00 00 01 00 05 00 48 03 00 80 80 00 00 00 ff ff ff ff 1c 00 00 00 00 80 00 00 00 ...........H....................
03e0 00 00 00 00 00 00 00 01 00 06 01 31 00 00 80 31 00 00 80 ff ff ff ff 1d 00 00 00 01 40 00 00 00 ...........1...1............@...
0400 00 00 00 00 00 00 00 01 00 07 00 de 00 00 80 1b 03 00 80 04 00 00 00 1e 00 00 00 01 00 00 00 00 ................................
0420 00 00 00 00 00 00 00 01 00 07 00 51 00 00 80 6a 00 00 80 01 00 00 00 1f 00 00 00 01 00 00 00 00 ...........Q...j................
0440 00 00 00 00 00 00 00 01 00 04 00 79 02 00 80 0a 03 00 80 0c 00 00 00 20 00 00 00 00 00 00 00 00 ...........y....................
0460 00 00 00 00 00 00 00 01 00 05 00 de 00 00 80 23 00 00 00 04 00 00 00 21 00 00 00 01 00 80 00 00 ...............#.......!........
0480 00 00 00 00 00 00 00 01 00 05 00 2e 03 00 80 2c 00 00 00 08 00 00 00 22 00 00 00 01 00 80 00 00 ...............,......."........
04a0 00 00 00 00 00 00 00 01 00 01 00 11 03 00 80 85 00 00 00 ff ff ff ff 23 00 00 00 01 40 08 00 00 .......................#....@...
04c0 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 24 00 00 00 01 00 08 00 00 ...........1...1.......$........
04e0 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 25 00 00 00 01 00 08 00 00 .......................%........
0500 00 00 00 00 00 00 00 01 00 03 00 2e 03 00 80 6a 00 00 80 08 00 00 00 26 00 00 00 01 00 08 00 00 ...............j.......&........
0520 00 00 00 00 00 00 00 01 00 01 00 d5 03 00 80 93 00 00 00 ff ff ff ff 27 00 00 00 00 80 00 00 00 .......................'........
0540 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 28 00 00 00 00 c0 00 00 00 ...........1...1.......(........
0560 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 29 00 00 00 00 00 00 00 00 .......................)........
0580 00 00 00 00 00 00 00 01 00 03 00 1f 02 00 80 6a 00 00 80 ff ff ff ff 2a 00 00 00 00 80 00 00 00 ...............j.......*........
05a0 00 00 00 00 00 00 00 01 00 04 00 48 03 00 80 9b 00 00 80 ff ff ff ff 2b 00 00 00 00 80 00 00 00 ...........H...........+........
05c0 00 00 00 00 00 00 00 01 00 05 01 31 00 00 80 31 00 00 80 ff ff ff ff 2c 00 00 00 01 40 00 00 00 ...........1...1.......,....@...
05e0 00 00 00 00 00 00 00 01 00 06 00 de 00 00 80 1b 03 00 80 04 00 00 00 2d 00 00 00 01 00 00 00 00 .......................-........
0600 00 00 00 00 00 00 00 01 00 06 00 51 00 00 80 6a 00 00 80 01 00 00 00 2e 00 00 00 01 00 00 00 00 ...........Q...j................
0620 00 00 00 00 00 00 00 01 00 04 00 79 02 00 80 0a 03 00 80 0c 00 00 00 2f 00 00 00 00 00 00 00 00 ...........y.........../........
0640 00 00 00 00 00 00 00 01 00 05 00 de 00 00 80 23 00 00 00 04 00 00 00 30 00 00 00 01 00 80 00 00 ...............#.......0........
0660 00 00 00 00 00 00 00 01 00 05 00 2e 03 00 80 2c 00 00 00 08 00 00 00 31 00 00 00 01 00 80 00 00 ...............,.......1........
0680 00 00 00 00 00 00 00 01 00 01 00 20 03 00 80 a7 00 00 00 02 00 00 00 32 00 00 00 00 40 00 00 00 .......................2....@...
06a0 00 00 00 00 00 00 00 01 00 01 00 be 02 00 80 b6 00 00 00 0c 00 00 00 33 00 00 00 00 40 00 00 00 .......................3....@...
06c0 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 23 00 00 00 04 00 00 00 34 00 00 00 01 00 80 00 00 ...............#.......4........
06e0 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 2c 00 00 00 08 00 00 00 35 00 00 00 01 00 80 00 00 ...............,.......5........
0700 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 bb 00 00 00 ff ff ff ff 36 00 00 00 01 80 00 00 00 ...........H...........6........
0720 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 37 00 00 00 01 40 00 00 00 ...........1...1.......7....@...
0740 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 38 00 00 00 01 00 00 00 00 .......................8........
0760 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a 00 00 80 01 00 00 00 39 00 00 00 01 00 00 00 00 ...........Q...j.......9........
0780 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 c6 00 00 00 ff ff ff ff 3a 00 00 00 01 80 00 00 00 ...........H...........:........
07a0 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 3b 00 00 00 01 40 00 00 00 ...........1...1.......;....@...
07c0 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 3c 00 00 00 01 00 00 00 00 .......................<........
07e0 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a 00 00 80 01 00 00 00 3d 00 00 00 01 00 00 00 00 ...........Q...j.......=........
0800 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 d8 00 00 00 ff ff ff ff 3e 00 00 00 01 80 00 00 00 ...........H...........>........
0820 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 3f 00 00 00 01 40 00 00 00 ...........1...1.......?....@...
0840 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 40 00 00 00 01 00 00 00 00 .......................@........
0860 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a 00 00 80 01 00 00 00 41 00 00 00 01 00 00 00 00 ...........Q...j.......A........
0880 00 00 00 00 00 00 00 4d 6f 6e 6f 49 6d 70 6f 72 74 65 72 00 50 50 74 72 3c 45 64 69 74 6f 72 45 .......MonoImporter.PPtr<EditorE
08a0 78 74 65 6e 73 69 6f 6e 3e 00 6d 5f 46 69 6c 65 49 44 00 6d 5f 50 61 74 68 49 44 00 50 50 74 72 xtension>.m_FileID.m_PathID.PPtr
08c0 3c 50 72 65 66 61 62 49 6e 73 74 61 6e 63 65 3e 00 6d 5f 45 78 74 65 72 6e 61 6c 4f 62 6a 65 63 <PrefabInstance>.m_ExternalObjec
08e0 74 73 00 53 6f 75 72 63 65 41 73 73 65 74 49 64 65 6e 74 69 66 69 65 72 00 74 79 70 65 00 61 73 ts.SourceAssetIdentifier.type.as
0900 73 65 6d 62 6c 79 00 6e 61 6d 65 00 6d 5f 55 73 65 64 46 69 6c 65 49 44 73 00 6d 5f 44 65 66 61 sembly.name.m_UsedFileIDs.m_Defa
0920 75 6c 74 52 65 66 65 72 65 6e 63 65 73 00 65 78 65 63 75 74 69 6f 6e 4f 72 64 65 72 00 69 63 6f ultReferences.executionOrder.ico
0940 6e 00 6d 5f 55 73 65 72 44 61 74 61 00 6d 5f 41 73 73 65 74 42 75 6e 64 6c 65 4e 61 6d 65 00 6d n.m_UserData.m_AssetBundleName.m
0960 5f 41 73 73 65 74 42 75 6e 64 6c 65 56 61 72 69 61 6e 74 00 00 00 00 00 73 00 00 00 00 ff ff a3 _AssetBundleVariant.....s.......
0980 47 f1 d7 dc 8f 5a 35 36 a0 3a 21 40 69 c1 4a 2a 00 00 00 81 00 00 00 05 00 00 00 15 01 00 80 37 G....Z56.:!@i.J*...............7
09a0 00 00 80 ff ff ff ff 00 00 00 00 00 80 00 00 00 00 00 00 00 00 00 00 01 00 01 00 a6 03 00 80 b2 ................................
09c0 01 00 80 04 00 00 00 01 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 01 00 00 00 00 00 45 ...............................E
09e0 04 00 80 0c 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 16 ................................
0a00 00 00 00 04 00 00 00 03 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 1f ................................
0a20 00 00 00 08 00 00 00 04 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 28 00 00 00 61 ...........................(...a
0a40 04 00 80 0c 00 00 00 05 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 16 ................................
0a60 00 00 00 04 00 00 00 06 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 1f ................................
0a80 00 00 00 08 00 00 00 07 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 86 02 00 80 72 ...............................r
0aa0 04 00 80 0c 00 00 00 08 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 16 ................................
0ac0 00 00 00 04 00 00 00 09 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 1f ................................
0ae0 00 00 00 08 00 00 00 0a 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 ab ...........................H....
0b00 01 00 80 ff ff ff ff 0b 00 00 00 01 80 08 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 ...........................1...1
0b20 00 00 80 ff ff ff ff 0c 00 00 00 01 40 08 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b ............@...................
0b40 03 00 80 04 00 00 00 0d 00 00 00 01 00 08 00 00 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a ...........................Q...j
0b60 00 00 80 01 00 00 00 0e 00 00 00 01 00 08 00 00 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 ea ...........................H....
0b80 01 00 80 ff ff ff ff 0f 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 ...........................1...1
0ba0 00 00 80 ff ff ff ff 10 00 00 00 01 40 00 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b ............@...................
0bc0 03 00 80 04 00 00 00 11 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a ...........................Q...j
0be0 00 00 80 01 00 00 00 12 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 01 00 f1 00 00 80 3d ...............................=
0c00 00 00 00 ff ff ff ff 13 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 ...........................1...1
0c20 00 00 80 ff ff ff ff 14 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b ................................
0c40 03 00 80 04 00 00 00 15 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 03 00 1f 02 00 80 6a ...............................j
0c60 00 00 80 ff ff ff ff 16 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 04 00 48 03 00 80 9b ...........................H....
0c80 00 00 80 ff ff ff ff 17 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 05 01 31 00 00 80 31 ...........................1...1
0ca0 00 00 80 ff ff ff ff 18 00 00 00 01 40 00 00 00 00 00 00 00 00 00 00 01 00 06 00 de 00 00 80 1b ............@...................
0cc0 03 00 80 04 00 00 00 19 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 06 00 51 00 00 80 6a ...........................Q...j
0ce0 00 00 80 01 00 00 00 1a 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 04 00 79 02 00 80 0a ...........................y....
0d00 03 00 80 0c 00 00 00 1b 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 05 00 de 00 00 80 16 ................................
0d20 00 00 00 04 00 00 00 1c 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 05 00 2e 03 00 80 1f ................................
0d40 00 00 00 08 00 00 00 1d 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 79 02 00 80 51 ...........................y...Q
0d60 00 00 00 0c 00 00 00 1e 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 16 ................................
0d80 00 00 00 04 00 00 00 1f 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 1f ................................
0da0 00 00 00 08 00 00 00 20 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 de 00 00 80 58 ...............................X
0dc0 00 00 00 04 00 00 00 21 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 69 .......!...................H...i
0de0 00 00 00 ff ff ff ff 22 00 00 00 10 80 00 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 ......."...................1...1
0e00 00 00 80 ff ff ff ff 23 00 00 00 11 40 00 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b .......#....@...................
0e20 03 00 80 04 00 00 00 24 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a .......$...................Q...j
0e40 00 00 80 01 00 00 00 25 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 75 .......%...................H...u
0e60 00 00 00 ff ff ff ff 26 00 00 00 10 80 00 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 .......&...................1...1
0e80 00 00 80 ff ff ff ff 27 00 00 00 11 40 00 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b .......'....@...................
0ea0 03 00 80 04 00 00 00 28 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a .......(...................Q...j
0ec0 00 00 80 01 00 00 00 29 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 50 50 74 72 3c 45 64 69 74 .......)...............PPtr<Edit
0ee0 6f 72 45 78 74 65 6e 73 69 6f 6e 3e 00 6d 5f 46 69 6c 65 49 44 00 6d 5f 50 61 74 68 49 44 00 50 orExtension>.m_FileID.m_PathID.P
0f00 50 74 72 3c 50 72 65 66 61 62 49 6e 73 74 61 6e 63 65 3e 00 6d 5f 44 65 66 61 75 6c 74 52 65 66 Ptr<PrefabInstance>.m_DefaultRef
0f20 65 72 65 6e 63 65 73 00 6d 5f 49 63 6f 6e 00 6d 5f 45 78 65 63 75 74 69 6f 6e 4f 72 64 65 72 00 erences.m_Icon.m_ExecutionOrder.
0f40 6d 5f 43 6c 61 73 73 4e 61 6d 65 00 6d 5f 4e 61 6d 65 73 70 61 63 65 00 00 00 00 00 02 00 00 00 m_ClassName.m_Namespace.........
0f60 03 00 00 00 00 00 00 00 00 00 00 00 5c 00 00 00 00 00 00 00 e0 79 af 00 00 00 00 00 60 00 00 00 ............\........y......`...
0f80 60 88 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 `...............................
0fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 e0 79 af 00 00 00 00 00 00 00 00 00 .....................y..........
1040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1080 00 00 00 00 00 00 00 00 1f 00 00 00 54 69 6d 65 6c 69 6e 65 52 65 63 6f 72 64 69 6e 67 5f 4d 6f ............TimelineRecording_Mo
10a0 6e 6f 62 65 68 61 76 69 6f 75 72 00 d3 87 00 00 75 73 69 6e 67 20 53 79 73 74 65 6d 2e 43 6f 6c nobehaviour.....using.System.Col
10c0 6c 65 63 74 69 6f 6e 73 2e 47 65 6e 65 72 69 63 3b 0a 75 73 69 6e 67 20 53 79 73 74 65 6d 2e 4c lections.Generic;.using.System.L
10e0 69 6e 71 3b 0a 75 73 69 6e 67 20 55 6e 69 74 79 45 64 69 74 6f 72 49 6e 74 65 72 6e 61 6c 3b 0a inq;.using.UnityEditorInternal;.
1100 75 73 69 6e 67 20 55 6e 69 74 79 45 6e 67 69 6e 65 3b 0a 75 73 69 6e 67 20 55 6e 69 74 79 45 6e using.UnityEngine;.using.UnityEn
1120 67 69 6e 65 2e 54 69 6d 65 6c 69 6e 65 3b 0a 75 73 69 6e 67 20 53 79 73 74 65 6d 2e 47 6c 6f 62 gine.Timeline;.using.System.Glob
1140 61 6c 69 7a 61 74 69 6f 6e 3b 0a 0a 6e 61 6d 65 73 70 61 63 65 20 55 6e 69 74 79 45 64 69 74 6f alization;..namespace.UnityEdito
1160 72 2e 54 69 6d 65 6c 69 6e 65 0a 7b 0a 20 20 20 20 2f 2f 20 4d 65 74 68 6f 64 73 20 61 6e 64 20 r.Timeline.{.....//.Methods.and.
1180 64 61 74 61 20 66 6f 72 20 68 61 6e 64 6c 69 6e 67 20 72 65 63 6f 72 64 69 6e 67 20 74 6f 20 6d data.for.handling.recording.to.m
11a0 6f 6e 6f 62 65 68 61 76 69 6f 75 72 73 0a 20 20 20 20 73 74 61 74 69 63 20 70 61 72 74 69 61 6c onobehaviours.....static.partial
11c0 20 63 6c 61 73 73 20 54 69 6d 65 6c 69 6e 65 52 65 63 6f 72 64 69 6e 67 0a 20 20 20 20 7b 0a 20 .class.TimelineRecording.....{..
11e0 20 20 20 20 20 20 20 69 6e 74 65 72 6e 61 6c 20 63 6c 61 73 73 20 52 65 63 6f 72 64 69 6e 67 53 .......internal.class.RecordingS
1200 74 61 74 65 20 3a 20 49 41 6e 69 6d 61 74 69 6f 6e 52 65 63 6f 72 64 69 6e 67 53 74 61 74 65 0a tate.:.IAnimationRecordingState.
1220 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 47 61 6d ........{.............public.Gam
1240 65 4f 62 6a 65 63 74 20 61 63 74 69 76 65 47 61 6d 65 4f 62 6a 65 63 74 20 7b 20 67 65 74 3b 20 eObject.activeGameObject.{.get;.
1260 73 65 74 3b 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 47 61 6d 65 4f 62 set;.}.............public.GameOb
1280 6a 65 63 74 20 61 63 74 69 76 65 52 6f 6f 74 47 61 6d 65 4f 62 6a 65 63 74 20 7b 20 67 65 74 3b ject.activeRootGameObject.{.get;
12a0 20 73 65 74 3b 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 41 6e 69 6d 61 .set;.}.............public.Anima
12c0 74 69 6f 6e 43 6c 69 70 20 61 63 74 69 76 65 41 6e 69 6d 61 74 69 6f 6e 43 6c 69 70 20 7b 20 67 tionClip.activeAnimationClip.{.g
12e0 65 74 3b 20 73 65 74 3b 20 7d 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 76 et;.set;.}..............public.v
1300 6f 69 64 20 53 61 76 65 43 75 72 76 65 28 41 6e 69 6d 61 74 69 6f 6e 57 69 6e 64 6f 77 43 75 72 oid.SaveCurve(AnimationWindowCur
1320 76 65 20 63 75 72 76 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 ve.curve).............{.........
1340 20 20 20 20 20 20 20 20 55 6e 64 6f 2e 52 65 67 69 73 74 65 72 43 6f 6d 70 6c 65 74 65 4f 62 6a ........Undo.RegisterCompleteObj
1360 65 63 74 55 6e 64 6f 28 61 63 74 69 76 65 41 6e 69 6d 61 74 69 6f 6e 43 6c 69 70 2c 20 22 45 64 ectUndo(activeAnimationClip,."Ed
1380 69 74 20 43 75 72 76 65 22 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 6e 69 6d it.Curve");.................Anim
13a0 61 74 69 6f 6e 57 69 6e 64 6f 77 55 74 69 6c 69 74 79 2e 53 61 76 65 43 75 72 76 65 28 61 63 74 ationWindowUtility.SaveCurve(act
13c0 69 76 65 41 6e 69 6d 61 74 69 6f 6e 43 6c 69 70 2c 20 63 75 72 76 65 29 3b 0a 20 20 20 20 20 20 iveAnimationClip,.curve);.......
13e0 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 76 6f 69 64 ......}..............public.void
1400 20 41 64 64 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 69 63 61 74 69 6f 6e 28 45 64 69 74 6f 72 43 .AddPropertyModification(EditorC
1420 75 72 76 65 42 69 6e 64 69 6e 67 20 62 69 6e 64 69 6e 67 2c 20 50 72 6f 70 65 72 74 79 4d 6f 64 urveBinding.binding,.PropertyMod
1440 69 66 69 63 61 74 69 6f 6e 20 70 72 6f 70 65 72 74 79 4d 6f 64 69 66 69 63 61 74 69 6f 6e 2c 20 ification.propertyModification,.
1460 62 6f 6f 6c 20 6b 65 65 70 50 72 65 66 61 62 4f 76 65 72 72 69 64 65 29 0a 20 20 20 20 20 20 20 bool.keepPrefabOverride)........
1480 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 6e 69 6d 61 74 69 6f 6e .....{.................Animation
14a0 4d 6f 64 65 2e 41 64 64 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 69 63 61 74 69 6f 6e 28 62 69 6e Mode.AddPropertyModification(bin
14c0 64 69 6e 67 2c 20 70 72 6f 70 65 72 74 79 4d 6f 64 69 66 69 63 61 74 69 6f 6e 2c 20 6b 65 65 70 ding,.propertyModification,.keep
14e0 50 72 65 66 61 62 4f 76 65 72 72 69 64 65 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 0a PrefabOverride);.............}..
1500 20 20 20 20 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 62 6f 6f 6c 20 61 64 64 5a 65 72 6f 46 ............public.bool.addZeroF
1520 72 61 6d 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 rame.............{..............
1540 20 20 20 67 65 74 20 7b 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 20 7d 0a 20 20 20 20 20 20 20 ...get.{.return.false;.}........
1560 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 69 6e 74 20 63 .....}..............public.int.c
1580 75 72 72 65 6e 74 46 72 61 6d 65 20 7b 20 67 65 74 3b 20 73 65 74 3b 20 7d 0a 0a 20 20 20 20 20 urrentFrame.{.get;.set;.}.......
15a0 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 62 6f 6f 6c 20 44 69 73 63 61 72 64 4d 6f 64 69 66 69 .......public.bool.DiscardModifi
15c0 63 61 74 69 6f 6e 28 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 69 63 61 74 69 6f 6e 20 6d 6f 64 69 cation(PropertyModification.modi
15e0 66 69 63 61 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 fication).............{.........
1600 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 20 20 20 20 20 20 20 20 20 20 ........return.false;...........
1620 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 73 74 61 74 69 63 20 72 65 ..}.........}..........static.re
1640 61 64 6f 6e 6c 79 20 52 65 63 6f 72 64 69 6e 67 53 74 61 74 65 20 73 5f 52 65 63 6f 72 64 53 74 adonly.RecordingState.s_RecordSt
1660 61 74 65 20 3d 20 6e 65 77 20 52 65 63 6f 72 64 69 6e 67 53 74 61 74 65 28 29 3b 0a 20 20 20 20 ate.=.new.RecordingState();.....
1680 20 20 20 20 73 74 61 74 69 63 20 72 65 61 64 6f 6e 6c 79 20 41 6e 69 6d 61 74 69 6f 6e 54 72 61 ....static.readonly.AnimationTra
16a0 63 6b 52 65 63 6f 72 64 65 72 20 73 5f 54 72 61 63 6b 52 65 63 6f 72 64 65 72 20 3d 20 6e 65 77 ckRecorder.s_TrackRecorder.=.new
16c0 20 41 6e 69 6d 61 74 69 6f 6e 54 72 61 63 6b 52 65 63 6f 72 64 65 72 28 29 3b 0a 20 20 20 20 20 .AnimationTrackRecorder();......
16e0 20 20 20 73 74 61 74 69 63 20 72 65 61 64 6f 6e 6c 79 20 4c 69 73 74 3c 55 6e 64 6f 50 72 6f 70 ...static.readonly.List<UndoProp
1700 65 72 74 79 4d 6f 64 69 66 69 63 61 74 69 6f 6e 3e 20 73 5f 55 6e 70 72 6f 63 65 73 73 65 64 4d ertyModification>.s_UnprocessedM
1720 6f 64 73 20 3d 20 6e 65 77 20 4c 69 73 74 3c 55 6e 64 6f 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 ods.=.new.List<UndoPropertyModif
1740 69 63 61 74 69 6f 6e 3e 28 29 3b 0a 20 20 20 20 20 20 20 20 73 74 61 74 69 63 20 72 65 61 64 6f ication>();.........static.reado
1760 6e 6c 79 20 4c 69 73 74 3c 55 6e 64 6f 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 69 63 61 74 69 6f nly.List<UndoPropertyModificatio
1780 6e 3e 20 73 5f 4d 6f 64 73 54 6f 50 72 6f 63 65 73 73 20 3d 20 6e 65 77 20 4c 69 73 74 3c 55 6e n>.s_ModsToProcess.=.new.List<Un
17a0 64 6f 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 69 63 61 74 69 6f 6e 3e 28 29 3b 0a 20 20 20 20 20 doPropertyModification>();......
17c0 20 20 20 73 74 61 74 69 63 20 41 6e 69 6d 61 74 69 6f 6e 54 72 61 63 6b 20 73 5f 4c 61 73 74 54 ...static.AnimationTrack.s_LastT
17e0 72 61 63 6b 57 61 72 6e 69 6e 67 3b 0a 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 63 6f 6e rackWarning;..........public.con
1800 73 74 20 73 74 72 69 6e 67 20 6b 4c 6f 63 61 6c 50 6f 73 69 74 69 6f 6e 20 3d 20 22 6d 5f 4c 6f st.string.kLocalPosition.=."m_Lo
1820 63 61 6c 50 6f 73 69 74 69 6f 6e 22 3b 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 63 6f 6e calPosition";.........public.con
1840 73 74 20 73 74 72 69 6e 67 20 6b 4c 6f 63 61 6c 52 6f 74 61 74 69 6f 6e 20 3d 20 22 6d 5f 4c 6f st.string.kLocalRotation.=."m_Lo
1860 63 61 6c 52 6f 74 61 74 69 6f 6e 22 3b 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 63 6f 6e calRotation";.........public.con
1880 73 74 20 73 74 72 69 6e 67 20 6b 4c 6f 63 61 6c 45 75 6c 65 72 48 69 6e 74 20 3d 20 22 6d 5f 4c st.string.kLocalEulerHint.=."m_L
18a0 6f 63 61 6c 45 75 6c 65 72 41 6e 67 6c 65 73 48 69 6e 74 22 3b 0a 20 20 20 20 20 20 20 20 63 6f ocalEulerAnglesHint";.........co
18c0 6e 73 74 20 73 74 72 69 6e 67 20 6b 52 6f 74 61 74 69 6f 6e 57 61 72 6e 69 6e 67 20 3d 20 22 59 nst.string.kRotationWarning.=."Y
18e0 6f 75 20 61 72 65 20 72 65 63 6f 72 64 69 6e 67 20 77 69 74 68 20 61 6e 20 69 6e 69 74 69 61 6c ou.are.recording.with.an.initial
1900 20 72 6f 74 61 74 69 6f 6e 20 6f 66 66 73 65 74 2e 20 54 68 69 73 20 6d 61 79 20 72 65 73 75 6c .rotation.offset..This.may.resul
1920 74 20 69 6e 20 61 20 6d 69 73 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 65 75 6c 65 t.in.a.misrepresentation.of.eule
1940 72 20 61 6e 67 6c 65 73 2e 20 57 68 65 6e 20 72 65 63 6f 72 64 69 6e 67 20 74 72 61 6e 73 66 6f r.angles..When.recording.transfo
1960 72 6d 20 70 72 6f 70 65 72 74 69 65 73 2c 20 69 74 20 69 73 20 72 65 63 6f 6d 6d 65 6e 64 65 64 rm.properties,.it.is.recommended
1980 20 74 6f 20 72 65 73 65 74 20 72 6f 74 61 74 69 6f 6e 20 70 72 69 6f 72 20 74 6f 20 72 65 63 6f .to.reset.rotation.prior.to.reco
19a0 72 64 69 6e 67 22 3b 0a 0a 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 73 74 61 74 69 63 20 rding";...........public.static.
19c0 62 6f 6f 6c 20 49 73 52 65 63 6f 72 64 69 6e 67 41 6e 69 6d 61 74 69 6f 6e 54 72 61 63 6b 20 7b bool.IsRecordingAnimationTrack.{
19e0 20 67 65 74 3b 20 70 72 69 76 61 74 65 20 73 65 74 3b 20 7d 0a 0a 0a 20 20 20 20 20 20 20 20 69 .get;.private.set;.}...........i
1a00 6e 74 65 72 6e 61 6c 20 73 74 61 74 69 63 20 55 6e 64 6f 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 nternal.static.UndoPropertyModif
1a20 69 63 61 74 69 6f 6e 5b 5d 20 50 72 6f 63 65 73 73 4d 6f 6e 6f 42 65 68 61 76 69 6f 75 72 4d 6f ication[].ProcessMonoBehaviourMo
1a40 64 69 66 69 63 61 74 69 6f 6e 28 55 6e 64 6f 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 69 63 61 74 dification(UndoPropertyModificat
1a60 69 6f 6e 5b 5d 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 2c 20 57 69 6e 64 6f 77 53 74 61 74 65 ion[].modifications,.WindowState
1a80 20 73 74 61 74 65 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 .state).........{.............if
1aa0 20 28 73 74 61 74 65 20 3d 3d 20 6e 75 6c 6c 20 7c 7c 20 73 74 61 74 65 2e 65 64 69 74 53 65 71 .(state.==.null.||.state.editSeq
1ac0 75 65 6e 63 65 2e 64 69 72 65 63 74 6f 72 20 3d 3d 20 6e 75 6c 6c 29 0a 20 20 20 20 20 20 20 20 uence.director.==.null).........
1ae0 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 3b 0a 0a 20 ........return.modifications;...
1b00 20 20 20 20 20 20 20 20 20 20 20 73 5f 55 6e 70 72 6f 63 65 73 73 65 64 4d 6f 64 73 2e 43 6c 65 ...........s_UnprocessedMods.Cle
1b20 61 72 28 29 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 5f 54 72 61 63 6b 52 65 63 6f 72 64 ar();..............s_TrackRecord
1b40 65 72 2e 50 72 65 70 61 72 65 46 6f 72 52 65 63 6f 72 64 28 73 74 61 74 65 29 3b 0a 0a 20 20 20 er.PrepareForRecord(state);.....
1b60 20 20 20 20 20 20 20 20 20 73 5f 4d 6f 64 73 54 6f 50 72 6f 63 65 73 73 2e 43 6c 65 61 72 28 29 .........s_ModsToProcess.Clear()
1b80 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 5f 4d 6f 64 73 54 6f 50 72 6f 63 65 73 73 2e 41 64 ;.............s_ModsToProcess.Ad
1ba0 64 52 61 6e 67 65 28 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 2e 52 65 76 65 72 73 65 28 29 29 3b dRange(modifications.Reverse());
1bc0 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 77 68 69 6c 65 20 28 73 5f 4d 6f 64 73 54 6f 50 72 6f ..............while.(s_ModsToPro
1be0 63 65 73 73 2e 43 6f 75 6e 74 20 3e 20 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 cess.Count.>.0).............{...
1c00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 20 3d ..............var.modification.=
1c20 20 73 5f 4d 6f 64 73 54 6f 50 72 6f 63 65 73 73 5b 73 5f 4d 6f 64 73 54 6f 50 72 6f 63 65 73 73 .s_ModsToProcess[s_ModsToProcess
1c40 2e 43 6f 75 6e 74 20 2d 20 31 5d 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 5f 4d .Count.-.1];.................s_M
1c60 6f 64 73 54 6f 50 72 6f 63 65 73 73 2e 52 65 6d 6f 76 65 41 74 28 73 5f 4d 6f 64 73 54 6f 50 72 odsToProcess.RemoveAt(s_ModsToPr
1c80 6f 63 65 73 73 2e 43 6f 75 6e 74 20 2d 20 31 29 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ocess.Count.-.1);...............
1ca0 20 20 20 2f 2f 20 67 72 61 62 20 74 68 65 20 63 6c 69 70 20 77 65 20 6e 65 65 64 20 74 6f 20 61 ...//.grab.the.clip.we.need.to.a
1cc0 70 70 6c 79 20 74 6f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6d 6f 64 69 pply.to.................var.modi
1ce0 66 69 65 64 47 4f 20 3d 20 47 65 74 47 61 6d 65 4f 62 6a 65 63 74 46 72 6f 6d 4d 6f 64 69 66 69 fiedGO.=.GetGameObjectFromModifi
1d00 63 61 74 69 6f 6e 28 6d 6f 64 69 66 69 63 61 74 69 6f 6e 29 3b 0a 20 20 20 20 20 20 20 20 20 20 cation(modification);...........
1d20 20 20 20 20 20 20 76 61 72 20 74 72 61 63 6b 20 3d 20 47 65 74 54 72 61 63 6b 46 6f 72 47 61 6d ......var.track.=.GetTrackForGam
1d40 65 4f 62 6a 65 63 74 28 6d 6f 64 69 66 69 65 64 47 4f 2c 20 73 74 61 74 65 29 3b 0a 20 20 20 20 eObject(modifiedGO,.state);.....
1d60 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 74 72 61 63 6b 20 21 3d 20 6e 75 6c 6c 29 0a 20 ............if.(track.!=.null)..
1d80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...............{................
1da0 20 20 20 20 20 49 73 52 65 63 6f 72 64 69 6e 67 41 6e 69 6d 61 74 69 6f 6e 54 72 61 63 6b 20 3d .....IsRecordingAnimationTrack.=
1dc0 20 74 72 75 65 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 6f 75 62 .true;......................doub
1de0 6c 65 20 73 74 61 72 74 54 69 6d 65 20 3d 20 30 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 le.startTime.=.0;...............
1e00 20 20 20 20 20 20 76 61 72 20 63 6c 69 70 20 3d 20 73 5f 54 72 61 63 6b 52 65 63 6f 72 64 65 72 ......var.clip.=.s_TrackRecorder
1e20 2e 50 72 65 70 61 72 65 54 72 61 63 6b 28 74 72 61 63 6b 2c 20 73 74 61 74 65 2c 20 6d 6f 64 69 .PrepareTrack(track,.state,.modi
1e40 66 69 65 64 47 4f 2c 20 6f 75 74 20 73 74 61 72 74 54 69 6d 65 29 3b 0a 20 20 20 20 20 20 20 20 fiedGO,.out.startTime);.........
1e60 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 63 6c 69 70 20 3d 3d 20 6e 75 6c 6c 29 0a 20 20 ............if.(clip.==.null)...
1e80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 ..................{.............
1ea0 20 20 20 20 20 20 20 20 20 20 20 20 73 5f 4d 6f 64 73 54 6f 50 72 6f 63 65 73 73 2e 52 65 76 65 ............s_ModsToProcess.Reve
1ec0 72 73 65 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 rse();.........................r
1ee0 65 74 75 72 6e 20 73 5f 4d 6f 64 73 54 6f 50 72 6f 63 65 73 73 2e 54 6f 41 72 72 61 79 28 29 3b eturn.s_ModsToProcess.ToArray();
1f00 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 .....................}..........
1f20 20 20 20 20 20 20 20 20 20 20 20 73 5f 52 65 63 6f 72 64 53 74 61 74 65 2e 61 63 74 69 76 65 41 ...........s_RecordState.activeA
1f40 6e 69 6d 61 74 69 6f 6e 43 6c 69 70 20 3d 20 63 6c 69 70 3b 0a 20 20 20 20 20 20 20 20 20 20 20 nimationClip.=.clip;............
1f60 20 20 20 20 20 20 20 20 20 73 5f 52 65 63 6f 72 64 53 74 61 74 65 2e 61 63 74 69 76 65 52 6f 6f .........s_RecordState.activeRoo
1f80 74 47 61 6d 65 4f 62 6a 65 63 74 20 3d 20 73 74 61 74 65 2e 47 65 74 53 63 65 6e 65 52 65 66 65 tGameObject.=.state.GetSceneRefe
1fa0 72 65 6e 63 65 28 74 72 61 63 6b 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rence(track);...................
1fc0 20 20 73 5f 52 65 63 6f 72 64 53 74 61 74 65 2e 61 63 74 69 76 65 47 61 6d 65 4f 62 6a 65 63 74 ..s_RecordState.activeGameObject
1fe0 20 3d 20 6d 6f 64 69 66 69 65 64 47 4f 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .=.modifiedGO;..................
2000 20 20 20 73 5f 52 65 63 6f 72 64 53 74 61 74 65 2e 63 75 72 72 65 6e 74 46 72 61 6d 65 20 3d 20 ...s_RecordState.currentFrame.=.
2020 4d 61 74 68 66 2e 52 6f 75 6e 64 54 6f 49 6e 74 28 28 66 6c 6f 61 74 29 73 74 61 72 74 54 69 6d Mathf.RoundToInt((float)startTim
2040 65 29 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 64 69 74 6f 72 55 e);......................EditorU
2060 74 69 6c 69 74 79 2e 53 65 74 44 69 72 74 79 28 63 6c 69 70 29 3b 0a 20 20 20 20 20 20 20 20 20 tility.SetDirty(clip);..........
2080 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 74 6f 50 72 6f 63 65 73 73 20 3d 20 47 61 74 68 65 ...........var.toProcess.=.Gathe
20a0 72 52 65 6c 61 74 65 64 4d 6f 64 69 66 69 63 61 74 69 6f 6e 73 28 6d 6f 64 69 66 69 63 61 74 69 rRelatedModifications(modificati
20c0 6f 6e 2c 20 73 5f 4d 6f 64 73 54 6f 50 72 6f 63 65 73 73 29 3b 0a 0a 20 20 20 20 20 20 20 20 20 on,.s_ModsToProcess);...........
20e0 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 61 6e 69 6d 61 74 6f 72 20 3d 20 73 5f 52 65 63 6f ...........var.animator.=.s_Reco
2100 72 64 53 74 61 74 65 2e 61 63 74 69 76 65 52 6f 6f 74 47 61 6d 65 4f 62 6a 65 63 74 2e 47 65 74 rdState.activeRootGameObject.Get
2120 43 6f 6d 70 6f 6e 65 6e 74 3c 41 6e 69 6d 61 74 6f 72 3e 28 29 3b 0a 20 20 20 20 20 20 20 20 20 Component<Animator>();..........
2140 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 61 6e 69 6d 54 72 61 63 6b 20 3d 20 74 72 61 63 6b ...........var.animTrack.=.track
2160 20 61 73 20 41 6e 69 6d 61 74 69 6f 6e 54 72 61 63 6b 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 .as.AnimationTrack;.............
2180 20 20 20 20 20 20 20 20 20 2f 2f 20 75 70 64 61 74 65 20 70 72 65 76 69 65 77 20 6d 6f 64 65 20 .........//.update.preview.mode.
21a0 62 65 66 6f 72 65 20 72 65 63 6f 72 64 69 6e 67 20 73 6f 20 74 68 65 20 63 6f 72 72 65 63 74 20 before.recording.so.the.correct.
21c0 76 61 6c 75 65 73 20 67 65 74 20 70 6c 61 63 65 64 20 28 69 6e 20 63 61 73 65 20 77 65 20 6d 6f values.get.placed.(in.case.we.mo
21e0 64 69 66 79 20 6f 66 66 73 65 74 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 dify.offsets)...................
2200 20 20 2f 2f 20 43 61 73 65 20 39 30 30 36 32 34 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..//.Case.900624................
2220 20 20 20 20 20 55 70 64 61 74 65 50 72 65 76 69 65 77 4d 6f 64 65 28 74 6f 50 72 6f 63 65 73 73 .....UpdatePreviewMode(toProcess
2240 2c 20 6d 6f 64 69 66 69 65 64 47 4f 29 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ,.modifiedGO);..................
2260 20 20 20 20 2f 2f 20 69 66 20 74 68 69 73 20 69 73 20 74 68 65 20 66 69 72 73 74 20 70 6f 73 69 ....//.if.this.is.the.first.posi
2280 74 69 6f 6e 2f 72 6f 74 61 74 69 6f 6e 20 72 65 63 6f 72 64 69 6e 67 2c 20 63 6f 70 79 20 74 68 tion/rotation.recording,.copy.th
22a0 65 20 63 75 72 72 65 6e 74 20 70 6f 73 69 74 69 6f 6e 20 2f 20 72 6f 74 61 74 69 6f 6e 20 74 6f e.current.position./.rotation.to
22c0 20 74 68 65 20 74 72 61 63 6b 20 6f 66 66 73 65 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .the.track.offset...............
22e0 20 20 20 20 20 20 41 64 64 54 72 61 63 6b 4f 66 66 73 65 74 28 61 6e 69 6d 54 72 61 63 6b 2c 20 ......AddTrackOffset(animTrack,.
2300 74 6f 50 72 6f 63 65 73 73 2c 20 63 6c 69 70 2c 20 61 6e 69 6d 61 74 6f 72 29 3b 0a 0a 20 20 20 toProcess,.clip,.animator);.....
2320 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 73 61 6d 65 20 66 6f 72 20 63 6c 69 .................//.same.for.cli
2340 70 20 6d 6f 64 20 63 6c 69 70 73 20 62 65 69 6e 67 20 63 72 65 61 74 65 64 0a 20 20 20 20 20 20 p.mod.clips.being.created.......
2360 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 64 64 43 6c 69 70 4f 66 66 73 65 74 28 61 6e 69 6d ..............AddClipOffset(anim
2380 54 72 61 63 6b 2c 20 74 6f 50 72 6f 63 65 73 73 2c 20 73 5f 54 72 61 63 6b 52 65 63 6f 72 64 65 Track,.toProcess,.s_TrackRecorde
23a0 72 2e 72 65 63 6f 72 64 43 6c 69 70 2c 20 61 6e 69 6d 61 74 6f 72 29 3b 0a 0a 20 20 20 20 20 20 r.recordClip,.animator);........
23c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 43 68 65 63 6b 20 69 66 20 77 65 20 6e 65 65 ..............//.Check.if.we.nee
23e0 64 20 74 6f 20 68 61 6e 64 6c 65 20 70 6f 73 69 74 69 6f 6e 2f 72 6f 74 61 74 69 6f 6e 20 6f 66 d.to.handle.position/rotation.of
2400 66 73 65 74 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 68 61 fsets.....................var.ha
2420 6e 64 6c 65 4f 66 66 73 65 74 73 20 3d 20 61 6e 69 6d 61 74 6f 72 20 21 3d 20 6e 75 6c 6c 20 26 ndleOffsets.=.animator.!=.null.&
2440 26 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 2e 63 75 72 72 65 6e 74 56 61 6c 75 65 20 21 3d 20 6e &.modification.currentValue.!=.n
2460 75 6c 6c 20 26 26 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d ull.&&.........................m
2480 6f 64 69 66 69 63 61 74 69 6f 6e 2e 63 75 72 72 65 6e 74 56 61 6c 75 65 2e 74 61 72 67 65 74 20 odification.currentValue.target.
24a0 3d 3d 20 73 5f 52 65 63 6f 72 64 53 74 61 74 65 2e 61 63 74 69 76 65 52 6f 6f 74 47 61 6d 65 4f ==.s_RecordState.activeRootGameO
24c0 62 6a 65 63 74 2e 74 72 61 6e 73 66 6f 72 6d 20 26 26 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 bject.transform.&&..............
24e0 20 20 20 20 20 20 20 20 20 20 20 48 61 73 4f 66 66 73 65 74 73 28 61 6e 69 6d 54 72 61 63 6b 2c ...........HasOffsets(animTrack,
2500 20 73 5f 54 72 61 63 6b 52 65 63 6f 72 64 65 72 2e 72 65 63 6f 72 64 43 6c 69 70 29 3b 0a 20 20 .s_TrackRecorder.recordClip);...
2520 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 68 61 6e 64 6c 65 4f 66 66 73 ..................if.(handleOffs
2540 65 74 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 ets).....................{......
2560 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 6f 50 72 6f 63 65 73 73 20 3d 20 48 ...................toProcess.=.H
2580 61 6e 64 6c 65 45 75 6c 65 72 4d 6f 64 69 66 69 63 61 74 69 6f 6e 73 28 61 6e 69 6d 54 72 61 63 andleEulerModifications(animTrac
25a0 6b 2c 20 73 5f 54 72 61 63 6b 52 65 63 6f 72 64 65 72 2e 72 65 63 6f 72 64 43 6c 69 70 2c 20 63 k,.s_TrackRecorder.recordClip,.c
25c0 6c 69 70 2c 20 73 5f 52 65 63 6f 72 64 53 74 61 74 65 2e 63 75 72 72 65 6e 74 46 72 61 6d 65 20 lip,.s_RecordState.currentFrame.
25e0 2a 20 63 6c 69 70 2e 66 72 61 6d 65 52 61 74 65 2c 20 74 6f 50 72 6f 63 65 73 73 29 3b 0a 20 20 *.clip.frameRate,.toProcess);...
2600 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 52 65 6d 6f 76 65 4f 66 66 73 ......................RemoveOffs
2620 65 74 73 28 6d 6f 64 69 66 69 63 61 74 69 6f 6e 2c 20 61 6e 69 6d 54 72 61 63 6b 2c 20 73 5f 54 ets(modification,.animTrack,.s_T
2640 72 61 63 6b 52 65 63 6f 72 64 65 72 2e 72 65 63 6f 72 64 43 6c 69 70 2c 20 74 6f 50 72 6f 63 65 rackRecorder.recordClip,.toProce
2660 73 73 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 ss);.....................}......
2680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 72 65 6d 61 69 6e 69 6e 67 20 3d 20 ................var.remaining.=.
26a0 41 6e 69 6d 61 74 69 6f 6e 52 65 63 6f 72 64 69 6e 67 2e 50 72 6f 63 65 73 73 28 73 5f 52 65 63 AnimationRecording.Process(s_Rec
26c0 6f 72 64 53 74 61 74 65 2c 20 74 6f 50 72 6f 63 65 73 73 29 3b 0a 20 20 20 20 20 20 20 20 20 20 ordState,.toProcess);...........
26e0 20 20 20 20 20 20 20 20 20 20 69 66 20 28 72 65 6d 61 69 6e 69 6e 67 20 21 3d 20 6e 75 6c 6c 20 ..........if.(remaining.!=.null.
2700 26 26 20 72 65 6d 61 69 6e 69 6e 67 2e 4c 65 6e 67 74 68 20 21 3d 20 30 29 0a 20 20 20 20 20 20 &&.remaining.Length.!=.0).......
2720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..............{.................
2740 20 20 20 20 20 20 20 20 73 5f 55 6e 70 72 6f 63 65 73 73 65 64 4d 6f 64 73 2e 41 64 64 52 61 6e ........s_UnprocessedMods.AddRan
2760 67 65 28 72 65 6d 61 69 6e 69 6e 67 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ge(remaining);..................
2780 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 68 61 ...}......................if.(ha
27a0 6e 64 6c 65 4f 66 66 73 65 74 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ndleOffsets)....................
27c0 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 52 65 61 70 70 .{.........................Reapp
27e0 6c 79 4f 66 66 73 65 74 73 28 6d 6f 64 69 66 69 63 61 74 69 6f 6e 2c 20 61 6e 69 6d 54 72 61 63 lyOffsets(modification,.animTrac
2800 6b 2c 20 73 5f 54 72 61 63 6b 52 65 63 6f 72 64 65 72 2e 72 65 63 6f 72 64 43 6c 69 70 2c 20 74 k,.s_TrackRecorder.recordClip,.t
2820 6f 50 72 6f 63 65 73 73 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d oProcess);.....................}
2840 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 5f 54 72 61 63 6b 52 65 63 ......................s_TrackRec
2860 6f 72 64 65 72 2e 46 69 6e 69 61 6c 69 7a 65 54 72 61 63 6b 28 74 72 61 63 6b 2c 20 73 74 61 74 order.FinializeTrack(track,.stat
2880 65 29 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 73 52 65 63 6f 72 e);......................IsRecor
28a0 64 69 6e 67 41 6e 69 6d 61 74 69 6f 6e 54 72 61 63 6b 20 3d 20 66 61 6c 73 65 3b 0a 20 20 20 20 dingAnimationTrack.=.false;.....
28c0 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6c ............}.................el
28e0 73 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 se.................{............
2900 20 20 20 20 20 20 20 20 20 73 5f 55 6e 70 72 6f 63 65 73 73 65 64 4d 6f 64 73 2e 41 64 64 28 6d .........s_UnprocessedMods.Add(m
2920 6f 64 69 66 69 63 61 74 69 6f 6e 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a odification);.................}.
2940 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 5f 54 72 ............}...............s_Tr
2960 61 63 6b 52 65 63 6f 72 64 65 72 2e 46 69 6e 61 6c 69 7a 65 52 65 63 6f 72 64 69 6e 67 28 73 74 ackRecorder.FinalizeRecording(st
2980 61 74 65 29 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 73 5f 55 6e 70 72 ate);..............return.s_Unpr
29a0 6f 63 65 73 73 65 64 4d 6f 64 73 2e 54 6f 41 72 72 61 79 28 29 3b 0a 20 20 20 20 20 20 20 20 7d ocessedMods.ToArray();.........}
29c0 0a 0a 20 20 20 20 20 20 20 20 69 6e 74 65 72 6e 61 6c 20 73 74 61 74 69 63 20 62 6f 6f 6c 20 49 ..........internal.static.bool.I
29e0 73 50 6f 73 69 74 69 6f 6e 28 55 6e 64 6f 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 69 63 61 74 69 sPosition(UndoPropertyModificati
2a00 6f 6e 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 on.modification).........{......
2a20 20 20 20 20 20 20 20 69 66 20 28 6d 6f 64 69 66 69 63 61 74 69 6f 6e 2e 63 75 72 72 65 6e 74 56 .......if.(modification.currentV
2a40 61 6c 75 65 20 21 3d 20 6e 75 6c 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 alue.!=.null).................re
2a60 74 75 72 6e 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 2e 63 75 72 72 65 6e 74 56 61 6c 75 65 2e 70 turn.modification.currentValue.p
2a80 72 6f 70 65 72 74 79 50 61 74 68 2e 53 74 61 72 74 73 57 69 74 68 28 6b 4c 6f 63 61 6c 50 6f 73 ropertyPath.StartsWith(kLocalPos
2aa0 69 74 69 6f 6e 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 20 69 66 20 28 6d 6f 64 ition);.............else.if.(mod
2ac0 69 66 69 63 61 74 69 6f 6e 2e 70 72 65 76 69 6f 75 73 56 61 6c 75 65 20 21 3d 20 6e 75 6c 6c 29 ification.previousValue.!=.null)
2ae0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6d 6f 64 69 66 69 63 61 .................return.modifica
2b00 74 69 6f 6e 2e 70 72 65 76 69 6f 75 73 56 61 6c 75 65 2e 70 72 6f 70 65 72 74 79 50 61 74 68 2e tion.previousValue.propertyPath.
2b20 53 74 61 72 74 73 57 69 74 68 28 6b 4c 6f 63 61 6c 50 6f 73 69 74 69 6f 6e 29 3b 0a 20 20 20 20 StartsWith(kLocalPosition);.....
2b40 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 20 20 20 20 20 20 20 20 7d 0a ........return.false;.........}.
2b60 0a 20 20 20 20 20 20 20 20 69 6e 74 65 72 6e 61 6c 20 73 74 61 74 69 63 20 62 6f 6f 6c 20 49 73 .........internal.static.bool.Is
2b80 52 6f 74 61 74 69 6f 6e 28 55 6e 64 6f 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 69 63 61 74 69 6f Rotation(UndoPropertyModificatio
2ba0 6e 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 n.modification).........{.......
2bc0 20 20 20 20 20 20 69 66 20 28 6d 6f 64 69 66 69 63 61 74 69 6f 6e 2e 63 75 72 72 65 6e 74 56 61 ......if.(modification.currentVa
2be0 6c 75 65 20 21 3d 20 6e 75 6c 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 lue.!=.null).................ret
2c00 75 72 6e 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 2e 63 75 72 72 65 6e 74 56 61 6c 75 65 2e 70 72 urn.modification.currentValue.pr
2c20 6f 70 65 72 74 79 50 61 74 68 2e 53 74 61 72 74 73 57 69 74 68 28 6b 4c 6f 63 61 6c 52 6f 74 61 opertyPath.StartsWith(kLocalRota
2c40 74 69 6f 6e 29 20 7c 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 6f 64 tion).||.....................mod
2c60 69 66 69 63 61 74 69 6f 6e 2e 63 75 72 72 65 6e 74 56 61 6c 75 65 2e 70 72 6f 70 65 72 74 79 50 ification.currentValue.propertyP
2c80 61 74 68 2e 53 74 61 72 74 73 57 69 74 68 28 6b 4c 6f 63 61 6c 45 75 6c 65 72 48 69 6e 74 29 3b ath.StartsWith(kLocalEulerHint);
2ca0 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 6f 64 69 66 69 63 61 74 69 6f 6e 2e 70 72 .............if.(modification.pr
2cc0 65 76 69 6f 75 73 56 61 6c 75 65 20 21 3d 20 6e 75 6c 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 eviousValue.!=.null)............
2ce0 20 20 20 20 20 72 65 74 75 72 6e 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 2e 70 72 65 76 69 6f 75 .....return.modification.previou
2d00 73 56 61 6c 75 65 2e 70 72 6f 70 65 72 74 79 50 61 74 68 2e 53 74 61 72 74 73 57 69 74 68 28 6b sValue.propertyPath.StartsWith(k
2d20 4c 6f 63 61 6c 52 6f 74 61 74 69 6f 6e 29 20 7c 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 LocalRotation).||...............
2d40 20 20 20 20 20 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 2e 70 72 65 76 69 6f 75 73 56 61 6c 75 65 ......modification.previousValue
2d60 2e 70 72 6f 70 65 72 74 79 50 61 74 68 2e 53 74 61 72 74 73 57 69 74 68 28 6b 4c 6f 63 61 6c 45 .propertyPath.StartsWith(kLocalE
2d80 75 6c 65 72 48 69 6e 74 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 66 61 ulerHint);.............return.fa
2da0 6c 73 65 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 2f 2f 20 54 65 73 74 20 lse;.........}..........//.Test.
2dc0 69 66 20 74 68 69 73 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 20 70 6f 73 69 74 69 6f 6e 20 6f 72 if.this.modification.position.or
2de0 20 72 6f 74 61 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 69 6e 74 65 72 6e 61 6c 20 73 74 61 74 69 .rotation.........internal.stati
2e00 63 20 62 6f 6f 6c 20 49 73 50 6f 73 69 74 69 6f 6e 4f 72 52 6f 74 61 74 69 6f 6e 28 55 6e 64 6f c.bool.IsPositionOrRotation(Undo
2e20 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 69 63 61 74 69 6f 6e 20 6d 6f 64 69 66 69 63 61 74 69 6f PropertyModification.modificatio
2e40 6e 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 n).........{.............return.
2e60 49 73 50 6f 73 69 74 69 6f 6e 28 6d 6f 64 69 66 69 63 61 74 69 6f 6e 29 20 7c 7c 20 49 73 52 6f IsPosition(modification).||.IsRo
2e80 74 61 74 69 6f 6e 28 6d 6f 64 69 66 69 63 61 74 69 6f 6e 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a tation(modification);.........}.
2ea0 0a 20 20 20 20 20 20 20 20 69 6e 74 65 72 6e 61 6c 20 73 74 61 74 69 63 20 76 6f 69 64 20 55 70 .........internal.static.void.Up
2ec0 64 61 74 65 50 72 65 76 69 65 77 4d 6f 64 65 28 55 6e 64 6f 50 72 6f 70 65 72 74 79 4d 6f 64 69 datePreviewMode(UndoPropertyModi
2ee0 66 69 63 61 74 69 6f 6e 5b 5d 20 6d 6f 64 73 2c 20 47 61 6d 65 4f 62 6a 65 63 74 20 67 6f 29 0a fication[].mods,.GameObject.go).
2f00 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 6f 64 73 2e 41 ........{.............if.(mods.A
2f20 6e 79 28 78 20 3d 3e 20 49 73 50 6f 73 69 74 69 6f 6e 4f 72 52 6f 74 61 74 69 6f 6e 28 78 29 20 ny(x.=>.IsPositionOrRotation(x).
2f40 26 26 20 49 73 52 6f 6f 74 4d 6f 64 69 66 69 63 61 74 69 6f 6e 28 78 29 29 29 0a 20 20 20 20 20 &&.IsRootModification(x)))......
2f60 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 6f 6f 6c 20 68 61 .......{.................bool.ha
2f80 73 50 6f 73 69 74 69 6f 6e 20 3d 20 66 61 6c 73 65 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 sPosition.=.false;..............
2fa0 20 20 20 62 6f 6f 6c 20 68 61 73 52 6f 74 61 74 69 6f 6e 20 3d 20 66 61 6c 73 65 3b 0a 0a 20 20 ...bool.hasRotation.=.false;....
2fc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 68 20 28 76 61 72 20 6d 6f 64 20 69 ..............foreach.(var.mod.i
2fe0 6e 20 6d 6f 64 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 n.mods).................{.......
3000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 64 69 74 6f 72 43 75 72 76 65 42 69 6e 64 69 6e 67 ..............EditorCurveBinding
3020 20 62 69 6e 64 69 6e 67 20 3d 20 6e 65 77 20 45 64 69 74 6f 72 43 75 72 76 65 42 69 6e 64 69 6e .binding.=.new.EditorCurveBindin
3040 67 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 41 6e 69 g();.....................if.(Ani
3060 6d 61 74 69 6f 6e 55 74 69 6c 69 74 79 2e 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 69 63 61 74 69 mationUtility.PropertyModificati
3080 6f 6e 54 6f 45 64 69 74 6f 72 43 75 72 76 65 42 69 6e 64 69 6e 67 28 6d 6f 64 2e 70 72 65 76 69 onToEditorCurveBinding(mod.previ
30a0 6f 75 73 56 61 6c 75 65 2c 20 67 6f 2c 20 6f 75 74 20 62 69 6e 64 69 6e 67 29 20 21 3d 20 6e 75 ousValue,.go,.out.binding).!=.nu
30c0 6c 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 ll).....................{.......
30e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 68 61 73 50 6f 73 69 74 69 6f 6e 20 7c 3d ..................hasPosition.|=
3100 20 49 73 50 6f 73 69 74 69 6f 6e 28 6d 6f 64 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .IsPosition(mod);...............
3120 20 20 20 20 20 20 20 20 20 20 68 61 73 52 6f 74 61 74 69 6f 6e 20 7c 3d 20 49 73 52 6f 74 61 74 ..........hasRotation.|=.IsRotat
3140 69 6f 6e 28 6d 6f 64 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ion(mod);.......................
3160 20 20 41 6e 69 6d 61 74 69 6f 6e 4d 6f 64 65 2e 41 64 64 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 ..AnimationMode.AddPropertyModif
3180 69 63 61 74 69 6f 6e 28 62 69 6e 64 69 6e 67 2c 20 6d 6f 64 2e 70 72 65 76 69 6f 75 73 56 61 6c ication(binding,.mod.previousVal
31a0 75 65 2c 20 74 72 75 65 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d ue,.true);.....................}
31c0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 .................}..............
31e0 20 20 20 20 2f 2f 20 63 61 73 65 20 39 33 31 38 35 39 20 2d 20 69 66 20 77 65 20 61 72 65 20 6f ....//.case.931859.-.if.we.are.o
3200 6e 6c 79 20 63 68 61 6e 67 69 6e 67 20 6f 6e 65 20 66 69 65 6c 64 2c 20 61 6c 6c 20 66 69 65 6c nly.changing.one.field,.all.fiel
3220 64 73 20 6d 75 73 74 20 62 65 20 72 65 67 69 73 74 65 72 65 64 20 62 65 66 6f 72 65 0a 20 20 20 ds.must.be.registered.before....
3240 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 61 6e 79 20 72 65 63 6f 72 64 69 6e 67 20 6d 6f .............//.any.recording.mo
3260 64 69 66 69 63 61 74 69 6f 6e 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 difications.................var.
3280 64 72 69 76 65 72 20 3d 20 57 69 6e 64 6f 77 53 74 61 74 65 2e 70 72 65 76 69 65 77 44 72 69 76 driver.=.WindowState.previewDriv
32a0 65 72 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 64 72 69 76 65 72 20 21 er;.................if.(driver.!
32c0 3d 20 6e 75 6c 6c 20 26 26 20 41 6e 69 6d 61 74 69 6f 6e 4d 6f 64 65 2e 49 6e 41 6e 69 6d 61 74 =.null.&&.AnimationMode.InAnimat
32e0 69 6f 6e 4d 6f 64 65 28 64 72 69 76 65 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ionMode(driver))................
3300 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 68 61 73 50 6f .{.....................if.(hasPo
3320 73 69 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 sition).....................{...
3340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 72 69 76 65 6e 50 72 6f 70 ......................DrivenProp
3360 65 72 74 79 4d 61 6e 61 67 65 72 2e 52 65 67 69 73 74 65 72 50 72 6f 70 65 72 74 79 28 64 72 69 ertyManager.RegisterProperty(dri
3380 76 65 72 2c 20 67 6f 2e 74 72 61 6e 73 66 6f 72 6d 2c 20 6b 4c 6f 63 61 6c 50 6f 73 69 74 69 6f ver,.go.transform,.kLocalPositio
33a0 6e 20 2b 20 22 2e 78 22 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 n.+.".x");......................
33c0 20 20 20 44 72 69 76 65 6e 50 72 6f 70 65 72 74 79 4d 61 6e 61 67 65 72 2e 52 65 67 69 73 74 65 ...DrivenPropertyManager.Registe
33e0 72 50 72 6f 70 65 72 74 79 28 64 72 69 76 65 72 2c 20 67 6f 2e 74 72 61 6e 73 66 6f 72 6d 2c 20 rProperty(driver,.go.transform,.
3400 6b 4c 6f 63 61 6c 50 6f 73 69 74 69 6f 6e 20 2b 20 22 2e 79 22 29 3b 0a 20 20 20 20 20 20 20 20 kLocalPosition.+.".y");.........
3420 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 72 69 76 65 6e 50 72 6f 70 65 72 74 79 4d 61 ................DrivenPropertyMa
3440 6e 61 67 65 72 2e 52 65 67 69 73 74 65 72 50 72 6f 70 65 72 74 79 28 64 72 69 76 65 72 2c 20 67 nager.RegisterProperty(driver,.g
3460 6f 2e 74 72 61 6e 73 66 6f 72 6d 2c 20 6b 4c 6f 63 61 6c 50 6f 73 69 74 69 6f 6e 20 2b 20 22 2e o.transform,.kLocalPosition.+.".
3480 7a 22 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 z");.....................}......
34a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 20 69 66 20 28 68 61 73 52 6f 74 61 74 ...............else.if.(hasRotat
34c0 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 ion).....................{......
34e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 72 69 76 65 6e 50 72 6f 70 65 72 74 ...................DrivenPropert
3500 79 4d 61 6e 61 67 65 72 2e 52 65 67 69 73 74 65 72 50 72 6f 70 65 72 74 79 28 64 72 69 76 65 72 yManager.RegisterProperty(driver
3520 2c 20 67 6f 2e 74 72 61 6e 73 66 6f 72 6d 2c 20 6b 4c 6f 63 61 6c 52 6f 74 61 74 69 6f 6e 20 2b ,.go.transform,.kLocalRotation.+
3540 20 22 2e 78 22 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .".x");.........................
3560 44 72 69 76 65 6e 50 72 6f 70 65 72 74 79 4d 61 6e 61 67 65 72 2e 52 65 67 69 73 74 65 72 50 72 DrivenPropertyManager.RegisterPr
3580 6f 70 65 72 74 79 28 64 72 69 76 65 72 2c 20 67 6f 2e 74 72 61 6e 73 66 6f 72 6d 2c 20 6b 4c 6f operty(driver,.go.transform,.kLo
35a0 63 61 6c 52 6f 74 61 74 69 6f 6e 20 2b 20 22 2e 79 22 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 calRotation.+.".y");............
35c0 20 20 20 20 20 20 20 20 20 20 20 20 20 44 72 69 76 65 6e 50 72 6f 70 65 72 74 79 4d 61 6e 61 67 .............DrivenPropertyManag
35e0 65 72 2e 52 65 67 69 73 74 65 72 50 72 6f 70 65 72 74 79 28 64 72 69 76 65 72 2c 20 67 6f 2e 74 er.RegisterProperty(driver,.go.t
3600 72 61 6e 73 66 6f 72 6d 2c 20 6b 4c 6f 63 61 6c 52 6f 74 61 74 69 6f 6e 20 2b 20 22 2e 7a 22 29 ransform,.kLocalRotation.+.".z")
3620 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 72 69 76 65 6e ;.........................Driven
3640 50 72 6f 70 65 72 74 79 4d 61 6e 61 67 65 72 2e 52 65 67 69 73 74 65 72 50 72 6f 70 65 72 74 79 PropertyManager.RegisterProperty
3660 28 64 72 69 76 65 72 2c 20 67 6f 2e 74 72 61 6e 73 66 6f 72 6d 2c 20 6b 4c 6f 63 61 6c 52 6f 74 (driver,.go.transform,.kLocalRot
3680 61 74 69 6f 6e 20 2b 20 22 2e 77 22 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ation.+.".w");..................
36a0 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 ...}.................}..........
36c0 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 69 6e 74 65 72 6e 61 6c ...}.........}..........internal
36e0 20 73 74 61 74 69 63 20 62 6f 6f 6c 20 49 73 52 6f 6f 74 4d 6f 64 69 66 69 63 61 74 69 6f 6e 28 .static.bool.IsRootModification(
3700 55 6e 64 6f 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 69 63 61 74 69 6f 6e 20 6d 6f 64 69 66 69 63 UndoPropertyModification.modific
3720 61 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 72 ation).........{.............str
3740 69 6e 67 20 70 61 74 68 20 3d 20 73 74 72 69 6e 67 2e 45 6d 70 74 79 3b 0a 20 20 20 20 20 20 20 ing.path.=.string.Empty;........
3760 20 20 20 20 20 69 66 20 28 6d 6f 64 69 66 69 63 61 74 69 6f 6e 2e 63 75 72 72 65 6e 74 56 61 6c .....if.(modification.currentVal
3780 75 65 20 21 3d 20 6e 75 6c 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 74 68 ue.!=.null).................path
37a0 20 3d 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 2e 63 75 72 72 65 6e 74 56 61 6c 75 65 2e 70 72 6f .=.modification.currentValue.pro
37c0 70 65 72 74 79 50 61 74 68 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 20 69 66 20 28 pertyPath;.............else.if.(
37e0 6d 6f 64 69 66 69 63 61 74 69 6f 6e 2e 70 72 65 76 69 6f 75 73 56 61 6c 75 65 20 21 3d 20 6e 75 modification.previousValue.!=.nu
3800 6c 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 74 68 20 3d 20 6d 6f 64 69 66 ll).................path.=.modif
3820 69 63 61 74 69 6f 6e 2e 70 72 65 76 69 6f 75 73 56 61 6c 75 65 2e 70 72 6f 70 65 72 74 79 50 61 ication.previousValue.propertyPa
3840 74 68 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 21 70 61 74 68 2e 43 6f th;..............return.!path.Co
3860 6e 74 61 69 6e 73 28 27 2f 27 29 20 26 26 20 21 70 61 74 68 2e 43 6f 6e 74 61 69 6e 73 28 27 5c ntains('/').&&.!path.Contains('\
3880 5c 27 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 2f 2f 20 74 65 73 74 20 \');.........}..........//.test.
38a0 69 66 20 74 68 65 20 63 6c 69 70 20 68 61 73 20 61 6e 79 20 70 6f 73 69 74 69 6f 6e 20 6f 72 20 if.the.clip.has.any.position.or.
38c0 72 6f 74 61 74 69 6f 6e 20 62 69 6e 64 69 6e 67 73 0a 20 20 20 20 20 20 20 20 69 6e 74 65 72 6e rotation.bindings.........intern
38e0 61 6c 20 73 74 61 74 69 63 20 62 6f 6f 6c 20 43 6c 69 70 48 61 73 50 6f 73 69 74 69 6f 6e 4f 72 al.static.bool.ClipHasPositionOr
3900 52 6f 74 61 74 69 6f 6e 28 41 6e 69 6d 61 74 69 6f 6e 43 6c 69 70 20 63 6c 69 70 29 0a 20 20 20 Rotation(AnimationClip.clip)....
3920 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 63 6c 69 70 20 3d 3d 20 6e .....{.............if.(clip.==.n
3940 75 6c 6c 20 7c 7c 20 63 6c 69 70 2e 65 6d 70 74 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ull.||.clip.empty)..............
3960 20 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 ...return.false;..............va
3980 72 20 69 6e 66 6f 20 3d 20 41 6e 69 6d 61 74 69 6f 6e 43 6c 69 70 43 75 72 76 65 43 61 63 68 65 r.info.=.AnimationClipCurveCache
39a0 2e 49 6e 73 74 61 6e 63 65 2e 47 65 74 43 75 72 76 65 49 6e 66 6f 28 63 6c 69 70 29 3b 0a 20 20 .Instance.GetCurveInfo(clip);...
39c0 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 69 6e ..........for.(var.i.=.0;.i.<.in
39e0 66 6f 2e 62 69 6e 64 69 6e 67 73 2e 4c 65 6e 67 74 68 3b 20 69 2b 2b 29 0a 20 20 20 20 20 20 20 fo.bindings.Length;.i++)........
3a00 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 6f 6f 6c 20 69 73 50 6f .....{.................bool.isPo
3a20 73 69 74 69 6f 6e 4f 72 52 6f 74 61 74 69 6f 6e 20 3d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 sitionOrRotation.=..............
3a40 20 20 20 20 20 20 20 69 6e 66 6f 2e 62 69 6e 64 69 6e 67 73 5b 69 5d 2e 74 79 70 65 20 21 3d 20 .......info.bindings[i].type.!=.
3a60 6e 75 6c 6c 20 26 26 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 79 70 65 null.&&.....................type
3a80 6f 66 28 54 72 61 6e 73 66 6f 72 6d 29 2e 49 73 41 73 73 69 67 6e 61 62 6c 65 46 72 6f 6d 28 69 of(Transform).IsAssignableFrom(i
3aa0 6e 66 6f 2e 62 69 6e 64 69 6e 67 73 5b 69 5d 2e 74 79 70 65 29 20 26 26 0a 20 20 20 20 20 20 20 nfo.bindings[i].type).&&........
3ac0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .............(..................
3ae0 20 20 20 20 20 20 20 69 6e 66 6f 2e 62 69 6e 64 69 6e 67 73 5b 69 5d 2e 70 72 6f 70 65 72 74 79 .......info.bindings[i].property
3b00 4e 61 6d 65 2e 53 74 61 72 74 73 57 69 74 68 28 6b 4c 6f 63 61 6c 50 6f 73 69 74 69 6f 6e 29 20 Name.StartsWith(kLocalPosition).
3b20 7c 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 66 6f 2e ||.........................info.
3b40 62 69 6e 64 69 6e 67 73 5b 69 5d 2e 70 72 6f 70 65 72 74 79 4e 61 6d 65 2e 53 74 61 72 74 73 57 bindings[i].propertyName.StartsW
3b60 69 74 68 28 6b 4c 6f 63 61 6c 52 6f 74 61 74 69 6f 6e 29 20 7c 7c 0a 20 20 20 20 20 20 20 20 20 ith(kLocalRotation).||..........
3b80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 66 6f 2e 62 69 6e 64 69 6e 67 73 5b 69 5d 2e ...............info.bindings[i].
3ba0 70 72 6f 70 65 72 74 79 4e 61 6d 65 2e 53 74 61 72 74 73 57 69 74 68 28 22 6c 6f 63 61 6c 45 75 propertyName.StartsWith("localEu
3bc0 6c 65 72 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 29 3b 0a 0a 20 20 ler").....................);....
3be0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 69 73 50 6f 73 69 74 69 6f 6e 4f 72 52 6f ..............if.(isPositionOrRo
3c00 74 61 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 tation).....................retu
3c20 72 6e 20 74 72 75 65 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 rn.true;.............}..........
3c40 20 20 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 ....return.false;.........}.....
3c60 20 20 20 20 20 69 6e 74 65 72 6e 61 6c 20 73 74 61 74 69 63 20 54 69 6d 65 6c 69 6e 65 41 6e 69 .....internal.static.TimelineAni
3c80 6d 61 74 69 6f 6e 55 74 69 6c 69 74 69 65 73 2e 52 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 20 43 mationUtilities.RigidTransform.C
3ca0 6f 6d 70 75 74 65 49 6e 69 74 69 61 6c 43 6c 69 70 4f 66 66 73 65 74 73 28 41 6e 69 6d 61 74 69 omputeInitialClipOffsets(Animati
3cc0 6f 6e 54 72 61 63 6b 20 74 72 61 63 6b 2c 20 55 6e 64 6f 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 onTrack.track,.UndoPropertyModif
3ce0 69 63 61 74 69 6f 6e 5b 5d 20 6d 6f 64 73 2c 20 41 6e 69 6d 61 74 6f 72 20 61 6e 69 6d 61 74 6f ication[].mods,.Animator.animato
3d00 72 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 74 61 6b 65 r).........{.............//.take
3d20 20 69 6e 74 6f 20 61 63 63 6f 75 6e 74 20 74 68 65 20 74 72 61 63 6b 20 74 72 61 6e 73 66 6f 72 .into.account.the.track.transfor
3d40 6d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 74 61 72 67 65 74 20 3d 20 47 65 74 49 6e m.............var.target.=.GetIn
3d60 69 74 69 61 6c 54 72 61 6e 73 66 6f 72 6d 28 6d 6f 64 73 2c 20 61 6e 69 6d 61 74 6f 72 29 3b 0a itialTransform(mods,.animator);.
3d80 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 74 72 61 63 6b 54 6f 43 6c 69 70 20 3d 20 54 69 ............var.trackToClip.=.Ti
3da0 6d 65 6c 69 6e 65 41 6e 69 6d 61 74 69 6f 6e 55 74 69 6c 69 74 69 65 73 2e 52 69 67 69 64 54 72 melineAnimationUtilities.RigidTr
3dc0 61 6e 73 66 6f 72 6d 2e 69 64 65 6e 74 69 74 79 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 ansform.identity;.............if
3de0 20 28 74 72 61 63 6b 2e 74 72 61 63 6b 4f 66 66 73 65 74 20 3d 3d 20 54 72 61 63 6b 4f 66 66 73 .(track.trackOffset.==.TrackOffs
3e00 65 74 2e 41 70 70 6c 79 54 72 61 6e 73 66 6f 72 6d 4f 66 66 73 65 74 73 29 0a 20 20 20 20 20 20 et.ApplyTransformOffsets).......
3e20 20 20 20 20 20 20 20 20 20 20 74 72 61 63 6b 54 6f 43 6c 69 70 20 3d 20 54 69 6d 65 6c 69 6e 65 ..........trackToClip.=.Timeline
3e40 41 6e 69 6d 61 74 69 6f 6e 55 74 69 6c 69 74 69 65 73 2e 52 69 67 69 64 54 72 61 6e 73 66 6f 72 AnimationUtilities.RigidTransfor
3e60 6d 2e 43 6f 6d 70 6f 73 65 28 74 72 61 63 6b 2e 70 6f 73 69 74 69 6f 6e 2c 20 74 72 61 63 6b 2e m.Compose(track.position,.track.
3e80 72 6f 74 61 74 69 6f 6e 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 20 69 66 20 28 rotation);.............else.if.(
3ea0 74 72 61 63 6b 2e 74 72 61 63 6b 4f 66 66 73 65 74 20 3d 3d 20 54 72 61 63 6b 4f 66 66 73 65 74 track.trackOffset.==.TrackOffset
3ec0 2e 41 70 70 6c 79 53 63 65 6e 65 4f 66 66 73 65 74 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 .ApplySceneOffsets).............
3ee0 20 20 20 20 74 72 61 63 6b 54 6f 43 6c 69 70 20 3d 20 54 69 6d 65 6c 69 6e 65 41 6e 69 6d 61 74 ....trackToClip.=.TimelineAnimat
3f00 69 6f 6e 55 74 69 6c 69 74 69 65 73 2e 52 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 2e 43 6f 6d 70 ionUtilities.RigidTransform.Comp
3f20 6f 73 65 28 74 72 61 63 6b 2e 73 63 65 6e 65 4f 66 66 73 65 74 50 6f 73 69 74 69 6f 6e 2c 20 51 ose(track.sceneOffsetPosition,.Q
3f40 75 61 74 65 72 6e 69 6f 6e 2e 45 75 6c 65 72 28 74 72 61 63 6b 2e 73 63 65 6e 65 4f 66 66 73 65 uaternion.Euler(track.sceneOffse
3f60 74 52 6f 74 61 74 69 6f 6e 29 29 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 74 61 72 67 65 74 tRotation));..............target
3f80 20 3d 20 54 69 6d 65 6c 69 6e 65 41 6e 69 6d 61 74 69 6f 6e 55 74 69 6c 69 74 69 65 73 2e 52 69 .=.TimelineAnimationUtilities.Ri
3fa0 67 69 64 54 72 61 6e 73 66 6f 72 6d 2e 4d 75 6c 28 54 69 6d 65 6c 69 6e 65 41 6e 69 6d 61 74 69 gidTransform.Mul(TimelineAnimati
3fc0 6f 6e 55 74 69 6c 69 74 69 65 73 2e 52 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 2e 49 6e 76 65 72 onUtilities.RigidTransform.Inver
3fe0 73 65 28 74 72 61 63 6b 54 6f 43 6c 69 70 29 2c 20 74 61 72 67 65 74 29 3b 0a 0a 20 20 20 20 20 se(trackToClip),.target);.......
4000 20 20 20 20 20 20 20 2f 2f 20 73 65 74 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 70 6f 73 69 74 .......//.set.the.previous.posit
4020 69 6f 6e 20 69 6e 20 63 61 73 65 20 74 68 65 20 61 6e 69 6d 61 74 69 6f 6e 20 73 79 73 74 65 6d ion.in.case.the.animation.system
4040 20 61 64 64 73 20 61 20 64 65 66 61 75 6c 74 20 6b 65 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 .adds.a.default.key.............
4060 53 65 74 50 72 65 76 69 6f 75 73 50 6f 73 69 74 69 6f 6e 41 6e 64 52 6f 74 61 74 69 6f 6e 28 6d SetPreviousPositionAndRotation(m
4080 6f 64 73 2c 20 61 6e 69 6d 61 74 6f 72 2c 20 74 72 61 63 6b 54 6f 43 6c 69 70 2e 70 6f 73 69 74 ods,.animator,.trackToClip.posit
40a0 69 6f 6e 2c 20 74 72 61 63 6b 54 6f 43 6c 69 70 2e 72 6f 74 61 74 69 6f 6e 29 3b 0a 20 20 20 20 ion,.trackToClip.rotation);.....
40c0 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 74 61 72 67 65 74 3b 0a 20 20 20 20 20 20 20 20 7d ........return.target;.........}
40e0 0a 0a 20 20 20 20 20 20 20 20 69 6e 74 65 72 6e 61 6c 20 73 74 61 74 69 63 20 54 69 6d 65 6c 69 ..........internal.static.Timeli
4100 6e 65 41 6e 69 6d 61 74 69 6f 6e 55 74 69 6c 69 74 69 65 73 2e 52 69 67 69 64 54 72 61 6e 73 66 neAnimationUtilities.RigidTransf
4120 6f 72 6d 20 47 65 74 49 6e 69 74 69 61 6c 54 72 61 6e 73 66 6f 72 6d 28 55 6e 64 6f 50 72 6f 70 orm.GetInitialTransform(UndoProp
4140 65 72 74 79 4d 6f 64 69 66 69 63 61 74 69 6f 6e 5b 5d 20 6d 6f 64 73 2c 20 41 6e 69 6d 61 74 6f ertyModification[].mods,.Animato
4160 72 20 61 6e 69 6d 61 74 6f 72 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 r.animator).........{...........
4180 20 20 76 61 72 20 70 6f 73 20 3d 20 56 65 63 74 6f 72 33 2e 7a 65 72 6f 3b 0a 20 20 20 20 20 20 ..var.pos.=.Vector3.zero;.......
41a0 20 20 20 20 20 20 76 61 72 20 72 6f 74 20 3d 20 51 75 61 74 65 72 6e 69 6f 6e 2e 69 64 65 6e 74 ......var.rot.=.Quaternion.ident
41c0 69 74 79 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 69 66 20 77 65 20 61 72 65 20 6f ity;..............//.if.we.are.o
41e0 70 65 72 61 74 69 6e 67 20 6f 6e 20 74 68 65 20 72 6f 6f 74 2c 20 67 72 61 62 20 74 68 65 20 74 perating.on.the.root,.grab.the.t
4200 72 61 6e 73 66 6f 72 6d 20 66 72 6f 6d 20 74 68 65 20 75 6e 64 6f 0a 20 20 20 20 20 20 20 20 20 ransform.from.the.undo..........
4220 20 20 20 69 66 20 28 6d 6f 64 73 5b 30 5d 2e 70 72 65 76 69 6f 75 73 56 61 6c 75 65 2e 74 61 72 ...if.(mods[0].previousValue.tar
4240 67 65 74 20 3d 3d 20 61 6e 69 6d 61 74 6f 72 2e 74 72 61 6e 73 66 6f 72 6d 29 0a 20 20 20 20 20 get.==.animator.transform)......
4260 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 47 65 74 50 72 65 76 .......{.................GetPrev
4280 69 6f 75 73 50 6f 73 69 74 69 6f 6e 41 6e 64 52 6f 74 61 74 69 6f 6e 28 6d 6f 64 73 2c 20 72 65 iousPositionAndRotation(mods,.re
42a0 66 20 70 6f 73 2c 20 72 65 66 20 72 6f 74 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 f.pos,.ref.rot);.............}..
42c0 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 6f 74 68 65 72 77 69 73 65 20 77 65 20 6e 65 65 64 20 ...........//.otherwise.we.need.
42e0 74 6f 20 67 72 61 62 20 69 74 20 66 72 6f 6d 20 74 68 65 20 72 6f 6f 74 20 6f 62 6a 65 63 74 2c to.grab.it.from.the.root.object,
4300 20 77 68 69 63 68 20 69 73 20 74 68 65 20 6f 6e 65 20 77 69 74 68 20 74 68 65 20 61 63 74 75 61 .which.is.the.one.with.the.actua
4320 6c 20 61 6e 69 6d 61 74 6f 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0a 20 20 20 20 l.animator.............else.....
4340 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 6f 73 20 3d 20 ........{.................pos.=.
4360 61 6e 69 6d 61 74 6f 72 2e 74 72 61 6e 73 66 6f 72 6d 2e 6c 6f 63 61 6c 50 6f 73 69 74 69 6f 6e animator.transform.localPosition
4380 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 74 20 3d 20 61 6e 69 6d 61 74 6f 72 ;.................rot.=.animator
43a0 2e 74 72 61 6e 73 66 6f 72 6d 2e 6c 6f 63 61 6c 52 6f 74 61 74 69 6f 6e 3b 0a 20 20 20 20 20 20 .transform.localRotation;.......
43c0 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 74 61 6b 65 20 69 6e 74 ......}..............//.take.int
43e0 6f 20 61 63 63 6f 75 6e 74 20 74 68 65 20 74 72 61 63 6b 20 74 72 61 6e 73 66 6f 72 6d 0a 20 20 o.account.the.track.transform...
4400 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 54 69 6d 65 6c 69 6e 65 41 6e 69 6d 61 74 69 ..........return.TimelineAnimati
4420 6f 6e 55 74 69 6c 69 74 69 65 73 2e 52 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 2e 43 6f 6d 70 6f onUtilities.RigidTransform.Compo
4440 73 65 28 70 6f 73 2c 20 72 6f 74 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 se(pos,.rot);.........}.........
4460 20 69 6e 74 65 72 6e 61 6c 20 73 74 61 74 69 63 20 76 6f 69 64 20 53 65 74 50 72 65 76 69 6f 75 .internal.static.void.SetPreviou
4480 73 50 6f 73 69 74 69 6f 6e 41 6e 64 52 6f 74 61 74 69 6f 6e 28 55 6e 64 6f 50 72 6f 70 65 72 74 sPositionAndRotation(UndoPropert
44a0 79 4d 6f 64 69 66 69 63 61 74 69 6f 6e 5b 5d 20 6d 6f 64 73 2c 20 41 6e 69 6d 61 74 6f 72 20 61 yModification[].mods,.Animator.a
44c0 6e 69 6d 61 74 6f 72 2c 20 56 65 63 74 6f 72 33 20 70 6f 73 2c 20 51 75 61 74 65 72 6e 69 6f 6e nimator,.Vector3.pos,.Quaternion
44e0 20 72 6f 74 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 .rot).........{.............if.(
4500 6d 6f 64 73 5b 30 5d 2e 70 72 65 76 69 6f 75 73 56 61 6c 75 65 2e 74 61 72 67 65 74 20 3d 3d 20 mods[0].previousValue.target.==.
4520 61 6e 69 6d 61 74 6f 72 2e 74 72 61 6e 73 66 6f 72 6d 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 animator.transform).............
4540 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 53 65 74 50 72 65 76 69 6f 75 73 50 6f 73 {.................SetPreviousPos
4560 69 74 69 6f 6e 41 6e 64 52 6f 74 61 74 69 6f 6e 28 6d 6f 64 73 2c 20 70 6f 73 2c 20 72 6f 74 29 itionAndRotation(mods,.pos,.rot)
4580 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 ;.............}.........}.......
45a0 20 20 20 2f 2f 20 49 66 20 77 65 20 61 72 65 20 61 64 64 69 6e 67 20 74 6f 20 61 6e 20 69 6e 66 ...//.If.we.are.adding.to.an.inf
45c0 69 6e 69 74 65 20 63 6c 69 70 2c 20 73 74 72 69 70 20 74 68 65 20 6f 62 6a 65 63 74 73 20 70 6f inite.clip,.strip.the.objects.po
45e0 73 69 74 69 6f 6e 20 61 6e 64 20 72 6f 74 61 74 69 6f 6e 20 61 6e 64 20 73 65 74 20 69 74 20 61 sition.and.rotation.and.set.it.a
4600 73 20 74 68 65 20 63 6c 69 70 20 6f 66 66 73 65 74 0a 20 20 20 20 20 20 20 20 69 6e 74 65 72 6e s.the.clip.offset.........intern
4620 61 6c 20 73 74 61 74 69 63 20 76 6f 69 64 20 41 64 64 54 72 61 63 6b 4f 66 66 73 65 74 28 41 6e al.static.void.AddTrackOffset(An
4640 69 6d 61 74 69 6f 6e 54 72 61 63 6b 20 74 72 61 63 6b 2c 20 55 6e 64 6f 50 72 6f 70 65 72 74 79 imationTrack.track,.UndoProperty
4660 4d 6f 64 69 66 69 63 61 74 69 6f 6e 5b 5d 20 6d 6f 64 73 2c 20 41 6e 69 6d 61 74 69 6f 6e 43 6c Modification[].mods,.AnimationCl
4680 69 70 20 63 6c 69 70 2c 20 41 6e 69 6d 61 74 6f 72 20 61 6e 69 6d 61 74 6f 72 29 0a 20 20 20 20 ip.clip,.Animator.animator).....
46a0 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 63 6f 70 79 54 72 61 63 6b 4f ....{.............var.copyTrackO
46c0 66 66 73 65 74 20 3d 20 21 74 72 61 63 6b 2e 69 6e 43 6c 69 70 4d 6f 64 65 20 26 26 0a 20 20 20 ffset.=.!track.inClipMode.&&....
46e0 20 20 20 20 20 20 20 20 20 20 20 20 20 21 43 6c 69 70 48 61 73 50 6f 73 69 74 69 6f 6e 4f 72 52 .............!ClipHasPositionOrR
4700 6f 74 61 74 69 6f 6e 28 63 6c 69 70 29 20 26 26 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 otation(clip).&&................
4720 20 6d 6f 64 73 2e 41 6e 79 28 78 20 3d 3e 20 49 73 50 6f 73 69 74 69 6f 6e 4f 72 52 6f 74 61 74 .mods.Any(x.=>.IsPositionOrRotat
4740 69 6f 6e 28 78 29 20 26 26 20 49 73 52 6f 6f 74 4d 6f 64 69 66 69 63 61 74 69 6f 6e 28 78 29 29 ion(x).&&.IsRootModification(x))
4760 20 26 26 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 6e 69 6d 61 74 6f 72 20 21 3d 20 .&&.................animator.!=.
4780 6e 75 6c 6c 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 63 6f 70 79 54 72 61 63 6b 4f null;.............if.(copyTrackO
47a0 66 66 73 65 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 ffset).............{............
47c0 20 20 20 20 20 2f 2f 20 69 6e 20 73 63 65 6e 65 20 6f 66 66 73 65 74 20 6d 6f 64 65 2c 20 6d 61 .....//.in.scene.offset.mode,.ma
47e0 6b 65 73 20 73 75 72 65 20 77 65 20 68 61 76 65 20 74 68 65 20 63 6f 72 72 65 63 74 20 69 6e 69 kes.sure.we.have.the.correct.ini
4800 74 69 61 6c 20 74 72 61 6e 73 66 6f 72 6d 20 73 65 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 tial.transform.set..............
4820 20 20 20 69 66 20 28 74 72 61 63 6b 2e 74 72 61 63 6b 4f 66 66 73 65 74 20 3d 3d 20 54 72 61 63 ...if.(track.trackOffset.==.Trac
4840 6b 4f 66 66 73 65 74 2e 41 70 70 6c 79 53 63 65 6e 65 4f 66 66 73 65 74 73 29 0a 20 20 20 20 20 kOffset.ApplySceneOffsets)......
4860 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...........{....................
4880 20 76 61 72 20 72 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 20 3d 20 47 65 74 49 6e 69 74 69 61 6c .var.rigidTransform.=.GetInitial
48a0 54 72 61 6e 73 66 6f 72 6d 28 6d 6f 64 73 2c 20 61 6e 69 6d 61 74 6f 72 29 3b 0a 20 20 20 20 20 Transform(mods,.animator);......
48c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 72 61 63 6b 2e 73 63 65 6e 65 4f 66 66 73 65 74 ...............track.sceneOffset
48e0 50 6f 73 69 74 69 6f 6e 20 3d 20 72 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 2e 70 6f 73 69 74 69 Position.=.rigidTransform.positi
4900 6f 6e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 72 61 63 6b 2e 73 63 on;.....................track.sc
4920 65 6e 65 4f 66 66 73 65 74 52 6f 74 61 74 69 6f 6e 20 3d 20 72 69 67 69 64 54 72 61 6e 73 66 6f eneOffsetRotation.=.rigidTransfo
4940 72 6d 2e 72 6f 74 61 74 69 6f 6e 2e 65 75 6c 65 72 41 6e 67 6c 65 73 3b 0a 20 20 20 20 20 20 20 rm.rotation.eulerAngles;........
4960 20 20 20 20 20 20 20 20 20 20 20 20 20 53 65 74 50 72 65 76 69 6f 75 73 50 6f 73 69 74 69 6f 6e .............SetPreviousPosition
4980 41 6e 64 52 6f 74 61 74 69 6f 6e 28 6d 6f 64 73 2c 20 61 6e 69 6d 61 74 6f 72 2c 20 72 69 67 69 AndRotation(mods,.animator,.rigi
49a0 64 54 72 61 6e 73 66 6f 72 6d 2e 70 6f 73 69 74 69 6f 6e 2c 20 72 69 67 69 64 54 72 61 6e 73 66 dTransform.position,.rigidTransf
49c0 6f 72 6d 2e 72 6f 74 61 74 69 6f 6e 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d orm.rotation);.................}
49e0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 20 20 20 20 .................else...........
4a00 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 ......{.....................var.
4a20 72 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 20 3d 20 43 6f 6d 70 75 74 65 49 6e 69 74 69 61 6c 43 rigidTransform.=.ComputeInitialC
4a40 6c 69 70 4f 66 66 73 65 74 73 28 74 72 61 63 6b 2c 20 6d 6f 64 73 2c 20 61 6e 69 6d 61 74 6f 72 lipOffsets(track,.mods,.animator
4a60 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 72 61 63 6b 2e 69 6e 66 );.....................track.inf
4a80 69 6e 69 74 65 43 6c 69 70 4f 66 66 73 65 74 50 6f 73 69 74 69 6f 6e 20 3d 20 72 69 67 69 64 54 initeClipOffsetPosition.=.rigidT
4aa0 72 61 6e 73 66 6f 72 6d 2e 70 6f 73 69 74 69 6f 6e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ransform.position;..............
4ac0 20 20 20 20 20 20 20 74 72 61 63 6b 2e 69 6e 66 69 6e 69 74 65 43 6c 69 70 4f 66 66 73 65 74 45 .......track.infiniteClipOffsetE
4ae0 75 6c 65 72 41 6e 67 6c 65 73 20 3d 20 72 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 2e 72 6f 74 61 ulerAngles.=.rigidTransform.rota
4b00 74 69 6f 6e 2e 65 75 6c 65 72 41 6e 67 6c 65 73 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tion.eulerAngles;...............
4b20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 ..}.............}.........}.....
4b40 20 20 20 20 20 69 6e 74 65 72 6e 61 6c 20 73 74 61 74 69 63 20 76 6f 69 64 20 41 64 64 43 6c 69 .....internal.static.void.AddCli
4b60 70 4f 66 66 73 65 74 28 41 6e 69 6d 61 74 69 6f 6e 54 72 61 63 6b 20 74 72 61 63 6b 2c 20 55 6e pOffset(AnimationTrack.track,.Un
4b80 64 6f 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 69 63 61 74 69 6f 6e 5b 5d 20 6d 6f 64 73 2c 20 54 doPropertyModification[].mods,.T
4ba0 69 6d 65 6c 69 6e 65 43 6c 69 70 20 63 6c 69 70 2c 20 41 6e 69 6d 61 74 6f 72 20 61 6e 69 6d 61 imelineClip.clip,.Animator.anima
4bc0 74 6f 72 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 63 tor).........{.............if.(c
4be0 6c 69 70 20 3d 3d 20 6e 75 6c 6c 20 7c 7c 20 63 6c 69 70 2e 61 73 73 65 74 20 3d 3d 20 6e 75 6c lip.==.null.||.clip.asset.==.nul
4c00 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0a 0a 20 20 20 20 l).................return;......
4c20 20 20 20 20 20 20 20 20 76 61 72 20 63 6c 69 70 41 73 73 65 74 20 3d 20 63 6c 69 70 2e 61 73 73 ........var.clipAsset.=.clip.ass
4c40 65 74 20 61 73 20 41 6e 69 6d 61 74 69 6f 6e 50 6c 61 79 61 62 6c 65 41 73 73 65 74 3b 0a 20 20 et.as.AnimationPlayableAsset;...
4c60 20 20 20 20 20 20 20 20 20 20 76 61 72 20 63 6f 70 79 43 6c 69 70 4f 66 66 73 65 74 20 3d 20 74 ..........var.copyClipOffset.=.t
4c80 72 61 63 6b 2e 69 6e 43 6c 69 70 4d 6f 64 65 20 26 26 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 rack.inClipMode.&&..............
4ca0 20 20 20 63 6c 69 70 41 73 73 65 74 20 21 3d 20 6e 75 6c 6c 20 26 26 20 21 43 6c 69 70 48 61 73 ...clipAsset.!=.null.&&.!ClipHas
4cc0 50 6f 73 69 74 69 6f 6e 4f 72 52 6f 74 61 74 69 6f 6e 28 63 6c 69 70 41 73 73 65 74 2e 63 6c 69 PositionOrRotation(clipAsset.cli
4ce0 70 29 20 26 26 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 6f 64 73 2e 41 6e 79 28 78 p).&&.................mods.Any(x
4d00 20 3d 3e 20 49 73 50 6f 73 69 74 69 6f 6e 4f 72 52 6f 74 61 74 69 6f 6e 28 78 29 20 26 26 20 49 .=>.IsPositionOrRotation(x).&&.I
4d20 73 52 6f 6f 74 4d 6f 64 69 66 69 63 61 74 69 6f 6e 28 78 29 29 20 26 26 0a 20 20 20 20 20 20 20 sRootModification(x)).&&........
4d40 20 20 20 20 20 20 20 20 20 61 6e 69 6d 61 74 6f 72 20 21 3d 20 6e 75 6c 6c 3b 0a 20 20 20 20 20 .........animator.!=.null;......
4d60 20 20 20 20 20 20 20 69 66 20 28 63 6f 70 79 43 6c 69 70 4f 66 66 73 65 74 29 0a 20 20 20 20 20 .......if.(copyClipOffset)......
4d80 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 72 69 67 .......{.................var.rig
4da0 69 64 54 72 61 6e 73 66 6f 72 6d 20 3d 20 43 6f 6d 70 75 74 65 49 6e 69 74 69 61 6c 43 6c 69 70 idTransform.=.ComputeInitialClip
4dc0 4f 66 66 73 65 74 73 28 74 72 61 63 6b 2c 20 6d 6f 64 73 2c 20 61 6e 69 6d 61 74 6f 72 29 3b 0a Offsets(track,.mods,.animator);.
4de0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6c 69 70 41 73 73 65 74 2e 70 6f 73 69 74 .................clipAsset.posit
4e00 69 6f 6e 20 3d 20 72 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 2e 70 6f 73 69 74 69 6f 6e 3b 0a 20 ion.=.rigidTransform.position;..
4e20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6c 69 70 41 73 73 65 74 2e 72 6f 74 61 74 69 6f ...............clipAsset.rotatio
4e40 6e 20 3d 20 72 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 2e 72 6f 74 61 74 69 6f 6e 3b 0a 20 20 20 n.=.rigidTransform.rotation;....
4e60 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 69 6e .........}.........}..........in
4e80 74 65 72 6e 61 6c 20 73 74 61 74 69 63 20 54 69 6d 65 6c 69 6e 65 41 6e 69 6d 61 74 69 6f 6e 55 ternal.static.TimelineAnimationU
4ea0 74 69 6c 69 74 69 65 73 2e 52 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 20 47 65 74 4c 6f 63 61 6c tilities.RigidTransform.GetLocal
4ec0 54 6f 54 72 61 63 6b 28 41 6e 69 6d 61 74 69 6f 6e 54 72 61 63 6b 20 74 72 61 63 6b 2c 20 54 69 ToTrack(AnimationTrack.track,.Ti
4ee0 6d 65 6c 69 6e 65 43 6c 69 70 20 63 6c 69 70 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 melineClip.clip).........{......
4f00 20 20 20 20 20 20 20 69 66 20 28 74 72 61 63 6b 20 3d 3d 20 6e 75 6c 6c 29 0a 20 20 20 20 20 20 .......if.(track.==.null).......
4f20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 54 69 6d 65 6c 69 6e 65 41 6e 69 6d 61 74 69 ..........return.TimelineAnimati
4f40 6f 6e 55 74 69 6c 69 74 69 65 73 2e 52 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 2e 43 6f 6d 70 6f onUtilities.RigidTransform.Compo
4f60 73 65 28 56 65 63 74 6f 72 33 2e 7a 65 72 6f 2c 20 51 75 61 74 65 72 6e 69 6f 6e 2e 69 64 65 6e se(Vector3.zero,.Quaternion.iden
4f80 74 69 74 79 29 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 74 72 61 63 6b 50 6f 73 tity);..............var.trackPos
4fa0 20 3d 20 74 72 61 63 6b 2e 70 6f 73 69 74 69 6f 6e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 .=.track.position;.............v
4fc0 61 72 20 74 72 61 63 6b 52 6f 74 20 3d 20 74 72 61 63 6b 2e 72 6f 74 61 74 69 6f 6e 3b 0a 0a 20 ar.trackRot.=.track.rotation;...
4fe0 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 74 72 61 63 6b 2e 74 72 61 63 6b 4f 66 66 73 65 74 ...........if.(track.trackOffset
5000 20 3d 3d 20 54 72 61 63 6b 4f 66 66 73 65 74 2e 41 70 70 6c 79 53 63 65 6e 65 4f 66 66 73 65 74 .==.TrackOffset.ApplySceneOffset
5020 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 s).............{................
5040 20 74 72 61 63 6b 50 6f 73 20 3d 20 74 72 61 63 6b 2e 73 63 65 6e 65 4f 66 66 73 65 74 50 6f 73 .trackPos.=.track.sceneOffsetPos
5060 69 74 69 6f 6e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 72 61 63 6b 52 6f 74 20 ition;.................trackRot.
5080 3d 20 51 75 61 74 65 72 6e 69 6f 6e 2e 45 75 6c 65 72 28 74 72 61 63 6b 2e 73 63 65 6e 65 4f 66 =.Quaternion.Euler(track.sceneOf
50a0 66 73 65 74 52 6f 74 61 74 69 6f 6e 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 fsetRotation);.............}....
50c0 20 20 20 20 20 20 20 20 20 20 76 61 72 20 63 6c 69 70 57 72 61 70 70 65 72 20 3d 20 63 6c 69 70 ..........var.clipWrapper.=.clip
50e0 20 3d 3d 20 6e 75 6c 6c 20 3f 20 6e 75 6c 6c 20 3a 20 63 6c 69 70 2e 61 73 73 65 74 20 61 73 20 .==.null.?.null.:.clip.asset.as.
5100 41 6e 69 6d 61 74 69 6f 6e 50 6c 61 79 61 62 6c 65 41 73 73 65 74 3b 0a 20 20 20 20 20 20 20 20 AnimationPlayableAsset;.........
5120 20 20 20 20 76 61 72 20 63 6c 69 70 54 72 61 6e 73 66 6f 72 6d 20 3d 20 54 69 6d 65 6c 69 6e 65 ....var.clipTransform.=.Timeline
5140 41 6e 69 6d 61 74 69 6f 6e 55 74 69 6c 69 74 69 65 73 2e 52 69 67 69 64 54 72 61 6e 73 66 6f 72 AnimationUtilities.RigidTransfor
5160 6d 2e 43 6f 6d 70 6f 73 65 28 56 65 63 74 6f 72 33 2e 7a 65 72 6f 2c 20 51 75 61 74 65 72 6e 69 m.Compose(Vector3.zero,.Quaterni
5180 6f 6e 2e 69 64 65 6e 74 69 74 79 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 63 6c on.identity);.............if.(cl
51a0 69 70 57 72 61 70 70 65 72 20 21 3d 20 6e 75 6c 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b ipWrapper.!=.null).............{
51c0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6c 69 70 54 72 61 6e 73 66 6f 72 6d 20 3d .................clipTransform.=
51e0 20 54 69 6d 65 6c 69 6e 65 41 6e 69 6d 61 74 69 6f 6e 55 74 69 6c 69 74 69 65 73 2e 52 69 67 69 .TimelineAnimationUtilities.Rigi
5200 64 54 72 61 6e 73 66 6f 72 6d 2e 43 6f 6d 70 6f 73 65 28 63 6c 69 70 57 72 61 70 70 65 72 2e 70 dTransform.Compose(clipWrapper.p
5220 6f 73 69 74 69 6f 6e 2c 20 63 6c 69 70 57 72 61 70 70 65 72 2e 72 6f 74 61 74 69 6f 6e 29 3b 0a osition,.clipWrapper.rotation);.
5240 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0a 20 ............}.............else..
5260 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6c 69 ...........{.................cli
5280 70 54 72 61 6e 73 66 6f 72 6d 20 3d 20 54 69 6d 65 6c 69 6e 65 41 6e 69 6d 61 74 69 6f 6e 55 74 pTransform.=.TimelineAnimationUt
52a0 69 6c 69 74 69 65 73 2e 52 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 2e 43 6f 6d 70 6f 73 65 28 74 ilities.RigidTransform.Compose(t
52c0 72 61 63 6b 2e 69 6e 66 69 6e 69 74 65 43 6c 69 70 4f 66 66 73 65 74 50 6f 73 69 74 69 6f 6e 2c rack.infiniteClipOffsetPosition,
52e0 20 74 72 61 63 6b 2e 69 6e 66 69 6e 69 74 65 43 6c 69 70 4f 66 66 73 65 74 52 6f 74 61 74 69 6f .track.infiniteClipOffsetRotatio
5300 6e 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 n);.............}..............v
5320 61 72 20 74 72 61 63 6b 54 72 61 6e 73 66 6f 72 6d 20 3d 20 54 69 6d 65 6c 69 6e 65 41 6e 69 6d ar.trackTransform.=.TimelineAnim
5340 61 74 69 6f 6e 55 74 69 6c 69 74 69 65 73 2e 52 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 2e 43 6f ationUtilities.RigidTransform.Co
5360 6d 70 6f 73 65 28 74 72 61 63 6b 50 6f 73 2c 20 74 72 61 63 6b 52 6f 74 29 3b 0a 0a 20 20 20 20 mpose(trackPos,.trackRot);......
5380 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 54 69 6d 65 6c 69 6e 65 41 6e 69 6d 61 74 69 6f 6e ........return.TimelineAnimation
53a0 55 74 69 6c 69 74 69 65 73 2e 52 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 2e 4d 75 6c 28 74 72 61 Utilities.RigidTransform.Mul(tra
53c0 63 6b 54 72 61 6e 73 66 6f 72 6d 2c 20 63 6c 69 70 54 72 61 6e 73 66 6f 72 6d 29 3b 0a 20 20 20 ckTransform,.clipTransform);....
53e0 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 2f 2f 20 43 68 65 63 6b 73 20 77 68 65 74 68 65 .....}..........//.Checks.whethe
5400 72 20 74 68 65 72 65 20 61 72 65 20 61 6e 79 20 6f 66 66 73 65 74 73 20 61 70 70 6c 69 65 64 20 r.there.are.any.offsets.applied.
5420 74 6f 20 61 20 63 6c 69 70 0a 20 20 20 20 20 20 20 20 69 6e 74 65 72 6e 61 6c 20 73 74 61 74 69 to.a.clip.........internal.stati
5440 63 20 62 6f 6f 6c 20 48 61 73 4f 66 66 73 65 74 73 28 41 6e 69 6d 61 74 69 6f 6e 54 72 61 63 6b c.bool.HasOffsets(AnimationTrack
5460 20 74 72 61 63 6b 2c 20 54 69 6d 65 6c 69 6e 65 43 6c 69 70 20 63 6c 69 70 29 0a 20 20 20 20 20 .track,.TimelineClip.clip)......
5480 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 74 72 61 63 6b 20 3d 3d 20 6e 75 ...{.............if.(track.==.nu
54a0 6c 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 66 61 6c 73 65 ll).................return.false
54c0 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 62 6f 6f 6c 20 68 61 73 43 6c 69 70 4f 66 66 73 65 ;..............bool.hasClipOffse
54e0 74 73 20 3d 20 66 61 6c 73 65 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 62 6f 6f 6c 20 68 61 73 ts.=.false;.............bool.has
5500 54 72 61 63 6b 4f 66 66 73 65 74 73 20 3d 20 66 61 6c 73 65 3b 0a 0a 20 20 20 20 20 20 20 20 20 TrackOffsets.=.false;...........
5520 20 20 20 76 61 72 20 63 6c 69 70 57 72 61 70 70 65 72 20 3d 20 63 6c 69 70 20 3d 3d 20 6e 75 6c ...var.clipWrapper.=.clip.==.nul
5540 6c 20 3f 20 6e 75 6c 6c 20 3a 20 63 6c 69 70 2e 61 73 73 65 74 20 61 73 20 41 6e 69 6d 61 74 69 l.?.null.:.clip.asset.as.Animati
5560 6f 6e 50 6c 61 79 61 62 6c 65 41 73 73 65 74 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 onPlayableAsset;.............if.
5580 28 63 6c 69 70 57 72 61 70 70 65 72 20 21 3d 20 6e 75 6c 6c 29 0a 20 20 20 20 20 20 20 20 20 20 (clipWrapper.!=.null)...........
55a0 20 20 20 20 20 20 68 61 73 43 6c 69 70 4f 66 66 73 65 74 73 20 7c 3d 20 63 6c 69 70 57 72 61 70 ......hasClipOffsets.|=.clipWrap
55c0 70 65 72 2e 70 6f 73 69 74 69 6f 6e 20 21 3d 20 56 65 63 74 6f 72 33 2e 7a 65 72 6f 20 7c 7c 20 per.position.!=.Vector3.zero.||.
55e0 63 6c 69 70 57 72 61 70 70 65 72 2e 72 6f 74 61 74 69 6f 6e 20 21 3d 20 51 75 61 74 65 72 6e 69 clipWrapper.rotation.!=.Quaterni
5600 6f 6e 2e 69 64 65 6e 74 69 74 79 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 74 72 on.identity;..............if.(tr
5620 61 63 6b 2e 74 72 61 63 6b 4f 66 66 73 65 74 20 3d 3d 20 54 72 61 63 6b 4f 66 66 73 65 74 2e 41 ack.trackOffset.==.TrackOffset.A
5640 70 70 6c 79 53 63 65 6e 65 4f 66 66 73 65 74 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a pplySceneOffsets).............{.
5660 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 68 61 73 54 72 61 63 6b 4f 66 66 73 65 74 73 20 ................hasTrackOffsets.
5680 3d 20 74 72 61 63 6b 2e 73 63 65 6e 65 4f 66 66 73 65 74 50 6f 73 69 74 69 6f 6e 20 21 3d 20 56 =.track.sceneOffsetPosition.!=.V
56a0 65 63 74 6f 72 33 2e 7a 65 72 6f 20 7c 7c 20 74 72 61 63 6b 2e 73 63 65 6e 65 4f 66 66 73 65 74 ector3.zero.||.track.sceneOffset
56c0 52 6f 74 61 74 69 6f 6e 20 21 3d 20 56 65 63 74 6f 72 33 2e 7a 65 72 6f 3b 0a 20 20 20 20 20 20 Rotation.!=.Vector3.zero;.......
56e0 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 20 ......}.............else........
5700 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 68 61 73 54 72 61 63 6b 4f .....{.................hasTrackO
5720 66 66 73 65 74 73 20 3d 20 28 74 72 61 63 6b 2e 70 6f 73 69 74 69 6f 6e 20 21 3d 20 56 65 63 74 ffsets.=.(track.position.!=.Vect
5740 6f 72 33 2e 7a 65 72 6f 20 7c 7c 20 74 72 61 63 6b 2e 72 6f 74 61 74 69 6f 6e 20 21 3d 20 51 75 or3.zero.||.track.rotation.!=.Qu
5760 61 74 65 72 6e 69 6f 6e 2e 69 64 65 6e 74 69 74 79 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 aternion.identity);.............
5780 20 20 20 20 69 66 20 28 21 74 72 61 63 6b 2e 69 6e 43 6c 69 70 4d 6f 64 65 29 0a 20 20 20 20 20 ....if.(!track.inClipMode)......
57a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 68 61 73 43 6c 69 70 4f 66 66 73 65 74 73 20 7c 3d ...............hasClipOffsets.|=
57c0 20 74 72 61 63 6b 2e 69 6e 66 69 6e 69 74 65 43 6c 69 70 4f 66 66 73 65 74 50 6f 73 69 74 69 6f .track.infiniteClipOffsetPositio
57e0 6e 20 21 3d 20 56 65 63 74 6f 72 33 2e 7a 65 72 6f 20 7c 7c 20 74 72 61 63 6b 2e 69 6e 66 69 6e n.!=.Vector3.zero.||.track.infin
5800 69 74 65 43 6c 69 70 4f 66 66 73 65 74 52 6f 74 61 74 69 6f 6e 20 21 3d 20 51 75 61 74 65 72 6e iteClipOffsetRotation.!=.Quatern
5820 69 6f 6e 2e 69 64 65 6e 74 69 74 79 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 ion.identity;.............}.....
5840 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 68 61 73 54 72 61 63 6b 4f 66 66 73 65 74 73 20 .........return.hasTrackOffsets.
5860 7c 7c 20 68 61 73 43 6c 69 70 4f 66 66 73 65 74 73 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 ||.hasClipOffsets;.........}....
5880 20 20 20 20 20 20 69 6e 74 65 72 6e 61 6c 20 73 74 61 74 69 63 20 76 6f 69 64 20 52 65 6d 6f 76 ......internal.static.void.Remov
58a0 65 4f 66 66 73 65 74 73 28 55 6e 64 6f 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 69 63 61 74 69 6f eOffsets(UndoPropertyModificatio
58c0 6e 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 2c 20 41 6e 69 6d 61 74 69 6f 6e 54 72 61 63 6b 20 74 n.modification,.AnimationTrack.t
58e0 72 61 63 6b 2c 20 54 69 6d 65 6c 69 6e 65 43 6c 69 70 20 63 6c 69 70 2c 20 55 6e 64 6f 50 72 6f rack,.TimelineClip.clip,.UndoPro
5900 70 65 72 74 79 4d 6f 64 69 66 69 63 61 74 69 6f 6e 5b 5d 20 6d 6f 64 73 29 0a 20 20 20 20 20 20 pertyModification[].mods).......
5920 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 49 73 50 6f 73 69 74 69 6f 6e 4f 72 ..{.............if.(IsPositionOr
5940 52 6f 74 61 74 69 6f 6e 28 6d 6f 64 69 66 69 63 61 74 69 6f 6e 29 29 0a 20 20 20 20 20 20 20 20 Rotation(modification)).........
5960 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6d 6f 64 69 66 69 ....{.................var.modifi
5980 65 64 47 4f 20 3d 20 47 65 74 47 61 6d 65 4f 62 6a 65 63 74 46 72 6f 6d 4d 6f 64 69 66 69 63 61 edGO.=.GetGameObjectFromModifica
59a0 74 69 6f 6e 28 6d 6f 64 69 66 69 63 61 74 69 6f 6e 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 tion(modification);.............
59c0 20 20 20 20 76 61 72 20 74 61 72 67 65 74 20 3d 20 54 69 6d 65 6c 69 6e 65 41 6e 69 6d 61 74 69 ....var.target.=.TimelineAnimati
59e0 6f 6e 55 74 69 6c 69 74 69 65 73 2e 52 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 2e 43 6f 6d 70 6f onUtilities.RigidTransform.Compo
5a00 73 65 28 6d 6f 64 69 66 69 65 64 47 4f 2e 74 72 61 6e 73 66 6f 72 6d 2e 6c 6f 63 61 6c 50 6f 73 se(modifiedGO.transform.localPos
5a20 69 74 69 6f 6e 2c 20 6d 6f 64 69 66 69 65 64 47 4f 2e 74 72 61 6e 73 66 6f 72 6d 2e 6c 6f 63 61 ition,.modifiedGO.transform.loca
5a40 6c 52 6f 74 61 74 69 6f 6e 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 lRotation);.................var.
5a60 6c 6f 63 61 6c 54 6f 54 72 61 63 6b 20 3d 20 47 65 74 4c 6f 63 61 6c 54 6f 54 72 61 63 6b 28 74 localToTrack.=.GetLocalToTrack(t
5a80 72 61 63 6b 2c 20 63 6c 69 70 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 rack,.clip);.................var
5aa0 20 74 72 61 63 6b 54 6f 4c 6f 63 61 6c 20 3d 20 54 69 6d 65 6c 69 6e 65 41 6e 69 6d 61 74 69 6f .trackToLocal.=.TimelineAnimatio
5ac0 6e 55 74 69 6c 69 74 69 65 73 2e 52 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 2e 49 6e 76 65 72 73 nUtilities.RigidTransform.Invers
5ae0 65 28 6c 6f 63 61 6c 54 6f 54 72 61 63 6b 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e(localToTrack);................
5b00 20 76 61 72 20 6c 6f 63 61 6c 53 70 61 63 65 20 3d 20 54 69 6d 65 6c 69 6e 65 41 6e 69 6d 61 74 .var.localSpace.=.TimelineAnimat
5b20 69 6f 6e 55 74 69 6c 69 74 69 65 73 2e 52 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 2e 4d 75 6c 28 ionUtilities.RigidTransform.Mul(
5b40 74 72 61 63 6b 54 6f 4c 6f 63 61 6c 2c 20 74 61 72 67 65 74 29 3b 0a 0a 20 20 20 20 20 20 20 20 trackToLocal,.target);..........
5b60 20 20 20 20 20 20 20 20 2f 2f 20 55 70 64 61 74 65 20 74 68 65 20 75 6e 64 6f 20 63 61 6c 6c 20 ........//.Update.the.undo.call.
5b80 76 61 6c 75 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 70 72 65 76 50 values.................var.prevP
5ba0 6f 73 20 3d 20 6d 6f 64 69 66 69 65 64 47 4f 2e 74 72 61 6e 73 66 6f 72 6d 2e 6c 6f 63 61 6c 50 os.=.modifiedGO.transform.localP
5bc0 6f 73 69 74 69 6f 6e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 70 72 65 osition;.................var.pre
5be0 76 52 6f 74 20 3d 20 6d 6f 64 69 66 69 65 64 47 4f 2e 74 72 61 6e 73 66 6f 72 6d 2e 6c 6f 63 61 vRot.=.modifiedGO.transform.loca
5c00 6c 52 6f 74 61 74 69 6f 6e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 47 65 74 50 72 lRotation;.................GetPr
5c20 65 76 69 6f 75 73 50 6f 73 69 74 69 6f 6e 41 6e 64 52 6f 74 61 74 69 6f 6e 28 6d 6f 64 73 2c 20 eviousPositionAndRotation(mods,.
5c40 72 65 66 20 70 72 65 76 50 6f 73 2c 20 72 65 66 20 70 72 65 76 52 6f 74 29 3b 0a 20 20 20 20 20 ref.prevPos,.ref.prevRot);......
5c60 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 70 72 65 76 69 6f 75 73 52 69 67 69 64 54 72 61 6e ...........var.previousRigidTran
5c80 73 66 6f 72 6d 20 3d 20 54 69 6d 65 6c 69 6e 65 41 6e 69 6d 61 74 69 6f 6e 55 74 69 6c 69 74 69 sform.=.TimelineAnimationUtiliti
5ca0 65 73 2e 52 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 2e 4d 75 6c 28 74 72 61 63 6b 54 6f 4c 6f 63 es.RigidTransform.Mul(trackToLoc
5cc0 61 6c 2c 20 54 69 6d 65 6c 69 6e 65 41 6e 69 6d 61 74 69 6f 6e 55 74 69 6c 69 74 69 65 73 2e 52 al,.TimelineAnimationUtilities.R
5ce0 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 2e 43 6f 6d 70 6f 73 65 28 70 72 65 76 50 6f 73 2c 20 70 igidTransform.Compose(prevPos,.p
5d00 72 65 76 52 6f 74 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 53 65 74 50 72 65 revRot));.................SetPre
5d20 76 69 6f 75 73 50 6f 73 69 74 69 6f 6e 41 6e 64 52 6f 74 61 74 69 6f 6e 28 6d 6f 64 73 2c 20 70 viousPositionAndRotation(mods,.p
5d40 72 65 76 69 6f 75 73 52 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 2e 70 6f 73 69 74 69 6f 6e 2c 20 reviousRigidTransform.position,.
5d60 70 72 65 76 69 6f 75 73 52 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 2e 72 6f 74 61 74 69 6f 6e 29 previousRigidTransform.rotation)
5d80 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 63 75 72 72 65 6e 74 50 6f ;..................var.currentPo
5da0 73 20 3d 20 6d 6f 64 69 66 69 65 64 47 4f 2e 74 72 61 6e 73 66 6f 72 6d 2e 6c 6f 63 61 6c 50 6f s.=.modifiedGO.transform.localPo
5dc0 73 69 74 69 6f 6e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 63 75 72 72 sition;.................var.curr
5de0 65 6e 74 52 6f 74 20 3d 20 6d 6f 64 69 66 69 65 64 47 4f 2e 74 72 61 6e 73 66 6f 72 6d 2e 6c 6f entRot.=.modifiedGO.transform.lo
5e00 63 61 6c 52 6f 74 61 74 69 6f 6e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 47 65 74 calRotation;.................Get
5e20 43 75 72 72 65 6e 74 50 6f 73 69 74 69 6f 6e 41 6e 64 52 6f 74 61 74 69 6f 6e 28 6d 6f 64 73 2c CurrentPositionAndRotation(mods,
5e40 20 72 65 66 20 63 75 72 72 65 6e 74 50 6f 73 2c 20 72 65 66 20 63 75 72 72 65 6e 74 52 6f 74 29 .ref.currentPos,.ref.currentRot)
5e60 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 63 75 72 72 65 6e 74 52 69 67 ;.................var.currentRig
5e80 69 64 54 72 61 6e 73 66 6f 72 6d 20 3d 20 54 69 6d 65 6c 69 6e 65 41 6e 69 6d 61 74 69 6f 6e 55 idTransform.=.TimelineAnimationU
5ea0 74 69 6c 69 74 69 65 73 2e 52 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 2e 4d 75 6c 28 74 72 61 63 tilities.RigidTransform.Mul(trac
5ec0 6b 54 6f 4c 6f 63 61 6c 2c 20 54 69 6d 65 6c 69 6e 65 41 6e 69 6d 61 74 69 6f 6e 55 74 69 6c 69 kToLocal,.TimelineAnimationUtili
5ee0 74 69 65 73 2e 52 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 2e 43 6f 6d 70 6f 73 65 28 63 75 72 72 ties.RigidTransform.Compose(curr
5f00 65 6e 74 50 6f 73 2c 20 63 75 72 72 65 6e 74 52 6f 74 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 entPos,.currentRot));...........
5f20 20 20 20 20 20 20 53 65 74 43 75 72 72 65 6e 74 50 6f 73 69 74 69 6f 6e 41 6e 64 52 6f 74 61 74 ......SetCurrentPositionAndRotat
5f40 69 6f 6e 28 6d 6f 64 73 2c 20 63 75 72 72 65 6e 74 52 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 2e ion(mods,.currentRigidTransform.
5f60 70 6f 73 69 74 69 6f 6e 2c 20 63 75 72 72 65 6e 74 52 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 2e position,.currentRigidTransform.
5f80 72 6f 74 61 74 69 6f 6e 29 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 6f 64 69 rotation);..................modi
5fa0 66 69 65 64 47 4f 2e 74 72 61 6e 73 66 6f 72 6d 2e 6c 6f 63 61 6c 50 6f 73 69 74 69 6f 6e 20 3d fiedGO.transform.localPosition.=
5fc0 20 6c 6f 63 61 6c 53 70 61 63 65 2e 70 6f 73 69 74 69 6f 6e 3b 0a 20 20 20 20 20 20 20 20 20 20 .localSpace.position;...........
5fe0 20 20 20 20 20 20 6d 6f 64 69 66 69 65 64 47 4f 2e 74 72 61 6e 73 66 6f 72 6d 2e 6c 6f 63 61 6c ......modifiedGO.transform.local
6000 52 6f 74 61 74 69 6f 6e 20 3d 20 6c 6f 63 61 6c 53 70 61 63 65 2e 72 6f 74 61 74 69 6f 6e 3b 0a Rotation.=.localSpace.rotation;.
6020 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 ............}.........}.........
6040 20 69 6e 74 65 72 6e 61 6c 20 73 74 61 74 69 63 20 76 6f 69 64 20 52 65 61 70 70 6c 79 4f 66 66 .internal.static.void.ReapplyOff
6060 73 65 74 73 28 55 6e 64 6f 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 69 63 61 74 69 6f 6e 20 6d 6f sets(UndoPropertyModification.mo
6080 64 69 66 69 63 61 74 69 6f 6e 2c 20 41 6e 69 6d 61 74 69 6f 6e 54 72 61 63 6b 20 74 72 61 63 6b dification,.AnimationTrack.track
60a0 2c 20 54 69 6d 65 6c 69 6e 65 43 6c 69 70 20 63 6c 69 70 2c 20 55 6e 64 6f 50 72 6f 70 65 72 74 ,.TimelineClip.clip,.UndoPropert
60c0 79 4d 6f 64 69 66 69 63 61 74 69 6f 6e 5b 5d 20 6d 6f 64 73 29 0a 20 20 20 20 20 20 20 20 7b 0a yModification[].mods).........{.
60e0 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 49 73 50 6f 73 69 74 69 6f 6e 4f 72 52 6f 74 61 ............if.(IsPositionOrRota
6100 74 69 6f 6e 28 6d 6f 64 69 66 69 63 61 74 69 6f 6e 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 tion(modification)).............
6120 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6d 6f 64 69 66 69 65 64 47 4f {.................var.modifiedGO
6140 20 3d 20 47 65 74 47 61 6d 65 4f 62 6a 65 63 74 46 72 6f 6d 4d 6f 64 69 66 69 63 61 74 69 6f 6e .=.GetGameObjectFromModification
6160 28 6d 6f 64 69 66 69 63 61 74 69 6f 6e 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 (modification);.................
6180 76 61 72 20 74 61 72 67 65 74 20 3d 20 54 69 6d 65 6c 69 6e 65 41 6e 69 6d 61 74 69 6f 6e 55 74 var.target.=.TimelineAnimationUt
61a0 69 6c 69 74 69 65 73 2e 52 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 2e 43 6f 6d 70 6f 73 65 28 6d ilities.RigidTransform.Compose(m
61c0 6f 64 69 66 69 65 64 47 4f 2e 74 72 61 6e 73 66 6f 72 6d 2e 6c 6f 63 61 6c 50 6f 73 69 74 69 6f odifiedGO.transform.localPositio
61e0 6e 2c 20 6d 6f 64 69 66 69 65 64 47 4f 2e 74 72 61 6e 73 66 6f 72 6d 2e 6c 6f 63 61 6c 52 6f 74 n,.modifiedGO.transform.localRot
6200 61 74 69 6f 6e 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6c 6f 63 61 ation);.................var.loca
6220 6c 54 6f 54 72 61 63 6b 20 3d 20 47 65 74 4c 6f 63 61 6c 54 6f 54 72 61 63 6b 28 74 72 61 63 6b lToTrack.=.GetLocalToTrack(track
6240 2c 20 63 6c 69 70 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 74 72 61 ,.clip);.................var.tra
6260 63 6b 53 70 61 63 65 20 3d 20 54 69 6d 65 6c 69 6e 65 41 6e 69 6d 61 74 69 6f 6e 55 74 69 6c 69 ckSpace.=.TimelineAnimationUtili
6280 74 69 65 73 2e 52 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 2e 4d 75 6c 28 6c 6f 63 61 6c 54 6f 54 ties.RigidTransform.Mul(localToT
62a0 72 61 63 6b 2c 20 74 61 72 67 65 74 29 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rack,.target);..................
62c0 2f 2f 20 55 70 64 61 74 65 20 74 68 65 20 75 6e 64 6f 20 63 61 6c 6c 20 76 61 6c 75 65 73 0a 20 //.Update.the.undo.call.values..
62e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 70 72 65 76 50 6f 73 20 3d 20 6d 6f 64 ...............var.prevPos.=.mod
6300 69 66 69 65 64 47 4f 2e 74 72 61 6e 73 66 6f 72 6d 2e 6c 6f 63 61 6c 50 6f 73 69 74 69 6f 6e 3b ifiedGO.transform.localPosition;
6320 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 70 72 65 76 52 6f 74 20 3d 20 6d .................var.prevRot.=.m
6340 6f 64 69 66 69 65 64 47 4f 2e 74 72 61 6e 73 66 6f 72 6d 2e 6c 6f 63 61 6c 52 6f 74 61 74 69 6f odifiedGO.transform.localRotatio
6360 6e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 47 65 74 50 72 65 76 69 6f 75 73 50 6f n;.................GetPreviousPo
6380 73 69 74 69 6f 6e 41 6e 64 52 6f 74 61 74 69 6f 6e 28 6d 6f 64 73 2c 20 72 65 66 20 70 72 65 76 sitionAndRotation(mods,.ref.prev
63a0 50 6f 73 2c 20 72 65 66 20 70 72 65 76 52 6f 74 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 Pos,.ref.prevRot);..............
63c0 20 20 20 76 61 72 20 70 72 65 76 69 6f 75 73 52 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 20 3d 20 ...var.previousRigidTransform.=.
63e0 54 69 6d 65 6c 69 6e 65 41 6e 69 6d 61 74 69 6f 6e 55 74 69 6c 69 74 69 65 73 2e 52 69 67 69 64 TimelineAnimationUtilities.Rigid
6400 54 72 61 6e 73 66 6f 72 6d 2e 4d 75 6c 28 6c 6f 63 61 6c 54 6f 54 72 61 63 6b 2c 20 54 69 6d 65 Transform.Mul(localToTrack,.Time
6420 6c 69 6e 65 41 6e 69 6d 61 74 69 6f 6e 55 74 69 6c 69 74 69 65 73 2e 52 69 67 69 64 54 72 61 6e lineAnimationUtilities.RigidTran
6440 73 66 6f 72 6d 2e 43 6f 6d 70 6f 73 65 28 70 72 65 76 50 6f 73 2c 20 70 72 65 76 52 6f 74 29 29 sform.Compose(prevPos,.prevRot))
6460 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 53 65 74 50 72 65 76 69 6f 75 73 50 6f 73 ;.................SetPreviousPos
6480 69 74 69 6f 6e 41 6e 64 52 6f 74 61 74 69 6f 6e 28 6d 6f 64 73 2c 20 70 72 65 76 69 6f 75 73 52 itionAndRotation(mods,.previousR
64a0 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 2e 70 6f 73 69 74 69 6f 6e 2c 20 70 72 65 76 69 6f 75 73 igidTransform.position,.previous
64c0 52 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 2e 72 6f 74 61 74 69 6f 6e 29 3b 0a 0a 20 20 20 20 20 RigidTransform.rotation);.......
64e0 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 63 75 72 72 65 6e 74 50 6f 73 20 3d 20 6d 6f 64 69 ...........var.currentPos.=.modi
6500 66 69 65 64 47 4f 2e 74 72 61 6e 73 66 6f 72 6d 2e 6c 6f 63 61 6c 50 6f 73 69 74 69 6f 6e 3b 0a fiedGO.transform.localPosition;.
6520 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 63 75 72 72 65 6e 74 52 6f 74 20 3d ................var.currentRot.=
6540 20 6d 6f 64 69 66 69 65 64 47 4f 2e 74 72 61 6e 73 66 6f 72 6d 2e 6c 6f 63 61 6c 52 6f 74 61 74 .modifiedGO.transform.localRotat
6560 69 6f 6e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 47 65 74 43 75 72 72 65 6e 74 50 ion;.................GetCurrentP
6580 6f 73 69 74 69 6f 6e 41 6e 64 52 6f 74 61 74 69 6f 6e 28 6d 6f 64 73 2c 20 72 65 66 20 63 75 72 ositionAndRotation(mods,.ref.cur
65a0 72 65 6e 74 50 6f 73 2c 20 72 65 66 20 63 75 72 72 65 6e 74 52 6f 74 29 3b 0a 20 20 20 20 20 20 rentPos,.ref.currentRot);.......
65c0 20 20 20 20 20 20 20 20 20 20 76 61 72 20 63 75 72 72 65 6e 74 52 69 67 69 64 54 72 61 6e 73 66 ..........var.currentRigidTransf
65e0 6f 72 6d 20 3d 20 54 69 6d 65 6c 69 6e 65 41 6e 69 6d 61 74 69 6f 6e 55 74 69 6c 69 74 69 65 73 orm.=.TimelineAnimationUtilities
6600 2e 52 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 2e 4d 75 6c 28 6c 6f 63 61 6c 54 6f 54 72 61 63 6b .RigidTransform.Mul(localToTrack
6620 2c 20 54 69 6d 65 6c 69 6e 65 41 6e 69 6d 61 74 69 6f 6e 55 74 69 6c 69 74 69 65 73 2e 52 69 67 ,.TimelineAnimationUtilities.Rig
6640 69 64 54 72 61 6e 73 66 6f 72 6d 2e 43 6f 6d 70 6f 73 65 28 63 75 72 72 65 6e 74 50 6f 73 2c 20 idTransform.Compose(currentPos,.
6660 63 75 72 72 65 6e 74 52 6f 74 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 53 65 currentRot));.................Se
6680 74 43 75 72 72 65 6e 74 50 6f 73 69 74 69 6f 6e 41 6e 64 52 6f 74 61 74 69 6f 6e 28 6d 6f 64 73 tCurrentPositionAndRotation(mods
66a0 2c 20 63 75 72 72 65 6e 74 52 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 2e 70 6f 73 69 74 69 6f 6e ,.currentRigidTransform.position
66c0 2c 20 63 75 72 72 65 6e 74 52 69 67 69 64 54 72 61 6e 73 66 6f 72 6d 2e 72 6f 74 61 74 69 6f 6e ,.currentRigidTransform.rotation
66e0 29 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 6f 64 69 66 69 65 64 47 4f 2e 74 );..................modifiedGO.t
6700 72 61 6e 73 66 6f 72 6d 2e 6c 6f 63 61 6c 50 6f 73 69 74 69 6f 6e 20 3d 20 74 72 61 63 6b 53 70 ransform.localPosition.=.trackSp
6720 61 63 65 2e 70 6f 73 69 74 69 6f 6e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 6f ace.position;.................mo
6740 64 69 66 69 65 64 47 4f 2e 74 72 61 6e 73 66 6f 72 6d 2e 6c 6f 63 61 6c 52 6f 74 61 74 69 6f 6e difiedGO.transform.localRotation
6760 20 3d 20 74 72 61 63 6b 53 70 61 63 65 2e 72 6f 74 61 74 69 6f 6e 3b 0a 20 20 20 20 20 20 20 20 .=.trackSpace.rotation;.........
6780 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 2f 2f 20 54 68 69 73 ....}.........}..........//.This
67a0 20 77 69 6c 6c 20 67 61 74 68 65 72 20 74 68 65 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 20 74 .will.gather.the.modifications.t
67c0 68 61 74 20 6d 6f 64 69 66 79 20 74 68 65 20 73 61 6d 65 20 70 72 6f 70 65 72 74 79 20 6f 6e 20 hat.modify.the.same.property.on.
67e0 74 68 65 20 73 61 6d 65 20 6f 62 6a 65 63 74 20 28 72 67 62 61 20 6f 66 20 61 20 63 6f 6c 6f 72 the.same.object.(rgba.of.a.color
6800 2c 20 78 79 7a 77 20 6f 66 20 61 20 76 65 63 74 6f 72 29 0a 20 20 20 20 20 20 20 20 2f 2f 20 20 ,.xyzw.of.a.vector).........//..
6820 4e 6f 74 65 3a 20 54 68 69 73 20 77 69 6c 6c 20 6d 6f 64 69 66 79 20 74 68 65 20 6c 69 73 74 2c Note:.This.will.modify.the.list,
6840 20 72 65 6d 6f 76 69 6e 67 20 61 6e 79 20 65 6c 65 6d 65 6e 74 73 20 74 68 61 74 20 6d 61 74 63 .removing.any.elements.that.matc
6860 68 0a 20 20 20 20 20 20 20 20 73 74 61 74 69 63 20 55 6e 64 6f 50 72 6f 70 65 72 74 79 4d 6f 64 h.........static.UndoPropertyMod
6880 69 66 69 63 61 74 69 6f 6e 5b 5d 20 47 61 74 68 65 72 52 65 6c 61 74 65 64 4d 6f 64 69 66 69 63 ification[].GatherRelatedModific
68a0 61 74 69 6f 6e 73 28 55 6e 64 6f 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 69 63 61 74 69 6f 6e 20 ations(UndoPropertyModification.
68c0 74 6f 4d 61 74 63 68 2c 20 4c 69 73 74 3c 55 6e 64 6f 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 69 toMatch,.List<UndoPropertyModifi
68e0 63 61 74 69 6f 6e 3e 20 6c 69 73 74 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 cation>.list).........{.........
6900 20 20 20 20 76 61 72 20 6d 61 74 63 68 69 6e 67 20 3d 20 6e 65 77 20 4c 69 73 74 3c 55 6e 64 6f ....var.matching.=.new.List<Undo
6920 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 69 63 61 74 69 6f 6e 3e 20 7b 74 6f 4d 61 74 63 68 7d 3b PropertyModification>.{toMatch};
6940 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 6c 69 73 74 2e ..............for.(var.i.=.list.
6960 43 6f 75 6e 74 20 2d 20 31 3b 20 69 20 3e 3d 20 30 3b 20 69 2d 2d 29 0a 20 20 20 20 20 20 20 20 Count.-.1;.i.>=.0;.i--).........
6980 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 75 6e 64 6f 20 3d ....{.................var.undo.=
69a0 20 6c 69 73 74 5b 69 5d 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 75 6e .list[i];.................if.(un
69c0 64 6f 2e 70 72 65 76 69 6f 75 73 56 61 6c 75 65 2e 74 61 72 67 65 74 20 3d 3d 20 74 6f 4d 61 74 do.previousValue.target.==.toMat
69e0 63 68 2e 70 72 65 76 69 6f 75 73 56 61 6c 75 65 2e 74 61 72 67 65 74 20 26 26 0a 20 20 20 20 20 ch.previousValue.target.&&......
6a00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 6f 65 73 50 72 6f 70 65 72 74 79 50 61 74 68 4d ...............DoesPropertyPathM
6a20 61 74 63 68 28 75 6e 64 6f 2e 70 72 65 76 69 6f 75 73 56 61 6c 75 65 2e 70 72 6f 70 65 72 74 79 atch(undo.previousValue.property
6a40 50 61 74 68 2c 20 74 6f 4d 61 74 63 68 2e 70 72 65 76 69 6f 75 73 56 61 6c 75 65 2e 70 72 6f 70 Path,.toMatch.previousValue.prop
6a60 65 72 74 79 50 61 74 68 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 ertyPath)).................{....
6a80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 74 63 68 69 6e 67 2e 41 64 64 28 75 6e .................matching.Add(un
6aa0 64 6f 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6c 69 73 74 2e 52 65 do);.....................list.Re
6ac0 6d 6f 76 65 41 74 28 69 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 moveAt(i);.................}....
6ae0 20 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6d .........}..............return.m
6b00 61 74 63 68 69 6e 67 2e 54 6f 41 72 72 61 79 28 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 atching.ToArray();.........}....
6b20 20 20 20 20 20 20 2f 2f 20 47 72 61 62 20 74 68 65 20 67 61 6d 65 20 6f 62 6a 65 63 74 20 6f 75 ......//.Grab.the.game.object.ou
6b40 74 20 6f 66 20 74 68 65 20 6d 6f 64 69 66 69 63 61 74 69 6f 6e 20 6f 62 6a 65 63 74 0a 20 20 20 t.of.the.modification.object....
6b60 20 20 20 20 20 73 74 61 74 69 63 20 47 61 6d 65 4f 62 6a 65 63 74 20 47 65 74 47 61 6d 65 4f 62 .....static.GameObject.GetGameOb
6b80 6a 65 63 74 46 72 6f 6d 4d 6f 64 69 66 69 63 61 74 69 6f 6e 28 55 6e 64 6f 50 72 6f 70 65 72 74 jectFromModification(UndoPropert
6ba0 79 4d 6f 64 69 66 69 63 61 74 69 6f 6e 20 6d 6f 64 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 yModification.mod).........{....
6bc0 20 20 20 20 20 20 20 20 20 2f 2f 20 67 72 61 62 20 74 68 65 20 47 4f 20 74 68 69 73 20 69 73 20 .........//.grab.the.GO.this.is.
6be0 6d 6f 64 69 66 79 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 47 61 6d 65 4f 62 6a 65 63 74 modifying.............GameObject
6c00 20 6d 6f 64 69 66 69 65 64 47 4f 20 3d 20 6e 75 6c 6c 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 .modifiedGO.=.null;.............
6c20 69 66 20 28 6d 6f 64 2e 70 72 65 76 69 6f 75 73 56 61 6c 75 65 2e 74 61 72 67 65 74 20 69 73 20 if.(mod.previousValue.target.is.
6c40 47 61 6d 65 4f 62 6a 65 63 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 6f 64 69 GameObject).................modi
6c60 66 69 65 64 47 4f 20 3d 20 6d 6f 64 2e 70 72 65 76 69 6f 75 73 56 61 6c 75 65 2e 74 61 72 67 65 fiedGO.=.mod.previousValue.targe
6c80 74 20 61 73 20 47 61 6d 65 4f 62 6a 65 63 74 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 t.as.GameObject;.............els
6ca0 65 20 69 66 20 28 6d 6f 64 2e 70 72 65 76 69 6f 75 73 56 61 6c 75 65 2e 74 61 72 67 65 74 20 69 e.if.(mod.previousValue.target.i
6cc0 73 20 43 6f 6d 70 6f 6e 65 6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 6f 64 s.Component).................mod
6ce0 69 66 69 65 64 47 4f 20 3d 20 28 6d 6f 64 2e 70 72 65 76 69 6f 75 73 56 61 6c 75 65 2e 74 61 72 ifiedGO.=.(mod.previousValue.tar
6d00 67 65 74 20 61 73 20 43 6f 6d 70 6f 6e 65 6e 74 29 2e 67 61 6d 65 4f 62 6a 65 63 74 3b 0a 0a 20 get.as.Component).gameObject;...
6d20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6d 6f 64 69 66 69 65 64 47 4f 3b 0a 20 20 ...........return.modifiedGO;...
6d40 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 2f 2f 20 72 65 74 75 72 6e 73 20 74 68 65 20 ......}..........//.returns.the.
6d60 6c 65 76 65 6c 20 6f 66 20 74 68 65 20 63 68 69 6c 64 20 69 6e 20 74 68 65 20 68 69 65 72 61 72 level.of.the.child.in.the.hierar
6d80 63 68 79 20 72 65 6c 61 74 69 76 65 20 74 6f 20 74 68 65 20 70 61 72 65 6e 74 2c 0a 20 20 20 20 chy.relative.to.the.parent,.....
6da0 20 20 20 20 2f 2f 20 20 6f 72 20 2d 31 20 69 66 20 74 68 65 20 63 68 69 6c 64 20 69 73 20 6e 6f ....//..or.-1.if.the.child.is.no
6dc0 74 20 74 68 65 20 70 61 72 65 6e 74 20 6f 72 20 61 20 64 65 73 63 65 6e 64 65 6e 74 20 6f 66 20 t.the.parent.or.a.descendent.of.
6de0 69 74 0a 20 20 20 20 20 20 20 20 73 74 61 74 69 63 20 69 6e 74 20 47 65 74 43 68 69 6c 64 4c 65 it.........static.int.GetChildLe
6e00 76 65 6c 28 47 61 6d 65 4f 62 6a 65 63 74 20 70 61 72 65 6e 74 2c 20 47 61 6d 65 4f 62 6a 65 63 vel(GameObject.parent,.GameObjec
6e20 74 20 63 68 69 6c 64 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 t.child).........{.............v
6e40 61 72 20 6c 65 76 65 6c 20 3d 20 30 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 77 68 69 6c 65 20 ar.level.=.0;.............while.
6e60 28 63 68 69 6c 64 20 21 3d 20 6e 75 6c 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 (child.!=.null).............{...
6e80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 70 61 72 65 6e 74 20 3d 3d 20 63 68 69 6c ..............if.(parent.==.chil
6ea0 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 d).....................break;...
6ec0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 63 68 69 6c 64 2e 74 72 61 6e 73 66 6f 72 ..............if.(child.transfor
6ee0 6d 2e 70 61 72 65 6e 74 20 3d 3d 20 6e 75 6c 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 m.parent.==.null)...............
6f00 20 20 20 20 20 20 72 65 74 75 72 6e 20 2d 31 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ......return.-1;................
6f20 20 63 68 69 6c 64 20 3d 20 63 68 69 6c 64 2e 74 72 61 6e 73 66 6f 72 6d 2e 70 61 72 65 6e 74 2e .child.=.child.transform.parent.
6f40 67 61 6d 65 4f 62 6a 65 63 74 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6c 65 76 65 gameObject;.................leve
6f60 6c 2b 2b 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 l++;.............}..............
6f80 69 66 20 28 63 68 69 6c 64 20 21 3d 20 6e 75 6c 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 if.(child.!=.null)..............
6fa0 20 20 20 72 65 74 75 72 6e 20 6c 65 76 65 6c 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 ...return.level;.............ret
6fc0 75 72 6e 20 2d 31 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 73 74 61 74 69 urn.-1;.........}..........stati
6fe0 63 20 62 6f 6f 6c 20 44 6f 65 73 50 72 6f 70 65 72 74 79 50 61 74 68 4d 61 74 63 68 28 73 74 72 c.bool.DoesPropertyPathMatch(str
7000 69 6e 67 20 61 2c 20 73 74 72 69 6e 67 20 62 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 ing.a,.string.b).........{......
7020 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 41 6e 69 6d 61 74 69 6f 6e 57 69 6e 64 6f 77 55 74 69 .......return.AnimationWindowUti
7040 6c 69 74 79 2e 47 65 74 50 72 6f 70 65 72 74 79 47 72 6f 75 70 4e 61 6d 65 28 61 29 2e 45 71 75 lity.GetPropertyGroupName(a).Equ
7060 61 6c 73 28 41 6e 69 6d 61 74 69 6f 6e 57 69 6e 64 6f 77 55 74 69 6c 69 74 79 2e 47 65 74 50 72 als(AnimationWindowUtility.GetPr
7080 6f 70 65 72 74 79 47 72 6f 75 70 4e 61 6d 65 28 61 29 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a opertyGroupName(a));.........}..
70a0 20 20 20 20 20 20 20 20 69 6e 74 65 72 6e 61 6c 20 73 74 61 74 69 63 20 76 6f 69 64 20 47 65 74 ........internal.static.void.Get
70c0 50 72 65 76 69 6f 75 73 50 6f 73 69 74 69 6f 6e 41 6e 64 52 6f 74 61 74 69 6f 6e 28 55 6e 64 6f PreviousPositionAndRotation(Undo
70e0 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 69 63 61 74 69 6f 6e 5b 5d 20 6d 6f 64 73 2c 20 72 65 66 PropertyModification[].mods,.ref
7100 20 56 65 63 74 6f 72 33 20 70 6f 73 69 74 69 6f 6e 2c 20 72 65 66 20 51 75 61 74 65 72 6e 69 6f .Vector3.position,.ref.Quaternio
7120 6e 20 72 6f 74 61 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 n.rotation).........{...........
7140 20 20 76 61 72 20 74 20 3d 20 6d 6f 64 73 5b 30 5d 2e 70 72 65 76 69 6f 75 73 56 61 6c 75 65 2e ..var.t.=.mods[0].previousValue.
7160 74 61 72 67 65 74 20 61 73 20 54 72 61 6e 73 66 6f 72 6d 3b 0a 20 20 20 20 20 20 20 20 20 20 20 target.as.Transform;............
7180 20 69 66 20 28 74 20 3d 3d 20 6e 75 6c 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .if.(t.==.null).................
71a0 74 20 3d 20 28 54 72 61 6e 73 66 6f 72 6d 29 6d 6f 64 73 5b 30 5d 2e 63 75 72 72 65 6e 74 56 61 t.=.(Transform)mods[0].currentVa
71c0 6c 75 65 2e 74 61 72 67 65 74 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 6f 73 69 74 69 6f lue.target;..............positio
71e0 6e 20 3d 20 74 2e 6c 6f 63 61 6c 50 6f 73 69 74 69 6f 6e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 n.=.t.localPosition;............
7200 20 72 6f 74 61 74 69 6f 6e 20 3d 20 74 2e 6c 6f 63 61 6c 52 6f 74 61 74 69 6f 6e 3b 0a 0a 20 20 .rotation.=.t.localRotation;....
7220 20 20 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 68 20 28 76 61 72 20 6d 6f 64 20 69 6e 20 6d 6f ..........foreach.(var.mod.in.mo
7240 64 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ds).............{...............
7260 20 20 73 77 69 74 63 68 20 28 6d 6f 64 2e 70 72 65 76 69 6f 75 73 56 61 6c 75 65 2e 70 72 6f 70 ..switch.(mod.previousValue.prop
7280 65 72 74 79 50 61 74 68 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 ertyPath).................{.....
72a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 6b 4c 6f 63 61 6c 50 6f 73 69 74 ................case.kLocalPosit
72c0 69 6f 6e 20 2b 20 22 2e 78 22 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ion.+.".x":.....................
72e0 20 20 20 20 70 6f 73 69 74 69 6f 6e 2e 78 20 3d 20 50 61 72 73 65 46 6c 6f 61 74 28 6d 6f 64 2e ....position.x.=.ParseFloat(mod.
7300 70 72 65 76 69 6f 75 73 56 61 6c 75 65 2e 76 61 6c 75 65 2c 20 70 6f 73 69 74 69 6f 6e 2e 78 29 previousValue.value,.position.x)
7320 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b ;.........................break;
7340 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 6b 4c 6f 63 61 6c .....................case.kLocal
7360 50 6f 73 69 74 69 6f 6e 20 2b 20 22 2e 79 22 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 Position.+.".y":................
7380 20 20 20 20 20 20 20 20 20 70 6f 73 69 74 69 6f 6e 2e 79 20 3d 20 50 61 72 73 65 46 6c 6f 61 74 .........position.y.=.ParseFloat
73a0 28 6d 6f 64 2e 70 72 65 76 69 6f 75 73 56 61 6c 75 65 2e 76 61 6c 75 65 2c 20 70 6f 73 69 74 69 (mod.previousValue.value,.positi
73c0 6f 6e 2e 79 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 on.y);.........................b
73e0 72 65 61 6b 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 6b reak;.....................case.k
7400 4c 6f 63 61 6c 50 6f 73 69 74 69 6f 6e 20 2b 20 22 2e 7a 22 3a 0a 20 20 20 20 20 20 20 20 20 20 LocalPosition.+.".z":...........
7420 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 6f 73 69 74 69 6f 6e 2e 7a 20 3d 20 50 61 72 73 65 ..............position.z.=.Parse
7440 46 6c 6f 61 74 28 6d 6f 64 2e 70 72 65 76 69 6f 75 73 56 61 6c 75 65 2e 76 61 6c 75 65 2c 20 70 Float(mod.previousValue.value,.p
7460 6f 73 69 74 69 6f 6e 2e 7a 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 osition.z);.....................
7480 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 ....break;.....................c
74a0 61 73 65 20 6b 4c 6f 63 61 6c 52 6f 74 61 74 69 6f 6e 20 2b 20 22 2e 78 22 3a 0a 20 20 20 20 20 ase.kLocalRotation.+.".x":......
74c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 74 61 74 69 6f 6e 2e 78 20 3d 20 ...................rotation.x.=.
74e0 50 61 72 73 65 46 6c 6f 61 74 28 6d 6f 64 2e 70 72 65 76 69 6f 75 73 56 61 6c 75 65 2e 76 61 6c ParseFloat(mod.previousValue.val
7500 75 65 2c 20 72 6f 74 61 74 69 6f 6e 2e 78 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ue,.rotation.x);................
7520 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .........break;.................
7540 20 20 20 20 63 61 73 65 20 6b 4c 6f 63 61 6c 52 6f 74 61 74 69 6f 6e 20 2b 20 22 2e 79 22 3a 0a ....case.kLocalRotation.+.".y":.
7560 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 74 61 74 69 6f 6e ........................rotation
7580 2e 79 20 3d 20 50 61 72 73 65 46 6c 6f 61 74 28 6d 6f 64 2e 70 72 65 76 69 6f 75 73 56 61 6c 75 .y.=.ParseFloat(mod.previousValu
75a0 65 2e 76 61 6c 75 65 2c 20 72 6f 74 61 74 69 6f 6e 2e 79 29 3b 0a 20 20 20 20 20 20 20 20 20 20 e.value,.rotation.y);...........
75c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 20 20 20 20 20 ..............break;............
75e0 20 20 20 20 20 20 20 20 20 63 61 73 65 20 6b 4c 6f 63 61 6c 52 6f 74 61 74 69 6f 6e 20 2b 20 22 .........case.kLocalRotation.+."
7600 2e 7a 22 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 74 .z":.........................rot
7620 61 74 69 6f 6e 2e 7a 20 3d 20 50 61 72 73 65 46 6c 6f 61 74 28 6d 6f 64 2e 70 72 65 76 69 6f 75 ation.z.=.ParseFloat(mod.previou
7640 73 56 61 6c 75 65 2e 76 61 6c 75 65 2c 20 72 6f 74 61 74 69 6f 6e 2e 7a 29 3b 0a 20 20 20 20 20 sValue.value,.rotation.z);......
7660 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 ...................break;.......
7680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 6b 4c 6f 63 61 6c 52 6f 74 61 74 69 6f ..............case.kLocalRotatio
76a0 6e 20 2b 20 22 2e 77 22 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 n.+.".w":.......................
76c0 20 20 72 6f 74 61 74 69 6f 6e 2e 77 20 3d 20 50 61 72 73 65 46 6c 6f 61 74 28 6d 6f 64 2e 70 72 ..rotation.w.=.ParseFloat(mod.pr
76e0 65 76 69 6f 75 73 56 61 6c 75 65 2e 76 61 6c 75 65 2c 20 72 6f 74 61 74 69 6f 6e 2e 77 29 3b 0a eviousValue.value,.rotation.w);.
7700 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 ........................break;..
7720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 ...............}.............}..
7740 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 69 6e 74 65 72 6e 61 6c 20 73 74 61 74 69 .......}..........internal.stati
7760 63 20 76 6f 69 64 20 47 65 74 43 75 72 72 65 6e 74 50 6f 73 69 74 69 6f 6e 41 6e 64 52 6f 74 61 c.void.GetCurrentPositionAndRota
7780 74 69 6f 6e 28 55 6e 64 6f 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 69 63 61 74 69 6f 6e 5b 5d 20 tion(UndoPropertyModification[].
77a0 6d 6f 64 73 2c 20 72 65 66 20 56 65 63 74 6f 72 33 20 70 6f 73 69 74 69 6f 6e 2c 20 72 65 66 20 mods,.ref.Vector3.position,.ref.
77c0 51 75 61 74 65 72 6e 69 6f 6e 20 72 6f 74 61 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 Quaternion.rotation).........{..
77e0 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 74 20 3d 20 28 54 72 61 6e 73 66 6f 72 6d 29 6d 6f ...........var.t.=.(Transform)mo
7800 64 73 5b 30 5d 2e 63 75 72 72 65 6e 74 56 61 6c 75 65 2e 74 61 72 67 65 74 3b 0a 20 20 20 20 20 ds[0].currentValue.target;......
7820 20 20 20 20 20 20 20 70 6f 73 69 74 69 6f 6e 20 3d 20 74 2e 6c 6f 63 61 6c 50 6f 73 69 74 69 6f .......position.=.t.localPositio
7840 6e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 74 61 74 69 6f 6e 20 3d 20 74 2e 6c 6f 63 61 n;.............rotation.=.t.loca
7860 6c 52 6f 74 61 74 69 6f 6e 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 68 20 lRotation;..............foreach.
7880 28 76 61 72 20 6d 6f 64 20 69 6e 20 6d 6f 64 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a (var.mod.in.mods).............{.
78a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 77 69 74 63 68 20 28 6d 6f 64 2e 63 75 72 72 ................switch.(mod.curr
78c0 65 6e 74 56 61 6c 75 65 2e 70 72 6f 70 65 72 74 79 50 61 74 68 29 0a 20 20 20 20 20 20 20 20 20 entValue.propertyPath)..........
78e0 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 .......{.....................cas
7900 65 20 6b 4c 6f 63 61 6c 50 6f 73 69 74 69 6f 6e 20 2b 20 22 2e 78 22 3a 0a 20 20 20 20 20 20 20 e.kLocalPosition.+.".x":........
7920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 6f 73 69 74 69 6f 6e 2e 78 20 3d 20 50 61 .................position.x.=.Pa
7940 72 73 65 46 6c 6f 61 74 28 6d 6f 64 2e 63 75 72 72 65 6e 74 56 61 6c 75 65 2e 76 61 6c 75 65 2c rseFloat(mod.currentValue.value,
7960 20 70 6f 73 69 74 69 6f 6e 2e 78 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .position.x);...................
7980 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ......break;....................
79a0 20 63 61 73 65 20 6b 4c 6f 63 61 6c 50 6f 73 69 74 69 6f 6e 20 2b 20 22 2e 79 22 3a 0a 20 20 20 .case.kLocalPosition.+.".y":....
79c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 6f 73 69 74 69 6f 6e 2e 79 20 .....................position.y.
79e0 3d 20 50 61 72 73 65 46 6c 6f 61 74 28 6d 6f 64 2e 63 75 72 72 65 6e 74 56 61 6c 75 65 2e 76 61 =.ParseFloat(mod.currentValue.va
7a00 6c 75 65 2c 20 70 6f 73 69 74 69 6f 6e 2e 79 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 lue,.position.y);...............
7a20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........break;................
7a40 20 20 20 20 20 63 61 73 65 20 6b 4c 6f 63 61 6c 50 6f 73 69 74 69 6f 6e 20 2b 20 22 2e 7a 22 3a .....case.kLocalPosition.+.".z":
7a60 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 6f 73 69 74 69 6f .........................positio
7a80 6e 2e 7a 20 3d 20 50 61 72 73 65 46 6c 6f 61 74 28 6d 6f 64 2e 63 75 72 72 65 6e 74 56 61 6c 75 n.z.=.ParseFloat(mod.currentValu
7aa0 65 2e 76 61 6c 75 65 2c 20 70 6f 73 69 74 69 6f 6e 2e 7a 29 3b 0a 20 20 20 20 20 20 20 20 20 20 e.value,.position.z);...........
7ac0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 20 20 20 20 20 ..............break;............
7ae0 20 20 20 20 20 20 20 20 20 63 61 73 65 20 6b 4c 6f 63 61 6c 52 6f 74 61 74 69 6f 6e 20 2b 20 22 .........case.kLocalRotation.+."
7b00 2e 78 22 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 74 .x":.........................rot
7b20 61 74 69 6f 6e 2e 78 20 3d 20 50 61 72 73 65 46 6c 6f 61 74 28 6d 6f 64 2e 63 75 72 72 65 6e 74 ation.x.=.ParseFloat(mod.current
7b40 56 61 6c 75 65 2e 76 61 6c 75 65 2c 20 72 6f 74 61 74 69 6f 6e 2e 78 29 3b 0a 20 20 20 20 20 20 Value.value,.rotation.x);.......
7b60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 20 ..................break;........
7b80 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 6b 4c 6f 63 61 6c 52 6f 74 61 74 69 6f 6e .............case.kLocalRotation
7ba0 20 2b 20 22 2e 79 22 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .+.".y":........................
7bc0 20 72 6f 74 61 74 69 6f 6e 2e 79 20 3d 20 50 61 72 73 65 46 6c 6f 61 74 28 6d 6f 64 2e 63 75 72 .rotation.y.=.ParseFloat(mod.cur
7be0 72 65 6e 74 56 61 6c 75 65 2e 76 61 6c 75 65 2c 20 72 6f 74 61 74 69 6f 6e 2e 79 29 3b 0a 20 20 rentValue.value,.rotation.y);...
7c00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 ......................break;....
7c20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 6b 4c 6f 63 61 6c 52 6f 74 61 .................case.kLocalRota
7c40 74 69 6f 6e 20 2b 20 22 2e 7a 22 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tion.+.".z":....................
7c60 20 20 20 20 20 72 6f 74 61 74 69 6f 6e 2e 7a 20 3d 20 50 61 72 73 65 46 6c 6f 61 74 28 6d 6f 64 .....rotation.z.=.ParseFloat(mod
7c80 2e 63 75 72 72 65 6e 74 56 61 6c 75 65 2e 76 61 6c 75 65 2c 20 72 6f 74 61 74 69 6f 6e 2e 7a 29 .currentValue.value,.rotation.z)
7ca0 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b ;.........................break;
7cc0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 6b 4c 6f 63 61 6c .....................case.kLocal
7ce0 52 6f 74 61 74 69 6f 6e 20 2b 20 22 2e 77 22 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 Rotation.+.".w":................
7d00 20 20 20 20 20 20 20 20 20 72 6f 74 61 74 69 6f 6e 2e 77 20 3d 20 50 61 72 73 65 46 6c 6f 61 74 .........rotation.w.=.ParseFloat
7d20 28 6d 6f 64 2e 63 75 72 72 65 6e 74 56 61 6c 75 65 2e 76 61 6c 75 65 2c 20 72 6f 74 61 74 69 6f (mod.currentValue.value,.rotatio
7d40 6e 2e 77 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 n.w);.........................br
7d60 65 61 6b 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 eak;.................}..........
7d80 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 2f 2f 20 77 68 65 6e 20 ...}.........}..........//.when.
7da0 6d 61 6b 69 6e 67 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 70 6f 73 69 74 69 6f 6e 20 61 6e 64 making.the.previous.position.and
7dc0 20 72 6f 74 61 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 69 6e 74 65 72 6e 61 6c 20 73 74 61 74 69 .rotation.........internal.stati
7de0 63 20 76 6f 69 64 20 53 65 74 50 72 65 76 69 6f 75 73 50 6f 73 69 74 69 6f 6e 41 6e 64 52 6f 74 c.void.SetPreviousPositionAndRot
7e00 61 74 69 6f 6e 28 55 6e 64 6f 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 69 63 61 74 69 6f 6e 5b 5d ation(UndoPropertyModification[]
7e20 20 6d 6f 64 73 2c 20 56 65 63 74 6f 72 33 20 70 6f 73 2c 20 51 75 61 74 65 72 6e 69 6f 6e 20 72 .mods,.Vector3.pos,.Quaternion.r
7e40 6f 74 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 ot).........{.............foreac
7e60 68 20 28 76 61 72 20 6d 6f 64 20 69 6e 20 6d 6f 64 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 h.(var.mod.in.mods).............
7e80 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 77 69 74 63 68 20 28 6d 6f 64 2e 70 72 {.................switch.(mod.pr
7ea0 65 76 69 6f 75 73 56 61 6c 75 65 2e 70 72 6f 70 65 72 74 79 50 61 74 68 29 0a 20 20 20 20 20 20 eviousValue.propertyPath).......
7ec0 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........{.....................
7ee0 63 61 73 65 20 6b 4c 6f 63 61 6c 50 6f 73 69 74 69 6f 6e 20 2b 20 22 2e 78 22 3a 0a 20 20 20 20 case.kLocalPosition.+.".x":.....
7f00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 6f 64 2e 70 72 65 76 69 6f 75 73 ....................mod.previous
7f20 56 61 6c 75 65 2e 76 61 6c 75 65 20 3d 20 70 6f 73 2e 78 2e 54 6f 53 74 72 69 6e 67 28 45 64 69 Value.value.=.pos.x.ToString(Edi
7f40 74 6f 72 47 55 49 2e 6b 46 6c 6f 61 74 46 69 65 6c 64 46 6f 72 6d 61 74 53 74 72 69 6e 67 29 3b torGUI.kFloatFieldFormatString);
7f60 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a .........................break;.
7f80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 6b 4c 6f 63 61 6c 50 ....................case.kLocalP
7fa0 6f 73 69 74 69 6f 6e 20 2b 20 22 2e 79 22 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 osition.+.".y":.................
7fc0 20 20 20 20 20 20 20 20 6d 6f 64 2e 70 72 65 76 69 6f 75 73 56 61 6c 75 65 2e 76 61 6c 75 65 20 ........mod.previousValue.value.
7fe0 3d 20 70 6f 73 2e 79 2e 54 6f 53 74 72 69 6e 67 28 45 64 69 74 6f 72 47 55 49 2e 6b 46 6c 6f 61 =.pos.y.ToString(EditorGUI.kFloa
8000 74 46 69 65 6c 64 46 6f 72 6d 61 74 53 74 72 69 6e 67 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 tFieldFormatString);............
8020 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 .............break;.............
8040 20 20 20 20 20 20 20 20 63 61 73 65 20 6b 4c 6f 63 61 6c 50 6f 73 69 74 69 6f 6e 20 2b 20 22 2e ........case.kLocalPosition.+.".
8060 7a 22 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 6f 64 2e z":.........................mod.
8080 70 72 65 76 69 6f 75 73 56 61 6c 75 65 2e 76 61 6c 75 65 20 3d 20 70 6f 73 2e 7a 2e 54 6f 53 74 previousValue.value.=.pos.z.ToSt
80a0 72 69 6e 67 28 45 64 69 74 6f 72 47 55 49 2e 6b 46 6c 6f 61 74 46 69 65 6c 64 46 6f 72 6d 61 74 ring(EditorGUI.kFloatFieldFormat
80c0 53 74 72 69 6e 67 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 String);........................
80e0 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 .break;.....................case
8100 20 6b 4c 6f 63 61 6c 52 6f 74 61 74 69 6f 6e 20 2b 20 22 2e 78 22 3a 0a 20 20 20 20 20 20 20 20 .kLocalRotation.+.".x":.........
8120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 6f 64 2e 70 72 65 76 69 6f 75 73 56 61 6c 75 ................mod.previousValu
8140 65 2e 76 61 6c 75 65 20 3d 20 72 6f 74 2e 78 2e 54 6f 53 74 72 69 6e 67 28 45 64 69 74 6f 72 47 e.value.=.rot.x.ToString(EditorG
8160 55 49 2e 6b 46 6c 6f 61 74 46 69 65 6c 64 46 6f 72 6d 61 74 53 74 72 69 6e 67 29 3b 0a 20 20 20 UI.kFloatFieldFormatString);....
8180 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 .....................break;.....
81a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 6b 4c 6f 63 61 6c 52 6f 74 61 74 ................case.kLocalRotat
81c0 69 6f 6e 20 2b 20 22 2e 79 22 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ion.+.".y":.....................
81e0 20 20 20 20 6d 6f 64 2e 70 72 65 76 69 6f 75 73 56 61 6c 75 65 2e 76 61 6c 75 65 20 3d 20 72 6f ....mod.previousValue.value.=.ro
8200 74 2e 79 2e 54 6f 53 74 72 69 6e 67 28 45 64 69 74 6f 72 47 55 49 2e 6b 46 6c 6f 61 74 46 69 65 t.y.ToString(EditorGUI.kFloatFie
8220 6c 64 46 6f 72 6d 61 74 53 74 72 69 6e 67 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ldFormatString);................
8240 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .........break;.................
8260 20 20 20 20 63 61 73 65 20 6b 4c 6f 63 61 6c 52 6f 74 61 74 69 6f 6e 20 2b 20 22 2e 7a 22 3a 0a ....case.kLocalRotation.+.".z":.
8280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 6f 64 2e 70 72 65 76 ........................mod.prev
82a0 69 6f 75 73 56 61 6c 75 65 2e 76 61 6c 75 65 20 3d 20 72 6f 74 2e 7a 2e 54 6f 53 74 72 69 6e 67 iousValue.value.=.rot.z.ToString
82c0 28 45 64 69 74 6f 72 47 55 49 2e 6b 46 6c 6f 61 74 46 69 65 6c 64 46 6f 72 6d 61 74 53 74 72 69 (EditorGUI.kFloatFieldFormatStri
82e0 6e 67 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 ng);.........................bre
8300 61 6b 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 6b 4c 6f ak;.....................case.kLo
8320 63 61 6c 52 6f 74 61 74 69 6f 6e 20 2b 20 22 2e 77 22 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 calRotation.+.".w":.............
8340 20 20 20 20 20 20 20 20 20 20 20 20 6d 6f 64 2e 70 72 65 76 69 6f 75 73 56 61 6c 75 65 2e 76 61 ............mod.previousValue.va
8360 6c 75 65 20 3d 20 72 6f 74 2e 77 2e 54 6f 53 74 72 69 6e 67 28 45 64 69 74 6f 72 47 55 49 2e 6b lue.=.rot.w.ToString(EditorGUI.k
8380 46 6c 6f 61 74 46 69 65 6c 64 46 6f 72 6d 61 74 53 74 72 69 6e 67 29 3b 0a 20 20 20 20 20 20 20 FloatFieldFormatString);........
83a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 20 20 .................break;.........
83c0 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 ........}.............}.........
83e0 7d 0a 0a 20 20 20 20 20 20 20 20 69 6e 74 65 72 6e 61 6c 20 73 74 61 74 69 63 20 76 6f 69 64 20 }..........internal.static.void.
8400 53 65 74 43 75 72 72 65 6e 74 50 6f 73 69 74 69 6f 6e 41 6e 64 52 6f 74 61 74 69 6f 6e 28 55 6e SetCurrentPositionAndRotation(Un
8420 64 6f 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 69 63 61 74 69 6f 6e 5b 5d 20 6d 6f 64 73 2c 20 56 doPropertyModification[].mods,.V
8440 65 63 74 6f 72 33 20 70 6f 73 2c 20 51 75 61 74 65 72 6e 69 6f 6e 20 72 6f 74 29 0a 20 20 20 20 ector3.pos,.Quaternion.rot).....
8460 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 68 20 28 76 61 72 20 6d ....{.............foreach.(var.m
8480 6f 64 20 69 6e 20 6d 6f 64 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 od.in.mods).............{.......
84a0 20 20 20 20 20 20 20 20 20 20 73 77 69 74 63 68 20 28 6d 6f 64 2e 70 72 65 76 69 6f 75 73 56 61 ..........switch.(mod.previousVa
84c0 6c 75 65 2e 70 72 6f 70 65 72 74 79 50 61 74 68 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 lue.propertyPath)...............
84e0 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 6b 4c 6f ..{.....................case.kLo
8500 63 61 6c 50 6f 73 69 74 69 6f 6e 20 2b 20 22 2e 78 22 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 calPosition.+.".x":.............
8520 20 20 20 20 20 20 20 20 20 20 20 20 6d 6f 64 2e 63 75 72 72 65 6e 74 56 61 6c 75 65 2e 76 61 6c ............mod.currentValue.val
8540 75 65 20 3d 20 70 6f 73 2e 78 2e 54 6f 53 74 72 69 6e 67 28 45 64 69 74 6f 72 47 55 49 2e 6b 46 ue.=.pos.x.ToString(EditorGUI.kF
8560 6c 6f 61 74 46 69 65 6c 64 46 6f 72 6d 61 74 53 74 72 69 6e 67 29 3b 0a 20 20 20 20 20 20 20 20 loatFieldFormatString);.........
8580 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 20 20 20 ................break;..........
85a0 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 6b 4c 6f 63 61 6c 50 6f 73 69 74 69 6f 6e 20 2b ...........case.kLocalPosition.+
85c0 20 22 2e 79 22 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d .".y":.........................m
85e0 6f 64 2e 63 75 72 72 65 6e 74 56 61 6c 75 65 2e 76 61 6c 75 65 20 3d 20 70 6f 73 2e 79 2e 54 6f od.currentValue.value.=.pos.y.To
8600 53 74 72 69 6e 67 28 45 64 69 74 6f 72 47 55 49 2e 6b 46 6c 6f 61 74 46 69 65 6c 64 46 6f 72 6d String(EditorGUI.kFloatFieldForm
8620 61 74 53 74 72 69 6e 67 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 atString);......................
8640 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 ...break;.....................ca
8660 73 65 20 6b 4c 6f 63 61 6c 50 6f 73 69 74 69 6f 6e 20 2b 20 22 2e 7a 22 3a 0a 20 20 20 20 20 20 se.kLocalPosition.+.".z":.......
8680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 6f 64 2e 63 75 72 72 65 6e 74 56 61 6c ..................mod.currentVal
86a0 75 65 2e 76 61 6c 75 65 20 3d 20 70 6f 73 2e 7a 2e 54 6f 53 74 72 69 6e 67 28 45 64 69 74 6f 72 ue.value.=.pos.z.ToString(Editor
86c0 47 55 49 2e 6b 46 6c 6f 61 74 46 69 65 6c 64 46 6f 72 6d 61 74 53 74 72 69 6e 67 29 3b 0a 20 20 GUI.kFloatFieldFormatString);...
86e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 ......................break;....
8700 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 6b 4c 6f 63 61 6c 52 6f 74 61 .................case.kLocalRota
8720 74 69 6f 6e 20 2b 20 22 2e 78 22 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tion.+.".x":....................
8740 20 20 20 20 20 6d 6f 64 2e 63 75 72 72 65 6e 74 56 61 6c 75 65 2e 76 61 6c 75 65 20 3d 20 72 6f .....mod.currentValue.value.=.ro
8760 74 2e 78 2e 54 6f 53 74 72 69 6e 67 28 45 64 69 74 6f 72 47 55 49 2e 6b 46 6c 6f 61 74 46 69 65 t.x.ToString(EditorGUI.kFloatFie
8780 6c 64 46 6f 72 6d 61 74 53 74 72 69 6e 67 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ldFormatString);................
87a0 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .........break;.................
87c0 20 20 20 20 63 61 73 65 20 6b 4c 6f 63 61 6c 52 6f 74 61 74 69 6f 6e 20 2b 20 22 2e 79 22 3a 0a ....case.kLocalRotation.+.".y":.
87e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 6f 64 2e 63 75 72 72 ........................mod.curr
8800 65 6e 74 56 61 6c 75 65 2e 76 61 6c 75 65 20 3d 20 72 6f 74 2e 79 2e 54 6f 53 74 72 69 6e 67 28 entValue.value.=.rot.y.ToString(
8820 45 64 69 74 6f 72 47 55 49 2e 6b 46 6c 6f 61 74 46 69 65 6c 64 46 6f 72 6d 61 74 53 74 72 69 6e EditorGUI.kFloatFieldFormatStrin
8840 67 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 g);.........................brea
8860 6b 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 6b 4c 6f 63 k;.....................case.kLoc
8880 61 6c 52 6f 74 61 74 69 6f 6e 20 2b 20 22 2e 7a 22 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 alRotation.+.".z":..............
88a0 20 20 20 20 20 20 20 20 20 20 20 6d 6f 64 2e 63 75 72 72 65 6e 74 56 61 6c 75 65 2e 76 61 6c 75 ...........mod.currentValue.valu
88c0 65 20 3d 20 72 6f 74 2e 7a 2e 54 6f 53 74 72 69 6e 67 28 45 64 69 74 6f 72 47 55 49 2e 6b 46 6c e.=.rot.z.ToString(EditorGUI.kFl
88e0 6f 61 74 46 69 65 6c 64 46 6f 72 6d 61 74 53 74 72 69 6e 67 29 3b 0a 20 20 20 20 20 20 20 20 20 oatFieldFormatString);..........
8900 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 20 20 20 20 ...............break;...........
8920 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 6b 4c 6f 63 61 6c 52 6f 74 61 74 69 6f 6e 20 2b 20 ..........case.kLocalRotation.+.
8940 22 2e 77 22 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 6f ".w":.........................mo
8960 64 2e 63 75 72 72 65 6e 74 56 61 6c 75 65 2e 76 61 6c 75 65 20 3d 20 72 6f 74 2e 77 2e 54 6f 53 d.currentValue.value.=.rot.w.ToS
8980 74 72 69 6e 67 28 45 64 69 74 6f 72 47 55 49 2e 6b 46 6c 6f 61 74 46 69 65 6c 64 46 6f 72 6d 61 tring(EditorGUI.kFloatFieldForma
89a0 74 53 74 72 69 6e 67 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tString);.......................
89c0 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 ..break;.................}......
89e0 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 69 6e 74 65 .......}.........}..........inte
8a00 72 6e 61 6c 20 73 74 61 74 69 63 20 66 6c 6f 61 74 20 50 61 72 73 65 46 6c 6f 61 74 28 73 74 72 rnal.static.float.ParseFloat(str
8a20 69 6e 67 20 73 74 72 2c 20 66 6c 6f 61 74 20 64 65 66 61 75 6c 74 56 61 6c 29 0a 20 20 20 20 20 ing.str,.float.defaultVal)......
8a40 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6c 6f 61 74 20 74 65 6d 70 20 3d 20 30 2e ...{.............float.temp.=.0.
8a60 30 66 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 66 6c 6f 61 74 2e 54 72 79 50 61 72 0f;.............if.(float.TryPar
8a80 73 65 28 73 74 72 2c 20 4e 75 6d 62 65 72 53 74 79 6c 65 73 2e 46 6c 6f 61 74 2c 20 43 75 6c 74 se(str,.NumberStyles.Float,.Cult
8aa0 75 72 65 49 6e 66 6f 2e 49 6e 76 61 72 69 61 6e 74 43 75 6c 74 75 72 65 2e 4e 75 6d 62 65 72 46 ureInfo.InvariantCulture.NumberF
8ac0 6f 72 6d 61 74 2c 20 6f 75 74 20 74 65 6d 70 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ormat,.out.temp))...............
8ae0 20 20 72 65 74 75 72 6e 20 74 65 6d 70 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 ..return.temp;.............retur
8b00 6e 20 64 65 66 61 75 6c 74 56 61 6c 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 n.defaultVal;.........}.........
8b20 20 69 6e 74 65 72 6e 61 6c 20 73 74 61 74 69 63 20 55 6e 64 6f 50 72 6f 70 65 72 74 79 4d 6f 64 .internal.static.UndoPropertyMod
8b40 69 66 69 63 61 74 69 6f 6e 5b 5d 20 48 61 6e 64 6c 65 45 75 6c 65 72 4d 6f 64 69 66 69 63 61 74 ification[].HandleEulerModificat
8b60 69 6f 6e 73 28 41 6e 69 6d 61 74 69 6f 6e 54 72 61 63 6b 20 74 72 61 63 6b 2c 20 54 69 6d 65 6c ions(AnimationTrack.track,.Timel
8b80 69 6e 65 43 6c 69 70 20 63 6c 69 70 2c 20 41 6e 69 6d 61 74 69 6f 6e 43 6c 69 70 20 61 6e 69 6d ineClip.clip,.AnimationClip.anim
8ba0 43 6c 69 70 2c 20 66 6c 6f 61 74 20 74 69 6d 65 2c 20 55 6e 64 6f 50 72 6f 70 65 72 74 79 4d 6f Clip,.float.time,.UndoPropertyMo
8bc0 64 69 66 69 63 61 74 69 6f 6e 5b 5d 20 6d 6f 64 73 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 dification[].mods).........{....
8be0 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 6f 64 73 2e 41 6e 79 28 78 20 3d 3e 20 78 2e 63 75 72 .........if.(mods.Any(x.=>.x.cur
8c00 72 65 6e 74 56 61 6c 75 65 2e 70 72 6f 70 65 72 74 79 50 61 74 68 2e 53 74 61 72 74 73 57 69 74 rentValue.propertyPath.StartsWit
8c20 68 28 6b 4c 6f 63 61 6c 45 75 6c 65 72 48 69 6e 74 29 20 7c 7c 20 78 2e 63 75 72 72 65 6e 74 56 h(kLocalEulerHint).||.x.currentV
8c40 61 6c 75 65 2e 70 72 6f 70 65 72 74 79 50 61 74 68 2e 53 74 61 72 74 73 57 69 74 68 28 6b 4c 6f alue.propertyPath.StartsWith(kLo
8c60 63 61 6c 52 6f 74 61 74 69 6f 6e 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 calRotation))).............{....
8c80 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 69 66 20 74 68 65 72 65 20 69 73 20 61 20 72 6f .............//.if.there.is.a.ro
8ca0 74 61 74 69 6f 6e 61 6c 20 6f 66 66 73 65 74 73 2c 20 77 65 20 6e 65 65 64 20 74 6f 20 73 74 72 tational.offsets,.we.need.to.str
8cc0 69 70 20 74 68 65 20 65 75 6c 65 72 20 68 69 6e 74 73 2c 20 73 69 6e 63 65 20 74 68 65 79 20 61 ip.the.euler.hints,.since.they.a
8ce0 72 65 20 75 73 65 64 20 62 79 20 74 68 65 20 61 6e 69 6d 61 74 69 6f 6e 20 72 65 63 6f 72 64 69 re.used.by.the.animation.recordi
8d00 6e 67 20 73 79 73 74 65 6d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 20 6f 76 ng.system.................//..ov
8d20 65 72 20 74 68 65 20 71 75 61 74 65 72 6e 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 er.the.quaternion...............
8d40 20 20 20 76 61 72 20 6c 6f 63 61 6c 54 6f 54 72 61 63 6b 20 3d 20 47 65 74 4c 6f 63 61 6c 54 6f ...var.localToTrack.=.GetLocalTo
8d60 54 72 61 63 6b 28 74 72 61 63 6b 2c 20 63 6c 69 70 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 Track(track,.clip);.............
8d80 20 20 20 20 69 66 20 28 6c 6f 63 61 6c 54 6f 54 72 61 63 6b 2e 72 6f 74 61 74 69 6f 6e 20 21 3d ....if.(localToTrack.rotation.!=
8da0 20 51 75 61 74 65 72 6e 69 6f 6e 2e 69 64 65 6e 74 69 74 79 29 0a 20 20 20 20 20 20 20 20 20 20 .Quaternion.identity)...........
8dc0 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 ......{.....................if.(
8de0 73 5f 4c 61 73 74 54 72 61 63 6b 57 61 72 6e 69 6e 67 20 21 3d 20 74 72 61 63 6b 29 0a 20 20 20 s_LastTrackWarning.!=.track)....
8e00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 .................{..............
8e20 20 20 20 20 20 20 20 20 20 20 20 73 5f 4c 61 73 74 54 72 61 63 6b 57 61 72 6e 69 6e 67 20 3d 20 ...........s_LastTrackWarning.=.
8e40 74 72 61 63 6b 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 track;.........................D
8e60 65 62 75 67 2e 4c 6f 67 57 61 72 6e 69 6e 67 28 6b 52 6f 74 61 74 69 6f 6e 57 61 72 6e 69 6e 67 ebug.LogWarning(kRotationWarning
8e80 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 );.....................}........
8ea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 54 72 61 6e 73 66 6f 72 6d 20 74 72 61 6e 73 66 6f 72 ..............Transform.transfor
8ec0 6d 20 3d 20 6d 6f 64 73 5b 30 5d 2e 63 75 72 72 65 6e 74 56 61 6c 75 65 2e 74 61 72 67 65 74 20 m.=.mods[0].currentValue.target.
8ee0 61 73 20 54 72 61 6e 73 66 6f 72 6d 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 as.Transform;...................
8f00 20 20 69 66 20 28 74 72 61 6e 73 66 6f 72 6d 20 21 3d 20 6e 75 6c 6c 29 0a 20 20 20 20 20 20 20 ..if.(transform.!=.null)........
8f20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .............{..................
8f40 20 20 20 20 20 20 20 76 61 72 20 74 72 61 63 6b 54 6f 4c 6f 63 61 6c 20 3d 20 54 69 6d 65 6c 69 .......var.trackToLocal.=.Timeli
8f60 6e 65 41 6e 69 6d 61 74 69 6f 6e 55 74 69 6c 69 74 69 65 73 2e 52 69 67 69 64 54 72 61 6e 73 66 neAnimationUtilities.RigidTransf
8f80 6f 72 6d 2e 49 6e 76 65 72 73 65 28 6c 6f 63 61 6c 54 6f 54 72 61 63 6b 29 3b 0a 20 20 20 20 20 orm.Inverse(localToTrack);......
8fa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 73 69 6e 63 65 20 74 68 65 20 ...................//.since.the.
8fc0 65 75 6c 65 72 20 61 6e 67 6c 65 73 20 61 72 65 20 67 6f 69 6e 67 20 74 6f 20 62 65 20 74 72 61 euler.angles.are.going.to.be.tra
8fe0 6e 73 66 6f 72 6d 65 64 2c 20 77 65 20 64 6f 20 61 20 62 65 73 74 20 67 75 65 73 73 20 61 74 20 nsformed,.we.do.a.best.guess.at.
9000 61 20 65 75 6c 65 72 20 74 68 61 74 20 67 69 76 65 73 20 74 68 65 20 73 68 6f 72 74 65 73 74 20 a.euler.that.gives.the.shortest.
9020 70 61 74 68 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 path.........................var
9040 20 71 75 61 74 4d 6f 64 73 20 3d 20 6d 6f 64 73 2e 57 68 65 72 65 28 78 20 3d 3e 20 21 78 2e 63 .quatMods.=.mods.Where(x.=>.!x.c
9060 75 72 72 65 6e 74 56 61 6c 75 65 2e 70 72 6f 70 65 72 74 79 50 61 74 68 2e 53 74 61 72 74 73 57 urrentValue.propertyPath.StartsW
9080 69 74 68 28 6b 4c 6f 63 61 6c 45 75 6c 65 72 48 69 6e 74 29 29 3b 0a 20 20 20 20 20 20 20 20 20 ith(kLocalEulerHint));..........
90a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 65 75 6c 65 72 4d 6f 64 73 20 3d 20 46 ...............var.eulerMods.=.F
90c0 69 6e 64 42 65 73 74 45 75 6c 65 72 48 69 6e 74 28 74 72 61 63 6b 54 6f 4c 6f 63 61 6c 2e 72 6f indBestEulerHint(trackToLocal.ro
90e0 74 61 74 69 6f 6e 20 2a 20 74 72 61 6e 73 66 6f 72 6d 2e 6c 6f 63 61 6c 52 6f 74 61 74 69 6f 6e tation.*.transform.localRotation
9100 2c 20 61 6e 69 6d 43 6c 69 70 2c 20 74 69 6d 65 2c 20 74 72 61 6e 73 66 6f 72 6d 29 3b 0a 20 20 ,.animClip,.time,.transform);...
9120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 71 75 61 ......................return.qua
9140 74 4d 6f 64 73 2e 55 6e 69 6f 6e 28 65 75 6c 65 72 4d 6f 64 73 29 2e 54 6f 41 72 72 61 79 28 29 tMods.Union(eulerMods).ToArray()
9160 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 ;.....................}.........
9180 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6d 6f 64 73 2e 57 68 65 72 65 28 78 20 ............return.mods.Where(x.
91a0 3d 3e 20 21 78 2e 63 75 72 72 65 6e 74 56 61 6c 75 65 2e 70 72 6f 70 65 72 74 79 50 61 74 68 2e =>.!x.currentValue.propertyPath.
91c0 53 74 61 72 74 73 57 69 74 68 28 6b 4c 6f 63 61 6c 45 75 6c 65 72 48 69 6e 74 29 29 2e 54 6f 41 StartsWith(kLocalEulerHint)).ToA
91e0 72 72 61 79 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 rray();.................}.......
9200 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6d 6f 64 73 3b ......}.............return.mods;
9220 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 69 6e 74 65 72 6e 61 6c 20 73 74 61 .........}..........internal.sta
9240 74 69 63 20 49 45 6e 75 6d 65 72 61 62 6c 65 3c 55 6e 64 6f 50 72 6f 70 65 72 74 79 4d 6f 64 69 tic.IEnumerable<UndoPropertyModi
9260 66 69 63 61 74 69 6f 6e 3e 20 46 69 6e 64 42 65 73 74 45 75 6c 65 72 48 69 6e 74 28 51 75 61 74 fication>.FindBestEulerHint(Quat
9280 65 72 6e 69 6f 6e 20 72 6f 74 61 74 69 6f 6e 2c 20 41 6e 69 6d 61 74 69 6f 6e 43 6c 69 70 20 63 ernion.rotation,.AnimationClip.c
92a0 6c 69 70 2c 20 66 6c 6f 61 74 20 74 69 6d 65 2c 20 54 72 61 6e 73 66 6f 72 6d 20 74 72 61 6e 73 lip,.float.time,.Transform.trans
92c0 66 6f 72 6d 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 56 65 63 74 form).........{.............Vect
92e0 6f 72 33 20 65 75 6c 65 72 20 3d 20 72 6f 74 61 74 69 6f 6e 2e 65 75 6c 65 72 41 6e 67 6c 65 73 or3.euler.=.rotation.eulerAngles
9300 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 78 43 75 72 76 65 20 3d 20 41 6e 69 6d ;..............var.xCurve.=.Anim
9320 61 74 69 6f 6e 55 74 69 6c 69 74 79 2e 47 65 74 45 64 69 74 6f 72 43 75 72 76 65 28 63 6c 69 70 ationUtility.GetEditorCurve(clip
9340 2c 20 45 64 69 74 6f 72 43 75 72 76 65 42 69 6e 64 69 6e 67 2e 46 6c 6f 61 74 43 75 72 76 65 28 ,.EditorCurveBinding.FloatCurve(
9360 73 74 72 69 6e 67 2e 45 6d 70 74 79 2c 20 74 79 70 65 6f 66 28 54 72 61 6e 73 66 6f 72 6d 29 2c string.Empty,.typeof(Transform),
9380 20 22 6c 6f 63 61 6c 45 75 6c 65 72 41 6e 67 6c 65 73 52 61 77 2e 78 22 29 29 3b 0a 20 20 20 20 ."localEulerAnglesRaw.x"));.....
93a0 20 20 20 20 20 20 20 20 76 61 72 20 79 43 75 72 76 65 20 3d 20 41 6e 69 6d 61 74 69 6f 6e 55 74 ........var.yCurve.=.AnimationUt
93c0 69 6c 69 74 79 2e 47 65 74 45 64 69 74 6f 72 43 75 72 76 65 28 63 6c 69 70 2c 20 45 64 69 74 6f ility.GetEditorCurve(clip,.Edito
93e0 72 43 75 72 76 65 42 69 6e 64 69 6e 67 2e 46 6c 6f 61 74 43 75 72 76 65 28 73 74 72 69 6e 67 2e rCurveBinding.FloatCurve(string.
9400 45 6d 70 74 79 2c 20 74 79 70 65 6f 66 28 54 72 61 6e 73 66 6f 72 6d 29 2c 20 22 6c 6f 63 61 6c Empty,.typeof(Transform),."local
9420 45 75 6c 65 72 41 6e 67 6c 65 73 52 61 77 2e 79 22 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 EulerAnglesRaw.y"));............
9440 20 76 61 72 20 7a 43 75 72 76 65 20 3d 20 41 6e 69 6d 61 74 69 6f 6e 55 74 69 6c 69 74 79 2e 47 .var.zCurve.=.AnimationUtility.G
9460 65 74 45 64 69 74 6f 72 43 75 72 76 65 28 63 6c 69 70 2c 20 45 64 69 74 6f 72 43 75 72 76 65 42 etEditorCurve(clip,.EditorCurveB
9480 69 6e 64 69 6e 67 2e 46 6c 6f 61 74 43 75 72 76 65 28 73 74 72 69 6e 67 2e 45 6d 70 74 79 2c 20 inding.FloatCurve(string.Empty,.
94a0 74 79 70 65 6f 66 28 54 72 61 6e 73 66 6f 72 6d 29 2c 20 22 6c 6f 63 61 6c 45 75 6c 65 72 41 6e typeof(Transform),."localEulerAn
94c0 67 6c 65 73 52 61 77 2e 7a 22 29 29 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 78 glesRaw.z"));..............if.(x
94e0 43 75 72 76 65 20 21 3d 20 6e 75 6c 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 Curve.!=.null).................e
9500 75 6c 65 72 2e 78 20 3d 20 78 43 75 72 76 65 2e 45 76 61 6c 75 61 74 65 28 74 69 6d 65 29 3b 0a uler.x.=.xCurve.Evaluate(time);.
9520 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 79 43 75 72 76 65 20 21 3d 20 6e 75 6c 6c 29 0a ............if.(yCurve.!=.null).
9540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 75 6c 65 72 2e 79 20 3d 20 79 43 75 72 76 65 ................euler.y.=.yCurve
9560 2e 45 76 61 6c 75 61 74 65 28 74 69 6d 65 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 .Evaluate(time);.............if.
9580 28 7a 43 75 72 76 65 20 21 3d 20 6e 75 6c 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 (zCurve.!=.null)................
95a0 20 65 75 6c 65 72 2e 7a 20 3d 20 7a 43 75 72 76 65 2e 45 76 61 6c 75 61 74 65 28 74 69 6d 65 29 .euler.z.=.zCurve.Evaluate(time)
95c0 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 75 6c 65 72 20 3d 20 51 75 61 74 65 72 6e 69 6f ;..............euler.=.Quaternio
95e0 6e 43 75 72 76 65 54 61 6e 67 65 6e 74 43 61 6c 63 75 6c 61 74 69 6f 6e 2e 47 65 74 45 75 6c 65 nCurveTangentCalculation.GetEule
9600 72 46 72 6f 6d 51 75 61 74 65 72 6e 69 6f 6e 28 72 6f 74 61 74 69 6f 6e 2c 20 65 75 6c 65 72 29 rFromQuaternion(rotation,.euler)
9620 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6e 65 77 5b 5d 0a 20 20 20 20 ;..............return.new[].....
9640 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 50 72 6f 70 65 72 ........{.................Proper
9660 74 79 4d 6f 64 69 66 69 63 61 74 69 6f 6e 54 6f 55 6e 64 6f 50 72 6f 70 65 72 74 79 4d 6f 64 69 tyModificationToUndoPropertyModi
9680 66 69 63 61 74 69 6f 6e 28 6e 65 77 20 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 69 63 61 74 69 6f fication(new.PropertyModificatio
96a0 6e 20 7b 74 61 72 67 65 74 20 3d 20 74 72 61 6e 73 66 6f 72 6d 2c 20 70 72 6f 70 65 72 74 79 50 n.{target.=.transform,.propertyP
96c0 61 74 68 20 3d 20 6b 4c 6f 63 61 6c 45 75 6c 65 72 48 69 6e 74 20 2b 20 22 2e 78 22 2c 20 76 61 ath.=.kLocalEulerHint.+.".x",.va
96e0 6c 75 65 20 3d 20 65 75 6c 65 72 2e 78 2e 54 6f 53 74 72 69 6e 67 28 29 20 7d 29 2c 0a 20 20 20 lue.=.euler.x.ToString().}),....
9700 20 20 20 20 20 20 20 20 20 20 20 20 20 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 69 63 61 74 69 6f .............PropertyModificatio
9720 6e 54 6f 55 6e 64 6f 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 69 63 61 74 69 6f 6e 28 6e 65 77 20 nToUndoPropertyModification(new.
9740 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 69 63 61 74 69 6f 6e 20 7b 74 61 72 67 65 74 20 3d 20 74 PropertyModification.{target.=.t
9760 72 61 6e 73 66 6f 72 6d 2c 20 70 72 6f 70 65 72 74 79 50 61 74 68 20 3d 20 6b 4c 6f 63 61 6c 45 ransform,.propertyPath.=.kLocalE
9780 75 6c 65 72 48 69 6e 74 20 2b 20 22 2e 79 22 2c 20 76 61 6c 75 65 20 3d 20 65 75 6c 65 72 2e 79 ulerHint.+.".y",.value.=.euler.y
97a0 2e 54 6f 53 74 72 69 6e 67 28 29 20 7d 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .ToString().}),.................
97c0 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 69 63 61 74 69 6f 6e 54 6f 55 6e 64 6f 50 72 6f 70 65 72 PropertyModificationToUndoProper
97e0 74 79 4d 6f 64 69 66 69 63 61 74 69 6f 6e 28 6e 65 77 20 50 72 6f 70 65 72 74 79 4d 6f 64 69 66 tyModification(new.PropertyModif
9800 69 63 61 74 69 6f 6e 20 7b 74 61 72 67 65 74 20 3d 20 74 72 61 6e 73 66 6f 72 6d 2c 20 70 72 6f ication.{target.=.transform,.pro
9820 70 65 72 74 79 50 61 74 68 20 3d 20 6b 4c 6f 63 61 6c 45 75 6c 65 72 48 69 6e 74 20 2b 20 22 2e pertyPath.=.kLocalEulerHint.+.".
9840 7a 22 2c 20 76 61 6c 75 65 20 3d 20 65 75 6c 65 72 2e 7a 2e 54 6f 53 74 72 69 6e 67 28 29 20 7d z",.value.=.euler.z.ToString().}
9860 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d ).............};.........}.....}
9880 0a 7d 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1f 00 00 00 54 69 6d 65 .}..........................Time
98a0 6c 69 6e 65 52 65 63 6f 72 64 69 6e 67 5f 4d 6f 6e 6f 62 65 68 61 76 69 6f 75 72 00 00 00 00 00 lineRecording_Monobehaviour.....