본문으로 건너뛰기
로그인 둘러보기
그래픽·이미지 · 윈도우즈 유틸

Laigter

0

Laigter는 2D 게임 개발자를 위해 스프라이트에 동적 조명 효과를 자동으로 부여하는 노멀 맵 생성기입니다.

게임 개발그래픽 도구노멀맵스프라이트텍스처 생성패럴랙스

소개

Laigter는 2D 게임 개발자를 위해 스프라이트에 동적 조명 효과를 자동으로 부여하는 노멀 맵 생성기입니다. 개발자 아자가야(Azagaya)가 제작한 이 프로그램은 기본 노멀 맵 외에도 반사, 패럴랙스, 앰비언트 오클루전 맵을 생성할 수 있게 해줍니다. 생성된 맵을 통해 스프라이트가 게임 엔진 내에서 어떻게 보이는지 실시간으로 미리 볼 수 있습니다.

상세정보

프로그램 소개

Laigter는 2D 텍스처, 특히 2D 게임용 스프라이트의 정상 맵(Normal Map)을 자동으로 생성하는 오픈 소스 그래픽 도구입니다. 본래 스프라이트용으로 설계되었지만, 3D 게임에 사용되는 2D 텍스처에도 활용할 수 있습니다. 사용자는 최소한의 노력으로 실제감 있는 조명 효과를 연출할 수 있습니다.

주요 기능

  • 노멀 맵(Normal Map) 생성: 평면 이미지를 입체적으로 보이게 만드는 법선 벡터 맵을 생성합니다. 현실감 있는 조명 효과를 만드는 데 필수적입니다.
  • 반사 맵(Specular Map) 생성: 스프라이트 표면의 번들거리는 반사 효과를 정의하여, 질감이 살아있는 비주얼을 구현합니다.
  • 패럴랙스 맵(Parallax Map) 생성: 주로 배경에 사용되어 시점에 따라 텍스처가 변형되는 듯한 3D 깊이 효과를 2D 그래픽으로 구현합니다.
  • 앰비언트 오클루전(Ambient Occlusion) 맵 생성: 주변광이 닿지 않는 구석이나 움푹 파인 부분을 정의하여 조명의 깊이감과 현실감을 더합니다.
  • 실시간 미리보기: GUI를 통해 생성된 맵이 게임 엔진 내에서 어떻게 보이는지 즉시 확인할 수 있습니다.
  • 다국어 지원: 스페인어, 영어, 프랑스어, 브라질 포르투갈어, 카탈루냐어, 일본어, 덴마크어, 독일어 등 여러 언어를 지원하며, PC 언어를 자동 감지합니다.

이런 경우에 유용합니다

  • 2D 픽셀 아트나 스프라이트에 간단한 과정으로 입체감과 질감을 더하고 싶을 때
  • 2D 게임에서 현실적인 조명, 반사, 깊이 효과를 연출하고자 할 때
  • 배경 리소스에 패럴랙스 효과를 적용하여 2.5D 시각적 깊이를 만들고 싶을 때
  • Unity, Godot, GameMaker와 같은 게임 엔진에서 바로 사용할 수 있는 고품질 텍스처 맵을 빠르게 제작할 때

지원 환경·시스템 요구사항

Laigter는 Windows, macOS, Linux에서 사용할 수 있습니다. 소스 코드를 직접 빌드할 경우, Qt 5.14 이상(Concurrent, Core, Gui, Widgets 모듈 포함)과 OpenGL 개발 라이브러리가 필요합니다.

기본 사용법/명령어

그래픽 사용자 인터페이스(GUI)를 통해 이미지를 불러오고, 왼쪽 패널의 설정값을 조절하여 각 맵을 생성할 수 있습니다. 오른쪽 ‘Visualization’ 패널에서 조명(Intensity, Height 등)을 조절하며 실시간 미리보기가 가능합니다.

스크립트나 자동화가 필요한 경우, 명령줄 인터페이스(CLI)를 지원합니다. 예를 들어 다음 명령은 GUI 없이 특정 디퓨즈 텍스처에서 노멀 맵을 생성합니다.

laigter.exe –no-gui -d “texture.png” -n

-n(노멀), -c(반사), -o(오클루전), -p(패럴랙스) 옵션을 조합하여 여러 맵을 동시에 생성할 수도 있습니다.

화면으로 보는 주요 기능

스프라이트 미리보기 화면

스프라이트 미리보기 화면

Laigter 프로그램의 메인 인터페이스로, 중앙에 스켈레톤 머리 모양의 3D 모델이 표시되어 있다. 왼쪽에는 'Enhance'와 'Bump' 섹션에 각각 'Height'와 'Soft' 슬라이더가 있으며, 'Axis' 섹션에는 'Invert x'와 'Invert y' 체크박스가 있다. 오른쪽에는 'Visualization' 패널이 있으며, 'View' 드롭다운 메뉴에서 'Preview'가 선택되어 있고, 'Light' 섹션에는 'Diffuse', 'Specular', 'Ambient' 탭이 있다. 'Ambient' 탭에서 'Intensity' 슬라이더가 47로 설정되어 있고, 'Height' 슬라이더는 30으로 설정되어 있다. 'Tile' 섹션에는 'Parallax' 체크박스와 '30'이라는 숫자가 입력된 슬라이더가 있다.

정상 맵 보기 화면

정상 맵 보기 화면

Laigter 프로그램의 'Visualization' 패널에서 'View' 드롭다운 메뉴에서 'Normal Map'이 선택된 상태로, 중앙에 벽돌 패턴의 정상 맵이 표시되어 있다. 왼쪽에는 'Enhance' 섹션에서 'Height'가 540, 'Soft'가 6으로 설정되어 있고, 'Bump' 섹션에서 'Height'가 100, 'Distance'가 60, 'Soft'가 10으로 설정되어 있다. 'Axis' 섹션에는 'Invert x'와 'Invert y' 체크박스가 있다. 'Textures' 리스트에는 'bricks2'가 선택되어 있다. 오른쪽 'Visualization' 패널의 'Light' 섹션에서 'Ambient' 탭이 선택되어 있고, 'Intensity' 슬라이더가 47로 설정되어 있다. 'Height' 슬라이더는 30으로 설정되어 있고, 'Color'는 흰색으로 설정되어 있다. 'Tile' 섹션에는 'Parallax' 체크박스와 '30'이라는 숫자가 입력된 슬라이더가 있다.

파라락스 효과 적용 화면

파라락스 효과 적용 화면

Laigter 프로그램의 'Parallax' 탭이 선택된 상태로, 중앙에 벽돌 패턴의 3D 효과가 적용된 이미지가 표시되어 있다. 왼쪽에는 'Type' 드롭다운 메뉴에서 'Binary'가 선택되어 있고, 'Controls' 섹션에는 'Threshold' 슬라이더가 140, 'Focus' 슬라이더가 2, 'Soft' 슬라이더가 3, 'Min Height' 슬라이더가 0, 'Erode / Dilate' 슬라이더가 1로 설정되어 있다. 'Invert' 체크박스가 선택되어 있다. 'Textures' 리스트에는 'bricks2'가 선택되어 있다. 오른쪽 'Visualization' 패널의 'View' 드롭다운 메뉴에서 'Preview'가 선택되어 있고, 'Light' 섹션에서 'Ambient' 탭이 선택되어 있고, 'Intensity' 슬라이더가 55로 설정되어 있다. 'Height' 슬라이더는 30으로 설정되어 있고, 'Color'는 흰색으로 설정되어 있다. 'Tile' 섹션에는 'Parallax' 체크박스와 '68'이라는 숫자가 입력된 슬라이더가 있다.

텍스처 보기 화면

텍스처 보기 화면

Laigter 프로그램의 'Visualization' 패널에서 'View' 드롭다운 메뉴에서 'Texture'가 선택된 상태로, 중앙에 벽돌 패턴의 텍스처가 표시되어 있다. 왼쪽에는 'Parallax' 탭이 선택되어 있고, 'Type' 드롭다운 메뉴에서 'Binary'가 선택되어 있다. 'Controls' 섹션에는 'Threshold' 슬라이더가 140, 'Focus' 슬라이더가 2, 'Soft' 슬라이더가 3, 'Min Height' 슬라이더가 0, 'Erode / Dilate' 슬라이더가 1로 설정되어 있다. 'Invert' 체크박스가 선택되어 있다. 'Textures' 리스트에는 'bricks2'가 선택되어 있다. 오른쪽 'Visualization' 패널의 'Light' 섹션에서 'Ambient' 탭이 선택되어 있고, 'Intensity' 슬라이더가 55로 설정되어 있다. 'Height' 슬라이더는 30으로 설정되어 있고, 'Color'는 흰색으로 설정되어 있다. 'Tile' 섹션에는 'Parallax' 체크박스와 '68'이라는 숫자가 입력된 슬라이더가 있다.

시스템 요구사항

Qt 5.14 이상 및 OpenGL 개발 라이브러리 (소스 빌드 시)