본문 바로가기

수업

(24)
Unity 프로젝트 및 공부 3일차 플레이어 1인칭 팔 움직임, 총 쏘는 모션 공부 및 구현 1. 스크립트에 Start(), Update() 함수가 있는것 자체만으로 자원을 소모하기 때문에 사용하지 않는다면 지워주는 것이 좋다. 2. 공격 딜레이를 보여주는 것에는 코루틴 함수를 쓰는것이 적합하다. 3. Ignore Raycast : Raycast에게 영향을 받지 않겠다. 4. 스크립트를 짤때 현재(current), 최대치(max), 소유(carry) 등등 모든 것은 변수에 담아둬서 사용해라 5. Vector3.Lerp() : Math.Lerp랑 같고 사용하는 인수 단위만 다름 6. 코루틴 (Coroutine) : 동시에 일어나야할 때 사용 ex) 총기 발사 && 총기 반동 대기시간도 줄 수 있기에 코루틴이 편하기도 함 1. 팔 : 1인칭 ..
2018.12.18 콘솔 - 가위바위보 ▲ 가위바위보 예외처리 1,2,3,4번 키 이외의 키를 누를 경우 컴양이 다시하라는 말이 나오도록 예외처리했습니다. ▲ 가위바위보 플레이어가 이김 비긴것을 제외한 이기고 지는 것은 카운트가 들어가며 플레이어가 먼저 3번 이길 경우, 컴양이 졌다는 내용과 함께 게임이 종료되도록 구현했습니다. ▲ 가위바위보 플레이어가 짐 진 카운트가 누적되어 이긴 카운트보다 먼저 3이 되었을 경우 컴양이 이겼다는 내용과 함께 게임이 종료되도록 구현했습니다.
2018.12.10 콘솔 - 도트 찍기 2018년 12월, 학원에서 배움을 시작한 첫날에 했던 도트찍기 입니다. cout, endl만을 배운 상태에서 색을 입히고 싶어 인터넷을 통해 색을 입히는 방법을 찾아 제작하였습니다.
Unity 프로젝트 및 공부 2일차 플레이어 걷고, 뛰고, 앉고, 점프하기 1. 변수에 대입만을 이용하여 같은 함수식을 여러개 사용할 필요가 없게끔 만든다. int walkSpeed = 2; int runSpeed = 5; int moveMent; //1. 함수를 두가지 사용 if (걸을 때) moveMent = move * walkSpeed; else if (뛸 때) moveMent = move * runSpeed; //2. 변수에 대입해서 사용 int applySpeed; moveMent = move * applySpeed; if (걸을 때) applySpeed = walkSpeed; else if (뛸 때) applySpeed = runSpeed; 2. isBool = !isBool isBool = !isBool; //위의 함수 식은..
Unity 프로젝트 및 공부 1일차 플레이어 및 카메라 조작키 1. Collider, Rigidbody Collider : 충돌 영역을 설정 Rigidbody : Collider에 물리학을 입힌다. 2. [SerializeField] : 인스펙터 창에 뜨게 만들어 주는것 (무조건 뜨지는 않고 예외가 있다.) ex) Rigidbody myRigid [SerializeField]로 가져와서 쓰는 것 보다 GetComponent로 사용하는 것을 권장 → 컴포넌트로 쓰는게 더 빠르기 때문 3. normalized : 합이 1이 나오도록 정규화 시켜주면 1초에 얼마나 이동시킬건지 계산이 편해진다. 4. Math.Clamp(현재 값, 제한할 최솟값, 제한할 최댓값) : 특정 수를 제한해준다. int Limit = 5; ex) int A = Math...
Unity 프로젝트 및 공부 참고 영상 - 케이디 유튜브 https://www.youtube.com/playlist?list=PLUZ5gNInsv_Nzex8Cvxce_1zjUf0cNWY9 유니티 강좌 [3D FPS 서바이벌 생존] - YouTube 유니티 강좌 - 3D 게임 제작 스킬을 배워보는 강좌 www.youtube.com https://www.youtube.com/channel/UC9w-j0OqNzdtOqiYj4lDHmg 케이디 유니티에 대한 모든 것. 난이도별 맞춤 튜토리얼 제공. 게임 개발자라면 이 채널에서 도움을 받아가세요. 근황 티스토리 : https://keidy.tistory.com/ 개인 트위터 : https://www.twitter.com/KeidyTwit/ 유료 강좌 유데미 : https:... www.youtube.com
행렬 : (4×4)행렬로 캐릭터의 이동, 회전, 스케일링(크기조절)을 쉽게 처리할 수 있다. 회전의 경우 특정 축을 기준으로 회전을 시킨다. (게임프로그래밍 알고리즘 106p - 회전행렬) ·역행렬 : 게임내에서는 전으로 돌아가기 위해 필요 3D게임을 만들때에는 엄청난 연산량을 요구하기위 그것을 처리하기위해 벡터와 행렬을 이용한다. 짐벌락 현상? 사차행렬을 이용해 회전을 할때 계속 회전되면서 축이 겹쳐져(사라져) 이상하게 회전이 되는 현상 S크기 R회전 T이동 순서를 지키면 괜찮다. (엔진에서는 엔진이 알아서 해주지만 D3D에서 사용할때에는 처리를 잘 하지 않으면 짐벌락 현상이 일어난다.)
벡터 : 벡터 == 크기(힘), 방향 게임 내에서는 이동을 위해 사용 1.백터의 덧셈 → 게임 내 이동에 이용 (하지만 이동은 벡터의 연산보다 행렬의 연산이 더 빠르기에 대부분 행렬을 가지고서 이동처리한다.) ★2.벡터의 뺄셈 → 게임 내 이동에 이용 but 반대로 이동한다. 게임 만들때에는 주로 방향을 구할 때 많이 사용한다. ex) 몹과 플레이어 -> 상대를 쳐다보고 쫓아오는 것에 많이 사용한다. 3.벡터의 곱셈 1) 스칼라 곱 : 몇 배 만큼 더빠르게 이동처리 가능 2) 내적 (AㆍB) : 각도를 구할 수 있다. return값은 float형태의 실수값. (라디안 값을 뱉어냄) 내적의 값이 1일때, cosθ = 1, θ == 90도 이므로 두 벡터는 서로 수직으로 있다. 3) 외적 (A×B) : 또다른 벡..