본문 바로가기

분류 전체보기

(347)
Unity3D_Quater - 상점만들기(2) - 원하는 기능 : 상점 UI의 아이템버튼을 클릭하면 해당 아이템이 바닥에서 생성되어 나타남 + 가격만큼 플레이어 골드 깍임 UI의 아이템버튼 클릭 = Button UI 오브젝트의 Onclick() 이벤트에 함수 실행토록 추가 해당 아이템이 바닥에서 생성되어 나타남 = Shop 스크립트에서 Buy()함수 구현 - 변수 1. 구매할 아이템 -> GameObject[] 2. 구매할 아이템에 1:1로 구매할 아이템의 가격이 매칭 -> Dictionary 3. 플레이어 보유 코인을 가져올 플레이어 스크립트 -> Player 4. NPC 텍스트 UI-> Text 5. NPC 대화내용(기본대사, 돈부족대사)이 담긴 string -> string[] - 함수 1. 해당아이템을 생성위치에 생성 2. 해당아이템 가격을 ..
Unity3D_Quater - 상점만들기(1) 1.아이템 샵, 장비 샵 오브젝트 생성 - 빈 오브젝트를 생성하여 Item Shop이름을 주고 - 하위에 테이블, 아이템그룹, NPC, 원형 파티클시스템 들을 만들어준다 *아래와 같은 파티클을 만드려면 모양을 도넛모양으로 주고 Mode를 Loop로 만들어준다 *추가로 shpere 콜라이더도 만들어준다 -> 그래야 플레이어가 상점에 들어왔는지를 Ontrigger이벤트함수로 체크해서 상점UI를 켜고 끄고 할 수 있다 2.아이템 상점, 장비 상점 오브젝트 생성 - Canvas 안에 있는 Game Panel 오브젝트 하위에 Item Shop Group이라는 빈 오브젝트를 생성하고 - 그 하위에 구매목록장비 버튼 3개와 닫기 버튼 1개 캐릭터이미지 1개와 캐릭터 텍스트 1개를 생성 - 구매목록장비 버튼 안에 장비..
Unity3D_Quater - UI 만들기 1. Canvas 컴포넌트 기본설정 - 계층구조창에서 우클릭 후 Canvas 생성 - Canvas 컴포넌트에서 우리는 도트이미지로 UI를 꾸밀 것이기 때문에 Pixel Perpect를 체크해준다 - 어느 해상도에서도 크기가 동일하게 출력이 되도록 UI Scale Mode를 기존 Constant Pixel Size에서 Scale with screen Size로 설정해준다 - 그리고 해상도인 Reference Resoultion은 1920x1080(FHD)으로 바꿔준다 2. 메뉴생성(1) - Canvas 하위에 Panel을 생성하여 투명한 검정바탕을 만들어준다 - panel(Menu Panle)하위에 Image 2개와 Text1개를 생성해준다 - Text 설정 tip) #1. Text오브젝트의 위치이동이 편..
Unity3D_Quater - 보스 공격 패턴 구현 1.Boss스크립트는 Enemy스크립트를 상속받게하고 *Awake()는 자식에게 상속되지 않으므로 자식클래스에서 사용하려면 중복으로 코드를 작성해주어야한다 - 부모스크립트가 된 Enemy 스크립트 안에서 Enum Type에 Boss를 추가하여 - isTracking(), Tracking(), isTrackingCancle(), Targeting()은 동작하지 않도록 하고 -> if(enemyType ==Type.Boss) return; - FreezingRotation()함수는 동작하도록 한다 2. 보스는 플레이어를 쫒진 않지만 플레이어를 항상 바라본다 3..보스 공격 패턴구현 - AllCoroutine구현 -1) Think()에서 래덤한 int를 뽑는 방식으로 swich문을 통하여 확률에 따른 3가지 ..
unity3D_Quater - 보스몬스터, 보스 미사일, 보스 바위공격 구현 1. 보스 프리팹 오브젝트화 -Enemy Boss 오브젝트 생성 : tag, Layer = Enemy : RigidBody, Box Collider, Nav Mesh Agent - 보스의 점프공격 범위가 될 빈 오브젝트 TauntArea 생성 후 Box Collider를 생성하여 범위를 지정 - 보스의 미사일공격이 시작될 위치가 될 Transform 정보만 들어있는 빈 오브젝트 2개(MissileportA, B) 생성 -Mesh Object 오브젝트 컴포넌트로 애니메이터를 추가하여 보스 애니메이션 생성 2.보스 미사일 오브젝트 - 보스미사일 오브젝트 생성 : rigidBody, boxCollider, Paticle System, Nav Mesh Agent(유도미사일), 스크립트를 상속받은 추가적으로 유도..
Unity C# - 함수를 담는 변수 - Action,Func + 람다식 www.youtube.com/watch?v=k3TEOQkqV2A&list=PLpRWpi4Vv6MrY7T3KV62TOIt5qMSDAieb&index=2 keidy.tistory.com/352 유니티로 배우는 C# 강좌 Part 19 - Action과 Func 유니티로 배우는 C# 강좌 Part 19 - Action과 Func keidy.tistory.com - 함수를 담는 변수 - 어떠한 함수의 매개변수로 함수를 받는 경우 사용가능 -매개변수 함수로 람다식(익명함수)를 사용
Unity3D_Quater - 원거리몬스터 구현, 기능보완 및 디버깅 1.원거리몬스터 Enemy C 오브젝트 생성 - Asset 프리팹 드래그 앤 드랍 - 컴포넌트 : 리지드바디, 박스콜라이더, 네비메쉬에이전트, Enemy스크립트 - tag 및 Layer : Enemy - Enemy C의 Mesh와 관련된 자식오브젝트인 Mesh Object 컴포넌트로 EnemyC관련 애니메이터 추가 - Enemy C 애니메이터는 기존 Enemy B 애니메이터를 복사하여 안의 애니메이션만 바꿔주면 됨 2. 미사일 오브젝트 생성 및 프리팹화 - Asset 프리팹 드래그 앤 드랍 - 컴포넌트 : 리지드바디(UseGravity X), 박스콜라이더(isTrigger O), 파티클시스템, Bullet스크립트 - tag 및 Layer : EnemyBullet - 미사일오브젝트의 Mesh와 관련된 자식..
Unity - Layer변경시 하위까지 변경하는 법 참조 : blackembellish.blogspot.com/2014/03/unity3dlayer_17.html [Unity3d]Layer변경시 하위까지 변경하는 방법 public static void ChangeLayersRecursively(Transform trans, string name) { trans.gameObject.layer = LayerMask.NameToLayer(name... blackembellish.blogspot.com