3. 들어가기에 앞서...
다음 분들을 위해 발표가 진행 될 예정입니다
1. 언리얼 엔진 들어만 봤는데 잘 모르는 데?
2. 컴퓨터 그래픽스와 파이프라인에 대해서 ‘조금’ 지식 있는 분
3. 노드 기반 작업에 대해 궁금하신 분
다음 분들은 좀 아쉽게 느끼실 수도?
1. 물리 기반 머티리얼 편집기 완전 분석
2. 뭔가 신기술에 대해 배워 왔으니 실제로 보여달라
3. 기타 과도한 기대를 하신 분
12. 기획 / 그래픽 쪽에서 인상적이었을 듯
material / blue print 등에서 실제로 코드를 작성하는 경우가 없었음(GUI로 슥슥)
unreal 4 엔진 책이 새로 나왔다고 저자 사인하며 팔고 있던데
426쪽이나 되는 책에 code 한 줄 없더라
C++ 한 줄 못짜도 디자이너가 다 할 수 있음
13. 업무의 분업화가 더 강해지며
각 부분이 고도로 전문화 될 것으로 예상
특히 클라이언트 프로그래머는 공부 많이 해야 할 느낌
21. Material editor
DX 11에서 지원되는 테셀레이션이 적용되어 실제 mesh가 움직임
각 mesh가 전부 Realtive 관계를 가져 움직임이 자연스러움
http://www.stefandavid.com/tombraider/
http://www.nvidia.co.kr/object/tessellation_kr.html
23. Material editor
우리가 배운 illumination model은? Local illumination model(Ambient + Diffuse + Specular)
언리얼의 illumination model은? 물리 기반 모델
look & feel이 직관적!
Base color
Roughness
Metallic
Specular
https://docs.unrealengine.com/latest/KOR/Engine/Rendering/Materials/PhysicallyBased/index.html
24.
25.
26. BluePrint
기각 기반 스크립팅 시스템
직관적인 노드 기반 인터페이스를 통해 새로운 액터 유형과 스크립트 레벨 이벤트를 만들 수 있는 특수한 에셋
디자이너나 게임플레이 프로그래머도 코드 한 줄 작성할 필요 없이 언리얼 에디터 안에서 작업하도록 함
이쯤되면 어디서 본듯한 느낌이...
27.
28.
29. BluePrint
블루프린트도 엄연한 객체
내가 원하는 컴포넌트를 모아서 원하는 Actor를 만드는 형태
문제적 발언 ‘프로그래머에게 부탁하고 하지 말고 이젠 아트에서 알아서 하자구요~’
사실 어느 정도는 되지만, 완벽할 수 없다는 게 함정(플레이 메이커 생각해 보세요!)
https://docs.unrealengine.com/latest/KOR/Engine/Blueprints/UserGuide/Types/LevelBlueprint/index.html
30. 패키징과 쿠킹
언리얼 엔진에서는 실행 버튼을 누르면 패키징 파이프라인이 진행되는데
쿠킹은 그 과정에서 발생하며, 개발용 Resource를 변환하는 것을 말함
안드로이드 패키징 예시
1. 소스코드 빌드
Cross compile 진행
2. 컨텐츠 쿠킹 / 패킹
3. APK 패키징
31. 패키징과 쿠킹
쿠킹 과정?
- 실행 전 target 플랫폼을 설정하면 엔진이 알아서 해당 플랫폼 대상 최적 리소스로 변환
ex) wav -> ogg 변환
- 매 실행마다 모든 파일을 다시 변환하지 않는다
변경 Resources에 대해서만 다시 진행함
- 따라서 최초 한 번은 느리게 실행되나 이후 빠르다
하지만 작업이 여러 사람이서 동시 다발적으로 한다면?
실행 병목현상을 만들어 내는 주요 원인!
Derived Data Cache를 공유하라!
이미 쿠킹된 것과 아닌 것을 구분해 쿠킹한다에서 이미 힌트가 있음
변환 파일 캐쉬를 보유하고 있기 때문임
따라서 요 파일을 공유하면(공유 PC등에 두면)
모두가 쾌적하게 작업 가능
32. 내공이 부족한 한 줄 정리
모바일 바람이 Unreal도 바꾸어 버렸다
모바일 강자 Unity의 전략과 기능이 추가된 느낌