Notice
Recent Posts
Recent Comments
Link
반응형
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 드롭다운
- sparkmain(clone) 무한생성
- Simulation
- 행동트리
- readonly
- 최소신장트리 mst
- GetComponent
- dfs
- raycast
- unity sparkmain(clone)
- 디지털트윈
- 유니티 sparkmain(clone)
- 유니티
- dropdown
- 티스토리챌린지
- 오블완
- 트리구조
- list clear
- 깊이탐색
- articulation body
- unity korea
- navisworks api
- 습관형성 #직장인자기계발 #오공완
- Unity
- 크루스칼
- 너비탐색
- sparkmain(clone)
- C#
- 최단거리 알고리즘
- removeAll
Archives
- Today
- Total
낑깡의 게임 프로그래밍 도전기
Unity 다각형 콜라이더와 면적 계산: CCW알고리즘 세점의 방향성 판별 본문
반응형
다각형 내외부 판정은 CCW 알고리즘을 사용
https://degurii.tistory.com/47
[알고리즘] CCW로 세 점의 방향성 판별하기
0. 들어가기 전에 첫 알고리즘 포스트입니다. 이번에 쓸 내용은 CCW입니다. 원래는 기하 알고리즘들을 전반적으로 다루려고 했는데 생각보다 글이 길어져서 CCW만 쓰게 되었습니다. 본 글의 내용
degurii.tistory.com
참고 블로그
https://www.youtube.com/watch?v=iIDgR5uFy9o
참고 유튜브
그렇게 해서 진행 해 볼 것이
https://bloodstrawberry.tistory.com/996
유니티 - 오목 다각형의 삼각분할 (Polygon Triangulation)
Unity 전체 링크 참고 - 2차원 평면에서 유한한 선의 교점 구하기 - 삼각형 안에 있는 점 판단하기 - 퍼블릭 변수 변경시 이벤트 발생 - 오목 다각형의 삼각분할 (Polygon Triangulation) - 구멍이 있는 다
bloodstrawberry.tistory.com
이것이다!
void createProceduralMesh()
{
mesh.Clear();
mesh.vertices = vertices.ToArray();
mesh.triangles = triangles.ToArray();
mesh.RecalculateNormals();
Destroy(this.GetComponent<MeshCollider>());
this.gameObject.AddComponent<MeshCollider>();
}
위의 코드는 프로시저 메쉬를 생성하는 함수. 여기서 각 줄에 사용된 메쉬 관련 함수에 대해 설명하겠습니다.
- mesh.Clear();: 이 명령은 기존 메쉬 데이터를 지우고 새로운 메쉬를 생성할 준비를 합니다. 즉, 메쉬를 초기화합니다.
- mesh.vertices = vertices.ToArray();: vertices는 생성된 버텍스(꼭짓점) 리스트이며, 이를 메쉬의 버텍스로 설정합니다. ToArray() 메서드는 리스트를 배열로 변환하는 역할을 합니다.
- mesh.triangles = triangles.ToArray();: triangles는 삼각형 인덱스 리스트이며, 이를 메쉬의 삼각형 리스트로 설정합니다. 삼각형 인덱스는 메쉬를 구성하는 삼각형의 버텍스 인덱스를 의미합니다.
- mesh.RecalculateNormals();: 이 명령은 메쉬의 법선을 다시 계산합니다. 버텍스와 삼각형 정보를 기반으로 메쉬의 표면 방향을 다시 계산하여 설정합니다.
- Destroy(this.GetComponent<MeshCollider>());: 이 줄은 게임 오브젝트에 부착된 MeshCollider 컴포넌트를 제거합니다. GetComponent<MeshCollider>()는 게임 오브젝트에서 MeshCollider 컴포넌트를 가져옵니다. Destroy() 함수는 해당 컴포넌트를 파괴합니다.
- this.gameObject.AddComponent<MeshCollider>();: 이것은 게임 오브젝트에 MeshCollider 컴포넌트를 추가합니다. 이를 통해 메쉬가 적절한 충돌을 갖게 됩니다.
이러한 단계들은 프로시저 메쉬를 생성하고 해당 메쉬에 적절한 물리적 특성을 제공하기 위한 일반적인 절차입니다.
반응형
'Unity C#' 카테고리의 다른 글
| 유니티 속성(컴포넌트) 자동추가 (0) | 2024.05.16 |
|---|---|
| Unity OnValidate (0) | 2024.05.16 |
| Unity 숫자 null로 만들기 (0) | 2024.05.14 |
| Unity 포이치(PoE) 싱클톤 패턴 (0) | 2024.05.10 |
| Unity 다각형 계산 (0) | 2024.05.10 |