Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
Godot 4.3에서 Godot 4.4로 업그레이드
4.3으로 제작된 대부분의 게임과 앱의 경우 4.4로 마이그레이션하는 것이 상대적으로 안전합니다. 이 페이지에서는 프로젝트를 마이그레이션할 때 주의해야 할 모든 것을 다루려고 합니다.
깨는 변경사항
4.3에서 4.4로 마이그레이션하는 경우 여기에 나열된 주요 변경 사항이 영향을 미칠 수 있습니다. 변경 사항은 영역/시스템별로 그룹화됩니다.
이 문서에서는 각 주요 변경 사항이 GDScript에 영향을 미치는지 여부와 C# 주요 변경 사항이 바이너리 호환 또는 *소스 호환*인지 여부를 나타냅니다.
바이너리 호환 가능 - 기존 바이너리는 재컴파일 없이 성공적으로 로드 및 실행되며 런타임 동작은 변경되지 않습니다.
소스 호환 가능 - 소스 코드는 Godot를 업그레이드할 때 변경 없이 성공적으로 컴파일됩니다.
코어
변경 |
GDScript |
C# 바이너리 호환 |
C# 소스 호환 |
소개 |
|---|---|---|---|---|
파일 액세스 |
||||
|
✔️ |
|||
✔️ |
❌ |
✔️ |
||
✔️ |
❌ |
✔️ |
||
✔️ |
❌ |
✔️ |
||
✔️ |
❌ |
✔️ |
||
✔️ |
❌ |
✔️ |
||
✔️ |
❌ |
✔️ |
||
✔️ |
❌ |
✔️ |
||
✔️ |
❌ |
✔️ |
||
✔️ |
❌ |
✔️ |
||
✔️ |
❌ |
✔️ |
||
메서드 ``store_pascal_string``는 반환 유형을 ``void``에서 ``bool``로 변경합니다. |
✔️ |
❌ |
✔️ |
|
✔️ |
❌ |
✔️ |
||
✔️ |
❌ |
✔️ |
||
✔️ |
❌ |
✔️ |
||
OS |
||||
|
✔️ |
|||
|
❌ |
|||
결과 |
||||
|
✔️ |
|||
|
✔️ |
|||
예제 |
||||
|
✔️ |
|||
번역서버 |
||||
|
✔️ |
내보내기 설정
경고
@export_file``의 동작은 Godot 4.4에서 변경되었습니다. 인스펙터에서 새 값을 할당하면 이제 경로가 기존 ``res:// 경로(GH-97912) 대신 uid:// 참조로 저장되고 반환됩니다. 이는 **주요 변경**이며 스크립트 또는 직렬화된 파일에 res:// 기반 경로가 필요한 경우 문제가 발생할 수 있습니다.
예를 들어, 내보낸 파일 배열에는 이제 uid:// 및 res:// 경로가 혼합되어 포함될 수 있습니다. 특히 인스펙터에서 부분적으로 편집된 경우 더욱 그렇습니다.
4.4에서 res:// 형식을 유지하는 유일한 방법은 텍스트 편집기에서 .tscn 또는 .tres 파일을 **수동으로 편집**하는 것입니다. Godot 4.5부터 새로운 주석 @export_file_path``를 사용하여 이전 동작을 명시적으로 유지하고 원시 ``res:// 경로를 내보낼 수 있습니다.
노드 만들기
변경 |
GDScript |
C# 바이너리 호환 |
C# 소스 호환 |
소개 |
|---|---|---|---|---|
ScoreLabel |
||||
|
✔️ |
|||
|
✔️ |
|||
그래프편집 |
||||
|
✔️ |
|||
시그널 |
❌ |
❌ |
❌ |
물리
변경 |
GDScript |
C# 바이너리 호환 |
C# 소스 호환 |
소개 |
|---|---|---|---|---|
노드 |
||||
|
✔️ |
렌더링
변경 |
GDScript |
C# 바이너리 호환 |
C# 소스 호환 |
소개 |
|---|---|---|---|---|
GPUParticles2D |
||||
|
✔️ |
|||
GPUParticles3D |
||||
|
✔️ |
|||
GPUParticles2D |
||||
|
✔️ |
|||
GPUParticles3D |
||||
|
✔️ |
|||
렌더링 |
||||
|
✔️ |
|||
|
❌ |
|||
|
✔️ |
|||
|
✔️ |
|||
|
✔️ |
|||
Server |
||||
|
✔️ |
|||
셰이더 |
||||
메서드 ``get_default_texture_parameter``는 반환 유형을 ``Texture2D``에서 ``Texture``로 변경합니다. |
✔️ |
❌ |
❌ |
|
메소드 |
✔️ |
❌ |
✔️ |
|
✔️ |
❌ |
❌ |
||
|
✔️ |
❌ |
❌ |
편집기 플러그인
변경 |
GDScript |
C# 바이너리 호환 |
C# 소스 호환 |
소개 |
|---|---|---|---|---|
Godot 인터페이스 |
||||
|
✔️ |
|||
|
✔️ |
|||
|
✔️ |
|||
Godot 인터페이스 |
||||
|
❌ |
❌ |
❌ |
|
|
❌ |
❌ |
❌ |
참고
_get_import_flags 메소드는 엔진에서 사용된 적이 없습니다. 사용자가 엔진 동작에 영향을 미치는 이 기능에 의존할 방법이 없기 때문에 호환성 손상에도 불구하고 제거되었습니다.
행동 변화
코어
참고
이제 Curve 리소스는 해당 값 범위를 적용하므로 포인트가 기본 [0, 1] 범위를 벗어나는 경우 min_value 및 ``max_value``를 변경해야 합니다.
렌더링
참고
VisualShaderNodeVec4Constant 셰이더 노드의 입력 유형이 ``Vector4``로 변경되었습니다. 사용자는 상수의 값을 다시 생성해야 합니다.