일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- LayerMark
- Lv2
- Algorithm
- 오브젝트 풀링
- 양과 늑대
- Ainimation Blending
- Unity
- 유니티
- 플레이어 이동
- Blend Type
- CSharp #자료구조
- dfs
- Animation State Machine
- heap tree
- 백준 c++ 9375번
- 2D슈팅게임
- 미로 탈출 명령어
- 충돌위험 찾기
- pccp 기출문제 1번
- 연속 펄스 부분 수열의 합
- Back Tracking
- pccp 기출문제 2번
- Hp바
- 9375번
- dp 알고리즘
- Lv.3
- 프로그래머스
- 플레이어 방향전환
- pccp 기출문제 3번
- C#
- Today
- Total
목록GameDevelopment/[Unity] Lecture (15)
주녘공부일지
C#과 유니티로 만드는 MMORPG 게임 개발 시리즈 Part.3 유니티 엔진 https://www.inflearn.com/course/mmorpg-%EC%9C%A0%EB%8B%88%ED%8B%B0# [C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진 강의 - 인프런 유니티 엔진 사용법 및 제공하는 기능들에 대해 알아보고, 그것을 효율적으로 관리하는 방법을 배우는 강의입니다., MMORPG 개발에 필요한 모든 기술, C# + Unity로 Step By Step! 🕹️ [사진] 기초부터 www.inflearn.com - 유니티 엔진으로 게임을 개발하며 공통적으로 필요한 프레임워크들을 구현 -> 이를 활용해 mini RPG 게임의 시스템을 일부 구현 - 강의 섹션 키워드 : T..
총 3라운드로 구성되어 있는 슈팅 게임 ( 난이도 어려움 ) 2022.02.17 업데이트 - 라운드 클리어 시 파괴되지 않고 남아있는 적 기체 - 조이스틱 크기 조정 - 화면 크기 비율 고정 ( 9 : 16 ) 2022.02.18 업데이트 - 조이스틱 감도, 애니메이션 변경 - 플레이어 투명화 버그 수정 - 오브젝트 풀링 갯수 조정 https://github.com/godgjwnsgur7/ShootingGame GitHub - godgjwnsgur7/ShootingGame Contribute to godgjwnsgur7/ShootingGame development by creating an account on GitHub. github.com
1. 조이스틱 - 기존 조이 패널은 드래그 시에 영역을 벗어나면 이동이 풀리는, 등의 문제와 유저 편의성이 너무 떨어져 조이스틱으로 변경 + 드래곤 플라이트처럼 변경할까 했지만, 그럼 게임 기획 상 이동속도 제한을 해야하는데, 그러면 오히려 불편하고, 시야도 손으로 자주 가리게 될 것으로 예상되어 조이스틱으로 변경함 https://godgjwnsgur7.tistory.com/28 [Unity] 모바일 터치 감지 방법 1. MonoBehaviour.OnMouseXX 함수 모바일에서는 커서가 올라가면 호출되는 함수는 터치시에 호출됨 https://docs.unity3d.com/kr/530/ScriptReference/MonoBehaviour.html Unity - 스크립팅 API: MonoBehaviour ..
0. 주요 클래스 선언된 변수 한 눈에 보기 - 강의라 모두 퍼블릭으로 선언하였지만, 외부에서 접근이 반드시 필요한 아이가 아니라면, 지양하는 것이 좋음 1. 플레이어 무적 시간 OnEnable() : 오브젝트가 활성화 될때마다 호출되는 함수 - 조건문으로 처음 시작할 땐 무적타임x Unbeatable() : 무적 상태를 변경하는 함수 - 투명도를 올려 무적 상태를 나타냄 2. 폭발 효과 프리팹 Explosion 생성 - 기본 이미지는 Null로 설정하고 애니메이터의 파라미터에 Trigger로 Onexplosion 추가 + 오브젝트 풀링에 등록 // objectManager StartExplosion() : target의 타입에 따라 폭발하는 애니메이션 크기 변경 class Enemy에서 로직을 추가해 ..
난이도를 너무 어렵게 세팅한 것 같다. 0. 준비하기 - 보스몹의 피격상태는 애니메이션으로 관리할 예정 // 트리거 매개변수 OnHit - 돌아가는 트랜지션의 Has Exit Time 체크 // 컨디션이 따로 없기 때문 Any State : 언제나 실행되는 애니메이션 1. 총알, 적 보스 프리팹 적 기체가 Boss 일 경우 - Awake() : 애니메이션을 가져옴 - OnHit() : 애니메이션의 트리거 매개변수 OnHit 활성화 + 아이템을 드롭하지 않음 - OnEnable() : 보스체력세팅 + 지정된 위치에서 이동x // 2번 - Update() : 보스의 공격패턴은 따로 만들 것이므로 함수호출x - OnTriggerEnter2D() : BorderBullet 태그에 부딪혀도 파괴되지 않음 + 보스..
0. 준비하기 - Follower 오브젝트 3개 추가, FollowerBullet 프리펩 추가 - 보조 총알도 오브젝트 풀링 등록 ( class ObjectManager에 추가 ) 1. 기본 작동 구현 - class Player에서 필요한 변수와 함수를 가져와서 수정해서 사용 2. 팔로우 로직 ( 상속시키듯 구현 ) Watch(), Follow() : 따라갈 위치를 갱신해주는 함수 // Update()문에서 실행 - Follower(0) 는 Player를 parent로 갖고, Follower(1)는 Follower(0)를, Follower(2)는 Follower(1)을 parent로 가져서 따라가게 만듬 #. Input Pos - 부모 오브젝트의 위치변동이 없다면, 자식도 이동하지 않음 (저장하지 않음)..
1. 구조체 - 구조체로 사용할 것이기 때문에 Monobehavior의 상속 제거 2. 텍스트 데이터 Resources : 런타임에서 불러오는 에셋이 저장된 폴더 - ReadSpawnFile() : 리스폰 파일을 불러오는 함수 TextAsset : 텍스트 파일 에셋 클래스 - as TextAsset : TextAsset이 아니라면 null ReadLine() : 텍스트 데이터를 한 줄씩 반환 ( 자동 줄 바꿈 ) StringRaeder : 파일 내의 문자열 데이터를 읽는 클래스 // using System.IO; split() : 지정한 구분 문자로 문자열을 나누는 함수 + StringReader로 열어둔 파일은 작업이 끝난 후 꼭 닫아주어야 함 3. 데이터 적용 변경 사항 - 생성할 적 기체, 위치, ..
1. 오브젝트 풀링 오브젝트 풀링 : 미리 생성해둔 풀에서 활성화 / 비활성화로 사용 https://godgjwnsgur7.tistory.com/21 [Unity] Object Pooling 기법 Object Pooling : 오브젝트를 재활용하기 위한 디자인 패턴 ( 최적화 ) 빈번히 생성, 파괴되는 오브젝트들을 풀에 모아서 미리 생성해놓고 활성화 / 비활성화로 관리하며 재사용 - 런타임 중에 수십개 godgjwnsgur7.tistory.com 2. 풀 사용 public ObejctManager obejectManager; - Instantiate()는 MakeObj() 호출로 변경 ( transform.position 로직 작성 ) // 생성 시에 위치를 주지 않기 때문 - Destory() 는 Se..
0. 준비하기 - 카메라는 그대로, 배경이 아래로 움직여서 플레이어가 위로 움직이는 것처럼 느껴지게 만듬 - 카메라에서 벗어난 배경은 다시 위쪽으로 붙여서 재활용하여 사용할 예정 ( 1. 스크롤링 ) - Back Group Top, Middle, Bottom 으로 나눠 Parallax 기법을 사용할 예정 ( 2. 패럴렉스 ) - Back Group Botton, Middle, Top 에 스크립트 추가 ( class Background ) + 이미지는 위에서 아래로 움직일 예정 1. Scrooling 기법 - Camera View 높이 = Size x2 // veiwHeight - 기본 셋팅 (시작 셋팅) : startIndex = 2, endIndex = 0 - sprites[0] : 가장 밑에 있는 스..
0. 준비하기 - string 으로 타입을 저장하여 분류 - Rigidbody2D를 가져와 아이템을 * 1f의 속도로 떨어뜨림 - OnTriggerEnter2D로 BorderBullet 태그에 닿으면 객체를 파괴 - Boom Icon은 기본 셋팅 투명도 0 ( 폭탄의 사용 가능 갯수를 투명도 0, 1로 나타내는 로직이기 때문 ) 1. 충돌 로직 - Item 태그에 닿으면 실행할 로직을 추가 ( power, boom 은 최댓값에 도달하면 점수로 변환 ) - 예외처리 내용 : 아이템 중복 드롭 방지 - 적 기체 파괴 시 랜덤한 확률로 아이템 드롭하는 로직 추가 ( Instantiate()로 생성 ) 2. 필살기 - isBoomTime : 필살기 중복 사용 방지 - boomEffect (GameObject) ..