게임 산업에서 테크니컬 아티스트(Technical Artist, TA)는 예술과 기술의 교차점에서 핵심적인 역할을 수행합니다. 테크니컬 아티스트는 아티스트와 개발자 사이의 다리 역할을 하면서, 게임의 시각적 품질과 효율적인 제작 프로세스를 보장하는 중추적인 역할을 합니다.
테크니컬 아티스트는 게임 개발 팀 내에서 그래픽 아트와 프로그래밍 기술이 융합된 전문가로 아티스트가 창조한 내용을 게임 엔진에서 최적화하고 구현하기 위해 기술적 문제를 해결합니다. TA는 게임의 시각적 요소가 기술적 제약 내에서 최대한의 효과를 낼 수 있도록 보장하는 책임을 집니다.
테크니컬 아티스트의 임무는 퍼포먼스, 일관성, 워크플로를 확보하는 것입니다. 숙련된 테크 아티스트와 함께라면, 프로젝트는 한층 높은 퀄리티로 더욱 신속하게 진행됩니다.
일반적으로 테크니컬 아티스트는 전 분야를 두루 섭렵한 제너럴리스트라고 할 수 있지만, 다음 중 적어도 한 가지에는 정통해야 합니다.
- 셰이딩
- 라이팅
- 프로시저럴 제작
- 스크립트/파이프라인 작업
- 최적화
- 비주얼 이펙트(FX)
테크니컬 아티스트는 때로 프로그래머와 함께 퍼포먼스 및 프로파일링 데이터를 들여다보고, 브레인스토밍을 거쳐 콘텐츠 최적화 방안을 모색합니다. 그렇기 때문에 테크니컬 아티스트는 툴 및 기술에 능통한 전문가로서, 최적의 선택지를 판별하고 어떤 방식으로 툴을 활용해야 가장 큰 효과를 발휘할 수 있는지를 모두 파악하고 있어야 합니다. 테크니컬 아티스트는 스튜디오에서도 미처 인식하지 못한 간극을 메워줍니다. 특히 AAA급의 프로젝트라면 최적의 효율성을 발휘하기 위해서라도 테크 아티스트가 반드시 필요합니다.
주요 역할
- 브리지 역할: 아티스트와 프로그래머 사이의 의사소통을 원활하게 하여 프로젝트의 기술적과 예술적 목표가 조화롭게 진행될 수 있도록 합니다.
- 퍼포먼스 최적화: 아트 작업물이 게임 엔진 내에서 효과적으로 작동하도록 최적화합니다.
- 툴 개발과 스크립팅: 개발 과정을 자동화하고 효율화하기 위한 커스텀 툴과 스크립트를 개발합니다.
- 문제 해결: 아트와 기술이 충돌하는 지점에서 발생하는 문제를 식별하고 해결합니다.
중요성
- 프로젝트의 효율성 향상: TA는 기술적 제약을 고려하여 아트 팀이 시간과 자원을 효율적으로 사용할 수 있도록 돕습니다.
- 품질 보장: 게임의 시각적 품질이 기술적 한계를 넘어서도록 보장하여 사용자 경험을 향상시킵니다.
테크니컬 아티스트가 필요한 이유
프로토타이핑
테크니컬 아티스트는 새로운 그래픽 및 콘텐츠 제작 방식을 다양하게 시도해보고 프로토타이핑해 보아야 합니다. 또한, 테크니컬 아티스트는 3ds Max, 마야(Maya), 파이썬(Python)을 비롯한 3D 렌더링 소프트웨어에 스크립트를 작성할 때 툴 개발에도 일조합니다. 이런 프로토타이핑은 다른 아티스트들이 게임에 활용할 애셋을 처리하는 데에 도움을 줍니다.
테크니컬 아티스트는 엔진/렌더링 프로그래머와 긴밀히 협력하면서 툴이나 프로토타입 결과에 대한 피드백을 공유합니다. 때로 테크니컬 아티스트는 단 며칠 만에 모든 기능을 갖춘 프로토타입을 제작하여 팀 앞에서 시연해 보이기도 합니다.
최적화
테크니컬 아티스트가 지향하는 최적화 수준은 바로 프레임 속도 목표치를 달성하면서도 게임의 그래픽 퀄리티에는 지장이 없거나(무영향) 심지어는 긍정적인 영향을 이끌어내는 것입니다. 테크니컬 아티스트는 게임을 다양한 플랫폼으로 출시하는 데 기여하는데, 이때 필요에 따라 아티스트들과 긴밀히 협력하며 수정 사항을 적용합니다. 이렇듯 아트 스킬과 기술적인 스킬을 하나로 어우러지게 하여 그만큼 더 나은 엔진 및 게임을 개발하도록 합니다.
일반적으로 테크니컬 아티스트가 담당하는 최적화 업무는 다음과 같습니다.
- 최적의 실행을 보장하기 위한 콘텐츠 및 워크플로 가이드라인 개발
- 씬 복잡도 감소
- 프로파일링 툴 및 스프레드시트를 활용한 콘텐츠 분석을 통해 메모리/퍼포먼스 최적화
- 프로젝트 그래픽 설정 조정
- 아트와 코드 간 최적의 타협점 진단
테크니컬 아티스트는 프로그래머가 프로그래밍 작업을 수행하고, 디자이너는 디자인을, 아티스트는 멋진 아트를 제작하게끔 합니다. 즉 팀원 모두가 자신의 역량을 최대한으로 발휘할 수 있는 여건을 마련해주는 것입니다. 또한, 실시간 렌더링의 경우 대개 제작 일정이 짧은 탓에, 테크니컬 아티스트는 게임 프로덕션에 필요한 작업의 우선순위를 매기고 최적화하는 작업을 담당합니다. 게다가 필요한 경우 수정 사항을 재빠르게 적용하여 게임 출시를 준비합니다.
필요한 기술과 도구
기술
- 프로그래밍 언어: Python, C#, 그리고 HLSL/GLSL과 같은 셰이딩 언어에 능숙해야 합니다.
- 게임 엔진 경험: Unity, Unreal Engine 등 주요 게임 엔진에 대한 깊은 이해가 요구됩니다.
- 3D 모델링과 애니메이션: 3ds Max, Maya, Blender 등의 툴을 사용한 경험이 필요합니다.
- 텍스처링과 라이팅: 텍스처링 툴과 라이팅 기법에 대한 이해가 중요합니다.
도구
- 스크립팅 툴: MAXScript, Python 스크립트 등
- 디버깅 도구: 게임 엔진 내부의 디버깅 툴 사용 능력
- 프로파일링 도구: 게임의 성능을 분석하고 최적화하는 데 필요한 툴
배워야 할 것들과 교육 커리큘럼
교육 과정
- 기초 프로그래밍: 컴퓨터 과학의 기초와 주요 프로그래밍 언어 학습
- 그래픽 디자인 및 3D 모델링: 디지털 아트 및 3D 모델링 기술 습득
- 게임 엔진 사용법: Unity, Unreal 등의 게임 엔진 교육
- 프로젝트 관리 및 협업: 팀 기반 프로젝트에서의 협업 기술 강화
과거에는 워낙에 수가 적은 직종이었지만, 점차 중요성이 커져서 이미 해외 유명 게임사 콘솔 게임 제작에서는 테크니컬 아티스트의 역할이 크며, 최근에는 모바일 게임에서도 중요한 역할을 하고 있습니다. 다만 우리나라의 게임 업계 상황상 테크니컬 아티스트라는 직군을 요하는 프로젝트나 회사가 아직은 많지 않지만 그 수요는 점차 늘고 있고 특히 언리얼 엔진을 활용한 고퀄리티의 그래픽을 요하는 게임들이 점점 많이 제작되는 추세라 그 수요는 더욱 많이 늘어날 것으로 전망됩니다.
특히 우나라라의 경우 테크니컬 아티스트로의 전향은 아트 직군에서 전향하는 경우가 많다고 합니다. 만약 게임의 그래픽자체에 대한 관심이 많고 더불어 새로운 그래픽 툴이나 프로그래밍 언어도 관심이 있다면 테크니컬 아티스트라는 직군도 한번쯤 고려해보시는게 어떨까 합니다. 배워야 할 게 많은 직군이지만 그만큼 진입장벽이 높기에 높은 연봉과 더불어 이직하는데에도 큰 어려움이 없을테니깐요.
좋은 테크 아티스트가 될 수 있는지를 판별하기 위한 자가 진단항목
✔ 나는 아트 소프트웨어 설정 및 체크박스로 이것저것 해보는 것을 좋아한다.
✔ 나는 지루하거나 반복적인 업무(재미없는 업무)를 자동화할 수 있는 스크립트나 툴을 구상해보거나 실제로 작성해본 적이 있다.
✔ 나는 문제를 해결하는 데에 재미를 느낀다.
✔ 나는 프로그래머, 아티스트, 프로듀서, 디자이너를 막론하고 대화를 나눌 수 있고 해당 직군의 업무를 다 해보고 싶다.
✔ 나는 애용하는 애플리케이션의 작동 원리를 기술적인 측면에서 공부하는 것을 좋아한다.
✔ 나는 팀의 ‘스크립팅’, ‘리깅’, ‘머티리얼’ 담당자다.
✔ 나는 프로젝트에 기술적인 문제가 발생할 시 기꺼이 해결에 나선다.
'IT지식' 카테고리의 다른 글
WEBP 파일을 PNG 파일로 변환 WEBP 파일 to PNG (0) | 2024.05.19 |
---|---|
첫 인디 게임을 제작한다면 고려해야 할 사항들 (0) | 2024.05.07 |
1인 게임 개발 시 가장 중요한 것?? (0) | 2024.04.19 |
2023 유니티와 언리얼 엔진의 시장 점유율 (0) | 2024.04.13 |
재미로 보는 MBTI별 개발자들의 성격 유형별 특징 (0) | 2024.04.10 |
댓글