2016-09-28

2.python_camera setting, constrain


지난 게시물에 이어서 오늘은 좀 더 추가해보겠습니다.


import maya.cmds as cmds

sel_cam = cmds.ls(sl=1)
cam_shape = cmds.listRelatives(sel_cam)[0]

cmds.setAttr('%s.nearClipPlane'%cam_shape,1)
cmds.setAttr('%s.farClipPlane'%cam_shape,100000)

cmds. setAttr('%s.overscan'%cam_shape,1)


중간에 'nearClipPlane' 과 'farClipPlane' 이 추가되었습니다. (뒤에 숫자는 자기가 원하는 숫자를 넣으시면 됩니다)
'overscan'자리에 각각 두개가 들어간 건데 이것들은 카메라 속성들 이름입니다.

nearClipPlane -> 마야 상에서 카메라로 볼 수 있는 최소 거리
farClipPlane -> 마야 상에서 카메라로 볼 수 있는 최대 거리

어려운건 아니라 이건 여기까지만 하겠습니다.





다음은 parentConstraint 입니다.


import maya.cmds as cmds

mom = cmds.ls(sl=1)[0]
son = cmds.ls(sl=1)[1]

cmds.parentConstaint(mom,son,mo=1)


이 코드는 제가 선택한 오브젝트끼리 컨스트레인을 건다는 뜻입니다.
사실 마야 메뉴 중에도 있어서 굳이 쓰지 않아도 되지만 매번 메뉴를 클릭하고 옵션 체크하는게 불편해서 만들었습니다.

import maya.cmds as cmds      => cmds를 마야 상에서 불러옵니다. (그냥 이건 기본이라고 생각해주세요)

mom = cmds.ls(sl=1)[0]    => 제가 선택한 것중 첫번째 것을 'mom'이라고 지정했습니다.
                                              ( 참고로 ls(sl=1)  -> 이건 내가 선택한 오브젝트를 리스트로 만들겠단 뜻입니다.
                                                파이썬 리스트 순서는 0부터 시작하기 때문에 0이 곧 첫번째 물체가 됩니다)

son = cmds.ls(sl=1)[1]     =>제가 선택한 것중 두번째 것을 'son'이라고 지정했습니다. 
                                          (리스트는 0부터 시작하니까 1이라고 적어야 두번째 물체가 선택됩니다)

cmds.parentConstaint(mom,son,mo=1)   => 'parentConstraint' 이건 마야 명령어입니다.
                                                    son을 mom에게 귀속시킨다는 소리입니다. 
                                                    (부모 될 물체가 앞에, 자식될 물체가 뒤에 옵니다)

                                                    'mo=1' 은 maintain offset 입니다.
                                                    저게 있으면 자식이 부모와 다른 위치에 있어도 그 자리 그대로 귀속됩니다.
                                                    없으면 자식이 부모 위치에 와서 붙습니다. 
                                                    (필요 없으면 'mo=1'은 빼시면 됩니다)



사실 제가 만드는 코드들은 마야에서 실행되는 것들을 보고 응용해서 파이썬으로 만드는 거라 아주 쉬운 코드들입니다.
파이썬을 배운지 얼마 되지 않았기 때문에 이렇게 짧은 것부터 시작하는 중입니다.

만드는 기준은 그때 그때 제가 좀 더 편하게 쓰거나 필요한 것 위주로 만들고 있습니다.

No comments:

Post a Comment

2024_Animation_reel_Yun_Kim