본문 바로가기

Life Insight/tools

(68)
[vim] Remap key on windows (캡스락 키를 ctrl 키로 변경) Remap vim 을 사용하려고 공부하고 있는데, 예전에는 Insert mode에서 Basic mode로 갈때, 단순히 Esc 키를 눌러서 빠져나왔습니다. 근데 외국 애들은 보니 ctrl + c 키로 빠져나오는 것을 추천한다고 합니다. 추가적으로 새끼손가락이 밑으로 내려가니깐 caps lock 을 ctrl 키로 변경해서 사용합니다. 이게 설득력이 있는게, 해피해킹 키보드를 보니깐 ctrl 이 없고, 캡스락 키 자리에 ctrl 이 있습니다. 🙄 맥에서는 자체적으로 key map을 할 수 있어서 쉽게 변경할 수 있지만, 윈도우는 가벼운 프로그램을 다운로드해서 변경할 수 있습니다. github.com/randyrants/sharpkeys/releases 위 링크에서 sharpkeys392.msi 을 다운받아 ..
[jetbrains] Useful setting and plug-in (Webstorm, Pycharm, Intel) Hi there! Let me introduce useful features that I use in multiple jetbrains tool :) Keymap If you windows users, ctrl + w key is very nice thing to close tab. Let's change keymap Ctrl + Shift + F4 to Ctrl + w in Setting(ctrl +alt+ s) Rainbow Brackets You can find Rainbow brakets in Settings -> Plugins -> Search: Rainbow Brackets If you have experice about Backets Hell, you might know this plug-i..
[3dsMax python] Log Logging 모듈 print 문으로 어느 정도 로그를 남겼었지만, 스크립트를 만들어 디자이너에게 줄 경우, 로그파일이 필요해서 합니다. 참고로 맥스에 print 문이 많이 찍히게 되면 맥스가 멈춰서 한참 기다려야합니다. (무거운 파일이면 맥스가 꺼집니다) 그래서 저는 되도록이면 주요 로그는 콘솔에, 주요 로그와 세부로그는 파일로 남겨보겠습니다. 그냥 import 해서 사용하면 됩니다. 빨간 글씨로 출력이 됩니다. 하지만 default 레벨설정이 warning이여서 info 랑 debug는 출력안됩니다. import logging logging.debug("test") logging.info("test") logging.warning("test") logging.error("test") # WARNING..
[3dsMax python] GUI with pymxs 파일탐색기 Pyside2를 사용하지 않고 파일을 불러와봤습니다. from pymxs import runtime as rt path = os.path.dirname(os.path.abspath(__file__)) path_to_file = rt.getOpenFileName(caption="Open A Test Excel:", filename=path+'\\') 폴더경로를 가져올려면 아래처럼 하시면 됩니다. from pymxs import runtime as rt rtrt = rt.getSavepath() print rtrt Dialog Example wikidocs.net/35742\ max gui는 pyside2 를 사용하는데, 아주 좋은 문서가 나왔습니다. 저걸 보고 Dialog 창을 만들어봤습니다. ..
[3dsMax python] V-ray material with pymxs V-ray Renderer 이름이 V-ray 입니다. 카오스 그룹에서 만들었습니다. 한국지사도 있습니다. 저는 개발자여서 왜 Default 렌더러인 Arnold와 V-ray가 비슷해보이지만, 그래픽쪽 최전선에 있는 사람들 눈에는 "빛의 표현" 분야에서는 최고라고 합니다. V-ray 재질 생성 Vray가 깔려있다는 전제하에, 인터넷에 돌아다니는 맥스스크립트를 보고 파이썬으로 흉내를 내봤습니다. 놀랍게도 정상작동합니다 😎 from pymxs import runtime as rt if __name__ == '__main__': print 'Hi, velbie!' obj = rt.sphere() material = rt.VRayMtl() material.diffuse = rt.Color(255, 0, 0) # ..
[3dsMax python] Material with pymxs 모든 재질 가져오기 아래코드를 사용하면 Slate Material Editor에서 Scene Materials 에 모든정보를 가져옵니다. 😎 특정재질을 찾으려면 for문에서 이름만 비교하면 됩니다. 특정재질을 복사하려면 주석부분을 풀면됩니다. import pymxs for m in pymxs.runtime.scenematerials: print m # m2 = pymxs.runtime.copy(m) 재질의 맵에 접근하기 재질은 map을 가지고 있습니다. 그중 Diffuse map에 접근하는 방법입니다. 그렇다면 다른 map에는 어떻게 접근할까요? (이 문서를 참고해주세요) import pymxs for material in pymxs.runtime.scenematerials: print material...
[3dsMax python] Layer with pymxs 레이어 생성하기 안녕하세요, 레이어 생성하기 코드입니다. 레이어 계층을 관리할 수 있습니다. from pymxs import runtime as rt if __name__ == '__main__': parent = rt.LayerManager.NewLayerFromName("C") child = rt.LayerManager.NewLayerFromName("D") child.setParent(parent) 레이어에 객체 넣기 레이어에 객체를 넣어볼려고 하니깐, 어떤 함수가 있는지를 몰라서 맥스스크립트 문서를 참고했습니다. obj =rt.getNodeByName(target_name) layer = rt.LayerManager.NewLayerFromName(new_name) layer.addnode(obj)..
[3dsMax python] Object with pymxs 전체 씬그래프 탐색 맥스 왼쪽에 보면 레이어와 씬그래프를 볼 수 있는곳이 있습니다. 전체를 가져올때도 좋지만, 특정계층을 오브젝트를 가져올때 유용합니다. from pymxs import runtime as rt def output_node(node, indent=''): """Print the scene graph as text to stdout.""" print(indent, node.Name) for child in node.Children: output_node(child, indent + '--') output_node(rt.rootnode) 계층없이 모든 오브젝트 가져오기 objs = pymxs.runtime.objects for o in objs: print(o.name) 특정 오브젝트 가져오..