K-digital traning 65

Gazzlers 개발일지 - Reward Object 수정

https://made-myblog.tistory.com/74 Gazzlers 개발일지 - WAVE 이후 보상(아이템) 선택 구현 오늘 구현하고자 하는 부분 => WAVE 이후 아이템 선택 및 WAVE 시작 1. 아이템 구조 설정 맨 상위 오브젝트로 RewardGroup을 두어 두 개의 Reward를 관리하도록 설정. Reward는 Reward의 내용을 서술하는 UI부 made-myblog.tistory.com 기존 R&D용으로 단순히 object로 부착한 cube를 대체하고자 한다. (그러나 아직도 object를 fix하지 못하였댜,,,,,,,,ㅎ) 일단 Reward 안에 object들을 겁나게 달아주기 object들의 컴포넌트는 기존 object와 같습니댜 -Reward object 전부를 비활성화하..

Gazzlers 개발일지 - Upgrade 데이터 연동

로비씬에서 보았던 Upgrade부분을 데이터 연동까지 해서 구현할 차례. 기존에도 데이터 연동이 되는 부분이 있었지만 몇몇 부분의 수정 및 보충이 필요하다 판단하여 다시 시작. 1. 데이터 수정 및 생성 UpgradeData UpgradeAmountData UpgradePriceData 5000, 10000, 15000, 20000 UpgradeData DataManager 결과 2.UI에 띄우기 upgradeinfo, infomanager 생성 InfoManager ugpradecell 생성 UIUPgradeController Main * upgradeData의 변수명 amount를 value로 수정. 3. Info 생성 및 적용 *EnemyData *EnemyInfo *GunInfo *PlayerDa..

Gazzlers 개발일지 - 수정사항

1. 적 이동 속성 추가 Move부분 다음과 같이 수정. speed를 바로 적용하는 것이 아닌 댐핑을 주는 것으로 변경. 댐핑 받는 구간도 띄엄띄엄 나눠서 enemy가 덜덜거리지 않도록 조정. 2. Map 맵이 생성되기 전에 player가 존재하여 Init으로 player에게 위치값을 주어도 player의 위치가 변하지 X 차라리 게임이 시작되었을 때 player의 앞부분은 rail이 전부 일직선인 것으로 수정.

Gazzlers 개발일지 - 로비씬 UI 구현

기존 Oculus의 RayExampleScene에 있는 Cylinder 오브젝트를 프리팹으로 만들어 갖고 온다. Cylinder의 자식 오브젝트들이 위의 세 개의 Canvas. 프리팹을 언팩하고 Cylinder를 제거 Canvas의 자식 오브젝트인 Mesh의 Canvas Cylinder 컴포넌트에서 Cylinder부분이 missing난 것을 볼 수 있다. 더 이상 Cylinder를 사용하지 않을 것이므로 위의 컴포넌트는 제거한다. Canvas Cylinder 컴포넌트를 제거하면 더이상 Canvas Mesh가 존재하지 않아 위와 같이 Missing난 것을 볼 수 있다. Canvas Mesh가 필요하므로 Canvas Cylinder를 대체할 Canvas Rect 컴포넌트를 Mesh 오브젝트에 붙이고 Canv..

Gazzlers 개발일지 - Zeppelin 생성

구현할 부분 아이템 열기구(?) 게임씬에 붙이기. https://lj9369.tistory.com/129 Gazzlers R&D - 아이템 비행체 구현 ▼ 구현할 부분 ▼ 구현할 것 - 비행체를 레이로 조준하여 3번 맞추기 --> 비행체 사라지고 아이템 생성 - 생성된 아이템이 player쪽으로 이동 - 스코어 UI에 닿으면 아이템이 사라지고 스코어 점수 lj9369.tistory.com 이 부분에 관해서 R&D를 진행해주신 고마운 팀원님❤의 포스팅을 참고하여 제작해보겠습니댯ㅎ (1) GameScene에 Zeppelin 생성 오브젝트 풀링 사용 ZeppelinPoolManager using System.Collections; using System.Collections.Generic; using Unit..

Gazzlers 개발일지 - WAVE 이후 보상(아이템) 선택 구현

오늘 구현하고자 하는 부분 => WAVE 이후 아이템 선택 및 WAVE 시작 1. 아이템 구조 설정 맨 상위 오브젝트로 RewardGroup을 두어 두 개의 Reward를 관리하도록 설정. Reward는 Reward의 내용을 서술하는 UI부분과 Reward의 내용을 직관적으로 알 수 있는 위의 오브젝트 두 부분으로 나뉘어 구현. 2. json 파일 생성 (1) Reward 내용 - 적 타격시 총알 되받기 - 탄창 소진 시 자동충전 - 총 공격력 상승 - 기본 총의 레이저 공격 범위 확대 - 플레이어 maxHp 증가 - 총기 변경 => 바주카포(긴 선딜, 넓은 범위 공격) (2) json 저장 data파일을 다음과 같은 구조로 작성. Mr. Data Converter를 통해 엑셀 파일의 내용을 json 형..

Gazzlers 개발일지 - Enemy 공격

기존에 R&D했던 Enemy 공격 부분을 구현하는 작업을 진행해보았다. (팀장님의 GameScene을 받아 제작해보았슴댯,,,,ㅎ) (1) Enemy 추가된 필드는 다음과 같다. muzzleTrans : 총알이 발사될 지점 muzzleGo : player를 향해 겨눌 총구의 object playerTrans : 적이 공격할 player의 transform attackCount : 공격 횟수(한 번 공격을 시작할 때 몇 번 쏠 것인지) dealLossTime : attackCount만큼 공격할 때 간격(주기) onAttackPlayer : enemy가 player 공격에 성공했을 때 main에게 알리는 대리자 onCompleteAttack : enemy가 attackCount만큼 공격을 다 하고 난 뒤 m..

Gazzlers 개발일지 - Enemy 관리

이번에는 Enemy의 생성 및 관리를 구현해보려고 한다. 원작에서는 한 화면 안에서 Enemy가 최대 2마리씩 나오며 각 웨이브마다 생성되는 최대 Enemy 수량이 존재한다. 이 수량을 다 채울 때까지 Enemy를 생성 및 spawn하는 부분을 구현하려고 한다. 구현계획 1. 일정 시간간격을 두고 enemy 2마리 생성 2. ui 버튼을 만들어서 버튼을 클릭할 때마다 enemy Die 3. enemy 최대 수량을 채우지 못했을 경우 enemy 생성, 그렇지 않을 경우 enemy 생성 중단. 1. 일정 시간간격을 두고 enemy 2마리 생성(기존 TestEnemy1MoveMain 스크립트 참고) using System.Collections; using System.Collections.Generic; us..

Gazzlers 개발일지 - 건물 설치

맵 대충 해결됐다 싶으니 맵꾸를 다시 해보는즁 건물 두 개를 통째로 하나의 object로 두어 레일 양 옆에 설치되게끔 설정하였다. 똑같은 건물 여러개는 재미없을 수 있으니 색변화도 살짝 주었다. (예쁘진 않은건 안비밀) 타입도 수정. 코드 using System.Collections; using System.Collections.Generic; using UnityEngine; public class StructureManager : MonoBehaviour { private Queue qStructures = new Queue(); private bool install; private bool uninstall; public void InstallStructure(Rail rail) { if (!(t..