smart media : 동영상 강의 : Unity3D
-
유니티 기초 '심플볼' 26단계 - 플레이어 셋팅(Player Setting)과 빌드(Build) (10:30)
최종적으로 PC버전의 게임으로 빌드(Build) 해봅니다. Player Setting에서 제목과 아이콘, 해상도 등을 설정해야 합니다. Build Setting에서도 현재의 Scene을 등록해줘야 합니다. 컴파일된 파일을 실행해보면 윈도우용 어플리케이션으로 잘 구동됨을 확인할 ... -
유니티 기초 '심플볼' 25단계 - 공과 충돌할 때 이펙트(Effect) 효과 연출하기 (8:46)
공과 충돌하는 경우 아무런 이펙트가 없어서 밋밋합니다. Toon Effect 애셋을 실행하여 적절한 이펙트 효과를 몇 개 체크해둡니다. 공과 충돌하는 상황의 판별을 위해서 모든 5개의 Jelly 캐릭터를 BALL이라는 태그로 적용해둡니다. 그후 플레이어의 스크립트 ... -
유니티 기초 '심플볼' 24단계 - 캐릭터 교체 및 배경 오브젝트 배치작업 (10:01)
캐릭터를 교체하는 작업입니다. BagIdea 애셋에서 개구리 캐릭터를 하나 드래그하여 배치해보면 캐릭터로 활용되기 위해 필요한 Collider나 Rigidbody, PlayerJump 컴포넌트가 없습니다. 특히 Collider는 생성 후 사이즈가 맞도록 조정만 해주면 간단하게 캐릭... -
유니티 기초 '심플볼' 23단계 - 배열(Array)을 활용한 랜덤한 공 추출 (12:34)
공이 하나만 등장하므로 5개의 공이 랜덤하게 나오게 하기 위한 배열(Array)을 활용해봅니다. 배열은 타입의 뒤에 대괄호인 []를 적어주면 됩니다. 실제 사용하는 경우는 변수명 뒤에 []를 표시해줍니다. Random하게 추출하는 경우 시작과 끝을 지정해줘야 하... -
유니티 기초 '심플볼' 22단계 - SphereCollider 탑재 및 컴포넌트 복제와 공 프리팹 교체 (9:43)
동일한 방법으로 SphereCollider를 탑재합니다. 이때 스크립트의 순서에 유의하여야 합니다. 완성된 Ball 컴포넌트를 Copy Component 한 후, 나머지 Jelly 캐릭터에 Paste Component as New 하여 동일한 설정값을 적용해줍니다. 이제 GM에서 Ball 프리팹을 다... -
유니티 기초 '심플볼' 21단계 - AddComponent를 이용한 Rigidbody 탑재 및 옵션값 제어 (13:07)
모두 5개의 공 프리팹을 만드는 과정에서 수작업을 이용할 수도 있지만, 스크립트를 이용해서 자동으로 Collider나 Rigidbody 컴포넌트를 탑재하려고 합니다. AddComponent를 활용하는 방법은 먼저 해당되는 타입의 변수를 생성하고 Start 함수에서 생성 명령... -
유니티 기초 '심플볼' 20단계 - 외부 애셋(Asset)을 이용한 공 프리팹 교체작업 (10:34)
유니티의 강점 중 하나는 Asset Store를 통해서 유료,무료의 수준높은 3D오브젝트 및 효과를 가져올 수 있다는 점입니다. 시간단축은 물론 전반적인 퀄리티 향상을 쉽게 시킬 수 있습니다. Asset을 가져올 경우 스크립트의 변환 문제가 제기되는데 아래와 같은... -
유니티 기초 '심플볼' 19단계 - 재질(Material) 생성과 셰이더(Shader)의 적용 (9:55)
재질을 적용하는 경우 반드시 Material이 생성되게 됩니다. 매트리얼의 Albedo 항목이 일반적인 3D툴에서 생성하는 재질의 Diffuse 항목에 해당되며 Tiling U,V를 조정하여 반복패턴 설정이 가능합니다. 셰이더(Shader) 및 Mesh Renderer의 비활성화에 따른 효... -
유니티 기초 '심플볼' 18단계 - 태그(tag)를 이용한 충돌대상의 판정 (8:23)
공과 부딪힌 플레이어가 이중점프 하는 문제점이 또하나 발견되었기 때문에 충돌판정은 바닥(floor)만 해당되도록 해야 합니다. 이를 위해 태그(tag) 기능을 활용해봅니다. 충돌이 발생하는 경우 충돌한 대상의 태그가 FLOOR인지 확인해서 확인된 경우에만 점... -
유니티 기초 '심플볼' 17단계 - Instantiate 명령어를 이용한 공의 생성 (15:14)
프리팹으로 만들어진 공을 마우스 우측버튼 클릭에 따라 무한정 발사하도록 하기 위해서 그러한 역할을 담당하는 오브젝트를 하나 만듭니다. 공이 발사되기 위해서는 1) 공이 무엇인지? 2) 어느 위치에서 발사될 것인지? 이와 같은 두 가지 조건이 지정되어야 ... -
유니티 기초 '심플볼' 16단계 - 피직스 매트리얼(Physics Material) 활용 및 중력(Gravity) 조정 (9:22)
공에 부딪힌 플레이어가 밀리거나 회전하는 현상이 발생하므로 Rigidbody의 Constraints에서 이를 방지합니다. Physics Material은 물리적인 재질로서 충돌 시 튕김이나 마찰력 등의 움직임을 강화시킬 수 있는 기능입니다. 완만한 움직임을 조정하기 위해서 ... -
유니티 기초 '심플볼' 15단계 - Bool 타입 변수 및 OnCollisionEnter의 활용 (14:38)
현재의 문제점은 공중에서도 이중점프가 된다는 점입니다. 바닥에 착륙한 상태에서만 점프되게 하기 위해서는 충돌을 판정하는 OnCollisionEnter 함수를 이용해봅니다. 이 함수는 파라미터(Parameter)를 가지고 있는데 충돌은 상대가 있어야만 가능하기 때문입... -
유니티 기초 '심플볼' 14단계 - 프리팹(Prefab)의 생성 및 콜백(Call-Back) 함수 사용 (7:15)
유니티에서 하나의 오브젝트를 파일로 생성하는 개념이 프리팹(Prefab)입니다. 현재 만들어진 Ball을 프리팹으로 만들어두면 원하는 만큼 활용할 수 있게 됩니다. 공이 안보이게 되면 스스로 파괴하도록 OnBecameInvisible 함수를 이용해봅니다. 이처럼 특정한... -
유니티 기초 '심플볼' 13단계 - 복합적인 방향의 움직임을 위한 Vector3 인스턴스 생성 (18:11)
앞서 Vector3를 이용하여 단일한 방향으로 쏘아올리는 방법을 배웠지만 이번에는 두 가지 방향이 복합적으로 작용하는 경우는 어떻게 해야할까요? 새로운 Vector3 인스턴스를 생성하는 방법을 배워봅니다. 이 경우 좌표체계에 +와 -를 이용하여 방향을 지정할 ... -
유니티 기초 '심플볼' 12단계 - if문의 작성 및 Vector3 방향의 이해 (14:57)
if문을 이용해서 마우스 왼쪽버튼을 누르는 경우의 스크립트를 작성해봅니다. GetComponent 구문은 매우 많이 사용되는데, 작성하는 스크립트가 특정한 컴포넌트와 접촉하는 것으로 이해하면 됩니다. Vector3는 x,y,x 축의 방향성을 의미하는데 +X(right), -X(... -
유니티 기초 '심플볼' 11단계 - 변수(variable)의 작성과 int, float 타입 (16:35)
주석은 스크립트 작성 중 메모의 용도로 사용하는 것인데 ctrl+alt+c를 누르면 쉽게 주석처리 할 수 있습니다. 변수는 필요시 특정한 값이나 데이터를 넣는 일종의 그릇으로 비유할 수 있는데 변수의 작성은 int, float와 같은 변수타입의 지정이 필요하며 pub... -
유니티 기초 '심플볼' 10단계 - 함수(Function)의 개념 및 Start, Update 함수의 이해 (12:35)
스크립트의 가장 첫번째 using 구문은 참조 라이브러리를 명시한 것이므로 삭제하거나 수정하면 안됩니다. 그 개념을 소개합니다. 또한 함수(Function)는 특정한 작업을 수행하기 위하여 일련의 논리적 과정을 기초로 명령문을 나열해놓은 집합을 의미합니다. ... -
유니티 기초 '심플볼' 9단계 - 스크립트(Script) 작성의 출발 및 MonoDevelope의 에러 해결방법 (8:25)
유니티에서 스크립트를 작성하기 위해 가장 중요한 출발은 파일명의 지정입니다. 파일명은 단지 파일이름의 개념에 그치지 않고 내부에 기록되는 클래스(Class)명과 일치해야 하므로 작성 후 이름을 수정하는 일은 주의해야 합니다. 아래와 같이 매칭되지 않으... -
유니티 기초 '심플볼' 8단계 - 콜라이더(Collider)와 리지드바디(Rigidbody)의 특징 (10:31)
간단한 기초예제를 본격적으로 제작하기 위해 Box, Sphere 및 Plane을 생성하고 카메라를 적절한 위치로 셋팅합니다. Collider는 오브젝트의 표면에 감싸게 만드는 충돌자인데, 이것이 있어야만 충돌을 감지할 수 있게 됩니다. 각각의 3D 오브젝트는 자신의 형... -
유니티 기초 '심플볼' 7단계 - Normal 및 패런팅(Parenting)된 오브젝트의 기준좌표(Axis) 개념 (9:24)
유니티에서 생성된 3D 오브젝트들은 표면에 normal 속성을 가지고 있습니다. 뒷쪽에서 바라보면 투명하게 드러나는 특징이 있으니 유의하세요. 또한 새로운 오브젝트 생성 시 Scene창의 정중앙에 생성되는 특징이 있으니 Position의 리셋이 필요할 수 있습니다...