본문 바로가기
try catch로 롤아웃 하나만 열기 일단 기본적인 롤아웃을 또 만듭시다. rollout test3 "한글이 됨" ( ) CreateDialog test3 width:200 height:200 이 상태에서 계속 만들면 계속 만들어 지는데요 일단 try catch로 창을 닫게 합시다. 닫는 함수는 DestoryDialog try( DestroyDialog test3) catch() rollout test3 "한글이 됨" ( ) CreateDialog test3 width:200 height:200 이러면 test3 다이얼로그를 닫으려 덤비는데, 만약 실패하면 걍 넘어가는게 됩니다. 이렇게 해서 연속적으로 창이 열리는 것을 막을 수 있죠 2023. 7. 18.
롤아웃 이벤트 테스트2 같은거 한 번 더 해 봅니다. CreateDialog https://help.autodesk.com/view/MAXDEV/2024/ENU/?guid=GUID-816D257C-CD2D-4753-A792-6E7AEFAFA6A7 CreateDialog [ ]\ [pos:] [width:] [height:] \ [bgcolor:] [fgcolor:] \ [bitmap:] {bmpstyle: \ [menu:] [style:] [modal:] \ [escapeEnable:] [lockHeight:] [lockWidth:] \ [autoLayoutOnResize:] [parent:] rollout test2 "한글도 잘된다" ( label posTex "Test " pos:[100,50] ) CreateDialog .. 2023. 7. 18.
롤아웃 이벤트 테스트 롤아웃 이벤트를 만듭니다. 역시 UI를 만들어야 재밌.. 롤아웃 껍데기부터 만들게요 rollout test "Hello World" ( ) CreateDialog test width:200 height:200 껍데기를 만들었습니다. 이제 빈 라벨을 카와이하게 넣어볼께요 rollout test "Hello World" ( label xLabel "X : " pos:[70,50] label yLabel "Y : " pos:[70,80] ) CreateDialog test width:200 height:200 이제 빈 라벨을 넣었으니, 마우스가 움직이면 좌표를 넣게 해볼께요 on ~ do 로 실행되는 이벤트 핸들러를 이용하면 됩니다. https://help.autodesk.com/view/MAXDEV/2024.. 2023. 7. 14.
맥스 스크립트 한글 주석이 깨질때 이런 식으로 깨질때 https://diy-dev-design.tistory.com/167 [3DS MAXscript] 스크립트 에디터 한글이 ??? 로 나오는 문제 해결 방법 3DS MAX script 는 정말 훌륭한 개발 언어이지만 아쉬운점이 없는 것은 아닙니다. 대표적인 예가 바로 한글지원 문제인데요. 개발 코드 상에 한글이 지원되는건 바라지도 않습니다. 적어도 주석이라 diy-dev-design.tistory.com 여기서 도움받았음다 Tool / Global Option File을 열어서 대충 186번째줄 근처의 code.page = -1 을 949로 바꿔주고 재시작. 대충 보니까 캐릭터 셋 949가 한글인듯 2023. 7. 14.
특정 문자 치환하기 fn replaceAllstring str findstr replaceStr = ( local newString = copy str while true do ( if keyboard.escPressed do exit f = findString newString findstr if f != undefined then ( newString = replace newString f findstr.count replaceStr ) else exit ) return newString ) s = "철수는 엄마와 함께 저녁을 먹었습니다 . 저녁을 먹고 TV를 보면서 철수는 빵과 과자를 먹었습니다. 새벽2시가 되고 철수는 다시 출출해져서 라면을 먹었습니다 아침이 되자 철수는 너무 많이 먹어서 얼굴이 부었습니다 " new.. 2023. 7. 12.
Break Point myArray = #(10,15,25,35,99) --어레이를 만들고 for i in myArray do ( local aaa = " " break() --브레이크 포인트 ) 어레이를 만들고 그걸 순회하는 코드가 있습니다. 코드 내에서는 사실 어레이를 받기만 하고 사용하는데는 없는데, 그래서 안보이니까 -_- 이걸 중간에 보려고 브레이크 포인트를 잡아 놓은 겁니다. 실제로 저런식으로 변수들이 중간에 어떤 값이 들어 있는지 확인하고 싶은 경우가 종종 있는데, 일일히 프린트 해서 보기도 좀 그렇습니다. 그럴때 디버거 다이얼로그를 열고 스크립트를 실행시키면 브레이크 포인트에서 멈춥니다. 파라미터에서 i 에 들어 있는 어레이 값이 10이라고 밝혀주고 있네요 그리고 맥스 작업이 멈춥니다. 조작이 안돼요 브레이크 .. 2023. 7. 11.
맥스 스크립트로 피라미드를 쌓아봅시다. 역시 책에 있는 예제를 제맘대로 해석해서 만들어 봅니다. 책 좋네요 특히 예제가. 우선 최종 결과물은 이런걸 만들 생각입니다. 차곡차곡차곡 쌓아 올라가면서 점점 박스가 작아지고, 최고로 작아지면 끝나는 그런... 그럼 우선 박스를 만들수 있어야 겠지요. 어떻게 만드는지 모르겠으니, Listener에서 보고 베낍시다. Listener를 켜고 박스를 드래그로 대충 만들어 보면 아래와 같은 메시지를 뱉어냅니다. 이히히 보고 베껴야지 ChatGPT가 따로없네 Box pos:[0,0,0] width:50 length:50 height:5 wirecolor:yellow 라고 써줬습니다. 선택하는(isSelected) 는 필요없으니까 삭제해줬고, 색 바꾸는건 역시 Listener 가 $.wireColor = colo.. 2023. 7. 7.
맥스 스크립트로 구구단을 출력해 봅시다 개인용 공부입니다. 오유환님의 맥스 스크립트 책으로 복습해 봅니다. 멍청한 나 자신을 위해서 설명글을 적습니다. 이래야 제가 이해가 잘됨 ... 난 역시 강의자료처럼 만들어야 공부가 잘됨 for i in 1 to 9 do ( format "\n" format " \n" i for j in 1 to 9 do ( format " % * % = % \n" i j (i*j) ) ) 이렇게 하면 Listener에 1단부터 9단까지 좌악 나옵니다. 자 이걸 그럼 해설해 봅시다. for i in 1 to 9 do ( ) for 문입니다. i 변수를 가지고 1부터 9까지 돌라는 말이죠. 재미있는 문법입니다. for 변수 in 여기부터 to 여기까지 do 뭐 이런 말이죠 그리고 나서가 저는 더 재밌는데 { .. 2023. 7. 7.
Scripting Editor 제가 공부하려고 백업하는 내용 Listener는 메모장이자 출력 확인용 / 연습용 창이라 저장이 안되고 , 두 줄 이상의 코드를 짜기도 힘든데 그렇다면 제대로 짜려면 뭘로 해야 하느냐..? Scripting Editor 를 이용하면 됩니다. 기본적으로 저 글씨 색으로 안 보여주면 못짜기 땜에... 요거는 Listener 에서 Ctrl + N 해도 열리고 Listener 에서 Open Editor Window 해도 열립니다. 그리고 이 Editor Window 에서 F1 키를 누르면 도움말이 열립니다. 자주 쓸 것이므로 이것은 중요 체크포인트 2023. 7. 7.
MaxScript Listener Maxscript Listener 는 대화형 인터프리터 (interpreter) 입니다 . 인터프리터가 뭐냐고요? 코드를 한 줄씩 실행하는 방식입니다. 컴파일러와 다른데, 쉽게 말해서 컴파일러는 코드를 한 번에 다 컴파일해서 실행하는 방식이라면, 인터프리터는 한 줄씩 실행하는 방식이라 느립니다. 그렇지만 인터프리터는 한 줄씩 컴파일하는 덕분에 만들면서 수정이 쉽습니다. 마치 레고와 같이 일부분만 수정해서 실행하기 편하다는 뜻이죠 . 보통 파이썬이라던가 쉽다는 프로그램들은 다 이런걸 사용하더라는... Maxscript Listener 옛날엔 여기서 맥스 스크립트를 작성해야 하는줄 알았지만 -_- 사실 이건 터미널에 가깝습니다. 터미널이 뭔지 모르시는 아티스트분들도 많다보니 설명을 해보자면 ... 많이 거친.. 2023. 7. 6.
Max Script 공부를 .. 하다가 안쓰니까 잊어버리고 하다가 안쓰니까 또 잊어버리고 그래서 이번에 또 합니다 ㅋㅋㅋㅋ 또 잊겠지? 그럼 또 하면 되지.. 책은 이 책이 있습니다. 지금은 절판되어서 구하지도 못할.. 하지만 저는 가지고 있습죠. 여러분 전문서적은 특히 언제 절판될지 모릅니다. 살 수 있을때 쟁여놔야 해요!! 2023. 7. 6.
Material Attribute 가 무엇일까? 문브러쉬님의 유투브를 보닥 임포스터 베이커에서 Make Material Attributes 노드에 연결하는것을 보았다. 일단 여기선 임포스터에 제 색감으로 베이킹 되도록하는데 쓰여진 것으로 보이는데, 음.. 그냥 보기에는 메터리얼의 최종값을 임포스터 베이킹 입력에 넣는 구조체 모양으로 보였다, https://docs.unrealengine.com/4.27/ko/RenderingAndGraphics/Materials/ExpressionReference/MaterialAttributes/ Material Attributes 표현식 여러가지 머티리얼 특성, 특히 레이어드 머티리얼 제작시 유용한 특성을 나누고 합치는 수단이 되는 표현식 노드입니다. docs.unrealengine.com 메뉴얼에 따르면 Make.. 2023. 6. 25.
반응형