smart media : 동영상 강의 : Unity3D
-
아동용App '무지개물고기' 1단계 - 프로젝트 생성 및 3D,2D 에디터의 차이 (10:11)
본 Smart Media의 Unity3D 게시판에 '인터랙티브 동화App 만들기'라는 주제로 무지개물고기라는 제목의 아동용App 만드는 동영상 강의가 있습니다. http://www.drtwin.com/index.php?mid=l_smartmedia_unity3d&category=165581 그러나 Unity3D버전이 예전 ... -
아동용App '무지개물고기' 2단계 - Texture Type에 따른 이미지의 차이점 (13:25)
3D 프로젝트의 경우는 이미지 Import 시 Texture Type을 Texture로 설정해줍니다. 이는 3D 오브젝트의 재질로 사용하기 위함입니다. 반면 일련의 시퀀스(Sequence)로 이루어진 이미지를 사용하는 2D 프로젝트는 Texture Type을 Sprite(2D and UI)로 설정합니다... -
아동용App '무지개물고기' 3단계 - Packing Tag를 이용한 아틀라스(Atlas) 이미지 만들기 (17:50)
유니티가 버전업되면서 더이상 Packing Tag 방식으로 활용하지 않고, 스프라이트 아틀라스(Sprite Atlas)라는 방식을 사용하는데 2020버전에서는 이 마저도 메뉴에 등장하지 않습니다. 따라서 추가적인 동영상을 녹화하였으니 3단계를 시청하기 전에, 이 부분... -
아동용App '무지개물고기' 4단계 - 타겟 플랫폼에 맞춰 해상도 비율(Ratio)의 설정 (8:23)
만들어진 App이 실행될 플랫폼이 PC가 아닌 스마트폰인 경우, 화면비율이나 해상도가 적절히 고려되어야 합니다. 플랫폼을 지정해주고 나면 비율이 해당 플랫폼에 적합하게 바뀌어서 제시됩니다. 물론 원하는 조건대로 비율(Ratio)나 해상도(Resolution)을 새... -
아동용App '무지개물고기' 5단계 - 시퀀스 이미지를 이용한 Animation과 Animator 파일의 생성 (19:58)
여러 시퀀스 이미지들을 이용하여 Animation을 위한 파일들을 생성합니다. 이 경우 애니메이션(Animation)과 애니메이터(Animator) 파일이 생성되는데 애니메이션 파일의 경우 시퀀스 이미지들의 재생속도, 반복여부 등 정보들로 구성되고 애니메이터 파일은 ... -
아동용App '무지개물고기' 6단계 - Animator에서 Transition 및 Trigger의 작성 (13:40)
하나의 애니메이션을 눌렀을때 다른 애니메이션으로 바뀌게 하기 위한 스크립트를 작성합니다. 먼저 Animator에서 두 동작간의 Transition을 명시해주고 Trigger 타입으로 명령어를 지정하여 원하는 Transition에 적용해줍니다. Has Exit Time의 의미와 효과를... -
아동용App '무지개물고기' 7단계 - 다른 오브젝트의 클릭에 반응하는 애니메이션 만들기 (22:12)
두번째 애니메이션을 만든 후, 좀 더 복잡한 움직임을 만들어봅니다. Dopesheet를 이용하여 좌표의 움직임에 관한 Keyframe을 명시한 경우 Scale의 변화를 주면 의도하지 않은 문제가 발생할 수 있습니다. 이때는 Curve로 조정할 수 있습니다. 검은 물고기를 ... -
아동용App '무지개물고기' 8단계 - 사운드 재생 및 중복적인 재생을 방지하기 (6:21)
클릭 시 사운드 재생은 AudioSource 컴포넌트를 이용하여 간단하게 구현할 수 있습니다. 그러나 문제는 클릭할때마다 중복적인 소리가 나게 되므로 IsPlaying 명령을 이용하여 현재 재생중인지 아닌지 판별하여 재생중이라면 중복적인 소리 발생을 억제할 수 ... -
아동용App '무지개물고기' 9단계 - Enum을 이용한 행위 열거 및 동작상태의 지정 (17:35)
사운드는 해결되었지만, 중복클릭 시 애니메이션 동작은 제어되지 못하는 상황입니다. 이를 해결하려면 enum을 이용하여 물고기의 상태를 열거시켜 놓은 후 물고기의 재생상태를 정의해주는 것이 필요합니다. 동작 시작시 상태를 PLAY로 인식시켜주었다가 동작... -
아동용App '무지개물고기' 10단계 - IEnumerator와 Yield return 및 StartCoroutine (13:27)
시간을 지정하여 그만큼 동작을 보류시키기 위해서는 함수의 타입을 기존과 같은 Void를 사용해서는 안되고 IEnumerator를 써야 합니다. 이 경우 반드시 함수의 내부 명령어에 yield return 이 사용되어야 하는데 new WaitForSeconds()를 붙여서 특정한 대기시... -
아동용App '무지개물고기' 11단계 - Order in Layer 및 color.Alpha 활용 (11:12)
Order in Layer를 이용해서 같은 Z축값을 가진 Sprite 이미지들의 순서를 조정해줍니다. 텍스트가 서서히 나타나게 하기 위해 color 중 Alpha값을 변화시켜줍니다. 다운로드 : Unity3D Rainbow Fish 11 -
아동용App '무지개물고기' 12단계 - Particle System 및 좌표 기준축의 이해 (8:26)
두번째 장면은 Particle System을 이용하여 물방울 기포의 효과를 만들고자 합니다. 파티클의 방출 방향을 조정하는 상황에서 기준 축(Axis)을 파악하기 위한 이해가 요구됩니다. 다운로드 : Unity3D Rainbow Fish 12 -
아동용App '무지개물고기' 13단계 - Particle의 여러 옵션 및 물방울 Material의 적용 (14:31)
파티클 시스템의 여러 옵션을 알아봅니다. 물방울을 파티클 재질로 사용하려면 물방울 이미지로 재질을 만들고 Particle Shader를 적절하게 지정해줘야 합니다. 여러 옵션 중 Lifetime에 관한 기능들을 직접 조정해보고 결과를 확인해보기 바랍니다. 다운로드 ... -
아동용App '무지개물고기' 14단계 - Effect 프리팹을 이용하기 위한 Instantiate 구문의 활용 (19:56)
클릭 시 Effect를 발생시키기 위해서 외부 Asset을 활용해봅니다. 본 예제에 활용된 Asset은 아래의 경로에서 다운받을 수 있습니다. http://www.drtwin.com/index.php?mid=c_plugin&category=162289&document_srl=216370 이외에도 여러 Asset 들이 있... -
아동용App '무지개물고기' 15단계 - Canvas, EventSystem 및 Panel 등 UI 기능의 이해(13:27)
유니티에서 화면에 버튼, 아이콘 등 유저인터페이스를 만드는 기능을 배워봅니다. Canvas는 실제 작업화면에 Overlay되는 기능이므로 이원화된 창의 개념을 이해하여야 합니다. EventSystem은 버튼이나 UI요소 등이 작동하기 위해서 필수적인 요소로서 매우 중... -
아동용App '무지개물고기' 16단계 - Button 생성 후 Anchor, Position 설정의 중요성 (13:20)
UI 요소인 Button을 생성하고 이미지를 교체해봅니다. 버튼 요소들을 화면에 배치할때는 먼저 Anchor와 Position을 적절히 지정해주는 것이 매우 중요합니다. PC의 화면비를 기준으로, 화면 크기가 조정되면 버튼 정렬 조건이 바뀔 수 있기 때문에 반드시 Anch... -
아동용App '무지개물고기' 17단계 - Button의 On Click을 위한 스크립트 작성 및 UI스크립트의 템플릿화 (14:32)
두 개의 장면을 이동시킬 수 있도록 UI버튼을 위한 스크립트를 작성합니다. 이동을 위한 명령어가 명시된 함수는 반드시 public으로 공개시켜줘야 합니다. 그래야 Button의 On Click에서 접근할 수 있습니다. 장면마다 여러개의 UI 스크립트를 만들지 않으려면... -
아동용App '무지개물고기' 18단계 - 오디오 볼륨조정 기능을 위한 Slider 및 SetActive 명령어 (15:18)
오디오 볼륨조정을 위한 슬라이더(Slider)를 만들기 위해서 Panel, Button, Slider 요소들을 배치합니다. 패널을 필요에 따라 보였다 안보였다 하는 식으로 조작하기 위해서는 GameObject 타입으로 설정해줘야 합니다. 그래야 SetActive 명령어를 이용할 수 있... -
아동용App '무지개물고기' 19단계 - Slider와 AudioListener.volume 연동을 통한 볼륨조절 기능구현 (13:52)
Button, Slider 등의 UI 요소를 멤버변수의 타입으로 등록하기 위해서는 반드시 using UnityEngine.UI; 를 삽입해줘야 합니다. Slider의 Value를 음악 볼륨조절 기능과 연동시키는 경우 볼륨만 조정되고 효과음에는 영향을 미치지 못합니다. 때문에 현재 카메... -
아동용App '무지개물고기' 20단계 - 다른 Scene에서도 Volume을 유지되게 하는 PlayerPref 활용 (10:04)
이전 장면의 볼륨크기를 다음 장면에서 계속 이어가기 위해서는 볼륨의 float 값을 사용자 환경변수인 PlayerPref에 저장해두었다가 다시 다른 장면에서 불러들이는 기능이 구현되어야 합니다. 즉 다른 장면으로 전환되는 타이밍에 SetFloat 값으로 저장해두었...