1. Unity 3D KOREA DIGITAL MEDIA HIGH SCHOOL Unity 3D
Introduce 한국디지털미디어고등학교 3학년부 이름 : 임 재 훈 전공 : 컴퓨터공학 부서 : 3학년부 H.P. : 010-2898-6779 E-mail : fasdlove@dimigo.hs.kr 2013 교직원
강의자료 페이지 안내 http://jhserver.dimigo.hs.kr http://www.jhnetwork.kr
1. Unity 3D
1. Unity 3D 소개 유니티 3D는 독립개발자가 멀티 플랫폼용 게임 개발을 할 수기 있게 해 주는 3D 게임 엔진 PC 및 Mac 기반에서 모든 어플리케이션이 개발을 가능 앱, 건축, 디자인, 인테리어, 시뮬레이션, 의학, 군사 등 다양한 분 야에서 활용 객체지향 설계를 기본적으로 탑재 유니티의 기본 철학은 단순함과 강력함 창의적인 게임을 개발 할 수 있도록 함.
1. Unity 3D 소개
2. Unity 3D 엔진의 특징 - 렌더링 지역렌더러를 통한 복수 다이나믹 라이팅의 사용 가능 100여 가지의 내장 셰이더 모든 단말기에서 폴백 사용을 통한 부드러운 고급 셰이더 효과 내장 탑재된 전체화면 이미지 후처리 효과 복수 단말기와 렌더링 패쓰를 위한 서피스 셰이더 도형을 배치(Batch)에 힙함으로 인한 드로우콜의 최소화 엔진코드의 재작업을 통한 속도 향상 움브라를 통한 오클루전 컬링 GLSL 최적화 기능
2. Unity 3D 엔진의 특징 - 라이팅 지역렌더러를 통한 속도의 향상 실시간 그림자 스크린 스페이스 앰비언트 오클루전(SSAO) 이미지를 통한 고급 그 래픽 태양 광선과 렌즈 이펙트 BEAST를 사용한 라이트 맵핑 에디터 내부에서의 라이팅 수정을 통한 실시간 조명과 베이크 된 배 경의 밸런스 조절 원거리에서의 라이트맵핑과 근거리에서의 바운스 라이트를 이용한 듀얼 라이트맵핑 UV 언랩의 자동화 BEAST를 통한 베이킹의 미세조절
2. Unity 3D 엔진의 특징 - 지형 손쉬운 지형들 브러쉬를 사용한 나무, 숲풀, 바위, 잔디 창조 타일 텍스쳐를 활용한 미세 텍스쳐 페이팅 작업 BEAST 라이트맵퍼와 지형엔진의 완전한 통합 편리성과 빠른 속도를 자랑하는 지형엔진 나무 만들기 툴 에디터에서의 실시간 프리뷰를 통한 나뭇가지, 잔가지 등의 미세 조절 미세조절로 추가된 나뭇잎, 줄기, 가지등의 자동 텍스쳐 아틀라스 작업 20 ~ 30%의 자동 노출율 최적화
2. Unity 3D 엔진의 특징 - 섭스탠스 복수 아웃풋의 혼합을 통해 조절가능한 알레고리드믹 섭스탠스 및 kb 수준의 엄청나게 작은 파일 사이즈 손쉬운 API를 이용한 스크립트 조절 가능 결과물의 텍스쳐 베이킹을 통한 쉬운 텍스쳐 작업과 모바일 기기 친화 적인 성격 런타임 API 이외에 에셋 파이프라인에서의 섭스탠스 네이티브 지원
2. Unity 3D 엔진의 특징 - 물리구현 NVIDIA2 PhysX2 차세대 물리엔진 환경과 반응하는 인터랙티브 클로쓰(옷)와 캐릭터의 애니메이션에 반 응하는 스킨드 클로쓰 구부려지는 소프트 바디 스크립팅 필요없이 힘과 토크에 반응하는 리지드 바디 애니메이트 된 캐릭터에서 바로 추출해주는 래그돌 마법사 각종 미세조절이 가능한 조인트 실체 차 타이어의 성질을 정확히 재현하는 바퀴 충돌체(Wheel Collider)
2. Unity 3D 엔진의 특징 - 오디오 FMOD를 통한 강력한 성능의 오디오 툴 제공 감쇠(attenuation) 커브를 통한 오디오 속성 조절 MOD, IT, S3M, XM 등 대부분의 트랙커 파일 지원 프리뷰 버튼을 통한 실시간 음향 프리뷰 Ogg 비디오 / 오디오 파일의 넷 스트리밍 광대한 범위의 오디오 필터들과 DSP 효과들 풀 스크립팅 API와 로우 / 하이패스필터를 통한 캐릭터 위치에 따른 사 운드들의 변화 / 거친 분위기를 위한 디스토션 이펙트 한 소스에서 복수 사운드를 구현하는 코러스 필터 리버트 필터와 리버브 존 설정에 의한 현실적인 복합 사운드 구현 계곡 효과를 위한 에코 필터
2. Unity 3D 엔진의 특징 - 프로그래밍 서로 호환 가능한 세 가지 스크립팅 언어 지원 : 자바 스크립트, C#, 파 이썬 계셜의 부 C++의 속도에 버금가는 C#과 Boo, 그리고 C#과 동일한 속도의 유니 티 자바 스크립트 스크립트로 정의된 공용 변수의 에디터 상의 디스플레이 글루코드가 필요없는 드레깅에 의한 참조 변수 설정 오픈소스.Net 플랫폼인 Mono에서 돌아가는 게임 로직 함수 구현 후 자동적인 연결 뒷처리와 SendMessage를 통한 메쏘드 호출로 간단히 추가되는 이벤트
2. Unity 3D 엔진의 특징 - 프로그래밍 코드 한 줄로 만드는 이동, 회전, 크기조절, 복제, 제거, 속성변화와 이 름, 계층, 태그, 인접, 터치 등을 통한 직접 참고 코드 세줄로 이행되는 간편한 코-루틴 모노디벨롭 통합 개발로 이루어지는 최상급의 IDE 모노디벨롭과 비쥬얼 스튜디오와의 자동 싱크로나이제이션 게임 정지, 한줄 한줄의 코드 검사, 브레이크포인트 설정, 값 검사 등의 통합 디버거 기능 내장 프로파일러를 통한 문제점 색출과 최적화 검사 작업
2. Unity 3D 엔진의 특징 - 네트워킹 싱글 플레이어 게임들의 손쉬운 온라인 게임화 작업 델타 압축 알고리즘 혹은 비압축 신뢰 전략을 통한 플레이어들의 게임 오브젝트 위치, 속도, 애니메이션, 기타 등등의 상태 동기화 NAT 펀치쓰루에 대해 걱정할 필요 없는 약간의 수정으로 가능한 싱글 플레이어 게임의 네트워크 멀티플레이어 게임화 어떤 클라이언트들에서 어떤 함수라도 쉽게 가능한 원격 절차 호출.Net 소켓 라이브러리들을 통한 실시간 네트워킹과 ODBC를 통한 데 이터베이스와의 연결의 용이성 등 백엔드와의 연결성
2. Unity 3D 엔진의 특징 - 네트워킹 자바스크립트 커뮤니케이션과 완전한 AJAX 기능을 가능케하는 웹 브 라우저 상의 유니티 웹 플레이어 웹페이지와 웹서비스에 저급 가능케 하는 사용하기 쉬운 WWW 인터 페이스(싱크로 모드, 비싱크로 모드 둘다 지원) 현재 유니티가 내장 기능으로는 지원하지 않지만 MMO 테크놀로지를 가능케 해주는 일렉트로탱크 유니버스 플랫폼, 포톤 소켓 서버, 그리고 스마트폭스 서버
3. Unity 3D 에디터의 특징-통합에디터 유니티 게임 엔진과 유니티 개발 환경의 완전한 통합 실제 게임 화면의 실시간 프리뷰와 프리뷰 내에서의 실시간 수정 기능 에디터 윈도우들과 커스텀 인스펙터들을 통한 커스터마이제이션으로 레벨디자인, AI 툴, 디버깅 툴, 난이도 조절 툴, 스토리텔링 툴 등 추가 확장 가능 반복적으로 등장하는 오브젝트들의 프리팹 변환 에셋관리를 쉽게 해주는 프로젝트 브라우저
3. Unity 3D 에디터의 특징-씬제작 간편한 드래그 & 드롭으로 이루어지는 연결과 게임 상에서의 화면을 미리 볼 수 있는 프리뷰 메쉬로 쉽게 가능한 트리거 존 설정 그리드와 표면적 스냅핑, 그리고 버텍스 스냅핑을 통한 고급 오브젝트 위치 이동 씬뷰 카메라 프리뷰, 오클루전 컬링 프리뷰, 오디오 리버브 존 등 모든 것의 기즈모화를 통한 씬뷰에서의 에디트 가능 항시 가능한 일시정지, 싱글스텝 테스트, 인스펙터 창 등 플레이하면서 해보는 테스팅 원하는 방식으로 셋업 가능한 에디터 레이아웃
3. Unity 3D 에디터의 특징-에셋 파이프라인(1) 3D 모델, 애니메이션, 텍스쳐, 스크립트, 사운드 등 무엇이든 저장 순 간 자동적으로 즉시 임포트 되는 유니티 프로젝트 안의 에셋들 3D 모델, 본, 애니메이션 등 다양한 3D 패키지 지원 마야, 3DS 맥스, 시네마 4D, 치타 3D, 블렌더 등에서 저장시 유니티에 서도 변화 적용 IME 인풋 포함 유니코드 트루타입 폰트들의 완전한 지원 모든 텍스쳐의 즉석 노멀맵 변환 디테일 페이드, 카이저 필터, 감마 코렉션 등 여러 방법의 고화질 밉맵 추출
3. Unity 3D 에디터의 특징-에셋 파이프라인(2) C#을 통한 들어오는 에셋덜의 포스트 프로세스 작업 등 스크립트 가능 한 파이프라인 다중레이어 포토샵 파일의 자동압축화와 각종 설정 기능 FMOD가 지원하는 모든 오디오 포맷 지원과 자동 Ogg 파일로의 변환 가능 에디터 안으로 섭스탠스 파일들 바로 로딩후 수정 가능한 알레고리드 믹 섭스탠스 지원, 섭스탠스 임포터 클래스를 통해 임포트된 프로씨져 럴 매터리얼 접근 가능
3. Unity 3D 에디터의 특징-에셋 스토어 거대 개발사들의 자료 접근과 사용자의 파일을 판매도 할 수 잇는 상점 무료 튜토리얼, 예제 프로젝트들, 콘텐츠 들의 등록 이미 완성도니 캐릭터, 텍스쳐, 매터리얼 등의 아트 에셋들 그래픽 셰이더 에디터에서 비쥬얼 프로그래밍 솔루션까지 풍부한 익스 텐션들 70-30 이익 분배의 에셋 스토어
3. Unity 3D 에디터의 특징-에셋 서버 모든 게임 에셋들과 스크립트 들의 완전한 버전 컨트롤로 인한 팀의 파 일 관리 업데이트, 등록, 그래픽컬 버전 비교, 파일 이름 바꾸기, 이동 등이 모두 즉시 가능 안전성, 데이터 완전성, 쉬운 백업 등으로 유명한 기업용 레벨 데이타 베이스 PostgreSQL로 지원되는 에셋 서버 Windows, MAC OS X, 리눅스 RPM, Debian, 소스코드 패키지 등에 서 이용 가능한 멀티플랫폼 지원 큰 파일 사이즈의 프로젝트에 최적화와 임포트된 세팅과 메타데이타들 의 버젼저장
4. Unity 3D 멀티플랫폼의 종류-웹 WEB 브라우저 안에서 작동하는 특 A급 퀄리티 게임 엔진 자바 웹스타트를 지원하며 8천만번이 넘게 다운로드 된 유니티 웹 플 레이어 브라우저 플러그인 연동과 통합 맥 OS X 대쉬보드 위젯을 통한 컨텐츠 홍보, 미리보기와 게임기능 확 장 기본 탑재된 웹플레이어 템플릿 외에도 사용자가 제작한 HTML 사용 가능 오토 스트리밍과 추가적인 WWW 스트리밍을 통한 로딩 시간 단축과 로딩 스크린 커스터마이징 가능 컨텐츠의 스트림 인/아웃 조정(유니티 프로)
4. Unity 3D 멀티플랫폼의 종류-웹 WEB 브라우저 안에서 작동하는 특 A급 퀄리티 게임 엔진 자바 웹스타트를 지원하며 유니티 웹 플레이어 브라우저 플러그인 연동과 통합 맥 OS X 대쉬보드 위젯을 통한 컨텐츠 홍보, 미리보기와 기능 확장 기본 탑재된 웹플레이어 템플릿 외에도 사용자 제작 HTML 사용 가능 오토 스트리밍과 추가적인 WWW 스트리밍을 통한 로딩 시간 단축과 로딩 스크린 커스터마이징 가능 컨텐츠의 스트림 인/아웃 조정(유니티 프로) 다이렉트X와 OpenGL 포함 모든 하드웨어 / 소프트웨어의 지원 오래된 그래픽 하드웨어에서 emfkdlqjrk지 대부분의 기기에 높은 호 환성
4. Unity 3D 멀티플랫폼의 종류-어도비 플래시P 어도비 플래쉬 플레이어의 새 Stage3D API를 가능케하는 플래쉬 플레 이어 애드온 탑재 예정 웹 상의 GPU 가속 3D 콘텐츠를 통한 넓은 유저층과의 만남
4. Unity 3D 멀티플랫폼의 종류-IOS 앱스토어에 등록된 1000개가 넘는 유니티 게임들 풍부한 커뮤니티 툴과 API들로 더욱 용이한 ios 개발 각기 다른 ios 세대들의 그래픽 부문 셰이더 에뮬레이션을 통한 결과 물에 영향 없는 빠른 WYSIWYG 프로토타이핑 아이폰, 아이팟 터치, 아이패드에서 게임 테스트 가능하게 해 주는 유 니티 리모트 플레이어 세팅을 통해 Xcode를 거치지 않고 게임의 종류, 아이콘, 스 플래쉬 스크린, 빌드크기 최적화 수정 가능
4. Unity 3D 멀티플랫폼의 종류-IOS 하나의 코드베이스로 가능한 복수의 코드 실행 경로 Build and Run으로 한번에 이루어지는 콤파일, 설치, 그리고 실행 Umbra 오클루전 컬링 기능 새 ios 기기에서의 OpenGLES 2.0 지원으로 인한 셰이더의 완전한 그 래픽 조절 기능
4. Unity 3D 멀티플랫폼의 종류-ANDROID 가장 빠르게 성장하는 모바일 플랫폼 안드로이드의 지원 손쉬운 에셋 임포트 OpenGL ES 2.0를 위해 최적화된 그래픽스 파이프라인 컴파일이나 빌드를 기다릴 필요가 없이 안드로이드 폰에서 바로 테스 트 가능한 안드로이드 리모트 2010년 여름 이래로 50여개가 넘게 나온 유니티 안드로이드 게임들 안드로이드 상에서 오클루전 컬링과 라이트 맵핑을 가능케 해주는 유 일한 툴
4. Unity 3D 멀티플랫폼의 종류-PC & MAC 지연라이팅, 커스터마이징 가능한 이미지 효과들, 다이나믹 실시간 그 림자, 라이트맵 / 실시간 라이트 블렌딩, 셰이더 완전 지원 등 고급 렌더링 기능들과 내장 셰이더들과 효과들의 소스코드 공개 DVD 팩키지, 다운로드 인스톨 파일, 스팀 등을 통한 유통 등 다양한 퍼 블리싱 옵션 내장 프로파일러를 통한 최적화와 디버거, 모노디벨롭 등을 통한 복잡 한 코딩 업무까지 개발 속도의 향상을 위한 다양한 툴 가장 작은 모바일 기기에서 엔진의 고급기능들을 모두 갖춘 채 돌아가 는 유일무이한 단 하나의 엔진
4. Unity 3D 멀티플랫폼의 종류-PC & MAC 웹, WWW 다운로드, 소설 네트워크 API 등을 통한 지속적인 업데이트 가능 유니티 만의 듀얼-라이트맵핑 방식을 통한 스케일의 조정성과 오클루 전 컬링을 통한 렌더링 큐의 안전성 확보 윈도우와 맥 양쪽에서 최적화 오래된 드라이버에 가장 최신 드라이버까지 거의 대부분의 드라이버에 서 호환성 검사
4. Unity 3D 멀티플랫폼의 종류-기타 닌텐도 위 Nintendo Wii 플레이 스테이션 Play Station 엑스박스 XBOX
5. Unity 3D 설치 - 파일다운로드 http://unity3d.com/5 http://korea.unity3d.com/content/content.php?cont=download