전체 글
-
TextMeshPro, Pivot, Scroll View, Can't remove RectTransform because Image (Script), Image (Script) depends on it카테고리 없음 2024. 2. 2. 12:40
Atlas Resolution 은 넉넉하게 4096으로 세팅 CharacterSet 은 CustomRange로 세팅 Character Sequence에 32-126,44032-55203,12593-12643,8200-9900 영어 범위 : 32-126 한글 범위 : 44032-55203 한글 자모 : 12593-12643 특수 문자 : 8200-9900 왼쪽상단 로컬좌표 월드좌표 설정하는키 바로 옆에 Pivot, center 설정 Scroll View Viewport - 말그대로 Scroll view 에 content위 범위 조절 Content - Scroll view 안에 들어간 메인 콘텐츠. (주로 Grid Layout Group 컴포넌트로 정리 ) Can't remove RectTransform ..
-
7주차(3D) - 프로젝트 발표 후 각팀 트러블 슈팅 모음, Skybox , input phase카테고리 없음 2024. 1. 31. 21:36
프로젝트 발표 후 각팀 트러블 슈팅 모음 1 .ruleTile 은 ruleTile 끼리만 상호작용이 가능하다. 2. transform을 사용하여 오브젝트를 이동시킬 때, collider는 기본적으로 같이 움직이지 않는다. Collider는 해당 오브젝트의 충돌 검사를 담당하며, 이동은 transform의 위치 변경으로 이루어지기 때문에 이동과 충돌 검사는 별개로 처리됨 Rigidbody 가 없이 collider 만 있는 오브젝트를 정적 콜라이더라고 하며, Transform 으로 이동시켰을 경우 상당한 성능 저하가 있다. 3. PhysicsMaterial2D란 ? 2D 물리 시뮬레이션에서 사용되는 물리 속성을 정의하는 클래스. 이 클래스를 사용하여 2D 충돌 시뮬레이션에서 오브젝트 간의 마찰, 반발력, 충..
-
7주차 - Scriptable Object에 대한 고찰 + 입문 주차 피드백카테고리 없음 2024. 1. 29. 22:05
Scriptable Object? Unity 게임 엔진에서 사용되는 특별한 종류의 데이터 컨테이너, 원하는 데이터를 저장하고 공유, 에셋으로 저장해 여러곳에 참조해 사용 데이터와 코드를 분리하여 유연성과 재사용성을 높일 수 있습니다. 보통 데이터로만 사용. ScriptableObject 클래스를 상속받는 스크립트 클래스를 작성해야 합니다. 해당 스크립트를 에셋으로 생성하여 프로젝트 내에서 사용할 수 있습니다 어트리뷰트를 사용해 에셋 폴더내에 마우스 오른쪽 클릭으로 스크립터블 오브젝트를 생성할 수 있습니다. [CreateAssetMenu(fileName = "", menuName = "", order = num)] fileName - 생성되는 파일 이름 menuName - 메뉴 이름, ex) "TopDow..
-
6주차 - 2D 게임 프로젝트Unity/Unity 스파르타 2024. 1. 26. 22:04
보스를 만들어 보자. 보스가 생성되면 만들어놓은 공격패턴들을 죽기전까지 랜덤하게 계속 실행 시키도록 하자. 1. 오프닝 애니메이션 실행 (보스몬스터 hp바 액티브) 2. 공격패턴 만들기 delegate void AttackPattren(); 만들고 List 리스트를 만들어서 공격패턴을 리스트에 담아서 랜덤하게 공격패턴을 실행 시켜주도록 하자 3. 시작 코루틴에 랜덤한 인덱스값으로 패턴리스트에 공격패턴 시작 4. 죽기전까지 공격패턴 반복 실행 5. 죽으면 OnDeathEvent 실행하기.(CallOnDeathEvent) 원거리 공격 몬스터도 원거리몬스터 스크립트에 공격패턴을 만들어놓고 인덱스로 설정해 각각 다른 원거리 공격을 할 수 있게 만들어보자. 보스몬스터 어택 애니미에신 수정,( 아랫쪽까지 대미지 받..
-
6주차 - 2D 게임 프로젝트Unity/Unity 스파르타 2024. 1. 25. 21:05
나의 구현 파트는 몬스터.. 오늘은 기본적인 몬스터의 움직임, 플레이어의 추적을 구현해볼 것 몬스터의 이동 최대한 재활용성을 살리는 코드를 짜보자.. 1. MonsterController 에서 이벤트를 관리하자. MonsterStats : 몬스터 스탯 MosnterMovement : 움직임 MonsterLifeCycle : 대미지 및 생명 관련 MonsterAnimationController : 애니메이션 근거리 몬스터, 원거리 몬스터에 따라 attck 스크립트를 사용 몬스터 콘트롤러에 [RequireComponent(typeof())] 어트리뷰트를 사용해 필수 스크립트를 설정해주자 움직임 MosnterController 에 OnMoveEvent 델리게이트에 연결해서 사용하자 플레이어가 몬스터의 영역에 ..
-
6주차 - Object Pool 예제 ( + Animator.StringToHash() )Unity/Unity 스파르타 2024. 1. 23. 20:45
목차 1. Object Pool 예제 2. Animator.StringToHash() 1. Object Pool 예제 Object Pool? 더보기 프로그래밍에서 리소스를 효율적으로 관리하기 위해 사용되는 디자인 패턴입니다. Object Pool 은 미리 생성된 객체들을 보관하고 필요할 때 재사용함으로써 객체 생성과 소멸의 오버헤드를 줄이고 성능을 향상시킵니다. 1. 스크립트 작성 이름, 프리펩, 사이즈를 가지고있는 구조체를 생성하고 구조체를 가지고있는 리스트 생성합니다 [System.Serializable] public struct Pool { public string tag; public GameObject prefeb; public int size; } public List pools; public..
-
MiniMap (2D)Unity/제로부터 구현 2024. 1. 21. 18:47
탑다운 형식의 게임의 MiniMap 만들기 1. 카메라를 새로만들어 Projection 을 Orthgraphic으로 바꿔줍니다 카메라를 통해 미니맵을 만들 것이기 때문에 원근감없이 일정한 크기로 보여줄 것입니다 2. 카메라가 화면에 렌더링 되는것을 막아야 하기 때문에 카메라에 Target Texture에 랜더링된 텍스쳐를 넣어줄 것 입니다 폴더를 하나 만들어 Render Texture 을 만들어 줍니다. 3.새 레이어를 추가합니다, main Camera 에 Culling Mask로 랜더링할 레이어를 선택할 수 있습니다. Minimap 레이어만 해제해 줍니다. 새로 만들어진 Camera 에 Culling Mask는 Minimap 만 설정해줍니다. 새로 만든 카메라에는 Minimap 레이어만 랜더링하게 되고..
-
5주차 - Tilemap(2D)Unity/Unity 스파르타 2024. 1. 18. 21:25
1. 그리기 순서 설정 2. Sprite Pivot 설정 3. Tilemap 4. Tilemap 충돌 정보 추가히기 5. 타일맵 콜라이더 최적화 1. 그리기 순서 설정 2D 에서 화면상에 캐릭터가 어떤 오브젝트보다 뒤에있는 경우 앞에 있는 오브젝트에 캐릭터가 가려져야 합니다. 이러한 그리기 순서를 해결 하기 위해 간단하게 그래픽스 설정을 해줍니다. 2d 에서는 y좌표값이 작을수록 나중에 나중에 그려져야 합니다. Edut - Project Setting로 이동해 좌측 메뉴 Graphics로 들어갑니다. Camera Settings에서 Transparency Sort Mode 필드를 찾습니다. 여기에서 스프라이트가 그려지는 순서가 결정됩니다. 드롭다운 메뉴를 통해 Default에서 Custom Axis로 변..