반응형

유니티 7

[존 레몬의 공포 체험] 복습 및 정리

[1강]모델은 삼각형의 메시로 구성되어 있으며 Mesh Renderer는 이 메시를 렌더링하여 볼 수 있도록 한다.- Skinned Mesh Renderer : 특별한 유형의 렌더러. 모델의 뼈대 전체의 위치와 회전을 기반으로 메시 모양을 변경할 수 있게 해준다. 뼈대는 모델의 자식 게임 오브젝트이다. JohnLemon의 뼈대는 Root 게임 오브젝트의 자식이다. ~ Animator의 Apply Root Motion루트 모션 적용은 게임 오브젝트의 위치와 회전을 애니메이션이 제어하도록 허용한다.앞으로 움직이는 애니메이션이 있다고 하면, 루트 모션이 적용되었을 때 캐릭터가 앞으로 움직이면 게임 오브젝트의 위치가 앞으로 이동한다,루트 모션을 적용하지 않으면 제자리에서 걷는 애니메이션이 나오게 된다. 게임에서..

[존 레몬의 공포 체험] 카메라와 포스트 프로세싱 / URP 15 버전에 맞춰 설정

3.Virtual Camera는 Hierarchy창에서 우클릭 후 Cinemachine - Virtual Camera 클릭으로 만든다. 6.15 버전에서는 레이어를 설정해주지 않아도 되었다. 7.안티 앨리어싱은 Main Camera에 컴포넌트를 추가하지 않아도 기본으로 있다. 8.Hierarchy 창에서 우클릭 후 Volume - Global Volume을 클릭하여 포스트 프로세싱 볼륨을 생성한다.  설정은 강의와 똑같이 해주면 된다. 9. 10.Global Volume의 Inspector 창에서 Add Component 위의 Add Override를 눌러 강의와 똑같이 효과를 추가해준다. 11.앰비언트 오클루전은 Add Override를 눌렀을 때 나오는 항목에 없어서 검색해보았다.15 버전은 앰비언트..

[유니티 2D/C#] 탑다운 뷰에서 아이템이 바닥에서 튕기는 연출 만들기

탑다운 뷰에서 아이템이 바닥에 튕기도록 만들어보자. 비어있는 게임 오브젝트를 하나 만들고 오브젝트 안에 아이템 스프라이트와 가상 바닥을 넣어주었다. 탄성을 넣어야 하기 때문에 project 창에서 우클릭 - Create - 2D - Physics Material 2D를 눌러 만들어준다. https://docs.unity3d.com/kr/530/Manual/class-PhysicsMaterial2D.html 물리 머티리얼 2D(Physics Material 2D) - Unity 매뉴얼 Physics Material 2D 는 2D 물리 오브젝트 간에 충돌이 발생할 때 일어나는 마찰과 탄성을 조정하기 위해 사용합니다. 에셋 메뉴에서 물리 머티리얼 2D를 생성할 수 있습니다(Assets > Create > Ph..

[유니티/C#] Json을 원하는 타입으로 읽기/쓰기 (Generic 사용)

Newtonsoft의 Json.NET을 사용하였다. using Newtonsoft.Json; using Newtonsoft.Json.Linq; using System.IO; 밑의 코드들은 위의 코드를 넣어주어야 사용 가능하다. Data = ReadJson("Json 파일명"); public T ReadJson(string fileName) { TextAsset textAsset = Resources.Load(fileName); return JsonConvert.DeserializeObject(textAsset.ToString()); } Assets/Resources 안에 있는 Json 파일을 읽어오는 코드이다. filePath = Application.persistentDataPath; Data = Re..

[유니티/C#] 드래그 앤 드롭(Drag and Drop) 시스템 만들기

짤처럼 음식을 드래그 해서 손님한테 주는 시스템을 만들었다. // 음식 오브젝트에 넣은 코드 public class FoodController : MonoBehaviour, IBeginDragHandler, IEndDragHandler, IDragHandler { Vector3 DefaultPos; // 드래그 시작 void IBeginDragHandler.OnBeginDrag(PointerEventData eventData) { // 올바르지 않은 곳에 드래그 했을 때 돌아갈 위치를 저장해준다 DefaultPos = this.transform.position; // 드래그 시작 되었을 때는 드래그 중인 오브젝트의 레이캐스트 타겟을 꺼줘야 오류가 생기지 않는다 GetComponent().raycastTa..

[유니티/C#] List에서 중복 없이 뽑기(조합)

던전에서 한 층에 무작위의 방을 여러 개 배치하기 위해 만든 코드의 일부이다. 만들 방의 프리팹을 ~RoomPrefabs 안에 넣어두고 중복 없이 무작위로 생성하였다. private void MakeFloor() { List huntingRoomIndex = new List(); List harvestRoomIndex = new List(); List emptyRoomIndex = new List(); // 프리팹 개수만큼 인덱스를 저장 for (int i = 0; i < huntingRoomPrefabs.Length; i++) { huntingRoomIndex.Add(i); } for (int i = 0; i < harvestRoomsPrefabs.Length; i++) { harvestRoomInde..

반응형