기술 아티스트 Binbun이 Godot에서 블러(blur) 효과를 구현하는 가이드를 게시했습니다. 이 튜토리얼은 이 목적으로 셰이더를 만드는 것이 간단한 과정일 수 있음을 보여줍니다. 핵심은 mipmaps를 효율적으로 사용하는 것으로, 이 엔진 기능은 강렬한 블러를 적용하더라도 성능을 유지하는 데 도움이 됩니다. 이 자료는 포스트 프로세스 효과를 추가하거나 2D 프로젝트의 시각적 외관을 스타일링하려는 사람들에게 유용합니다.
최적의 성능 블러를 위한 Mipmaps 활용 🎯
일반적으로 블러 강도를 높이면 처리 비용이 더 커집니다. 그러나 제시된 방법은 textureLod 함수와 filter_linear_mipmap 샘플러를 함께 사용하여 텍스처를 mipmap 레벨에서 샘플링합니다. mipmaps는 텍스처의 사전 계산된 축소 버전입니다. 더 높은 mipmap 레벨(유니폼 blur_amount로 제어)을 샘플링하면 해상도가 자연스럽게 낮아진 이미지를 얻을 수 있으며, 엔진이 메모리에 저장된 더 작은 텍스처에 접근하므로 블러를 효율적으로 시뮬레이션합니다.
너의 게임은 흐릿해 보일 수 있지만, 성능 로직은 그렇지 않을 거야 😎
플레이어의 시야를 선술집에서 밤을 새운 것처럼 흐릿하게 만들 수 있으면서도 FPS가 비슷하게 영향을 받지 않는다는 사실은 안심이 됩니다. 당신이 파라미터를 조정하느라 머리를 싸매는 동안 Godot는 조용히 mipmaps에 의지합니다. 이미 모든 것을 준비해 둔 그 작은 선견지명의 조력자들 말입니다. 이렇게 하면 중요한 일에 집중할 수 있습니다: 그 블러가 예술적인 것인지, 아니면 아직 다 그리지도 않은 스프라이트를 위장하려는 시도인지 결정하는 거죠.