brunch

You can make anything
by writing

C.S.Lewis

by 코드아키택트 Jul 22. 2024

20강 - Physics 5부 옆으로 Bouncing

이제는 슬슬

Threejs Journey는 굉장히 친절합니다. 근데 이제는 너무 따라 하기만 하다 보니 살짝 물리는 경향도 생깁니다. 이래서 10만 원에 평생 콘텐츠라 하지만, 어느 정도 안 보게 되는 것도 사실입니다. 한편으로는 이 수업에서 Certificate를 따는 것보다는 본인의 실력이 중요하니까요. 어쨌든 변화를 예고하며 다시 진행해 봅니다


코드 간략화

코드를 간략화하는 작업은 매우 중요합니다. 그래야 나중에 유지보수를 하기 편합니다. 그게 아마 고수의 길이 아닐까 싶습니다. 간략화는 본인이 사용하는 프레임워크 또는 라이브러리에 대한 지식으로부터 나오기도 하고 알고리즘에 대한 이해로부터 나오기도 합니다. 둘 중 하나라도 잘하면 된다고 생각합니다.


지난 코드에서는 Plastic과 Concrete재료를 따로 설정했습니다. 그렇다면 world가 가진 기본 재료라는 것도 있지 않을까요? 있습니다.


그 후 각 body에 넣어있던 재료를 없앱니다.

위 코드에서 material을 정의하는 부분이 빠졌습니다.


대신 위와 같이 defaultContactMaterial을 정의하는 부분이 생겼습니다. 이로서 모든 Body의 거동이 정의되었습니다.


옆으로 움직이기

옆으로 움직이기 위해서는 힘이 작용해야 합니다.

음... 하나가 옆으로 가는 힘을 정의하고... 하나는 까먹었습니다. 아무튼 이렇게 힘을 정의하면 공이 옆으로 튀어나가게 됩니다


끝맺으며

하루에 아주 작은 시간을 투자하다 보니 현미경으로 바라보듯 하나하나를 다룰 수 있다는 장점과 조급함이 공존하는 시점입니다. 또한 개인적으로는 안전지대에 너무 머무르는 게 아닌가 싶기도 합니다. 어떤 방향이던 일단 계속해보도록 하겠습니다.

브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari