maya particle로 vapor trail 작업 하던 중 곡선이 표현되어야 하는데 각이 지는 문제가 발생!
animation이 매 1 frame 마다 key가 잡혀 있을 때 이런 문제가 발생 한 듯 하다. motionTrail node로 by 0.1 frame으로 확인하니 그나마 보간되어 부드러운 곡선으로 보이긴 하더라.
그런데! playback을 by 0.1 frame 으로 하다보니 particle이 정수 frame에서만 emit 되는 것이다.
다시 playback을 1.0으로 바꾸면
이렇게 각이 져 particle이 emit 된다.
처음에는 maya particle system 자체가 정수 단위로만 emit 되는 줄 알았다. 근데 분명 emit에서는 per sec로 rate가 조절되는게 좀 의아하긴 했다. 그러다가 발견한 dynGlobal node.
보통 cache 연결 할때만 보던거라 생각도 못했었는데 oversampling이라는 옵션이 있더라. 혹시나하고 10으로 설정하고 재생했더니 문제 해결 OTL
너무 어이 없었음... 아직 모르는 node가 너무 많아....쩝 어쨌거나 문제 해결 ;ㅅ;
p.s.
우측 상단에 각 진 부분은 translate와 rotation 값이 1 frame 마다 key 잡힌 상태가 꺽인 부분이 있길래 수정하였음.
Sunday, July 12, 2009
Thursday, July 9, 2009
Sunday, July 5, 2009
Exporting 3ds Max camera to Maya
max에 익숙하지 않은 관계로 당분간 작업은 maya에서 할 생각으로 fbx로 데이터 공유 테스트를 하던 중 camera가 다르게 export 되는 것을 발견. fbx 버전, max 버전을 바꿔봤지만 결과는 마찬가지...
구글링 해보니 camera export script가 있길래 테스트 해봤더니
오오옷!! 제대로 넘어온다. +_+
script에 수식이 포함된걸로 봐선 data가 그대로 export가 되는건 아닌가보다. 나중에 시간날때 잘근잘근 씹어봐야할듯.
max, maya, lw에서 import, export를 지원.
http://www.scriptspot.com/3ds-max/camera-io
구글링 해보니 camera export script가 있길래 테스트 해봤더니
오오옷!! 제대로 넘어온다. +_+
script에 수식이 포함된걸로 봐선 data가 그대로 export가 되는건 아닌가보다. 나중에 시간날때 잘근잘근 씹어봐야할듯.
max, maya, lw에서 import, export를 지원.
http://www.scriptspot.com/3ds-max/camera-io
Python API on Windows 64 bit
RPS 14.0 이상부터 python API를 제공한다.
python 2.5를 설치하고 환경변수에 다음을 추가한다.
PYTHONPATH = %PYTHONPATH%;%RMANTREE%/bin(unix의 경우 % 대신 $)
python 실행 후
import prman
* 64bit os의 경우 import 과정에서 ctypes error가 발생 할 수 있다. 이경우 64bit python을 설치하고 아래의 파일을 다운받아 설치한다.
http://sourceforge.net/projects/ctypes/files/ctypes-win64/ctypes-1.0.2.win32-py2.5-AMD64.msi
python 2.5를 설치하고 환경변수에 다음을 추가한다.
PYTHONPATH = %PYTHONPATH%;%RMANTREE%/bin(unix의 경우 % 대신 $)
python 실행 후
import prman
* 64bit os의 경우 import 과정에서 ctypes error가 발생 할 수 있다. 이경우 64bit python을 설치하고 아래의 파일을 다운받아 설치한다.
http://sourceforge.net/projects/ctypes/files/ctypes-win64/ctypes-1.0.2.win32-py2.5-AMD64.msi
Saturday, July 4, 2009
a error in Korean Windows
영어가 아닌 한국어OS에서 render시 ascii code로 인한 문제가 발생할 수 있는듯 하다.
굳이 한국어OS가 아니더라도 2 bytes character 언어권 OS라면 같은 문제가 발생 할 듯...
renderer는 아래와 같은 error를 뱉어내며 rendering 하지 않는다.
P79001 {ERROR} Lexical syntax error on token " dspyRender -ren" (at line 40 in renderman\untitled\rib\0001\perspShape_Final.0001.rib).
P01001 {ERROR} Unregistered request: "\377\377\377" (at line 40 in renderman\untitled\rib\0001\perspShape_Final.0001.rib)
P01001 {ERROR} Unregistered request: ":01:43" (at line 40 in renderman\untitled\rib\0001\perspShape_Final.0001.rib)
P01001 {ERROR} Unregistered request: "\377\377\377\377\377\377\377\377\377\377\377\377" (at line 40 in renderman\untitled\rib\0001\perspShape_Final.0001.rib)
P01001 {ERROR} Unregistered request: "\377\377\377\377\377\377\377\377\377" (at line 40 in renderman\untitled\rib\0001\perspShape_Final.0001.rib)
P01001 {ERROR} Unregistered request: ")\" (at line 40 in renderman\untitled\rib\0001\perspShape_Final.0001.rib)
%RMSTREE%/etc/RenderMan_for_Maya_Pro.ini에서 아래 부분은 수정해준다.
SetPref ItNotesScript { rmanItNotesScript }
To
SetPref ItNotesScript {}
* rmanItNotesScript.mel은 %RMSTREE%/scripts에서 있음.
rmanItNotesScript의 역할은 rib 파일의 Display 구문에 rendering이 시작되는 시점의 time(rmanGetTime command)을 추가 한다. 예를들어 render time이 포함되지 않은 Display 구문의 경우
Display "renderman/untitled/images/untitled.001.tif" "it" "rgba" "string filter" ["separable-catmull-rom"] "float[2] filterwidth" [2 2] "int[4] quantize" [0 255 0 255] "float dither" [0.5] "float[2] exposure" [1 1] "int merge" [0] "string dspyParams" [""] "string connectionType" ["internal"]
로 나타나지만 render time이 포함된다면
Display "renderman/untitled/images/untitled.001.tif" "it" "rgba" "string filter" ["separable-catmull-rom"] "float[2] filterwidth" [2 2] "int[4] quantize" [0 255 0 255] "float dither" [0.5] "float[2] exposure" [1 1] "int merge" [0] "string dspyParams" [" dspyRender -renderer preview -time 1 -crop 0 1 0 1 -port 49995 -context \"renderman/untitled/images/untitled.001.tif\" -notes \"(Sat Jul 04 \377\377\377\377 9:21:25 \377\377\377\377\377\377\377\377\377\377\377\377 \377\377\377\377\377\377\377\377\377 2009)\""] "string connectionType" ["internal"]
이렇게 된다. 이런 상태에서 renderer는 Lexical syntax error를 뱉어내며 rendering하지 못한다.
- MTOR에서는 아무 문제 없음 -
굳이 한국어OS가 아니더라도 2 bytes character 언어권 OS라면 같은 문제가 발생 할 듯...
renderer는 아래와 같은 error를 뱉어내며 rendering 하지 않는다.
P79001 {ERROR} Lexical syntax error on token " dspyRender -ren" (at line 40 in renderman\untitled\rib\0001\perspShape_Final.0001.rib).
P01001 {ERROR} Unregistered request: "\377\377\377" (at line 40 in renderman\untitled\rib\0001\perspShape_Final.0001.rib)
P01001 {ERROR} Unregistered request: ":01:43" (at line 40 in renderman\untitled\rib\0001\perspShape_Final.0001.rib)
P01001 {ERROR} Unregistered request: "\377\377\377\377\377\377\377\377\377\377\377\377" (at line 40 in renderman\untitled\rib\0001\perspShape_Final.0001.rib)
P01001 {ERROR} Unregistered request: "\377\377\377\377\377\377\377\377\377" (at line 40 in renderman\untitled\rib\0001\perspShape_Final.0001.rib)
P01001 {ERROR} Unregistered request: ")\" (at line 40 in renderman\untitled\rib\0001\perspShape_Final.0001.rib)
%RMSTREE%/etc/RenderMan_for_Maya_Pro.ini에서 아래 부분은 수정해준다.
SetPref ItNotesScript { rmanItNotesScript }
To
SetPref ItNotesScript {}
* rmanItNotesScript.mel은 %RMSTREE%/scripts에서 있음.
rmanItNotesScript의 역할은 rib 파일의 Display 구문에 rendering이 시작되는 시점의 time(rmanGetTime command)을 추가 한다. 예를들어 render time이 포함되지 않은 Display 구문의 경우
Display "renderman/untitled/images/untitled.001.tif" "it" "rgba" "string filter" ["separable-catmull-rom"] "float[2] filterwidth" [2 2] "int[4] quantize" [0 255 0 255] "float dither" [0.5] "float[2] exposure" [1 1] "int merge" [0] "string dspyParams" [""] "string connectionType" ["internal"]
로 나타나지만 render time이 포함된다면
Display "renderman/untitled/images/untitled.001.tif" "it" "rgba" "string filter" ["separable-catmull-rom"] "float[2] filterwidth" [2 2] "int[4] quantize" [0 255 0 255] "float dither" [0.5] "float[2] exposure" [1 1] "int merge" [0] "string dspyParams" [" dspyRender -renderer preview -time 1 -crop 0 1 0 1 -port 49995 -context \"renderman/untitled/images/untitled.001.tif\" -notes \"(Sat Jul 04 \377\377\377\377 9:21:25 \377\377\377\377\377\377\377\377\377\377\377\377 \377\377\377\377\377\377\377\377\377 2009)\""] "string connectionType" ["internal"]
이렇게 된다. 이런 상태에서 renderer는 Lexical syntax error를 뱉어내며 rendering하지 못한다.
- MTOR에서는 아무 문제 없음 -
a problem of internal render's license
embedded renderer에 대한 license가 없는 상태에서 maya에서 render하면 아래와 같은 license error이 발생한다.
// rfm Error: Couldn't check out internal rendering license for 1 threads.
해결 방법은
1. license를 구입;;;
2. RPS가 설치되어 있는 경우 prman.exe을 external renderer로 사용하는 것이다. 다음은 설정 방법
- MAYA > Render > Render Current Frame (option) > Preview Style를 External Render to it로 설정
- external render로 설정하면 RMS는 netrender.exe를 사용하게 되는데 이것을 local prman으로 변경
%RMSTREE%/etc/RenderMan_for_Maya_Pro.ini에서 다음의 부분을 수정한다.
SetPref PreviewRenderCmd {netrender -Progress -f %H}
SetPref PreviewRenderSvc pixarNrm
To
SetPref PreviewRenderCmd {prman -t:0 -Progress}
SetPref PreviewRenderSvc local:pixarRender
// rfm Error: Couldn't check out internal rendering license for 1 threads.
해결 방법은
1. license를 구입;;;
2. RPS가 설치되어 있는 경우 prman.exe을 external renderer로 사용하는 것이다. 다음은 설정 방법
- MAYA > Render > Render Current Frame (option) > Preview Style를 External Render to it로 설정
- external render로 설정하면 RMS는 netrender.exe를 사용하게 되는데 이것을 local prman으로 변경
%RMSTREE%/etc/RenderMan_for_Maya_Pro.ini에서 다음의 부분을 수정한다.
SetPref PreviewRenderCmd {netrender -Progress -f %H}
SetPref PreviewRenderSvc pixarNrm
To
SetPref PreviewRenderCmd {prman -t:0 -Progress}
SetPref PreviewRenderSvc local:pixarRender
Subscribe to:
Posts (Atom)