이 페이지에는 이전 Unity 버전에서 2018.3로 업그레이드할 경우 기존 프로젝트에 영향을 미칠 수 있는 변경 사항이 나열됩니다.
flex-grow
, flex-shrink
및 flex-basis
를 나타내는 최대 3개의 파라미터를 허용합니다. flex-shrink 및 flex-basis 파라미터는 선택 사항입니다. 생략할 경우 flex-basis는 0, flex-shrink는 1로 기본값이 각각 지정됩니다.flex: N
이 flex N 0 auto
와 동등했습니다. 이제는 flex: N 1 0
과 동등하도록 만들어 CSS 표준을 따릅니다. 예전 시맨틱을 보전하려면 USS 파일의 모든 flex: N
지시문을 flex: N 0 auto
로 교체해야 합니다.큐브맵으로 렌더링할 때 VFACE 셰이더 변수는 DirectX와 다른 그래픽스 API간에 일관되지 않았습니다. 이제는 동일한 동작을 수행합니다. DirectX에서 VFACE bool 셰이더 변수를 사용하여 큐브맵을 렌더링하는 경우 코드의 로직을 뒤집어야 합니다. * 문제 ID 1027670을 참조하십시오.
물리 행동이 변경되었으며, 일부 프로젝트가 신규 버전과 다르게 동작할 수 있습니다. 다음이 대표적인 예입니다.
Unity 2018.3에는 일부 파티클 버그 수정이 포함되어 있으며, 이는 이전 버전에서 생성된 프로젝트에 영향을 줄 수 있습니다.
2018.3 이전에 Unity 에디터는 모노 C# 컴파일러(mcs)를 사용하여 프로젝트의 C# 파일을 컴파일했습니다. 2018.3 이상에서는 Roslyn C# 컴파일러(csc)가 새로운 스크립팅 런타임(.NET 4.x Equivalent)을 타겟팅하는 프로젝트에 사용됩니다. Roslyn으로 전환하면 다음과 같은 여러 동작을 목격할 수 있습니다.
csc.rsp
여야 합니다. PlatformDependentCompilation을 참조하십시오.UnityScript(.js) 및 Boo(.boo) 스크립트 파일은 이제 에디터에서 컴파일할 수 없습니다.
자세한 내용은 2017년 8월 블로그 포스트에서 확인할 수 있으며 unityscript2csharp 툴을 사용하여 UnityScript를 C#으로 전환할 수 있습니다.
애니메이션 창에서 루트 모션 애니메이션을 작성할 때 발생하는 일부 불일치 문제를 수정하기 위해 애니메이터 루트 모션 재생이 약간 변경되었습니다.
사례 | 생성되는 루트 모션 | Animator.applyRootMotion | 2018.2 | 2018.3 |
---|---|---|---|---|
A | 예 | 예 | 루트 모션을 루트 트랜스폼에 점증적으로 적용합니다. | 2018.2와 동일함 |
B | 아니요 | 아니요 | 애니메이션 클립에서 작성된 대로 포지션, 회전 및 스케일 커브를 적용합니다. | 2018.2와 동일함 |
C* | 예 | 아니요 | 루트 트랜스폼 움직임 없음 | 애니메이션 클립에서 작성된 대로 포지션, 회전 및 스케일을 적용합니다. |
D* | 아니요 | 예 | 루트 트랜스폼 움직임 없음 | 루트 모션을 루트에 점증적으로 적용합니다. |
C 및 D 사례의 경우 2018.3과 동일한 결과를 얻으려면 OnAnimatorMove를 구현하십시오. 그런 다음 루트 모션을 적용하고 싶지 않으면 Animator.deltaPosition
및 Animator.deltaRotation
을 폐기하십시오.
프로젝트가 applyRootMotion
을 사용하여 루트 트랜스폼의 포지션, 회전 및 스케일 애니메이션을 “뮤트”한 후 Root Transform 프로퍼티를 수동으로 오버라이드해야 합니다.