2013年7月21日 星期日

TP clips (20130722)


TP clips




easy TP setup
AfterBurn for particle render.

Light with project map.
read Light data and put into particle color data channel .



------------------------------------------------------------------

2013年6月2日 星期日

Compo Memo (20130603)

Lens Flare & Ghosting

首先要了解Lens Flare與Ghosting的原理,否則怎麼加上這layer你都會感覺到不自然或不美觀;
通常在CG製作上,會為了添加氣份而使用這樣的一個效果

極めて明るい光源がレンズに向けて当てられている時や、画角内に極めて明るい光源が存在する場合に生じる、暗部への光の漏れである。"

當極其明亮的光源照向鏡頭或在鏡頭框內存在極為明亮光源時,對暗部產生的漏光所造成的效果。
也就是說鏡頭移動與角度影響flare與ghosting。



目前的作法是在maya scene中對cam, 與光源設定locator(記得命名null),分別單獨儲存maya ascii格式
並在affter effect中import進去,將optical flare設定為3d layer。
#AE對locator的辨識名稱為Null
如此鏡頭會按照3d移動模式位移,locator位置放上光源,flare移動就可以更自然;
但是要注意AE的3d scale與maya systemScale有異,前輩告訴我應該是100倍左右;
有時更必須要將該layer做適當的scale, 或是必須在locator位置上cheat. 
anyway , 目前只能try and error, 但如果抓的好,效果很好。

電影可以參考 JJ Abraham的所有電影;
PV, MV那些刻意營造出來的不清楚,還要在摸索;

--------------------------------------------------------------------------------------------



2013年5月20日 星期一

TP memo (20130719)

## 
3ds Max stores time internally in integer units called Ticks.
One second always contains 4800 ticks, thus one Tick is defined as a 1/4800 th of a second.
4800 ticks per second / 24 frames per second (Movies) = 200 ticks per frame
4800 ticks per second / 25 frames per second (PAL TV) = 192 ticks per frame
4800 ticks per second / 30 frames per second (NTSC TV) = 160 ticks per frame

----------------------------------------
20130719

Joe Scarr提到一點值得去注意。
設計TP system時,盡量不要在operator上去做value animation,
這樣會讓系統變得更為複雜;
雖然麻煩,但在中間穿插helper的方式可以一目瞭然,並且好調整。


------------------------------------------ 


20130718

PPass, distance
vector運算模式為p2 -> p1的vector ,非p1 -> p2


-----------------------

20130520

Object properties 'renderable' tag

if you concern putting object into TP system, you have to very careful not to turn them unrenderable in object properties. Or, it wont work in system.

group

通常,group 中的 rollout 會保持預設 global ;
代表整個system顯示設定由Master Dynamic node控制。
若需要獨立某group的顯示方式,那麼將該group顯示設定改為非global即可。






2013年4月23日 星期二

UDK memo (20130425更新)




UDK , unreal developer kit .

近期因為準備遊戲公司案子的關係開始摸索UDK的FX system ,
這個engine真的很屌阿, 操作跟玩遊戲相差無幾而且很直覺,
preset也夠用,很多內建功能非常完善。

20130424

開始研究 particle system
與maya sprite particle 類似的觀念,對sprite貼上texture跟material

--------------------------------------------------------------
20130425



這是material editor
Node base, 基本概念與Nuke, TP , Krakatoa magmaflow類似
應該說Node base的概念大同小異,差異在於Node的種類。

ps: 操作方式有點麻煩, 不能像Nuke左鍵點選移動

常用的

  1. 移動 : ctrl+左鍵
  2. 圈選 ctrl + alt + 左鍵
  3. 新增類似Nuke BackDrop node: shift + alt + c + 左鍵

如何結合兩組particle system ?
A: 在content browser中點選目標system,再開啟要export的system的 cascade window , 
    在emitter處右鍵->emitter->export all emitter
    再回到目標system , 打開該cascade就可以看到那些export的emitter


明天準備開始結合3ds max , FumeFx 去作各類型的Dynamics. (To be continued. )

--------------------------------------------

20130426

今天研究將FumeFX算出的連續圖檔在Nuke,AE處理後,拿到PhotoShop CS6匯出tga檔

*photoshop似乎無法辨識OPENexr檔


  • FumFx做出簡易的smoke,
    我的做法是: Cam移到Top, resolution 為 256x256 , 算出平面正方的圖檔
  • 到Nuke將之分為RGB, alpha兩種算出tga
  • 使用photoshop將連續圖檔匯進



-----------------------

20130731

使用particle system有一點要注意就是實機測試是否能夠順暢,
目前就遇到用wiiU的測試發現每個system rate超過20就會有延遲的情況。
當然作業流程與模式也必須去應對。

UDK有些設定會影響作業順暢度,有時不夠直覺。






© 2013 Niko Pan 


2013年4月11日 星期四

RnD Area

Case study

Wind , Gravity Vector, and Src Directional velocity test.




 Mutiscattering : None
waveletTurbulence: Enable



------------------------------------------------------------------





FFX_RageFire

LowRes ver. 
create with 3dsMax , FumeFX(obj Src) , PFlow



Mutiscattering : None
waveletTurbulence: None

ps: PFlow follow FFX velocity, mess around with Force. 

--------------------------------------------------------------------------






FFX_TemptureTrigger

LowRes ver. 
create with 3dsMax , FumeFX (Simple Src)

Mutiscattering : None
waveletTurbulence: None



---------------------------------------------------------------------------------





FlameThrower

LowRes ver. 
create with 3dsMax , FumeFX (particle Src)

Mutiscattering : ON
waveletTurbulence: ON



---------------------------------------------------------------------------




Cloud RnD

LowRes ver. 
create with 3dsMax , FumeFX (Obj Src)

Mutiscattering : ON
waveletTurbulence: ON


© 2013 Niko Pan 

2013年4月8日 星期一

Deep Image Composite

Deep Composite






由WETA提出的構想,並運用在avatar電影後製合成上;
將多重的資訊儲存於每一pixel中,藉以將不同element在合成軟體上作更正確合理的結合
已是目前合成主要方法之一


主要的Deep Image 格式


OpenEXR(ILM已釋出openEXR2.0的source code, exr將可以帶有deep data )

DTEX (Renderman's Deep Shadow) 也是NUKE deepRead 可辨識的格式
RAT (Houdini's Deep Shadow or Camera Map)

目前NUKE7.0開始加強對alembic, deep data的支援,
再加上openEXR2.0的釋出,這個合成方式將會更有效率。



探討原因:


fluid挖matte的流程最花時間,
而displacement跟hair也是目前為止較大的問題,
特別是在animation與model會經常性更改時會嚴重拖累後製的完成度。

預設目標

透過幾種方式找出能否在合成的過程上解決挖matte的問題
若能使用類似alembic等快速轉檔的point cache格式將物件拉到NUKE 3D
並使用類似deep holdout node作出的matteOut image當做挖過matte的images

倘若成功

1. fluid將不需挖matte ,算圖時間加速
2. 模型轉換alembic既快又好用,也能將schedule往前推
3. 減輕修改產生的時間壓力
4. 可以更精準的挖matte

注意點

1. 資訊量增加意即檔案大小增加,對於合成也會是負擔
2. openEXR2.0 僅釋出source code, 但要真正納入軟體實用還要一點時間


參考影片與資料

最終目標

https://vimeo.com/61607943

介紹

http://www.deepimg.com/in-depth/

http://www.youtube.com/watch?v=59fnQW_KUOU

http://www.youtube.com/watch?feature=endscreen&v=hoKAm81k3-E&NR=1


deep image 應用實例

WETA digital , rise of the planet of the ape

http://www.youtube.com/watch?v=19w3vkFp5X0


Alembic image motionblur (限NUKE7以上版本)說明

http://www.cgsociety.org/index.php/CGSFeatures/FeaturePrintable/alembic_in_nuke_



memo:
a. full CG的情況下cam無須輸出fbx,因為render Img已經使用render cam了

b.
在沒有deep data的情況下,
deep image composite基本上回歸到card概念只是在NUKE中可以使用deepToPoints
使用depth模擬可視3d point cloud,雖然對於fluid來說邊緣會非常明顯且醜,
但如果使用noise等card作業模式還是能展現更多優勢,
特別是deepHoldOut可以作類似挖matte的功能,也就省略不少步驟
deepMerge可以針對多重layer作merge

實例
https://vimeo.com/27043722


20130415
暫時總結

vRay team有提供暫時用的plugins, 可以轉出vray專屬格式並含有deep data;
也提供了Nuke deep read node讀取該格式的功能;
測試以後的結果

1. Geometry deep data可以使用
2. fluid類型的data目前有bug , 因為Fume目前無法使用該格式,所以只能用提供的範例來測試
   為pheonixFD的單一frame檔,基本上就有2xxMB,
   Nuke中讀取要花10秒,而且接其他node會當掉(這個是plugin讀取格式的問題);
   不敢想像如果10frame甚至100 frame的檔案會多重,
   這會是個隱憂

3. 本次測試目的本來就是希望能將fluid算出deepdata後不挖matte,靠deep composite去解決此問題,但是目前除了Houdini的raw檔、Renderman以外手頭的各renderer暫時沒有支援,
無法整合進pipeline,所以RnD計畫暫時打住。



--------------------------------2013.04.09 --------------------------------
© 2013 Niko Pan 

2012年5月4日 星期五

FumeFX memo (20130822)



2013 0822

i knew it , that shitty re-timing bug!always ruined my work, but i need that still ;sss

Michael Stark
"I found that when re-timing Fume sims, the lowest I could go before having the popping was 30%(.3). I mean exactly at .29 they showed up."

Matt Radford 
"yeah any re-timing with geometry is going to have those annoying artifacts too. I suppose i shouldn't complain, atleast we CAN re-time."

2013 0708

最近在嘗試影片0:57雲被劃開效果




我嘗試了wind , temperature , object碰撞的方法

wind, 太暴力又難看且失敗機率大
temp , 的方向設定又要多一個程序,懶了。
obj, multi vel設定稍微高一些可以弄的不錯的效果,如果搭配一些temp會更棒。
但要小心obj碰撞時的形狀會太規則,我有嘗試上一個noise node在obj上去作改善。


2013 0702

Gravity vector與force wind的使用

我認為FFX對於有方向性的流體製作上有很大進步空間;
這方面可能也是因為內建的Force與maya相比尚不完整的關係。
為了要彌補這樣的現象,gravity vector可以起非常大的作用。

gravity vector可以改變重力方向,想像世界的重力改變後,物理現象也隨之有了指向性的改變。
而FFX gravity的數字可以當成是一個加乘性的數字,1為預設。

force wind與前者不同在於,它是給外力而非改變物理現象
因此它會是在流體產生後(或者反應)給予外力影響運動方向。

理解兩者之間的差異後,運用將可以更多元。


2013 0521

vray GI (全局照明)
FFX 3.0之後有支援vray GI的設定,
ren tab的smoke有"vray GI multiply"的值,
但fumefx的document說明此數值僅對fire有影響

上網問的結果

I haven't researched this in-depth however I believe that is currently only available in some form with Final Render.  - Brian DeMetz


尚待求證。

2013 0520

smoke bouyonce的功用
預設 -1 , 
如果想作0度以下的煙,會將溫度設負數
而bouoyonce調更低,如-50 , 可以更有效的看到煙的運動
不建議控制gravity, 除非你有一定的理解並可以預測大概的情形。 

控制煙的運動有許多方式,越合物理原則的越有效
控制溫度、上升速度、重力等(grabity_vector控制重力方向)
至於用風力等外力去塑造煙的外形老實說不盡理想、
將外力當作是"催化劑的存在"、會比較好去思考作法。


2013 0425


關於合成,
我一直很好奇火的光源glow如何隨著火的擺動而互動;
目前簡單的方式就是對火的素材上數值高的blur node,
這樣就會像 RnD Area 中的RageFire一樣做出類似的BG glow, 而且與火的擺動契合。
非常簡易。


2012 0530
之前看教學以及最近看了一些fxGuide的資訊
發現有些公司開始會用ffx的pp抓出需要的資訊(smoke,velocity..)轉成post cache,這樣cache的容量會大幅降低。

因為wavelet的部份pp也是可以吃的,代表cache真的會小超多,整理檔案也會更快速。

只是不知道穩不穩定...
昨日測試post process的東西就是出現錯誤..I/O error, 或是cache完的東西是壞的。
根據cg talk那些討論區中有一位在作alice in wonderland的vfx user的說法

"看來pp的使用是有一些底限的,例如他retime調到0.25以下會出現問題;但是看來有些朋友ˋ得數值是更高一些,也不要忘了那些pp cache的命名不能隨意更改...."


我自己的猜測可能是grid, 很高的可能性是跟sim的資料量與讀取有關。




2012 0504
之前做fog都用plane上noise加風力,一直覺得要跑一堆frame才能達到效果
這次嘗試用teapot之類不規則形體上noise,timescale調高(container大概都100x100x100上下 spacing開到2~300M 左右效果就蠻好的)
加上風力(推力+亂流) 煙本身的turbulence開低 
效果不錯 還在研究buoyancy的影響 (感覺smoke跟temprature都調0也不錯)

PS: buoyancy調0的好處是
我之前會希望他能夠不要飄太高,所以調整gravity
但是效果有限,現在把buoyancy調0以後比較不會亂飄

=================================================================
2012 0503
postprocessing 
有點不穩定,常常步驟一亂就怪怪的
特別是post 抓了cache以後最好路徑不要改..

minimize grid 與 retime之間好像沒有關聯
但是可以將cache的容量縮小。

retime
可以先在time scale=1的情況下抓整個timeslide
之後再設定想要retime的frame段抓retime cache
這麼做只是因為將cache type改為post之後可以preview整個timeslide,方便檢視retime效果。

adjust playback range
打勾以後系統會自動將playback範圍根據retime資訊調整,沒有勾他好像只會播放預設的playback範圍

至少我自己設定的時候是這樣啦~
最後感謝allan Mckay...


(all copyright by Nickel Pan)