반응형

전체 글 98

[UNITY/C#] Catmull-Rom 스플라인을 사용하여 곡선 및 텍스처에 적용하기

Unity C#에서 주어진 좌표 사이에 선을 그릴 때 자연스러운 곡선을 만들기 위해 Catmull-Rom 스플라인을 사용한다. 이 스플라인은 부드러운 곡선을 사용하여 점을 보간하여 자연스럽게 보이는 선을 만들어준다. Unity C#에서 Catmull-Rom 스플라인을 사용하려면 새 빈 게임 개체를 만들고 여기에 Line Renderer 구성 요소를 추가하면 된다. 그런 다음 다음 코드를 사용하여 Catmull-Rom 스플라인을 사용하여 라인 렌더러의 위치를 ​​설정할 수 있다. 해당 방안을 유니티에서 사용하기 위해서는 다음 단계를 진행하면 된다. 1. Unity 장면에서 빈 GameObject를 생성하고 여기에 LineRenderer 구성 요소를 추가 2. 스플라인의 제어점을 나타내는 'Vector3' ..

IT/공부 정리 2023.03.19

캣멀-롬 스플라인(Catmull-Rom Splines)

* 캣멀-롬 스플라인 - 3차 허밋 스플라인에서 시작(U)과 끝(V) 지점의 속도 벡터를 결정하기 위한 특정한 값을 가진 스플라인 + 새로운 스플라인 이라기 보다는 3차 허밋 스플라인을 구현하기 위한 기술 + 각 지점을 통과하는 곡선을 구현하기 좋다. + 캣멀-롬 스플라인은 컴퓨터 그래픽스로 용어이다. 네 개의 점 사이를 보간하여 곡선을 표현할 수 있다. 해당 공식을 사용한다. * 코드예제 import numpy import pylab as plt def CatmullRomSpline(P0, P1, P2, P3, nPoints=100): """ P0, P1, P2, and P3 should be (x,y) point pairs that define the Catmull-Rom spline. nPoints..

IT/공부 정리 2023.03.19

[UNITY/C#] C#고급 프로그래밍

유니티 이벤트 - 이벤트 끼리 엮이지 않음 - Invoke("함수명", 지연시간f); || 지연시간 만큼 흐른뒤에 함수가 호출 됨 예제1) using UnityEngine.Envents; 으로 라이브러리 추가해주고, public UnityEvent TestEvent; 선언 TestEvent.Invoke()로 호출. inspector에서 스크립트 추가된 것 중 연쇄적으로 같이 발동 될 함수들을 등록 시켜 주면 됨. --> 스크립트에서 각자 스크립트를 선언해서 호출해주는 것이 아닌, 임의로 지정, 넣어줘서 호출 가능. (한줄로 가능해서 깔끔해 짐) 델리게이트(delegate) - C#에서 제공하는 이벤트 - 어떠한 기능을 목록에 추가하면 대신 발생시켜줌. - 유언대리인, 비서 해야할 리스트를 넘겨주면 쭉 대..

IT/공부 정리 2023.03.09

[UNITY] C# list 사용법

◎ List선언 list 변수명 = new List() ; list 변수명 = new List() {.... } ; 더보기 List num = New List(); List num2 = new List() {1,2,3,4} ◎ 배열 추가 : Add(값) List num = new List(); num.Add(0); ◎ 중간에 넣기 : Insert(인덱스, 요소) 더보기 class Example : MonoBehavior { void Start(){ List dogs = new List(); dogs.Add("pomeranian"); dogs.Add("poodle"); dogs.Insert(1,"maltese"); foreach ( var dog in dogs){ Debug.Log(dog); } } } o..

IT/공부 정리 2023.02.24

[UNITY] C# 중급 프로그래밍

○ 벡터 연산 기초 - Vector3 (x,y,z), 벡터란 정해진 원소를 갖고 있는 것. - 길이(거리)와 방향을 가르키는 존재 ○ 쿼터니언 - Quaternion.Enler [ 오일러;수학자] - 오일러는 x,y,z축으로 회전하는 각을 만들었다? - 회전 전과 회전 후의 축이 겹쳤을 경우 소실됨 3축에서 2축이 되버림 => 짐벌 락?현상.(그래서 예전엔 90도회전을 피해감,89.999) - Quaternion은 x,y,z,w 4축을 사용해서 90도 회전도 무사히 표현가능 + Euler를 통해 나타내고 싶은 각을 표현, Euler(new Vector3(0,0,0)) + LookRotation(new Vector3 (0,1,0)); 특정 방향으로 회전. + Lerp(Euler,Euler, %); 두 벡터..

IT/공부 정리 2023.02.18

[Unity] 유니티 내부 기초

강의를 들으며 하는 것이라 세세하진 않지만, 적어두는 내용입니다 ○ 레벨 디자인 카메라 : - clear Flags 아무 것도 없는 영역 + skybox : 하늘로 채워줌 + solid Color : 단색으로 채워줌 - Trigger : 물리적인 충돌은 없지만, 충돌했다고 감지 ○ 충돌 처리 OnTriggerEnter(Collider other) : 트리거인 콜라이더와 충돌 할 때 자동으로 실행 OnCllistionEnter(Collision other): 일반 콜라이더와 충돌했을 때 자동으로 실행 -> 좀 더 자세한 정보도 포함됨(물리값,,) ○ 생명주기 - Reset : + 오브젝트를 생성 후 인스펙터 뷰에서 리셋을 눌러줄 때 실행, + 객체의 속성을 초기 값으로 설정해 줄 때 사용 - Awake +..

IT/공부 정리 2023.02.18
반응형