분류 전체보기 227

2020.05.27. 수업내용 - 2D Collider, Rigidbody, 이동 및 점프

**2D로 만들 때 카메라 Projection 꼭 ortho로 해주기 Rigidbody - 보통 중력의 영향을 주기 위해서 사용(Use Gravity 활성화) - 물리적인 제어를 구현 - Rigidbody를 사용하거나 Tranform을 쓰거나 둘중 하나를 선택해야함 - Rigidbody 2D를 쓰면 Collider도 2D로 맞춰서 써야함 리지드바디 - Unity 매뉴얼 Rigidbody 는 GameObject 가 물리 제어로 동작하게 합니다. 리지드바디는 힘과 토크를 받아 오브젝트가 사실적으로 움직이도록 해줍니다. 리지드바디가 포함된 모든 게임 오브젝트는 중력의 영향을 �� docs.unity3d.com Collider -물리 충돌 처리를 위한 오브젝트 형태 -보이지 않음 -Mesh : 형태 -한 객체에..

C#/수업내용 2020.05.28

2020.05.26. 수업내용 - Coroutine 으로 애니메이션 실행하기

Coroutine 특징 1. IEnumerator 형식을 반환값으로 가진다 2. yield return ~ 에서 실행을 중지하고 다음 프레임으로 넘어가서 실행을 재개한다. 3. 사용할 때 StartCoroutine 메서드를 사용한다. ex) StartCoroutine(this.Move()); - MonoBehaviour 상속받는 클래스에서만 사용 가능 Coroutine을 쓰는 가장 큰 목적은 최적화! Updata함수에서 매 프레임마다 실행하지 않고 원하는 시간만큼 원하는 시점에 실행시킬 수 있음 1. Test1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 4..

C#/수업내용 2020.05.26

2020.05.26. 수업내용 - 2D animator/ 2D 오브젝트 움직이기

1. 새로운 애니메이션 만들기 window -> Asset에 Animation 폴더를 하나 만들고 캐릭터가 선택된 상태에서 Window->animation -> createNewClip -> 폴더 선택 후 이름 저장 점 3개가 나열된 버튼을 누르면 시간이나 프레임단위로 변경할 수 있다. 모델에서 Animator를 더블클릭하면 StateMachine 이 나오는데 주황색 State(node)가 기본으로 설정된 애니메이션이고 회색인 다른 애니메이션에서 마우스 우클릭으로 Set as Layer Default State 를 누르면 플레이 시 자동으로 실행되는 애니메이션으로 설정할 수 있다. State : 애니메니션의 한 상태인 노드(걷기, idle, run등..) StateMachine : State들이 연결된 ..

C#/수업내용 2020.05.26

2020.05.25. 수업내용 - world 좌표 -> Screen좌표, hudText효과 연출하기/ 적 어그로 끌기

카페에 있는 요구사항을 대부분 충족시키려고 했습니다 적이 공격당했을 때 데미지 모션을 실행하는 부분이 잘 안됐습니다 히어로의 체력에 데미지를 주고 게이지에 반영하는 부분은 데미지 모션 구현이 해결되면 같이 구현해보려고 합니다. 더 공부해볼 것 1. Test 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88..

C#/수업내용 2020.05.26

2020.05.22. 수업내용 - 로그인 (InputField 이용)

InputField에 텍스트를 제대로 표현하려면 Update에서 Text에 값을 할당해야한다. InputField 컴포넌트에서 Caret Width 를 큰값으로 (최대 5) 움직이면 깜빡이는 커서가 넓어진다 Custom Caret Color 를 체크하면 원하는 커서 색으로 바꿀 수 있다. 1. Login -로그인씬을 관리 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 using System.Collections; using System.Collections.Generic; using UnityEngine; public class Login : MonoBehaviou..

C#/수업내용 2020.05.24

2020.05.24. 과제 - 로그인 -> 캐릭터 선택 -> 레이캐스트를 이용한 이동, 자동공격 -> 죽으면 팝업 및 재시작 -> 로그인..반복

DataManager, 매핑 클래스는 생략했습니다. 어려웠던 것.. 비동기화로 씬 로드하는 것과 대리자는 어느정도 사용하기 좀더 수월해진 것 같은데 애니메이션이 아직도 매끄럽게 사용하기 어려워서 더 연습해야 할 것 같습니다. ㅠㅠ EventSystem.current.IsPointerOverGameObject() GameObject들 위의 UI를 클릭했을 때 true GameObject들을 클릭했을 때 false를 반환해준다. *UI 오브젝트에 raycast가 체크되어있어야하고 해당 씬에 Hierachy에 EventSystem오브젝트가 있어야한다. 1. Login 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30..

C#/과제 2020.05.24

7. 1181번 단어정렬(수정)

Array.Sort two condition 으로 검색하다가 찾은 LINQ로 맞음 이거랑 ICompere 인터페이스 2개 이상 조건 다는 거랑 LINQ 많이 연습해보기 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Runtime.CompilerServices; using System.Security.Cryptography.X509Certificates; using System.Text..

C#/알고리즘 2020.05.24

2020.05.21. 수업내용 - Lobby에서 캐릭터 선택하기 (익명 메소드 참고)

Lobby : 캐릭터 목록을 횡스크롤로 보여주고 캐릭터 선택할 수 있다 버튼을 누르면 아이디를 InGame씬에 넘겨준다 InGame: 선택된 캐릭터의 아이디 값을 이용해서 Profile UI 상태를 해당 아이디 값에 맞는 항목으로 변경하고 선택된 캐릭터 모델의 데이터를 불러와서 실체화한다. 1. Lobby - 로비 씬을 관리한다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 using System.Collections; using System.Collections.Generic; using UnityEngine; public class Lobby : MonoBehaviour { public UILobby uiLobby; private void Start() { DataManage..

C#/수업내용 2020.05.21

2020.05.21. 수업내용 - Atlas

아틀라스를 사용하는 이유 : 메모리 절약 정해진 사이즈 (ex) 2048*2048, 4096*4096 등 )안에 원하는 모든 스프라이트 이미지를 넣어 최대한 메모리 공간 낭비 없이 사용한다. 먼저 스프라이트 이미지만 넣으면 프로젝트 세팅을 설정하라고 경고가 나오므로 세팅을 한다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 public void Init(string Name, string ThumbName, int CurrentHp, int MaxHp, int CurrentExp, int TargetExp, int Level) { Sprite spthumb = null; //foreach(var thumb in this.arrThumbsIcons) //{ // if(t..

C#/수업내용 2020.05.21

2020.05.21. 수업내용 - UI 카메라 설정

1. UI camera로 바꾸기 UILobby(캔버스) 스케일 - UI Scale Mode에서 Scale With Screen Size를 1920 *1080으로 설정하고 UILobby 캔버스 오브젝트에서 RenderMode 를 Screen Space - Camera로 바꿈 카메라에 태그를 UICamera를 추가해서 넣고 Layer를 UI로 바꾸기 UICamera 에서 Projection을 Orthographic으로 바꾸기 Culling Mask 를 Nothing 으로 바꾸고 UI만 켜기 그 밑에 Size 를 캔버스 높이 / 2 * 0.01 (1080 / 2 *0.01 = 5.4) 로 적기 UILobby(캔버스)에서 Render Camera에 UICamera 오브젝트 넣기 그럼 layer가 UI인 것은 U..

C#/수업내용 2020.05.21