inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Three.js로 시작하는 3D 인터랙티브 웹

그룹 만들기(Scene Graph)

box3 scale 질문

286

fave.kr

작성한 질문수 2

0

box3은 box2를 클론 한 것인데
box3.scale.set(1,1,1)을 해보니까 box1과 같은 크기의 메쉬가 생기네요. 왜 box1을 기준으로 두는건가요??box2.scale.set(0.3,0.3,0.3); 과 같은 크기의 box3이 만들어 질 것이라 생각했는데 그게 아니네요.

심지어 box3.position.x 는 box2를 기준으로 둬서 더 헷갈려요.(box3.position.x = 0;를 해 본 결과 box2와 겹쳐짐)

 

Three.js blender 인터랙티브-웹

답변 1

1

1분코딩

1) 크기 관련: scale 조정한 것은 인위적으로 transform이 변형된 것이지 원래 크기가 변한게 아니기 때문입니다. 0.3을 적용하면 "30% 크기로 줄어든 상태"가 유지되는 거고, 1을 적용하면 다시 원래의 크기(100%)로 돌아간다고 생각하시면 되겠습니다.

2) position은 해당 메쉬가 속한 그룹의 위치를 기준으로 하기 때문에 그렇습니다. 그룹핑을 꼭 해줄 필요는 없고, 필요한 경우에 사용하시면 됩니다. 예를들어 자동차를 만드는데, 자동차 덩어리(그룹)만 움직이면 전체가 움직이면 편하겠죠? 이런 경우 그룹을 안만들면 차의 각 구성요소(차체, 네 바퀴 등)의 위치를 모두 일일이 움직여줘야 하기 때문에 굉장히 번거롭겠지요. 회전할 경우에는 위치 계산이 더욱 어려워지고요. 바로 이런 경우를 위해 그룹을 만드는 거고, 그런 경우가 아니라면 그룹을 만들 필요는 없는 거랍니다.

리액트/next.js와 같이 사용하는 강의 계획은 없으신가요?

0

84

1

소스코드 파일이 강의랑 같나요?

0

124

2

materials 배열에 있는 top, bottom ... 들에 대해서

0

119

0

gltf 포맷 사용

0

243

1

점프 애니메이션 stop

0

130

2

사양에 따른 다른 결과

0

115

1

중복 질문 삭제

0

162

1

혹시 이 빛의 범위를 조절할 수 있는 방법이 있나요?

0

125

1

gltf.scene.children 이 없는데도 모델이 화면에 떠요

0

105

2

GLF파일 export한 후에 three.js에서 렌더링 된 모델에는 텍스처 적용이 안되어있습니다..!

0

165

1

일반 유리, 강화 유리 강의에서 Glass 객체의 position X를 -1, 1로 설정한 이유를 모르겠어요

0

79

0

그림자가 다르게 표현됩니다

0

139

1

setAnimationLoop 위치가...

0

101

1

얼굴 그릴 때 붓이 깔끔하게 칠해지지 않고 얼룩덜룩해요

0

137

1

블렌더 texture paint 시 미러모드

0

164

0

DragControls의 인자값을 바꾸지 않았는데 에러가 안떠요!

0

107

1

blender 에서 색칠하기 편 Texter paint slot추가없음

0

980

2

fin 버전도 그냥 실행이 안돼요

0

292

2

자바스크립트 실행이 안되는 것 같아요

0

386

1

모니터 해상도에 따라 mesh의 크기가 변할 수 있나요?

0

239

1

live server와 localhost:8080

0

356

1

material에 canvas 를 texture 로 넣는방법이 궁금해요

0

272

1

모바일 조이스틱은 어떻게 만들 수 있을까요?

0

214

1

징검다리 예제에서 SpotLight가 동작 오류

0

307

2