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는 다음의 이미지 형식을 가져올 수 있습니다:
BMP (
.bmp) - 16-bit per pixel 이미지는 지원되지 않습니다. 1-bit, 4-bit, 8-bit, 24-bit, and 32-bit per pixel 이미지만이 지원됩니다.DirectDraw Surface (
.dds) - 만약 텍스처에 밉맵이 있다면 곧바로 로딩됩니다. 커스텀 밉맵을 사용하는 것과 같은 효과를 구현하는데 쓸 수 있습니다.크로노스 텍스처(
.ktx) - `libktx <https://github.com/KhronosGroup/KTX-Software>`__을 사용하여 디코딩이 수행됩니다. 2D 이미지만 지원합니다. 큐브맵, 텍스처 배열 및 디패딩은 지원되지 않습니다.OpenEXR (
.exr) - HDR 을 지원합니다. (파노라믹한 하늘을 구현하는데 사용하는 것을 권장합니다).Radiance HDR (
.hdr) - HDR을 지원합니다 (파노라마 하늘에 강력 추천합니다).JPEG (
.jpg,.jpeg) - 포맷의 한계로 투명한 이미지를 지원하지 않습니다.PNG (
.png) - 정확도가 채널당 8비트로 제한됩니다 (HDR 이미지는 지원하지 않습니다).Truevision Targa (
.tga)SVG (
.svg,.svgz) - SVG는 가져올 때 NanoSVG 로 래스터화 됩니다. 복잡한 벡터가 제대로 렌더링되지 않을 수 있으므로 지원은 제한적입니다. 복잡한 벡터는 보통 Inkscape를 이용해 PNG로 렌더링 하는 것이 더 낫습니다. 이 작업은 command-line interface 을 이용해 자동화 할 수 있습니다.WebP (
.webp) - WebP 파일은 투명도를 지원하고 손실 압축과 무손실 압축을 모두 지원합니다. 정확도는 채널당 8 bit로 제한됩니다.
참고
만약 특정 모듈을 비활성화 한 채로 Godot 편집기를 직접 컴파일했다면, 몇몇 포맷을 사용할 수 없을 수 있습니다.
텍스처 가져오기
Godot에서 디폴트 행동은 이미지를 텍스처로 가져오는 것입니다. 텍스처는 비디오 메모리에 저장되며 직접 접근할 수 없습니다. 이것이 그리기를 효율적으로 만들어줍니다.
FileSystem 도크에서 이미지를 선택한 후 조정할 수 있는 가져오기 옵션이 12개 이상 있습니다.
FileSystem 도크에서 이미지를 선택한 후 가져오기 도크의 가져오기 옵션입니다. 이러한 옵션 중 일부는 특정 압축 모드에서만 표시됩니다.
가져오기 리소스 타입 변경하기
가져오기 도크에서 다른 유형의 가져온 리소스를 선택할 수 있습니다.
BitMap: 1비트 단색 텍스처(TextureButton 및 :ref:`class_TouchScreenButton`에서 클릭 마스크로 사용하기 위한 용도) 이 리소스 유형은 2D 또는 3D 노드에 직접 표시할 수 없지만 :ref:`get_bit <class_BitMap_method_get_bit>`을 사용하여 스크립트에서 픽셀 값을 쿼리할 수 있습니다.
큐브맵: 큐브맵의 측면(원활한 큐브맵) 사이에 보간을 사용하여 텍스처를 6면 큐브맵으로 가져오며 사용자 정의 셰이더에서 샘플링할 수 있습니다.
CubemapArray: 사용자 정의 셰이더에서 샘플링할 수 있는 6면 큐브맵 컬렉션으로 텍스처를 가져옵니다. 이 리소스 유형은 Compatibility 렌더러가 아닌 Forward+ 또는 Mobile 렌더러를 사용할 때만 표시될 수 있습니다.
글꼴 데이터(고정 폭 이미지 글꼴): 모든 문자의 너비가 동일한 비트맵 글꼴로 이미지를 가져옵니다. :ref:`doc_gui_using_fonts`를 참조하세요.
이미지: 이미지를 있는 그대로 가져옵니다. 이 리소스 유형은 2D 또는 3D 노드에 직접 표시할 수 없지만 :ref:`get_pixel<class_Image_method_get_pixel>`를 사용하여 스크립트에서 픽셀 값을 쿼리할 수 있습니다.
Texture2D: 이미지를 2D 및 3D 표면 표시에 적합한 2차원 텍스처로 가져옵니다. 이것이 기본 가져오기 모드입니다.
Texture2DArray: 이미지를 2차원 텍스처 모음으로 가져옵니다. Texture2DArray는 3차원 텍스처와 유사하지만 레이어 간 보간이 없습니다. 내장된 2D 및 3D 셰이더는 텍스처 배열을 표시할 수 없으므로 2D 또는 :ref:`3D <doc_spatial_shader>`에서 사용자 정의 셰이더를 생성하여 텍스처 배열의 텍스처를 표시해야 합니다.
Texture3D: 이미지를 3차원 텍스처로 가져옵니다. 이것은 3D 표면에 적용되는 2D 텍스처가 아닙니다. Texture3D는 텍스처 배열과 유사하지만 레이어 간 보간 기능이 있습니다. Texture3D는 일반적으로 volumetric Fog, 입자 유인기 벡터 필드, Environment 3D LUT 색상 보정 및 사용자 정의 셰이더의 FogMaterial 밀도 맵에 사용됩니다.
TextureAtlas: 이미지를 다양한 텍스처의 *아틀라스*로 가져옵니다. 애니메이션 2D 스프라이트의 메모리 사용량을 줄이는 데 사용할 수 있습니다. 내장된 3D 셰이더에서 지원이 누락되어 2D에서만 지원됩니다.
큐브맵**의 경우 예상되는 이미지 순서는 X+, X-, Y+, Y-, Z+, Z-입니다(Godot의 좌표계에서 Y+는 "위"이고 Z-는 "앞"입니다). 큐브맵 이미지에 사용할 수 있는 템플릿은 다음과 같습니다(마우스 오른쪽 버튼 클릭 > **다른 이름으로 링크 저장...).
3D 감지
기본 가져오기 옵션(밉맵 없음 및 무손실 압축)은 2D에 적합하지만 대부분의 3D 프로젝트에는 적합하지 않습니다. **3D 감지**는 Godot가 3D 씬에서 텍스처가 사용될 때(예: :ref:`class_BaseMaterial3D`의 텍스처) 이를 인식하게 합니다. 이런 일이 발생하면 여러 가져오기 옵션이 변경되어 텍스처 플래그가 3D에 더 친숙해집니다. Mipmap이 활성화되고 :ref:`doc_importing_images_detect_3d_compress_to`가 변경되지 않는 한 압축 모드는 **VRAM 압축**으로 변경됩니다. 텍스처도 자동으로 다시 가져옵니다.
3D에서 사용되는 텍스처가 감지되면 출력 패널에 메시지가 인쇄됩니다.
텍스처가 3D에서 사용되는 것으로 감지될 때 품질 문제가 발생하는 경우(예: 픽셀 아트 텍스처), 3D에서 텍스처를 사용하기 전에 3D 감지 > 다음으로 압축 옵션을 변경하거나, 3D에서 텍스처를 사용한 후 :ref:`doc_importing_images_compress_mode`를 **무손실**로 변경하세요. 텍스처가 멀리서 거칠게 보이는 것을 방지하기 위해 밉맵 생성이 활성화된 상태로 유지되므로 **3D 감지**를 비활성화하는 것보다 이 방법이 더 좋습니다.
옵션 가져오기
더 보기
Godot 4.0부터 텍스처 필터와 반복 모드는 2D의 CanvasItem 속성(기본값으로 작동하는 프로젝트 설정)과 3D의 재료별 구성 <doc_standard_material_3d_sampling>`에서 설정됩니다. 사용자 정의 셰이더에서는 :ref:`doc_shading_language 문서에 설명된 힌트를 사용하여 sampler2D 유니폼에서 필터 및 반복 모드가 변경됩니다.
압축 모드
이미지는 게임의 거대한 애셋들 중 하나 입니다. 이를 효율적으로 다루기 위해, 압축이 필요합니다. Godot는 여러 압축 방식을 제공하며, 사용 사례에 따라 다릅니다.
무손실: 2D 애셋에 대한 디폴트이자 가장 일반적인 압축 모드입니다. 아티팩트 없이 애셋을 보여주며 디스크 압축률도 훌륭합니다. 하지만 VRAM 압축보다 비디오 메모리 량이 훨씬 많이 사용합니다. 픽셀 아트에도 권장되는 설정입니다.
손실 압축: 큰 2D 애셋를 압축할 때 좋은 선택지입니다. 약간의 변형이 있지만 VRAM보다는 적고 무손실 압축보다 파일의 크기도 수 배는 작습니다. 이 방식으로는 VRAM 사용량을 줄일 수 없어 무손실 압축 및 압축되지 않은 애셋과 사용량이 같습니다.
VRAM 압축 가장 일반적인 3D 애셋 압축 방법입니다. 디스크의 공간을 줄일 수 있고 VRAM 사용량도 상당히 줄어듭니다(보통 4에서 6 정도). 2D에 사용하면 눈에 띄는 변형이 발생하므로 사용을 피하세요.
압축하지 않음: raw float 이미지처럼 압축할 수 없는 포맷에만 유용합니다.
기본 범용: 이 대체 VRAM 압축 모드는 로드 시 대부분의 GPU 압축 형식으로 트랜스코딩할 수 있는 형식으로 텍스처를 인코딩합니다. 이는 VRAM 압축에 비해 품질이 낮고 압축 시간이 느린 대신 VRAM 압축을 활용하는 매우 작은 파일을 제공합니다. VRAM 사용량은 일반적으로 VRAM 압축과 동일합니다. Basis Universal은 부동 소수점 이미지 형식을 지원하지 않습니다(엔진은 대신 내부적으로 VRAM 압축으로 대체됩니다).
참고
3D에서도 "픽셀 아트" 텍스처는 낮은 해상도로 인해 성능이 크게 향상되지 않고 모양에 부정적인 영향을 미치기 때문에 VRAM 압축을 비활성화해야 합니다.
이 표에는 5가지 옵션 각각의 장점과 단점을 함께 설명합니다 (
= 최고,
= 최악):
압축 모드 |
무손실 |
손실 |
VRAM 압축 |
VRAM 비압축 |
Basis Universal |
|---|---|---|---|---|---|
설명 |
무손실 WebP / PNG로 저장됨 |
손실 WebP로 저장됨 |
플랫폼에 따라 S3TC, BPTC 또는 ETC2로 저장됨 |
원형 픽셀로 저장됨 |
VRAM 압축 형식으로 변환됨 |
디스크의 크기 |
|
|
|
|
|
메모리 사용량 |
|
|
|
|
|
성능 |
|
|
|
|
|
품질 손실 |
|
|
|
|
|
불러오기 시간 |
|
|
|
|
|
밉맵이 활성화된 단일 RGBA8 텍스처에 대한 예상 메모리 사용량:
텍스처 크기 |
무손실 |
손실 |
VRAM 압축 |
VRAM 비압축 |
Basis Universal |
|---|---|---|---|---|---|
128×128 |
|
|
|
|
|
256×256 |
|
|
|
|
|
512×512 |
|
|
|
|
|
1024×1024 |
|
|
|
|
|
2048×2048 |
|
|
|
|
|
4096×4096 |
|
|
|
|
|
참고
위 표에서 알파 채널을 가지고 있지 않은 이미지(RGB8)에 대한 메모리 사용량이 25%로 감소합니다. 밉맵이 비활성화된 이미지에 대한 메모리 사용량은 25%로 더욱 감소됩니다.
더 큰 해상도에서는 VRAM 압축의 영향이 훨씬 더 커집니다. 4:1 압축 비율(S3TC를 사용한 불투명 텍스처의 경우 6:1)의 VRAM 압축을 통해 GPU에서 동일한 양의 메모리를 사용하면서 각 축에서 텍스처를 두 배 더 크게 만들 수 있습니다.
또한 VRAM 압축은 텍스처를 샘플링하는 데 필요한 메모리 대역폭을 줄여 메모리 대역폭이 제한된 시나리오(통합 그래픽 및 모바일에서 자주 발생)에서 렌더링 속도를 높일 수 있습니다. 이러한 요소들이 결합되어 VRAM 압축은 고해상도 텍스처를 사용하는 3D 게임에 필수입니다.
FileSystem 도크에서 텍스처를 두 번 클릭한 다음 인스펙터를 보면 텍스처가 차지하는 메모리 양을 미리 볼 수 있습니다.
인스펙터에서 텍스처를 미리 보는 중입니다. 출처: Red Brick 03 - Poly Haven
압축 > 고품질
참고
고품질 VRAM 텍스처 압축은 Forward+ 및 모바일 렌더러에서만 지원됩니다.
호환성 렌더러를 사용할 때 이 옵션은 항상 비활성화된 것으로 간주됩니다.
활성화된 경우 데스크톱 플랫폼에서는 BPTC 압축을 사용하고 모바일 플랫폼에서는 ASTC 압축을 사용합니다. BPTC를 사용할 때 BC7은 SDR 텍스처에 사용되고 BC6H는 HDR 텍스처에 사용됩니다.
비활성화된 경우(기본값) 데스크톱 플랫폼에서는 더 빠르지만 품질이 낮은 S3TC 압축을 사용하고 모바일/웹 플랫폼에서는 ETC2를 사용합니다. S3TC를 사용할 때 DXT1(BC1)은 불투명 텍스처에 사용되고 DXT5(BC3)는 투명 또는 일반 맵(RGTC) 텍스처에 사용됩니다.
BPTC 및 ASTC는 HDR 텍스처에 대한 VRAM 압축을 지원하지만 S3TC 및 ETC2는 지원하지 않습니다(아래 HDR 압축 참조).
무손실 압축
참고
이 옵션은 Godot(.hdr 및 .exr 파일)에서 HDR 형식으로 가져온 텍스처에만 영향을 미칩니다.
**비활성화**로 설정하면 불투명 여부에 관계없이 HDR 텍스처에 VRAM 압축을 사용하지 않습니다. 대신 텍스처는 RGBE9995(채널당 9비트 + 5비트 지수 = 픽셀당 32비트)로 변환되어 half-float 또는 단정밀도 부동 이미지 형식에 비해 메모리 사용량을 줄입니다.
**불투명만**(기본값)으로 설정된 경우 불투명 HDR 텍스처에 대해서만 VRAM 압축을 사용합니다. 이는 투명성을 동시에 지원하는 VRAM 압축 HDR 형식이 없기 때문에 HDR 형식의 제한 때문입니다.
**항상**으로 설정하면 알파 채널이 있는 HDR 텍스처에 대해서도 VRAM 압축이 강제됩니다. 이를 수행하기 위해 가져오기 시 알파 채널이 삭제됩니다.
일반 맵
텍스처를 노멀 맵으로 사용할 때는 빨강과 초록 채널만 필요합니다. 일반적인 텍스처 압축 알고리즘은 노멀 맵에서 보기 흉한 아티팩트를 일으키므로, RGTC 압축 형식이 이 데이터에는 가장 적합합니다. 이 옵션을 활성화로 강제하면 Godot는 이미지를 RGTC 압축 형식으로 가져오게 됩니다. 기본적으로는 감지로 설정되어 있습니다. 즉, 텍스처가 노멀 맵으로 사용되는 것으로 감지되면 자동으로 활성화로 변경되어 다시 가져온다는 것을 뜻합니다.
RGTC 압축이 노멀맵 결과 이미지에 영향을 끼친다는 것을 명심하세요. 이 점을 고려해 노멀맵을 사용하는 커스텀 셰이더를 조정해줘야 합니다.
아래 예에서 RGTC 압축을 사용한 노멀 맵은 표준 RGBA VRAM 압축 텍스처와 동일한 양의 메모리를 사용하면서 디테일을 훨씬 더 잘 보존할 수 있습니다.
표준 VRAM 압축(왼쪽) 및 RGTC VRAM 압축(오른쪽)을 사용한 노멀 맵
참고
Godot는 노멀맵에서 X+, Y-와 Z+ 좌표를 사용합니다. 따라서 다른 엔진용으로 나온 재질을 가져왔다면 노멀맵의 Y좌표를 반전시켜야 할 수 있습니다. 그렇지 않으면 노멀맵 Y축 방향이 반전된 상태로 나타날 수 있습니다.
노멀맵에 관한 추가적인 정보(유명 엔진 등의 좌표 순서가 정리된 테이블 등)는 이 곳 에서 찾을 수 있습니다.
압축 > 채널 팩
**sRGB Friendly**(기본값)로 설정하면 sRGB 색상을 지원하지 않으므로 RG 색상 형식이 사용되지 않습니다.
**최적화**로 설정하면 텍스처가 파란색 채널을 사용하지 않는 경우 RG 색상 형식을 사용할 수 있습니다.
세 번째 옵션 노멀 맵(RG 채널)**은 레이어드 텍스처(:ref:`class_Cubemap`, :ref:`class_CubemapArray`, :ref:`class_Texture2DArray` 및 :ref:`class_Texture3D`)에서만 *만* 사용할 수 있습니다. 이렇게 하면 텍스처의 모든 레이어를 RG 색상 형식으로 가져오고 빨간색과 녹색 채널만 유지됩니다. :abbr:`RGTC(적록색 텍스처 압축)` 압축은 표준 RGBA VRAM 압축 텍스처와 동일한 양의 메모리를 사용하면서 세부 묘사를 훨씬 더 잘 보존할 수 있습니다. 이는 **VRAM 압축 또는 기본 범용 압축 모드를 사용하는 텍스처에만 영향을 미칩니다.
생성된 파일
활성화하면 가져올 때 더 작은 버전의 텍스처가 생성됩니다. 예를 들어, 64×64 텍스처는 6개의 밉맵(32×32, 16×16, 8×8, 4×4, 2×2, 1×1)을 생성합니다. 여기에는 여러 가지 이점이 있습니다.
거리가 멀거나(3D에서) 카메라 확대/축소 또는 CanvasItem 크기(2D에서)로 인해 텍스처가 축소되는 경우 텍스처가 거칠어지지 않습니다.
원본 텍스처의 작은 버전을 샘플링하는 것이 더 빠르고 더 적은 메모리 대역폭을 필요로 하기 때문에 텍스처가 멀리 표시되면 성능이 향상됩니다.
밉맵의 단점은 메모리 사용량이 약 33% 증가한다는 것입니다.
3D에서 밉맵을 활성화하는 것이 좋습니다. 그러나 2D에서는 프로젝트가 밉맵 활성화로 인해 시각적으로 이점을 얻는 경우에만 활성화해야 합니다. 카메라가 크게 축소되지 않으면 밉맵을 활성화해도 이점이 없지만 메모리 사용량이 증가합니다.
밉맵 > 제한
경고
**Mipmaps > Limit**은 현재 구현되지 않았으며 변경해도 아무런 효과가 없습니다.
``-1``보다 큰 값으로 설정하면 생성할 수 있는 최대 밉맵 수를 제한합니다. 극단적인 거리에서 텍스처의 해상도가 너무 낮아지는 것을 방지하려면 약간의 입자성을 희생하면서 이 값을 줄일 수 있습니다.
거칠기 > 모드
이 텍스처에서 거칠기 맵으로 고려하는 색상 채널입니다. 거칠기 > 소스 법선이 비어 있지 않은 경우에만 적용됩니다.
거칠기 > 소스 법선
가져올 때 거칠기 필터링을 위한 노멀 맵으로 고려할 텍스처의 경로입니다. 이를 지정하면 3D에서 반사 앨리어싱을 약간 줄이는 데 도움이 될 수 있습니다.
가져오기 시 거칠기 필터링은 2D가 아닌 3D 렌더링에만 사용됩니다.
프로세스 > 알파 테두리 고치기
이렇게 하면 같은 주변 색상의 픽셀을 넣어서 테두리를 투명에서 불투명으로 만듭니다. 포토샵 등에서 이미지를 내보낼 때 테두리 효과를 완화하는데 도움을 줍니다.
특정 이미지에 문제가 발생하지 않는 한 이 기능을 활성화된 상태로 두는 것이 좋습니다(기본값).
프로세스 > 프리멀트 알파
알파 테두리 고치기를 사용하여 어두워진 테두리를 고치는 대신, 프리멀티플라이드 알파를 사용할 수 있습니다. 이 옵션을 활성화하면 텍스처가 이 형식으로 변환됩니다. 프리멀티플라이드 알파 텍스처를 올바르게 표시하려면 특정 머티리얼이 필요합니다.
2D에서는 이 텍스처를 사용하는 CanvasItems에서 Premul Alpha 블렌드 모드를 사용하도록 :ref:`class_CanvasItemMaterial`를 만들고 구성해야 합니다. :ref:`사용자 정의 캔버스 항목 셰이더 <doc_canvas_item_shader>`에서는 ``render_mode blend_premul_alpha;``를 사용해야 합니다.
3D에서는 이 텍스처를 사용하는 재질에 Premul Alpha 블렌드 모드를 사용하도록 :ref:`class_BaseMaterial3D`를 만들고 구성해야 합니다. :ref:`사용자 정의 공간 셰이더 <doc_spatial_shader>`에서는 ``render_mode blend_premul_alpha;``를 사용해야 합니다.
프로세스 > 노멀 맵 반전 Y
Godot는 노멀맵에서 X+, Y-와 Z+ 좌표를 사용합니다. 따라서 다른 엔진용으로 나온 재질을 가져왔다면 노멀맵의 Y좌표를 반전시켜야 할 수 있습니다. 그렇지 않으면 노멀맵 Y축 방향이 반전된 상태로 나타날 수 있습니다.
노멀맵에 관한 추가적인 정보(유명 엔진 등의 좌표 순서가 정리된 테이블 등)는 이 곳 에서 찾을 수 있습니다.
HDR을 sRGB로
몇 몇 HDR 파일은 손상되고 sRGB 색상 데이터를 갖고 있습니다. 사용하지 않는 것이 좋지만, 최악의 경우에서, 이 설정을 켜면 좋게 보이게 만듭니다.
경고
형식이 잘 지정된 HDR 이미지에서 HDR을 sRGB로 활성화하면 결과 이미지가 너무 어둡게 보일 수 있으므로 확실하지 않은 경우 비활성화된 상태로 두십시오.
프로세스 > HDR 클램프 노출
온라인에서 찾을 수 있는 일부 HDR 파노라마 이미지에는 클리핑 없이 실제 소스에서 가져온 것이므로 매우 밝은 픽셀이 포함될 수 있습니다.
이러한 HDR 파노라마 이미지는 실제 생활에서는 정확하지만, 배경 하늘로 사용될 때 Godot에서 생성된 방사 맵에 반짝임이 포함될 수 있습니다. 이는 재질 반사에서 볼 수 있습니다(심지어 극단적인 경우 거친 재질에서도). **HDR 클램프 노출**을 활성화하면 가시적 클리핑을 발생시키지 않는 스마트 클램핑 공식을 사용하여 이 문제를 해결할 수 있습니다. 글로우는 배경 하늘을 볼 때 계속 작동합니다.
프로세스 > 크기 제한
``0``보다 큰 값으로 설정하면 가져올 때 텍스처 크기가 여기에 지정된 값보다 작거나 같은 값으로 제한됩니다. 정사각형이 아닌 텍스처의 경우 크기 제한은 더 긴 치수에 영향을 미치며, 더 짧은 치수는 종횡비를 유지하기 위해 조정됩니다. 크기 조정은 3차 보간을 사용하여 수행됩니다.
이는 소스 이미지에 영향을 주지 않고 메모리 사용량을 줄이거나 모바일/웹 플랫폼에 표시되지 않는 텍스처 문제를 방지하는 데 사용할 수 있습니다(일반적으로 4096×4096보다 큰 텍스처는 표시할 수 없기 때문입니다).
3D 감지 > 다음으로 압축
이는 텍스처가 3D에서 사용되는 것으로 감지될 때 사용되는 압축 모드 옵션을 변경합니다.
이 가져오기 옵션을 변경하면 텍스처가 3D에서 사용되는 것으로 감지된 경우에만 효과가 있습니다. 이것을 비활성화**로 변경한 후 다시 가져오면 텍스처의 기존 압축 모드가 변경되지 않지만(3D에서 사용되는 것으로 감지된 경우) **VRAM 압축 또는 **기본 유니버설**을 선택하면 됩니다.
속도 배수
SVG 이미지에만 사용할 수 있습니다.
SVG가 렌더링되어야 하는 배율입니다. ``1.0``는 원래 디자인 크기입니다. 값이 높을수록 이미지가 더 커집니다. 글꼴 오버샘플링과 달리 이는 SVG가 2D에서 렌더링되는 물리적 크기에 영향을 미칩니다. 아래의 **편집기 > 편집기 배율에 따른 배율**도 참조하세요.
편집기 > 편집기 크기에 따라 크기 조정
SVG 이미지에만 사용할 수 있습니다.
true인 경우 편집기의 표시 배율과 일치하도록 가져온 이미지의 배율을 조정합니다. 이는 편집기 플러그인 아이콘 및 사용자 정의 클래스 아이콘에 대해 활성화되어야 하지만 그렇지 않은 경우에는 비활성화된 상태로 두어야 합니다.
편집기 > 편집기 테마로 색상 변환
SVG 이미지에만 사용할 수 있습니다.
선택한 경우 가져온 이미지의 색상을 편집기의 아이콘 및 글꼴 색상 팔레트와 일치하도록 변환합니다. 이는 이미지가 :ref:`Godot의 편집기 아이콘용 색상 팔레트 <doc_editor_icons>`와 정확히 동일한 색상을 사용하고 어두운 편집기 테마용으로 설계된 소스 파일을 사용한다고 가정합니다. 이는 편집기 플러그인 아이콘 및 사용자 정의 클래스 아이콘에 대해 활성화되어야 하지만 그렇지 않은 경우에는 비활성화된 상태로 두어야 합니다.
이미지 가져오기
Godot에서 사용되는 SVG 라이브러리는 SVG 이미지에 있는 텍스트 래스터화를 지원하지 않으므로 먼저 텍스트를 경로로 변환해야 합니다. 그렇지 않으면 래스터화된 이미지에 텍스트가 표시되지 않습니다.
이를 비파괴적인 방식으로 달성하는 방법에는 두 가지가 있으므로 나중에 원본 텍스트를 계속 편집할 수 있습니다.
Inkscape에서 텍스트 개체를 선택한 다음 :kbd:`Ctrl + D`를 누르고 Path > Object to Path**를 사용하여 제자리에 복제합니다. 나중에 **레이어 및 개체 도크를 사용하여 원본 텍스트 개체를 숨깁니다.
Inkscape 명령줄을 사용하여 텍스트가 경로로 변환된 다른 SVG 파일에서 SVG를 내보냅니다.
inkscape --export-text-to-path --export-filename svg_with_text_converted_to_path.svg svg_with_text.svg
모범 사례
아티팩트 없이 2D에서 고해상도 텍스처 크기 지원
고해상도에서 선명한 영상으로 :ref:`다중 해상도 <doc_multiple_solutions>`를 지원하려면 고해상도 소스 이미지를 사용해야 합니다(흐림 없이 지원하려는 최고 해상도(최신 데스크톱 게임에서는 일반적으로 4K)에 적합).
이렇게 하고 싶어하는 몇 가지 이유가 있습니다:
프로젝트 설정(예: 4K)에서 높은 기본 해상도를 사용한 다음 원본 크기로 텍스처를 사용하십시오. 이것은 더 쉬운 접근 방식입니다.
프로젝트 설정에서 낮은 기본 해상도(예: 1080p)를 사용한 다음 사용할 때 텍스처를 축소하세요. 이는 종종 더 어렵고 스크립트에서 다양한 계산을 지루하게 만들 수 있으므로 위에서 설명한 접근 방식을 대신 권장합니다.
이렇게 하면 낮은 뷰포트 해상도에서 텍스처가 거칠어지는 것을 확인할 수 있습니다. 이 문제를 해결하려면 Import Dock에서 2D에 사용되는 텍스처에 **Mipmaps**를 활성화하세요. 이렇게 하면 메모리 사용량이 늘어납니다.
밉맵을 활성화하면 텍스처가 더 흐릿하게 나타날 수도 있지만 **렌더링 > 텍스처 > 기본 필터 > 텍스처 밉맵 바이어스**를 음수 값으로 설정하여 텍스처를 더 선명하게 만들 수 있습니다(일부 거칠기는 희생).
3D에서 적절한 텍스처 크기 사용
"모든 것에 맞는 단일 크기" 권장 사항은 없지만 3D에서 텍스처 크기를 선택하기 위한 몇 가지 일반적인 권장 사항은 다음과 같습니다.
텍스처의 크기는 주변 개체와 비교하여 일관된 텍셀 밀도를 갖도록 조정되어야 합니다. 2의 거듭제곱 텍스처 크기를 고수할 때 이를 완벽하게 보장할 수는 없지만 일반적으로 3D 씬 전체에서 텍스처 디테일을 상당히 일관되게 유지하는 것이 가능합니다.
화면에 나타나는 개체가 작을수록 텍스처도 작아야 합니다. 예를 들어, 배경에만 나타나는 나무에는 플레이어가 가까이 다가갈 수 있는 다른 개체만큼 높은 텍스처 해상도가 필요하지 않습니다.
2의 거듭제곱 텍스처 크기를 사용하는 것이 권장되지만 필수는 아닙니다. 텍스처는 정사각형일 필요는 없습니다. 1024×512와 같은 크기가 허용됩니다.
메모리 사용량과 로딩 시간이 증가함에도 불구하고 큰 텍스처 크기를 사용하면 수익이 감소합니다. 픽셀 아트 스타일을 사용하지 않는 대부분의 최신 3D 게임은 평균적으로 2048×2048 텍스처를 고수하며, 더 작은 표면에 걸친 텍스처의 경우 1024×1024 및 512×512를 사용합니다.
3D에서 물리적 기반 재질로 작업할 때 특정 텍스처 맵에 대해 낮은 해상도를 사용하면 품질에 큰 영향을 주지 않고 메모리 사용량과 파일 크기를 줄일 수 있습니다. 이는 저주파 디테일만 특징으로 하는 텍스처(예: 눈 텍스처의 노멀 맵)에 특히 효과적입니다.
3D 모델 생성 방법을 제어할 수 있는 경우 다음 팁도 살펴볼 가치가 있습니다.
대부분 대칭인 3D 모델로 작업할 때 미러링된 UV를 사용하여 유효 텍셀 밀도를 두 배로 늘릴 수 있습니다. 하지만 사람의 얼굴에 사용하면 부자연스러워 보일 수 있습니다.
로우 폴리 스타일과 일반 색상을 사용하여 3D 모델로 작업할 때 텍스처 대신 정점 색상을 사용하여 모델 표면의 색상을 표현할 수 있습니다.
더 보기
내보낸 프로젝트를 포함하여 :ref:`런타임 파일 로드 및 저장 <doc_runtime_file_loading_and_saving_images>`을 사용하여 런타임에 이미지를 로드하고 저장할 수 있습니다.
작음