개발/three.js / / 2023. 1. 24. 04:23

[Capstone Project] 2022.10.03~04 개발일지

반응형
※ 해당 글은 capstone 종합설계 프로젝트를 하면서 적었던 일지를 돌아보며 작성한 것입니다.

개발일지 2022.10.03 모듈화를 사용할 수 없는 이유

webpack으로 하려면 일일히 node modules를 다운받아주고 환경세팅을 해주어야하기 때문에 html안에 script module로 할려 했더니만 html을 브라우저로 띄웠을 때 js 파일 접근 권한 때문에 훨씬 번거로워 진다.

그냥 webpack을 사용하고 js 파일만 구분하는게 편할 것 같다. 근데 그걸 어캐하지

개발일지 2022.10.04 Raycaster, intersectObject가 반환하는 object 분석

get object

  • raycaster.intersectObject가 반환하는 object는 다음과 같은 내용을 가지고 있다.
    • distance : ray의 시작점부터의 거리
    • point: 교차한 지점(월드 좌표기준)
    • face: 교차한 face
    • faceindex : 교차한 face의 index
    • object: 교차한 객체 [대표적으로 mesh(Object)]
    • uv: 교차한 point의 uv좌표(vector2)
    • uv2: 교차한 point의 uv 2차좌표(vector2)
    • instanceld: instanced mesh에 교차하는 Ray의 instance index

get Vertex

  • racaster에서 얻을 수 있는 정보를 통해 vertex를 찾아내고자 한다면 face와 point를 이용하여 face의 각 좌표중 point에 가장 가까운 vertex를 찾거나 range 내에서 face에서 point에 가장 가까운 vertex를 찾는 방법을 생각해 볼 수 있다.

개발일지 2022.10.04 Vertex Debuger 방법 찾기

Raycaster로 intersects object 정보를 받아올 수는 있지만, 특정 vertex를 지정해서 가져올 수 있는지는 의문이다. 오브젝트의 전체 vertex array를 가져오는 것은 쉽지만, raycaster로 특정한 가장 가까운 vertex를 찍을 방법이 있을 지 모르겠다.

개발일지 2022.10.04 필요한 것

vertex array의 중복을 제거한 vertex list를 뽑아올 수 있어야함.

  • js 집합개념, set (x,y,z) 넣어서 중복제거한 array로 뽑아오는 module 필요. → Vertex Extracter
  • 반대로 중복제거 vertex list에서 attribute position (vertex) array로 다시 넣는 모듈도 필요 → 그럴라면 처음에 attributes position array에서 중복 제거하는 걸로 뽑아올 때, attributes position array의 세 개씩 짝지은 요소들이 인덱스 몇 번이를 담고 있는 데이터도 반환해야함.
  • Raycaster로 클릭한 곳에서 가장 가까운 vertex를 찾아 인덱스와 좌표 정보를 표시하는 모듈

나중에 찾아봐야 할 것

  • blender에서 작업한 uv map에서 uv vertex array를 알아낼 수 있는가?
반응형
  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유