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가 지원하는 모든 기능을 나열하는 것입니다.
참고
이 페이지는 현재 안정 버전 Godot가 지원하는 기능들을 나열하고 있습니다. 몇몇 기능은 3.x 릴리스 시리즈에서 작동하지 않을 수 있습니다.
플랫폼
더 보기
하드웨어 및 소프트웨어 버전 요구 사항은 시스템 요구 사항을 참고하세요.
참고
콘솔 지원에 대한 정보는 Godot 웹사이트를 참조하세요.
편집기와 내보낸 프로젝트를 모두 실행할 수 있는 플랫폼:
Windows (x86 및 ARM, 64비트 및 32비트).
macOS (x86 및 ARM, 64비트 전용).
Linux (x86 및 ARM, 64비트 및 32비트).
바이너리는 정적으로 연결되어 있어서 아주 오래된 기본 배포판에서 컴파일 된 경우라도 모든 배포판에서 실행할 수 있습니다.
공식 바이너리는 Godot 엔진 buildroot를 사용하여 컴파일되며 이를 통해 (LTS를 포함한) 일반적인 Linux 배포판에서 바이너리가 동작할 수 있게 됩니다.
Android (편집기 지원은 실험적입니다).
웹 브라우저. 4.0에서는 실험적이며, HTML5을 목표로 개발한다면 Godot 3.x를 추천드립니다.
참고
Linux는 rv64(RISC-V), ppc64 & ppc32(PowerPC), 그리고 loongarch64를 지원합니다. 하지만 해당 플랫폼에 맞게 편집기를 직접 컴파일하고 템플릿도 내보내야 합니다. 현재 공식 다운로드는 제공되지 않습니다. RISC-V 컴파일 지침은 iOS로 내보내기 페이지에서 확인할 수 있습니다.
내보낸 프로젝트를 실행할 수 있는 플랫폼:
iOS.
Godot는 가능한 한 플랫폼 독립적이고 비교적 쉽게 새로운 플랫폼으로 이식할 수 있는 것을 목표로 합니다.
참고
Godot 4에서 C#으로 작성된 프로젝트는 현재 웹으로 내보낼 수 없습니다. 해당 플랫폼에서 C#을 사용하시려면 Godot 3를 사용하는 것을 추천드립니다. Android와 iOS 플랫폼은 Godot 4.2에서 내보낼 수 있지만, 이는 실험적이며 일부 제한이 적용될 수 있습니다.
편집기
기능:
씬 트리 편집기.
내장 스크립트 편집기.
Visual Studio Code나 Vim과 같은 외부 스크립트 편집기 지원.
GDScript 디버거.
스레드 디버깅은 4.2부터 지원됩니다.
렌더링 파이프라인의 각 단계에 대한 CPU 및 GPU 시간 표시를 포함하는 시각적 프로파일러.
사용자 지정 퍼포먼스 모니터를 포함한 퍼포먼스 모니터링 도구.
실시간 스크립트 리로딩.
실시간 씬 편집.
변경사항은 편집기에 반영되며 실행 중인 프로젝트를 닫은 후에도 유지됩니다.
원격 인스펙터.
변경사항은 편집기에 반영되지 않으며 실행 중인 프로젝트를 닫은 후에는 유지되지 않습니다.
실시간 카메라 복제.
편집기 내 카메라를 움직여 실행 중인 프로젝트에서 결과를 봅니다.
내장 오프라인 클래스 참조 문서.
커뮤니티에서 기여한 수십 가지 언어로 편집기를 사용하세요.
플러그인:
편집기 플러그인은 애셋 라이브러리에서 다운로드받아 편집기 기능을 확장할 수 있습니다.
GDScript를 사용하여 자신의 플러그인을 만들어 새로운 기능을 추가하거나 작업 흐름을 가속화하하세요.
프로젝트 매니저의 애셋 라이브러리에서 프로젝트를 다운로드하고 직접 가져옵니다.
렌더링
Godot 4에는 세 가지 렌더러가 포함되어 있습니다:
Forward+. 데스크톱 플랫폼에만 적합한 가장 고급 렌더러입니다. 데스크톱 플랫폼에서는 기본으로 사용됩니다. 이 렌더러는 Vulkan, Direct3D 12, 또는 Metal을 렌더링 드라이버로 사용하며, RenderingDevice 백엔드를 사용합니다.
모바일. 기능은 적지만 단순한 씬을 더 빠르게 렌더링합니다. 모바일 및 데스크톱 플랫폼에 적합합니다. 모바일 플랫폼에서는 기본으로 사용됩니다. 이 렌더러는 Vulkan, Direct3D 12, 또는 Metal을 렌더링 드라이버로 사용하며, RenderingDevice 백엔드를 사용합니다.
호환성, 때때로 GL 호환성이라고도 불립니다. 가장 덜 발전된 렌더러로, 저사양 데스크톱 및 모바일 플랫폼에 적합합니다. 웹 플랫폼에서는 기본으로 사용됩니다. 이 렌더러는 OpenGL을 렌더링 드라이버로 사용합니다.
렌더링 메서드의 자세한 비교는 렌더러의 개요를 참조하세요.
2D 그래픽
스프라이트, 폴리곤 및 직선 렌더링.
애니메이션 스프라이트 제작 도우미 AnimatedSprite2D.
패럴랙스 레이어.
편집기의 미리보기를 포함한 Pseudo-3D 지원.
노멀 맵과 스페큘러 맵을 이용한 2D 조명.
점 (전방향/스포트) 및 방향성 2D 조명.
딱딱하거나 부드러운 그림자 (조명 단위로 조정 가능).
사용자 지정 셰이더는 LightOccluder2D 노드를 기반으로 2D 씬의 실시간 SDF 표현에 접근할 수 있으며, 이를 통해 2D 글로벌 일루미네이션을 포함한 향상된 2D 조명 효과를 구현할 수 있습니다.
비트맵, FreeType의 래스터화, 또는 멀티채널 부호화 디스턴스 필드(MSDF; Multi-channel Signed Distance Fields)를 사용한 글꼴 렌더링.
비트맵 글꼴은 BMFont와 같은 툴로 내보내거나 이미지 파일을 통해 불러올 수 있습니다 (고정폭 글꼴 전용).
다이나믹 글꼴은 흑백 글꼴 뿐만 아니라 색상 글꼴 역시 지원합니다 (이모지 등). TTF, OTF, WOFF1, WOFF2 형식을 지원합니다.
다이나믹 글꼴은 선택적 글꼴 윤곽선의 두께와 색상 조정을 지원합니다.
다이나믹 글꼴은 가변 글꼴, 합자 기능을 포함한 OpenType 기능들을 지원합니다.
다이나믹 글꼴은 글꼴 파일에 상관없이 굵게와 기울임을 지원합니다.
다이나믹 글꼴은 더 높은 해상도에서도 글꼴이 선명하게 보이도록 오버샘플링을 지원합니다.
다이나믹 글꼴은 글씨를 작은 크기에서 선명하게 보이게 하기 위해 서브픽셀 포지셔닝을 지원합니다.
다이나믹 글꼴은 글씨를 작은 크기에서 더욱 더 선명하게 보이게 하기 위해 LCD 서브픽셀 포지셔닝을 지원합니다.
부호화 디스턴스 필드(SDF; Signed Distance Field) 글꼴은 재래스터화 없이도 모든 해상도로 스케일 조정이 가능합니다. 다중 채널 SDF는 단색 SDF 글꼴에 비해 SDF 글꼴을 작은 크기로 더 잘 축소할 수 있게 합니다.
Oversampling for SVG images using the DPITexture import type. This allows for sharper results when scaling up the texture by re-rasterizing the SVG source image to a new resolution at run-time.
Oversampling can optionally take individual CanvasItem scales into account for crisper rendering when scaling nodes.
커스텀 입자 셰이더를 지원하는 GPU 기반 입자.
CPU 기반 입자.
향상된 글로우 능력을 위한 선택적 2D HDR 렌더링.
2D 툴
타일맵을 통한 2D 타일 기반 레벨 디자인.
내장 스무딩과 드래그 여백으로 된 2D 카메라.
2D 공간에서의 경로를 나타내는 Path2D 노드.
편집기에서 그리거나 절차적으로 생성할 수 있습니다.
노드가 Path2D 경로를 따라가도록 하는 PathFollow2D 노드.
2D 물리
물리 바디:
정적 바디.
애니메이터블 바디 (스크립트나 애니메이션으로만 움직이는 문과 플랫폼과 같은 오브젝트).
리지드 바디.
캐릭터 바디.
조인트.
물체가 들어오거나 나가는 것을 감지하는 영역.
콜리전 감지:
내장 모양: 선, 상자, 원, 캡슐, 세계 경계 (무한 평면).
콜리전 폴리곤 (편집기에서 직접 그리거나 스프라이트로부터 생성될 수 있음).
3D 그래픽
sRGB를 사용한 HDR 렌더링.
원근, 직교 및 절두체 오프셋 카메라.
Forward+ 렌더러를 사용할 때 깊이 프리패스가 사용되어 복잡한 씬에서 오버드로 비용을 줄여 성능을 향상시킬 수 있습니다.
Forward+ 및 모바일 렌더러에서 지원되는 GPU에서 가변 비율 셰이딩을 사용합니다.
물리 기반 렌더링 (내장 머티리얼 기능):
디즈니 PBR 모델을 따릅니다.
Burley, Lambert, Lambert Wrap (half-Lambert) 및 Toon Diffuse 셰이딩 모드 지원.
Schlick-GGX, Toon, Disabled 스페큘러 셰이딩 모드 지원.
ORM 텍스처를 지원하는 거칠기-메탈릭 워크플로를 사용합니다.
호라이즌 스페큘러 오클루전(필라멘트 모델)을 사용하여 머티리얼 외관을 개선합니다.
노멀 매핑.
거리 기반 자동 LOD를 포함한 패럴랙스 매핑/릴리프 매핑.
알베도 및 노멀 맵에 대한 디테일 매핑.
서브서피스 산란 및 투과율.
머티리얼 거칠기를 지원하는 화면공간 반사 (흐릿한 반사).
근접 페이드(부드러운 입자)와 거리 페이드.
거리 페이드는 투명 파이프라인을 거치지 않기 위해 알파 블렌딩이나 디더링을 사용할 수 있습니다.
디더링은 픽셀이나 오브젝트 별로 결정할 수 있습니다.
실시간 조명:
방향성 조명 (태양 또는 달). 씬에 최대 4개까지 가능.
전방위 조명.
원뿔 각과 감쇠를 조정할 수 있는 스포트 라이트.
반사, 간접광, 볼류메트릭 안개 강도는 조명마다 조절할 수 있습니다.
가짜 영역 조명을 위한 조절 가능한 조명 "크기" (그림자도 더 흐려짐).
성능을 향상시키기 위해 먼 거리의 조명과 그림자를 점차적으로 사라지게 하는 선택적 거리 페이드 시스템.
Forward+ 백엔드(데스크톱에서 디폴트)를 사용할 때, 조명의 개별 비용을 줄이기 위해 클러스터형 전방 최적화 기법을 사용하여 렌더링합니다. 클러스터형 렌더링은 한 메시에 사용할 수 있는 조명의 최대 수 제한도 제거합니다.
모바일 렌더러를 사용하는 경우, 메시 리소스당 최대 8개의 전방향 조명과 8개의 스포트 조명이 표시될 수 있습니다. 필요한 경우 구운 조명을 사용하여 이러한 한계를 극복할 수 있습니다.
그림자 매핑:
DirectionalLight: 직교 (가장 빠름), PSSM 2-split 및 4-split. 스플릿 간 블렌딩을 지원합니다.
OmniLight: 쌍포물선 (빠름) 또는 큐브맵 (느리지만 더 정확). 색이 있는 프로젝터 텍스처를 파노라마의 형태로 지원합니다.
SpotLight: 단일 텍스처. 색이 있는 투영 텍스처에 대응.
그림자 노멀 오프셋 바이어스와 그림자 팬케이킹을 통해 그림자 아티팩트와 피터 팬 현상을 줄입니다.
PCSS와 유사한 그림자 흐림 효과는 조명의 크기와 그림자가 드리워진 표면과의 거리를 기반으로 합니다.
조명 단위로 조정할 수 있는 그림자 블러 효과.
간접 조명을 통한 글로벌 일루미네이션:
구워진 라이트맵 (빠르지만, 런타임 중에 업데이트할 수 없음).
간접 조명만 굽기나 직접 및 간접 조명을 모두 굽기를 지원합니다. 굽기 모드는 하이브리드 조명 베이킹 설정을 허용하도록 조명별로 조정할 수 있습니다.
자동 및 수동으로 배치된 프로브를 사용하여 동적 오브젝트에 라이팅을 지원합니다.
선택적으로 구형 고조파를 기반으로 한 방향성 라이팅 및 거친 반사를 지원합니다.
라이트맵은 GPU에서 컴퓨트 셰이더를 사용하여 구워집니다 (CPU 라이트매핑에 비해 훨씬 빠릅니다). 굽기는 편집기에서만 수행할 수 있으며, 내보낸 프로젝트에서는 수행할 수 없습니다.
JNLM을 사용한 GPU 기반의 디노이징이나 OIDN을 사용한 CPU/GPU 기반의 디노이징을 지원합니다.
복셀 기반 GI 프로브. 동적 조명 및 동적 오클루더를 지원하며, 반사도 지원합니다. 빠른 굽기 단계가 필요하며, 이는 편집기나 실행 중(내보낸 프로젝트 포함)에 수행할 수 있습니다.
부호화 디스턴스 필드 GI는 대규모 오픈 월드를 위해 설계되었습니다. 동적 조명과 반사를 지원하지만, 동적 차광체는 지원하지 않습니다. 굽기가 필요하지 않습니다.
Screen-space indirect lighting (SSIL)은 절반이나 전체 해상도로 지원됩니다. 완전 실시간으로 동작하며, 모든 종류의 발광 라이팅(데칼 포함)을 지원합니다.
VoxelGI와 SDFGI는 성능 향상을 위해 GI를 절반 해상도로 렌더링할 수 있도록 지연 패스를 사용합니다 (기능적인 MSAA 지원은 유지됩니다).
반사:
복셀 기반 반사(GI 프로브 사용 시)와 SDF 기반 반사(부호화 디스턴스 필드 GI 사용 시). 복셀 기반 반사는 투명한 표면에서 보이는 반면, 거친 SDF 기반 반사는 불투명한 표면에서 보입니다.
빠르게 구워진 반사 또는 ReflectionProbe를 이용한 느린 실시간 반사. 시차 보정을 선택적으로 활성화할 수 있습니다.
머티리얼 거칠기를 지원하는 화면 공간 반사.
반사 기술은 더 높은 정확도를 위해 혼합해서 사용할 수 있습니다.
Forward+ 백엔드(데스크톱에서 디폴트)를 사용할 때, 반사 프로브는 개별 비용을 줄이기 위해 클러스터형 전방 최적화로 렌더링됩니다. 클러스터형 렌더링은 메시에 사용할 수 있는 반사 프로브의 수에 대한 제한도 제거합니다.
모바일 렌더러를 사용하는 경우, 메시 리소스당 최대 8개의 반사 프로브가 표시될 수 있습니다. 호환성 렌더러를 사용하는 경우, 메시 리소스당 최대 2개의 반사 프로브가 표시될 수 있습니다.
데칼:
알베도, 발광, ORM 및 노멀 매핑을 지원합니다.
텍스처 채널은 기본 머티리얼 위에 부드럽게 오버레이되며, 노멀/ORM 전용 데칼도 지원합니다.
입사각에 따라 데칼을 점차적으로 사라지게 하는 노멀 페이드 지원.
런타임 메시 생성에 의존하지 않습니다. 즉, 데칼이 매 프레임마다 움직이더라도 복잡한 스킨 메시에 성능 저하 없이 데칼을 사용할 수 있습니다.
nearest, bilinear, trilinear, anisotropic 텍스처 필터링을 지원합니다 (전역적으로 구성 가능).
성능을 향상시키기 위해 먼 거리의 데칼을 점차적으로 사라지게 하는 선택적 거리 페이드 시스템.
Forward+ 렌더러(데스크톱에서 디폴트)를 사용할 때 데칼은 클러스터형 포워드 최적화로 렌더링되어 개별 비용을 줄입니다. 클러스터형 렌더링은 또한 메시에서 사용할 수 있는 데칼 수에 대한 제한을 해제합니다.
모바일 렌더러를 사용하는 경우, 메시 리소스당 최대 8개의 데칼이 표시될 수 있습니다.
하늘:
파노라마 하늘(HDRI 사용).
씬의 방향성 조명에 반응하는 절차적 하늘과 물리 기반 하늘.
애니메이션이 가능한 사용자 지정 하늘 셰이더에 대한 지원.
선택한 품질 설정에 따라 환경광 및 스페큘러 조명에 사용되는 복사 맵이 실시간으로 업데이트될 수 있습니다.
안개:
지수형 깊이 안개.
지수형 높이 안개.
하늘색에 따라 자동 안개 색상을 조정하는 기능을 지원합니다 (대기 관점).
안개에서 태양 산란 효과를 지원합니다.
전통적인 안개와 볼륨 안개에 대해 별도의 제어를 통해 안개 렌더링이 하늘에 미치는 영향을 조절할 수 있습니다.
특정 머티리얼이 안개 효과를 무시하도록 설정할 수 있는 기능을 지원합니다.
볼륨 안개:
조명과 그림자에 반응하는 전역 볼륨 안개.
VoxelGI 또는 SDFGI를 사용할 때 볼륨 안개는 간접 조명을 고려할 수 있습니다.
특정 영역에 안개를 추가하거나 제거할 수 있는 안개 볼륨 노드. 지원되는 형태로는 상자, 타원, 원뿔, 원통, 3D 텍스처 기반 밀도 맵이 있습니다.
각 안개 볼륨에는 고유한 사용자 지정 셰이더를 가질 수 있습니다.
전통적인 안개와 함께 사용할 수 있습니다.
입자:
하위방출기(2D + 3D), 트레일(2D + 3D), 어트랙터(3D 전용) 및 콜리전(2D + 3D)을 지원하는 GPU 기반 입자.
지원되는 3D 입자 어트랙터 모양: 상자, 구체와 3D 벡터 필드.
지원되는 3D 입자 콜리전 모양: 상자, 구체, 구워진 부호화 디스턴스 필드 및 실시간 높이맵 (오픈 월드 날씨 효과에 적합).
2D 입자 콜리전은 씬의 LightOccluder2D 노드를 기반으로 실시간으로 생성된 부호화 디스턴스 필드를 사용하여 처리됩니다.
트레일은 내장 리본 트레일과 튜브 트레일 메시를 사용하거나, 스켈레톤이 있는 사용자 지정 메시를 사용할 수 있습니다.
수동 방출로 사용자 지정 입자 셰이더를 지원합니다.
CPU 기반 입자.
후처리:
톤 매핑 (선형, Reinhard, Filmic, ACES, AgX).
뷰포트의 밝기에 따라 자동 노출을 조정하는 기능을 지원합니다(수동으로 노출을 오버라이드하는 것도 가능).
조절 가능한 보케 시뮬레이션(상자, 육각형, 원)이 포함된 근거리 및 원거리 피사계 심도.
절반 또는 전체 해상도의 스크린 스페이스 앰비언트 오클루전(SSAO).
선택적 바이큐빅 업스케일링 및 각종 블렌딩 모드(Screen, Soft Light, Add, Replace, Mix)를 사용하는 글로우/블룸 효과.
글로우에는 렌즈 먼지 효과처럼 작용하는 컬러 더트 맵 텍스처를 사용할 수 있습니다.
글로우는 스크린 공간 블러 효과로 사용할 수 있습니다.
1차원 램프 또는 3D LUT 텍스처를 사용하는 색 교정.
스페큘러 에일리어싱의 영향을 줄이기 위한 거칠기 리미터.
밝기, 대비 및 채도 조정.
텍스처 필터링:
근접, 이중선형, 삼중선형 또는 비등방성 필터링.
필터링 옵션은 텍스처 기준이 아닌 사용별 기준로 정의됩니다.
텍스처 압축:
Basis Universal (느리지만 더 작은 파일 크기를 제공합니다).
고품질 압축을 위한 BPTC (macOS에서는 지원하지 않음).
ETC2 (macOS에서는 지원하지 않음).
S3TC (모바일/웹 플랫폼은 지원하지 않음).
안티앨리어싱:
시간적 안티앨리어싱 (TAA).
AMD FidelityFX Super Resolution 2.2 안티앨리어싱 (FSR2), 고품질 시간적 안티앨리어싱 형태로 네이티브 해상도에서 사용할 수 있습니다.
고속 근사 안티앨리어싱 (FXAA).
1.0 이상의 3D 해상도 스케일과 양선형 3D 스케일링을 사용하는 슈퍼 샘플 안티앨리어싱(SSAA).
알파 안티앨리어싱, MSAA 알파 투 커버리지 및 알파 해싱을 재질별로 지원합니다.
해상도 스케일링:
2D 렌더링을 원래 스케일을 유지하면서 낮은 해상도로 3D 렌더링하는 기능을 지원합니다. 이는 저사양 시스템에서 성능을 향상시키거나 고사양 시스템에서 시각적 품질을 개선하는 데 사용할 수 있습니다.
해상도 스케일링은 양선형 필터링, AMD FidelityFX Super Resolution 1.0 (FSR1) 또는 AMD FidelityFX Super Resolution 2.2 (FSR2)를 사용합니다.
텍스처 밉맵 LOD 바이어스는 자동으로 조정되어 낮은 해상도 스케일에서 품질을 향상시킵니다. 수동 오프셋으로도 수정할 수 있습니다.
이 효과들의 대부분은 더 나은 성능 또는 더 나은 품질을 위해 조정할 수 있습니다. 이는 Godot를 오프라인 렌더링에 사용할 때 유용합니다.
3D 툴
3D 물리
물리 바디:
정적 바디.
애니메이터블 바디 (스크립트나 애니메이션으로만 움직이는 문과 플랫폼과 같은 오브젝트).
리지드 바디.
캐릭터 바디.
차체 (시뮬레이션이 아닌 오락용 물리를 위한 물체).
조인트.
물체가 들어오거나 나가는 것을 감지하는 영역.
콜리전 감지:
내장 모양: 직육면체, 구체, 캡슐, 원통, 세계 경계 (무한 평면).
어느 메시든지 편집기에서 삼각형 콜리전 모양을 생성합니다.
어느 메시든지 편집기에서 하나 이상의 컨벡스 콜리전 모양을 생성합니다.
셰이더
2D: 사용자 지정 버텍스, 프래그먼트 및 라이트 셰이더.
3D: 사용자 지정 버텍스, 프래그먼트, 라이트 및 하늘 셰이더.
GLSL에서 영감을 얻은 셰이더 언어를 사용한 텍스트 기반 셰이더.
비주얼 셰이더 편집기.
사용자 지정 가져오기 플러그인 지원.
스크립팅
일반:
노드를 확장하는 스크립트를 통한 객체 지향 디자인 패턴.
시그널과 그룹을 이용한 스크립트 간 통신.
교차 언어 스크립팅 지원.
벡터나 변형과 같은 다양한 2D, 3D 및 4D 선형대수 데이터 유형.
optional static typing 을 포함한 High-level interpreted language.
문법은 파이썬에서 영감을 받았지만, GDScript는 파이썬 기반이 아닙니다.
Github에서 구문 강조 지원.
쓰레드를 사용해 비동기 액션이나 멀티 프로세서 코어 작업을 할 수 있습니다.
파일 크기를 줄이고 의존성을 낮추기 위해 별도의 바이너리로 패키징했습니다.
.NET 8 및 상위 버전을 지원합니다.
C# 12.0의 구문과 기능을 모두 지원합니다.
Windows, Linux, macOS를 지원합니다. 4.2 버전부터는 Android 및 iOS에 대한 실험적 지원도 가능합니다.
iOS 플랫폼에서는
arm64아키텍처만 지원됩니다.웹 플랫폼은 현재 지원되지 않습니다. 해당 플랫폼에서 C#을 사용하려면 Godot 3을 고려하세요.
IDE 기능을 활용하려면 외부 편집기 사용을 권장합니다.
GDExtension (C, C++, Rust, D, ...):
필요할 때 더 높은 성능과 서드 파티 통합을 해야 한다면 네이티브 라이브러리에 연결하세요.
성능이 적합하다면 게임 스크립트로는 GDScript나 C#을 사용할 것을 권장합니다.
공식 GDExtension 바인딩: C <https://github.com/godotengine/godot-headers> 및 C++ <https://github.com/godotengine/godot-cpp>.
여러분이 사용하는 어느 빌드 시스템이나 언어든 사용할 수 있습니다.
커뮤니티에서 제공하는 활발히 개발 중인 GDExtension 바인딩: D, Swift, Rust. (일부 바인딩은 실험적이며, 실제 사용에 적합하지 않을 수 있습니다).
오디오
기능:
모노, 스테레오, 5.1 및 7.1 출력.
2D 및 3D에서의 비위치 및 위치 재생.
2D와 3D에서의 선택적 도플러 효과.
수십 개의 효과가 포함되고 재 라우팅 가능한 오디오 버스 및 효과 지원.
폴리포니(단일 AudioStreamPlayer 노드에서 여러 소리 재생) 지원.
무작위 볼륨 및 피치에 대한 지원.
실시간 피치 스케일링 지원.
무작위 샘플 선택을 사용할 때 반복 방지를 포함하여 순차/무작위 샘플 선택에 대한 지원.
카메라 외의 위치에서 듣기 위해 사용할 수 있는 Listener2D와 Listener3D 노드.
절차적 오디오 생성을 위한 툴.
마이크를 녹음할 수 있는 오디오 입력.
텍스트를 음성으로 변환 플랫폼에서 제공하는 TTS 엔진을 사용합니다.
MIDI 입력.
MIDI 출력은 아직 지원하지 않습니다.
사용된 API 목록:
Windows: WASAPI.
macOS: CoreAudio.
Linux: PulseAudio 또는 ALSA.
가져오기
사용자 지정 가져오기 플러그인 지원.
형식:
이미지: 이미지 가져오기를 참고하세요.
오디오:
선택적 IMA-ADPCM 압축이 있는 WAV.
Ogg Vorbis.
MP3.
3D 씬: 3D 씬 가져오기를 참고하세요.
glTF 2.0 (권장).
.blend파일 (Blender의 glTF 내보내기 기능을 투명하게 호출하여).FBX 파일 (백그라운드에서 FBX2glTF 호출하여).
Collada (.dae).
Wavefront OBJ (정적 씬에서만 가능, 메시로 직접 로드하거나 3D 씬으로 가져올 수 있습니다).
내보낸 프로젝트를 포함하여 런타임에 glTF 2.0 씬을 불러오기를 지원합니다.
3D 메시는 Mikktspace를 사용하여 가져올 때 탄젠트를 생성하고, 블렌더=와 같은 3D 애플리케이션과의 일관성을 확보합니다.
입력
하드코딩된 입력 이벤트 또는 다시 매핑할 수 있는 입력 액션을 이용한 입력 매핑 시스템.
입력 축 값은 데드존을 구성하여 두 개의 다른 액션으로 매핑할 수 있습니다.
같은 코드로 키보드와 게임패드 둘 다 지원 가능합니다.
키보드 입력.
"물리" 모드로 키를 매핑하여 키보드 레이아웃에 독립적이게 할 수 있습니다.
마우스 입력.
마우스 커서를 보이게 하거나 숨기거나 캡처하거나 창 안으로 가둘 수 있습니다.
입력이 캡쳐될 때 원형 입력이 Windows와 Linux에서는 OS의 마우스 가속 설정을 우회하기 위해 사용하게 됩니다.
게임패드 입력(최대 8개 컨트롤러까지 동시 입력 가능).
펜/태블릿의 압력에 의한 입력 지원.
네트워킹
StreamPeer와 TCPServer를 사용한 저수준 TCP 네트워킹.
PacketPeer와 UDPServer를 사용한 저수준 UDP 네트워킹.
HTTPClient를 사용한 저수준 HTTP 요청.
HTTPRequest를 사용한 고수준 HTTP 요청.
번들된 인증서를 사용한 HTTPS 기본 지원.
UDP와 ENet을 사용한 High-level multiplayer.
원격 프로시저 호출(RPCs)을 사용한 자동 레플리케이션.
신뢰/비신뢰/순차적 전송 지원.
WebSocket 모든 플랫폼에서 클라이언트 및 서버 사용 가능.
WebRTC 모든 플랫폼에서 클라이언트 및 서버 사용 가능.
NAT 안에서 서버 운영시 포트 포워딩을 사용하기 위한 요구사항인 UPnP 지원.
국제화
이모지를 포함한 유니코드를 전체 지원합니다.
Windows, macOS 및 Linux에서 시스템 글꼴 로드를 지원합니다.
기본적으로 시스템 글꼴은 지원되지 않는 문자를 표시하기 위한 대체 수단으로 사용됩니다. 이를 통해 큰 글꼴 파일을 프로젝트와 함께 묶지 않고도 다국어 텍스트를 적절하게 표시할 수 있습니다.
CSV 또는 gettext를 이용해 현지화 문자열 저장.
편집기에서 gettext POT 및 PO 파일의 생성을 지원합니다.
GUI 요소에서 자동으로 또는
tr()함수를 사용하여 프로젝트에서 현지화된 문자열을 사용합니다.gettext 번역을 사용할 때 복수형 처리와 번역 문맥을 지원합니다.
양방향 조판, 텍스트 셰이핑 및 OpenType 현지화 형식을 지원합니다.
오른쪽에서 왼쪽으로 읽는 로케일에 대한 자동 UI 미러링을 지원합니다.
프로젝트의 국제화 친화성을 테스트하기 위한 의사 현지화 지원.
윈도우화 및 운영 체제 통합
단일 프로세스 안에서 여러 독립적인 창을 소환합니다.
프로젝트에서 소환한 창 이동, 크기 조절, 최소화 및 최대화.
창 제목 및 아이콘 변경.
만들기 투명 창을 사용하여 오버레이로 사용할 수 있으며 다각형 기반 마우스 패스스루를 지원합니다.
주의 요청 (대부분의 플랫폼의 제목표시줄에 깜빡임 발생).
전체 화면 모드.
기본적으로 Windows에서 빠른 Alt-탭 전환을 위해 경계 없는 전체 화면을 사용하지만, 선택적으로 입력 지연을 줄이기 위해 독점 전체 화면을 사용할 수 있습니다.
테두리 없는 창 (전체 화면 또는 비 전체 화면).
창을 항상 위에 두는 기능.
창이 포커스를 무시하도록 만듭니다(오버레이에 유용함).
창을 팝업(작업 전환기에서 숨김) 또는 독점(동일 프로세스의 다른 창과 상호 작용하는 것을 방지)으로 선언합니다.
Windows, macOS, Linux 및 Android에서 기본 파일 대화 상자를 지원합니다.
ETC2 (macOS에서는 지원하지 않음).
macOS에서 전역 메뉴 통합.
macOS에서 전역 메뉴 통합.
블로킹 또는 비 블로킹 방식으로 명령을 실행합니다 (동일한 프로젝트의 여러 인스턴스를 실행하는 것을 포함).
기본 또는 (시스템에 등록된) 커스텀 프로토콜 처리를 사용한 파일 위치 및 URL 열기.
사용자 지정 명령줄 인수를 파싱합니다.
Windows, macOS 및 Linux에서 화면 판독기를 지원합니다.
아무 Godot 바이너리(편집기 또는 내보낸 프로젝트)도
--headless명령줄 인수를 사용하여 헤드리스 서버로 사용할 수 있습니다. 이를 통해 GPU나 디스플레이 서버 없이 엔진을 실행할 수 있도록 합니다.
더 보기
이러한 기능 사용에 대한 자세한 내용은 :ref:`doc_creating_applications`를 참조하세요.
모바일
XR 지원 (AR 및 VR)
기본 제공 OpenXR 지원.
Meta Quest나 Valve Index와 같은 유명한 기기들에 대한 지원을 포함합니다.
플러그인을 통해 OpenXR을 사용하는 Android 기반 헤드셋을 위한 지원.
메타 퀘스트 1/2/3 및 Pro, Pico 4, Magic Leap 2, Lynx R1과 같은 인기 독립형 헤드셋을 지원합니다.
기본 제공 OpenXR 지원.
현재 헤드셋 내에서 평면용으로 애플리케이션을 내보내는 것만 지원됩니다. 몰입형 경험은 지원되지 않습니다.
XR 플러그인 구조를 통해 지원되는 기타 장치.
XR 애플리케이션에 필요한 공통 기능을 구현하는 다양한 고급 툴킷이 사용 가능합니다.
GUI 시스템
Godot의 GUI는 Godot에서 게임을 만들 때 사용되는 것과 같은 동일한 컨트롤 노드를 사용해 빌드되었습니다. 편집기 UI는 애드온을 사용하여 다양한 방법으로 쉽게 확장할 수 있습니다.
노드:
버튼.
체크박스, 체크 버튼, 라디오 버튼.
LineEdit (한 줄) 및 TextEdit(여러 줄)을 사용하여 텍스트를 입력합니다. TextEdit는 행 번호 표시 및 구문 강조 표시와 같은 코드 편집 기능도 지원합니다.
PopupMenu와 OptionButton을 사용하는 드롭다운 메뉴.
스크롤바.
레이블.
RichTextLabel은 text formatted using BBCode를 위한 것으로, 애니메이션화된 커스텀 효과를 지원합니다.
트리 (표를 표현할 때에도 사용 가능).
RGB와 HSV 모드를 포함한 색상 선택기.
컨트롤은 회전하거나 크기를 키울 수 있습니다.
크기 조절:
GUI 요소를 특정 코너, 에지 또는 중앙에 고정하는 앵커.
일정한 규칙에 따라 GUI 요소들을 자동으로 배치하는 컨테이너.
canvas_items또는viewport의 늘리기 모드를 사용하여 multiple resolutions 로 확장합니다.앵커와
expand늘리기 비율을 사용한 모든 화면 비율 지원.
테마:
내장 테마 편집기.
현재 편집기 테마 설정에 따라 테마를 생성합니다.
StyleBoxFlat를 사용한 벡터 기반 절차적 테마.
둥근 모서리와 굽은 모서리, 그림자 및 테두리별 너비와 안티에일리어싱 지원.
StyleBoxTexture를 사용한 텍스트 기반 테마.
Godot의 작은 배포 크기는 Electron이나 Qt같은 프레임워크의 적절한 대안이 될 수 있습니다.
애니메이션
직운동학과 역운동학.
모든 속성에 대해 보간법을 사용자 지정할 수 있는 애니메이팅 지원.
애니메이션 트랙에서 메서드 호출 지원.
애니메이션 트랙에서 소리 지원.
애니메이션에서 베지에 곡선(Bézier curves) 지원.
파일 형식
씬과 리소스는 텍스트 기반 또는 바이너리 형식으로 저장 가능.
텍스트 기반 형식은 사람이 읽을 수 있고, 버전 관리 친화적입니다.
바이너리 형식은 큰 씬 또는 리소스에 대해 저장과 불러오기가 빠릅니다.
FileAccess 을 이용해 텍스트나 바이너리 파일을 읽고 쓰기.
선택적으로 압축하거나 암호화할 수 있습니다.
JSON 파일 읽고 쓰기.
ConfigFile을 사용해 INI 스타일 구성 파일 읽고 쓰기.
벡터2/3, 컬러를 포함한 모든 Godot 데이터 타입을 (역)직렬화할 수 있습니다.
XMLParser를 사용한 XML 파일 읽기.
Godot의 가져오기 시스템을 거치지 않고도 내보낸 프로젝트에서 이미지, 오디오/비디오, 글꼴 및 ZIP 아카이브를 불러오고 저장합니다.
게임 데이터를 PCK 파일(빠른 검색에 최적화된 전용 포맷), ZIP 파일, 또는 직접 실행 가능한 한 개의 파일 안에 압축.
모드와 DLC를 지원하기 위해 엔진이 읽을 수 있는 추가적인 PCK 파일 내보내기.
기타
Ogg Theora를 내장 지원하여 비디오 재생을 할 수 있습니다.
Movie Maker mode 를 사용하여 실행 중인 프로젝트에서 동기화된 오디오와 완벽한 프레임 페이싱으로 비디오를 녹화할 수 있습니다.
필요할 때 씬 트리의 오버헤드를 무시할 수 있는 서버에 대한 낮은 수준의 접근.
자동화를 위한 명령줄 인터페이스 .
지속적인 통합 플랫폼을 사용해 프로젝트를 내보내고 배포합니다.
명령줄 자동완성 스크립트는 Bash, zsh 그리고 fish에서 사용 가능합니다.
모든 플랫폼에서 print_rich 를 사용하여 표준 출력에 컬러 텍스트를 출력할 수 있습니다.
편집기는 프로젝트에서 사용된 기능을 감지하고 컴파일 프로필을 생성할 수 있으며, 이를 통해 불필요한 기능을 비활성화하여 더 작은 크기의 내보내기 템플릿 바이너리를 생성할 수 있습니다.
엔진 바이너리와 정적으로 연결된 C++ 모듈 지원.
그 밖에서 Android 내보내기 템플릿의 필요한 기능만을 활성화 해 컴파일하는 등으로 용량을 더 줄일 수 있습니다. :ref:`doc_optimizing_for_size`에서 추가 정보를 확인하세요.
C++17로 작성된 엔진과 편집기.
GCC, Clang과 MSVC를 사용해 컴파일될 수 있습니다. MinGW 또한 지원됩니다.
패키저(packagers) 친화적입니다. 대부분의 경우 시스템 라이브러리를 Godot가 제공하는 라이브러리 대신 사용할 수 있습니다. 빌드 시스템은 아무것도 다운로드하지 않습니다. 빌드는 완전히 재현할 수 있습니다.
라이선스는 MIT 라이선스입니다.
contributions welcome 공개된 개발 프로세스.
더 보기
Godot 제안 저장소에는 커뮤니티가 요청한 기능과 향후 Godot 릴리스에서 구현될 수 있는 기능 목록이 있습니다.