성장 과정 및 문제 해결 방식
저는 복잡한 문제를 작은 단위로 나누고 끝까지 검증하며 해결하는 방식으로 성장해 왔습니다. 게임공학과에서 DirectX 12와 OpenGL을 배우며 3D 공간과 수학을 코드로 다루는 재미를 느꼈고, 졸업작품인 3D 레이드 게임에서는 렌더링 파트를 맡았습니다.
특히 캐릭터 애니메이션 구현 과정에서 스키닝 애니메이션과 관절별 좌표 변환을 이해하고 구현하는 데 집중했습니다. 처음에는 하나의 큰 문제처럼 보였지만, 본 구조 이해, 로컬 좌표계와 월드 좌표계 변환, 가중치 적용, 셰이더 반영처럼 단계별 문제로 나누어 학습하고 끝까지 완성했습니다.
협업 경험
환경부 대청댐 3D 가시화 및 수문 시뮬레이션 프로젝트에서 협업의 중요성을 경험했습니다. 대청댐의 시공 균열 위치와 유형 정보가 웹 마크 UI와 3D 월드에서 정확히 맞아야 했고, 이를 위해 Blender 좌표계, DirectX 12 기반 자체 엔진 좌표계, three.js 기반 웹 UI 좌표계를 함께 연결해야 했습니다.
시공 균열 좌표, Blender 좌표, 3D 엔진 좌표, 웹 좌표 사이의 차이를 계산하고 변환 관계식을 정리한 뒤 프로젝트 리드와 프론트엔드 개발자에게 공유했습니다. 이 경험을 통해 협업은 상대가 판단할 수 있는 형태로 기술 문제를 번역하고 공유하는 과정이라는 것을 배웠습니다.
문제 해결 경험
문화재청 직지사 정밀 시각화 프로젝트에서는 대용량 3D 스캔 데이터를 다뤘습니다. 직지사 모델은 텍스처 용량이 매우 커서 RTX 4090 환경에서도 VRAM 부족으로 안정적으로 로딩되지 않았고, 품질과 성능을 동시에 만족시키기 어려웠습니다.
저는 문제를 로딩 실패, 텍스처 용량, 메쉬 데이터, 렌더링 품질 저하 가능성으로 나눠 확인했습니다. glTF 데이터 구조와 엔진 로딩 흐름을 분석하고 BC7 텍스처 압축 도구와 엔진 처리 흐름을 개선한 결과, 기존 텍스처 VRAM 사용량을 약 75% 줄이고 로딩되지 않던 직지사 모델을 렌더링할 수 있었습니다.
직무 강점 및 포부
제 강점은 C++ 기반 시스템 구현 경험, 3D 공간을 다루는 수학적 기반, 시뮬레이터에 대한 이해도 및 월드 구축 능력입니다. 2년간 3D 그래픽스 프로그래머로 근무하며 C++ 기반 자체 3D 엔진 개발, 성능 최적화, 메모리 관리, 대용량 3D 데이터 처리 및 시각화 업무를 수행했습니다.
이후 ROS 2·Physical AI 교육 과정에서 MoveIt 2, Gazebo, RViz, Vision 기반 객체 pose 추정을 프로젝트에 적용했습니다. 입사 후에는 역할 범위와 팀 작업의 전체 흐름을 빠르게 파악하고, 시뮬레이션 검증, 실물 전이, 로그 기반 원인 분석까지 연결해 현장에서 신뢰할 수 있는 로봇 동작을 만드는 엔지니어로 성장하겠습니다.