Simulate น้ำผีสิง !!

Sunday, September 20, 2009 ที่ 10:54 AM

พอดีรับ job งานราชด่วนอันนึง ลูกค้าอยากได้ น้ำที่ลอยขึ้นจากผิวน้ำขึ้นไป แล้วก็ตกลงมาแล้วก็ลอยขึ้นไปอีก ( น้ำผีสิงแหง๋ ) แล้วก็ลูกค้าเอา The Ring2 มาให้ผมดู เป็นตอนที่ลูกนางเอกอยู่ในอ่างอาบน้ำแล้วน้ำก็ลอยขึ้นแบบนี้ประมาณนั้นแต่ไม่ขนาดนั้น ( อ่าว แล้วมันยังไงแน่ :D ) อะไรประมาณนี้ เป็น wide กับ medium shot สอง shots จริงๆมันมี Storyboard ด้วยซึ่งค่อนข้างเคลื่อนไหวซับซ้อนพอดูเลยทีเดียว ก็ว่ากันไป


ในที่นี้ผมใช้ Houdini Master ในการ Simulate พฤติกรรมน้ำผีสิงตามแบบที่ลูกค้าอยากได้น่ะครับ

ที่ใช้ก็มี POPs (Particle Operators), CHOPs (Channel Operators) ส่วน SHOPs (Shading Operators) บน Mantra ซึ่งผมไม่ได้ทำให้ดูใน VDO

แต่ยังไงซะ ก็เลยจะเอามาแชร์กันลืมเพื่อการเรียนรู้น่ะครับ ก็ตาม VDO นี้นะครับ



ต่อมาก็ลองปรับค่าให้ emit ออกมาจาก vertex แบบ forever เลย ก็ได้คล้ายควันบุหรี่ที่จุดแล้วในห้องที่ไม่มีลม แต่อาจจะต้อง tweak ตรงต้นๆกลางๆกับหางๆควันให้กระจายออกนิดหน่อยถ้าจะเอาไปใช้จริง


แล้วก็ลองทำ Tornado แบบที่เขาฮิตๆทำกัน ก็ทำแบบง่ายๆไม่ได้ปรับแต่งอะไร ก็ให้มันวิ่งร่วงมาตาม metaball ที่ reference เอาไว้


ก็สนุกดีครับ คือมันก็ไปได้เรื่อยๆของมันน่ะครับ ถ้าเข้าใจ Black box ( หรือที่เราเรียกว่า node ) แบบนี้อยู่แล้ว กับ Side Effects Houdini

การใช้ Open EXR กับ The Foundry Nuke

Sunday, September 13, 2009 ที่ 6:11 AM

แต่นี้ต่อไปผมว่า 3D ทั้งหลาย ส่ง render มาให้ 2D เป็น .exr ดีที่สุดครับ เพราะมันสามารถ

เก็บ channels ต่างๆได้มากมายใน 1 ไฟล์


มันทำให้การจัดการง่ายเข้าไปอีกไม่เหมือนแต่ก่อนที่ใช้สัก 10 pass ก็ต้องมี 10 file แยกแน่ๆ

แต่ Open EXR เก็บได้หมดอย่างที่กล่าวมา


โปรแกรม 3D ทั้งหลายเดี๋ยวนี้ Render ออกมาเป็น .exr ได้หมดแล้ว ดังนั้นมาใช้ exr กันเถอะ



Free Image Hosting At site

จากภาพนี่ผมใช้ Maya กับ RenderMan Studio นะครับ ก็อยากได้ channel อะไรก็ใส่เข้าไป


Free Image Hosting At site

Render ออกมาก็ได้เป็น file.exr ที่มี channel ที่เราต้องใช้งานอยู่ในนั้นหมด


Free Image Hosting At site

เอาเข้า Nuke ลอง Drop down ดูก็จะเห็นว่ามี Pass channels อะไรบ้างที่เราทำเอาไว้


Free Image Hosting At site

ก็ Comp ไปตามปกติ โดยใช้ node Shuffle ช่วยแยก channels นั้นๆออกมา


สรุป exr เป็นอะไรที่ควรใช้มากๆสะดวกดีมีทุกสิ่ง [multi-channels] ในตัวมัน

การลบอะไรก็แล้วแต่ที่เคลื่อนไหวเข้า frame

Thursday, September 10, 2009 ที่ 4:32 AM
Nuke จะมี Plugins จากค่ายเดียวกันที่ทำหน้าทีลบสิ่งเคลื่อนไหว ไม่ว่าจะ คน สัตว์ สิ่งของ ถ้าเคลื่อนไหวแล้วอยากจะลบเนื่องด้วยอะไรก็แล้วแต่ ก็สามารถทำได้

ผมจะยกตัวอย่างง่ายๆที่ใช้ F-RigRemoval แล้วก็จะใช้ร่วมกับ Pre-Comp ที่เพื่งจะมีในเวอร์ชั่นนี้
ส่วนตัวเคยใช้ F-RigRemoval มาแล้วบน Shake ค่อนข้างกินพลังเครื่องเลย ถ้ามี Pre-Comp ช่วยจะได้ทำให้ไวขึ้นได้บ้าง

ในการใช้งานส่วนตัว เวลาถ่ายทำบางทีจะมีพวก รถ รถจักยาน หรืออะไรก็แล้วแต่ที่เราไม่ต้องการเข้ามาอยู่ใน frame ตลอด ซึ่งบางที่เป็นการวางกล้องไว้ถ่าย เขาก็จะเข้ามาใน frame โดยที่ไม่รู้ตัว กรณีแบบนี้ถ้าลบได้ผมจะลบหมดเพื่อไม่ให้มีปัญหาภายหลัง ยิ่งเห็นกล้องยิ่งมองกล้องนี่ยิ่งต้องลบ

ดู VDO ลบแบบง่ายๆ



ตาม Footage นี้เราอาจใช้วิธี Track Perspective แล้วก็ Paint เอาก็ได้ แต่จะช้าได้
แต่อย่างว่าครับ Plugins ราคาแพงก็ทำให้เราประหยัดเวลาตรงนี้ไปได้มากเพื่อจะได้
ไปทำ Shot อื่นๆต่อ

เรียก Nuke ผ่าน Terminal

Wednesday, September 9, 2009 ที่ 12:17 PM
ก็ง่ายๆเลยครับ เรียก terminal ออกมาแล้วก็พิมพ์

yourmachine$ alias nuke='/Applications/Nuke5.2v1/Nuke5.2v1.app/Nuke5.2v1'

VDO ประกอบ


ในแบบ bash shell ก็จะเป็นแบบนี้ครับถ้าเราลองพิมพ์
nuke -help
จะมีอะไรให้เล่นอีกเยอะเลยครับ ซึ่งค่อนข้างสะดวกเวลาสั่ง Render โดยที่ไม่ต้องไปเปิด Nuke ให้เสียเวลา

Pre-multiply ก่อน import แบบ after effects บน Nuke

Saturday, September 5, 2009 ที่ 11:30 AM
บางทีเราอาจจะได้รับ Sequence ที่ Pre-multiply มาแล้วเป็นสีต่างๆที่ไม่ใช่สีดำ
บน After Effects ตอน import เราสามารถเลือก Pre-multiply ได้ เพื่อไม่ให้เกิดปัญหาตรงขอบเวลา Comp ซึ่งโดยปกติแล้วพวก 3D artist ทั้งหลายควรที่จะส่งงานมาให้ 2D ทำควรที่จะ Pre-multiply background ดำมาให้มากกว่าสีอื่นเพราะเวลา comp มันจะเกิดปัญหาตรงขอบๆมาให้ต้องตามแก้

บน Nuke บางทีเรา Premult node ไปแล้วดูเหมือนจะออก แต่ก็ยังไม่ออกยิ่งดูใกล้ๆก็จะเห็นชัดเจน
ทีนี้เลยทำ Gizmo ขึ้นมาเลียนแบบเวลา import ของ After Effects ที่จะสามารถ Pre-multiply ก่อนนำเข้า bin ได้ มาดู VDO กันก่อนว่าผลที่ได้เป็นยังไง


โค๊ดที่ใช้ก็จะเป็น

#! /Applications/Nuke5.2v1/Nuke5.2v1.app/Contents/MacOS/Nuke5.2v1 -nx
version 5.2100
Gizmo {
addUserKnob {20 User l Input}
addUserKnob {26 "" +STARTLINE}
addUserKnob {41 color l "color for premult to" T BG_COLOR.color}
addUserKnob {41 format l "format input" T Reformat1.format}
addUserKnob {26 "" +STARTLINE}
addUserKnob {26 _ l "preMultBG Version 1.0"}
addUserKnob {26 __ l "Gizmo by artslan"}
}
Input {
inputs 0
name Input1
xpos -251
ypos -230
}
Dot {
name Dot1
xpos -251
ypos -190
}
set N1bead330 [stack 0]
push $N1bead330
push $N1bead330
Invert {
channels rgba
name Invert1
xpos -369
ypos -193
}
Constant {
inputs 0
channels rgb
format "640 480 0 0 640 480 1 PC_Video"
name BG_COLOR
xpos -491
ypos -294
}
Reformat {
format "640 480 0 0 640 480 1 PC_Video"
name Reformat1
xpos -491
ypos -222
}
Copy {
inputs 2
from0 rgba.alpha
to0 rgba.alpha
name Copy1
xpos -491
ypos -198
}
Premult {
name Premult2
xpos -491
ypos -119
}
Merge2 {
inputs 2
operation minus
name Merge1
xpos -285
ypos -119
}
Copy {
inputs 2
from0 rgba.alpha
to0 rgba.alpha
name Copy2
xpos -166
ypos -124
}
Output {
name Output1
xpos -166
ypos -24
}
end_group

ตามโค๊ดด้านบนก็คือการ pre-multiply สี input ต่างๆให้เป็นสีดำ จริงๆแล้วไม่ว่าจะเป็น Composite Software อ่ะไร ก็ใช้วิธีการ Pre-multiply แบบนี้ทั้งนั้นครับ

ก็ copy ไปใช้เลย Windows/Mac/Linux ก็ copy/paste ไปใช้ได้เลย หรือจะใส่ notepad หรือ textEdit แล้วก็เปลี่ยนนามสกุลเป็น preMultBG.gizmo แล้วก็เอาไปใส่ที่ folder plugins
เวลาเรียกใช้ก็ update all plugin แล้วก็ กด tab พิมพ์ preMultBG เรียกใช้ได้เลย

Nuke 5.2v1

Friday, September 4, 2009 ที่ 3:12 PM
ใช้งานมาเกือบๆ 7 วัน เวอร์ชั่นนี้ชอบหลายอย่างมากๆ
ที่ว่า อ่าน R3D ของ RED ได้เลยนี่ เรื่องหน้าจะได้ใช้ความสามารถตรงนี้ เพราะใช้ RED One ถ่าย

แต่ตอนนี้ที่ชอบจริงๆกลับเป็น Precomp แฮะ มันทำให้ Script ที่ใหญ่ๆเวลา Render รู็สึกได้ว่าเร็วเลยแจ่ม

Free Image Hosting At site

จากนั้นก็แก้ปรับ Path Env มาหาที่ๆเราเก็บพวก Gizmos ต่างๆที่ทำไว้ Path มาที่ Nuke5.2v1 เลย

Free Image Hosting At site

แล้วก็ทำงานๆๆๆๆ
    follow me on Twitter

    Thaiafterfx | Entries (RSS) | Comments (RSS) | Designed by MB Web Design | XML Coded By Cahayabiru.com | Distributed by Deluxe Templates | My Flickr Artslan Flickr