본문 바로가기
취미/3D

[3DMAX] Boolean과 Array를 이용해서 구멍 뚫기

by Konn 2011. 6. 27.
반응형




TOP뷰에서 박스를 대강 하나 만듭니다.크기는 상관없지만 두께는 두껍게 하지 마세요 나중에 불편함



 


박스를 하나 만들었으면 실리더(각의 수(기본 18개)는 얼마나 하던 상관없지만 가로 줄(기본5개)는 1개로 맞추고 하세요)로 박스를 통과하는 형태로 하나 만들어 줍니다.




 


그리고 맥스의 메뉴에서 tools - Array를 클릭해주세요, 이거 뭐냐면 정해진 수치로, 정해진 수의 오브젝트를 만들어내는 기능입니다.






 



왠지 존나 간단해보이면서 존나 머리아파 보이는 모습입니다.


하지만 별로 안 어려워요


위에서 말했듯이 일정한 수치란 x,y,z의 값이며 일정한 수의 오브젝트란 array Dimensions의 Count를 말하는거였습니다.


만약 X를 20으로 줬다면 X축을 기준으로 +20만큼 움직이게 됩니다, 만약 -20을 줬다면 반대방향으로 20만큼 움직이죠.


Y나 Z도 같은 개념으로 움직입니다.


밑에 Type of Object가 있습니다.


Copy,Instance,Rference가 있습니다. 이것은 메뉴에 있는 Mirror에서도 볼수있는 단어들인데, Copy는 말 그대로 그냥 복사만 한다는 뜻이고 Instance는 둘 중 하나의 오브젝트의 버텍스나 엣지(선),폴리곤(면)을 움직일경우, 복사된 다른 오브젝트도 같은 위치의 버텍스,혹은 엣지나 폴리곤이 같은 값만큼 움직인다는 겁니다.


쉽게말해서 이놈 잡아다가 여기 움직이면 저놈도 그곳이 고만큼 움직이는거임 ㅇㅇ


Reference는 기억 안나요 패스


그리고 하나 더 설명할것은 Array Dimensions입니다. 1D,2D,3D가 있죠? 1D는 첫번째로 복사될 오브젝트를 위 수치만큼만 딱 한번 복사하는거구요, 2D는 그 복사된걸 다시 한번 복사해서 움직여주는 겁니다.




 



어쨋든 대략 이런식으로 맞춰주세요, Instance로 맞출 필요는 없지만 그냥 전 그렇게 했긔 ㅎㅎ


만약 이 수치대로 했는데 박스에 맞지 않는다면 제가 만든 박스,실린더와의 스케일(크기)차이이니 님이 알아서 적당히 맞춰주시면 됩니다.


2D체크하시고 알맞는 값을 주는것은 물론이며 그걸 모니터링 할수있게 오른쪽의 Preview도 체크해주세요.




 


그럼 존나 대략 이런 모습으로 뷰에 나오게 될겁니다.





 


이제 아무 실린더를 선택한 뒤 에디터블 폴리로 바꿔서 Attach(어태치)기능으로 다른 실린더들을 '모두' 선택해주세요.


한번 누르고 다시 어태치 누를 필요없이 한번 눌러도 취소되지는 않으니 그대로 죾 눌러주시면 됩니다.



어태치 기능은 오브젝트1과 오브젝트2가 있다고 치면, 오브젝트1을 선택한 상태에서 어태치 기능으로 오브젝트2를 클린할 경우 오브젝트2가 오브젝트1과 같은 그룹으로 묶이는 기능입니다.


뭐든 말로 하는것보단 직접 해보시는게 확실하겠죠. 직접 해보세요.





 


하나의 그룹으로 묶인 오브젝트들입니다,이제 오른쪽에 보이시는 컴파운드 오브젝트로 바꾸세요.



 


바꾸면 대략 옆과 같은 모습으로 보일텐데,만약 Operation이 오른쪽과 같은 모습이 아니라면 똑같이 세팅해주십쇼.


각각의 기능이 궁금하면 강좌 끝난후 직접 하나하나 해보시면 알수있습니다. 대략 힌트를 주자면 일러스트레이터의 패스파인더와 비슷한 기능을 합니다.



박스를 선택한뒤 Boolean을 누르고 Pick Operand B를 누른후 실린더를 누르세요.



 


그럼 아래와 같은 구멍들이 뿅! 하고 생깁니다.


사실 일반적인 경우가 아니라면 이경우는 굉장히 불안정한 상태입니다.





 


F4를 눌러 엣지들의 상태를 보십시오,잘 안 이어진 곳도 있고 지 맘대로 이어진곳도 있습니다.


이걸 어떻게 정리하냐는 사용자 개개인의 역량에 따라 달려있지요.(사실 보통은 알파값을 넣어서 뚫지 않고도 투명하게 하는 방법이 있다는데 전 그걸 모릅니다. 아마 매핑 관련이라...)




어쨋든 제일 불안정한건 엣지의 상태가 아닙니다. 정확히는 제대로 뚫리지 않은것들이죠.


Boolean기능으로 어떤 오브젝트에 구멍을 뚫을때 가장 짜증나는게, 자신이 뚫을 곳에 엣지가 흐르고 있냐입니다.


만약 엣지가 많이 흐르고 있고, 설상가상으로 뚫을곳이 많다면 뚫은후 수정하는 시간이 굉장히 걸리거든요..



어쨋든 에디터블 폴리로 상태를 바꾼후 키보드 3번키(Border)를 누른후 드래그해서 구멍들을 잡아보세요.








원래는 이것보다 심한데 이건 제가 임의적으로 살짝 수정한거라 별로 안 심해보입니다.



저기 저 빨간 부분들은 버텍스끼리 붙어있지 않는, 띄어져 있는 공간입니다.


Border기능은 비어있는 부분을 잡아주는 기능을 가지고 있어서 이럴때 편합니다.


저 부분을 어떻게 붙혀야하는데 하나하나 붙힐순 없고 그럴땐 Weld기능을 이용합시다.




Weld의 설정창입니다. Weld Threshold는 전에도 말했듯이 선택된 버텍스들이 지정된 수치만큼의 공간에 있을경우 합쳐지는 기능을 담당하는데, 위의 경우 0.5의 수치안에 있는 버텍스들을 죄다 잡아다 합쳐버리는 능력을 가지고 있습니다.



스케일에 따라 다르지만 위의 박스에 있는 모든 버텍스 잡아주고 저정도 먹이면 어느정도는 붙을겁니다.


그뒤 나머지는 알아서 처리해야죠. 버텍스가 2개 곂치는 경우나, 약간 떨어져있는 경우 저걸로 다 처리됩니다.


다만 2개씩 곂쳐있는데도 안 먹힌다면 둘 중 하나의 버텍스를 위로 들어올리면 엣지가 하나 붙어있을텐데


알아서 지워주시고 Target weld로 붙혀주세요.


엣지 흐름이 잘 안 맞아서 뚫린 구멍 위로 면이 새는 경우는 엣지의 흐름을 잡아주시면 되고..



좀 골치아픈 기능이긴 하지만 잘 쓰면 편함 ㅎㅎ


반응형