Comp Foundations
channel, alpha, premult, merge, grade และ node vs layer ใน mini compositor
- F1Channel และ alphaภาพหนึ่งภาพมี 4 ช่อง และ alpha คือ "พื้นที่ที่มีของ"
- F2Premult ซ้ำในสายจริงขอบดำเกิดจาก node ตัวเดียว หาให้เจอแล้วปิดมัน
- F3แสงต้องบวก: plus vs screenทำไม screen ทำให้ประกายไฟซีด
- F4Grade กับภาพ premultยก lift ทีเดียว ทั้งเฟรมสว่างตาม
- F5Layer vs Nodeช็อตเดียวกัน สองวิธีคิด: After Effects/Photoshop กับ Nuke/Fusion/Natron/Blender
- F6สนามเด็กเล่นต่อ node อะไรก็ได้ ลองทุกอย่างที่เรียนมา
Color
linear vs display, sRGB ≠ gamma 2.2, log, stops, gamut, view transform
- C1Linear กับค่าที่จอเห็นเทากลาง 18% ทำไมขึ้นจอเป็น 0.46
- C2sRGB ไม่ใช่ gamma 2.2สองเส้นใกล้กันมาก ยกเว้นในเงา
- C3Stop และ exposure+1 stop = แสงสองเท่า = คูณ 2
- C4Log: ทำไมฟุตเทจดูซีดเก็บหลาย stop ไว้ในช่วง 0–1
- C5Gamut: ตัวเลขเดียวกัน สีต่างกันsRGB, P3, Rec.2020, ACEScg บนแผนภาพเดียว
- C6View transform: แสดงผล ไม่ใช่แก้ภาพค่าเกิน 1 คือข้อมูลจริง แค่จอแสดงไม่ได้
- C7Saturation กับ lumaลดสีโดยความสว่างไม่เปลี่ยน
- C8White balance ด้วยการคูณสีplate อมฟ้า แก้ด้วยการคูณแต่ละช่อง
- C9ค่าติดลบมาจากไหนsharpen, despill และการลบภาพ (minus) ทำให้ติดลบได้
ระบบสีแบบ 3D
ลูกบาศก์ RGB, gamut แบบ 3 มิติ, ACES/OCIO, white point และ HDR vs SDR
- CS1ลูกบาศก์ RGB: ทุกพิกเซลคือหนึ่งจุดดู grade ขยับทั้งกลุ่มจุดใน 3D
- CS2Linear กับ sRGB ในลูกบาศก์พิกเซลเดียวกัน พิกัดต่างกัน ดูโทนมืดถูกยืด
- CS3Gamut เป็นปริมาตร ไม่ใช่สามเหลี่ยมsRGB, P3, Rec.2020, ACEScg ในพื้นที่ xyY
- CS4สายพานสี ACES/OCIOแปลงเข้า → ทำงานใน ACEScg → แปลงออก แล้วซ่อมขั้นที่พัง
- CS5White point และ chromatic adaptationทำให้การ์ดเทาเป็นกลางใต้ไฟ tungsten ด้วย Bradford
- CS6HDR กับ SDR: ค่า 62 ไปอยู่ไหนบนจอค่าแสงในฉากกับ nits ที่จอปล่อยออกมา
Camera & Lens Lab
เซนเซอร์กับเลนส์: FOV, perspective, DOF/bokeh (มีภาพ Blender จริง), distortion, motion blur
- L1Focal length กับเซนเซอร์35 มม. บน Super 35 ไม่เท่า 35 มม. บน full frame
- L2Perspective มาจากระยะ ไม่ใช่เลนส์ซูมแล้วถอยกล้อง ฉากหลังจะ "ใหญ่ขึ้น"
- L3ระยะชัดและ bokehวงเบลอโตแค่ไหน คำนวณได้
- L4Lens distortionเส้นตรงในโลกจริง โค้งใน plate
- L5Shutter angle กับ motion blurความยาวเบลอ = ความเร็ว × shutter
- L6Vignette: ขอบภาพมืดเลนส์จริงให้แสงที่มุมน้อยกว่ากลางภาพ
- L7LensDistort กับตารางเส้นตรงk1 กับ k2 ทำอะไรกับเส้น
ห้องทดลองกล้อง 3D
เล่นกล้องในฉาก 3D: ขนาดช็อต, มุมกล้อง, เลนส์กับระยะ, frustum, exposure, การเคลื่อนกล้อง, กฎ 180°
- CL1ขนาดภาพ: ECU ถึง EWSจับขนาดภาพให้ตรงเป้าหมาย ด้วยระยะกล้องและ focal
- CL2ความสูงกล้องและมุมกล้องlow, eye level, high, overhead: ตำแหน่งกล้องเปลี่ยนความรู้สึก
- CL3ขนาดเท่ากัน คนละเลนส์perspective มาจากระยะกล้อง ไม่ใช่จากตัวเลนส์
- CL4มุมมองพระเจ้า: ดูกล้องจากข้างนอกfrustum, เซนเซอร์, focal และ FOV ขยับไปพร้อมกัน
- CL5สามเหลี่ยมแสง: aperture, shutter, ISOทุกปุ่มพูดภาษาเดียวกันคือ stop และแต่ละปุ่มมีผลข้างเคียง
- CL6การเคลื่อนกล้องกับ parallaxpan, dolly, zoom, orbit, crane: แบบไหนมี parallax
- CL7กฎ 180°อยู่ฝั่งเดียวกันของเส้น ทิศบนจอจะไม่สลับ
Tracking และ matchmove
2D track, stabilise, planar, กล้อง 3D, lens distortion และการเช็ก matchmove
- TR1เลือกจุดสำหรับ trackจุดที่ดี กล่อง pattern กับ search และการอ่าน error curve
- TR2Stabilise กับ match-movetrack เดียวกัน ใช้ได้สองทิศ
- TR3Planar track: เปลี่ยนภาพบนจอพื้นผิวแบนตามได้ด้วย corner pin สี่มุม
- TR4Parallax กับการ solve กล้องความลึกมาจากการเห็นจุดเดียวกันจากสองตำแหน่ง
- TR5Lens distortion: undistort แล้ว redistort เฉพาะ CGแก้เลนส์ให้เส้นตรง แล้วส่ง CG ผ่านเลนส์เดียวกันกับ plate
- TR6อ่านค่า solve errorerror เป็นพิกเซลของ plate ดูตัวที่แย่ที่สุด ไม่ใช่แค่ค่าเฉลี่ย
- TR7เช็ก matchmove ว่าลื่นไหมวาง CG บนพื้น ใกล้และไกล แล้วเล่นทั้งช็อต
- TR8Object track กับ camera solveเอาโดรนออกจาก camera solve แล้วให้มันมี solve ของตัวเอง
Keying Lab
คีย์กรีนสกรีนในเบราว์เซอร์ ให้คะแนนเทียบ matte จริงจาก Blender: keyer, ขอบ/เส้นเล็ก, despill
Roto & Masks
shape, feather, Keymix, merge แบบ matte และ holdout
Transform & Filtering
ย้าย ย่อ หมุน, pivot, resample และ concatenation
Integration
ทำให้ CG กลืนกับ plate: ดำตามความลึก, หมอก, light wrap, grain, QC, ประกอบ AOV
- I1แมทช์ดำตามความลึกดำของไกลยกขึ้นและมีสีหมอก
- I2หมอกตามความลึกหมอกคือเลเยอร์สีที่ mask ด้วย depth ไม่ใช่การยกดำ
- I3Light wrapให้แสงพื้นหลังไหลเข้ามาที่ขอบ CG นิดเดียว
- I4Grain ครั้งเดียว ตอนท้ายแก้กราฟที่ใส่ grain ซ้ำทีละ element
- I5QC ด้วย viewergain ขึ้น gamma ขึ้น แล้วหาจุดผิด
- I6ประกอบ AOV กลับเป็น beautyในห้องนี้: diffuse + glossy + emission = beauty
CG multipass และ relight
light group, Cryptomatte, P และ N pass, depth defocus, motion vector, shadow/AO และ holdout บนหุ่นยนต์ CG ของเรา
- CG1Light groupsปรับไฟทีละดวงเป็น stop ให้ตรงกับแสงของ plate
- CG2แยกชิ้นด้วย Cryptomatteเลือก visor ให้ถูก layer แล้วเร่ง 1 stop โดยไม่แตะส่วนอื่น
- CG3Position matte จาก P passเลือกด้วยระยะจริงใน 3D ไม่ใช่ตำแหน่งบนจอ
- CG4Relight ด้วย normal passให้ประกายไฟส่องหุ่นยนต์ด้วย N·L, albedo และ plus
- CG5Depth defocus ทีละ layerแยก defocus ตาม layer ความลึก แล้วค่อย merge
- CG6Vector blurใส่ motion blur ให้ CG ด้วย motion vector ให้ตรงกับ shutter ของ plate
- CG7เงาและ contact AOวัดเงาจริงใน plate แล้วให้เงาของหุ่นยนต์มีสีและความเข้มเท่ากัน
- CG8Holdout และลำดับการ mergeของที่อยู่ใกล้กล้องกว่าต้อง merge ทีหลัง
2.5D และ projection
แยก plate เป็น card ตามความลึก, project plate ลง geometry, nodal pan vs เลื่อนกล้อง, parallax และช่องโหว่ที่ต้อง paint
- P12D pan กับการ์ด 2.5Dแยก plate เป็นชั้นตามความลึก แล้วของใกล้จะวิ่งเร็วกว่าของไกล
- P2Camera projection และระยะปลอดภัยฉาย plate จากกล้องเดิมลงบน geometry ง่าย ๆ แล้วดูว่าขยับได้แค่ไหนก่อนภาพเละ
- P3Nodal pan กับการเลื่อนกล้องหมุนอยู่กับที่ไม่มี parallax งาน 2D พอ แต่เลื่อนตำแหน่งเมื่อไรต้องใช้ 3D
- P4อ่านความลึกจาก parallaxตำแหน่งในเฟรมหลอกได้ แต่ระยะที่จุดเลื่อนบอกความลึกตรง ๆ
- P5ทำไม 2.5D ถึงพัง: ช่องที่เปิดออกกล้องขยับแล้วเห็นหลังหิน ซึ่ง plate ไม่เคยถ่ายไว้ ต้อง paint เตรียมไว้
Paint และ cleanup
clone brush, ลบสลิงและเสา, ลบ marker ด้วย patch ที่ track, clean plate จากหลายเฟรม, degrain/regrain, QC ด้วย difference และ flip-book, เลือกระหว่าง paint กับ projection
- PC1Clone brushเลือกจุดต้นทางให้ถูก ใช้ขอบนุ่ม แล้วลบเงาด้วย
- PC2ลบสลิง (wire removal)fill, clone หรือแยกความถี่ ให้สลิงหายโดยไม่ทิ้งเส้นเรียบไว้
- PC3Patch ที่เดินตาม trackpaint เฟรมเดียว แล้วให้ track พาไปทุกเฟรม
- PC4Clean plate ด้วย medianรวมหลายเฟรมให้เหลือแค่ฉากหลัง ทิ้งสิ่งที่เคลื่อนที่
- PC5Degrain และ regrainpaint บน plate ที่ไม่มี grain แล้วเติม grain ใหม่ที่ขยับทุกเฟรม
- PC6QC งาน cleanupดู difference สองแบบ แล้วเล่นให้ครบทุกเฟรม
- PC7Paint หรือ projectเลือกวิธีที่ถูกที่สุดที่ patch ยังไม่ไถล
Finishing & Optics
defocus, glow, sharpen, chromatic aberration และลำดับงานเก็บท้าย
Lens artifact ขั้นสูง
ghost ของ flare, anamorphic, halation, glow vs diffusion, rolling shutter, overscan และลำดับ lens stack
- LA1Ghost ของ lens flareghost เรียงบนเส้นจากไฟผ่านกลางภาพไปอีกฝั่ง
- LA2ลุค anamorphicbokeh วงรีแนวตั้ง streak แนวนอน และ distortion
- LA3Halation: บวกเฉพาะแสงที่ฟุ้งmax(0, ฟุ้ง − ต้นฉบับ) และ roto ไฟแดงออก
- LA4Diffusion, glow, veiling glare และการวัดพลังงานสามลุคที่ต่างกัน และวัด glow บนภาพสีเรียบ
- LA5Rolling shutterอ่านภาพทีละแถว: แพนเร็วเสาเอียง กล้องสั่นภาพย้วย
- LA6Overscan สำหรับ redistortCG ต้อง render เผื่อขอบ ไม่งั้นมุมภาพว่าง
- LA7ลำดับเลนส์ และ focus breathingdiffusion → flares → glints → shake → CA → halation → grain
FX elements: ไฟ ควัน ระเบิด
ไฟคือแสง ควันคือวัตถุ แสงตกกระทบ heat distortion จังหวะระเบิด retime ตามขนาด และ QC ของ element
- FE1ไฟคือแสงplus ไฟลง plate รักษาแกนที่เกิน 1 และเช็กค่าดำของ element
- FE2ควันคือวัตถุcomp แบบ over ด้วย alpha ของตัวเอง และ grade โดยไม่ยกพื้นที่ว่าง
- FE3แสงตกกระทบจากไฟ (interactive light)คูณแสงกับ plate ก่อน แล้วค่อย plus อย่าบวกแสงลงไปตรง ๆ
- FE4Heat distortionไอร้อนต้องสั่นอยู่กับที่ เหนือไฟ และเบามาก
- FE5จังหวะระเบิดflash ก่อน shake มาตามคลื่นกระแทก
- FE6Retime ตามขนาดของใหญ่เคลื่อนที่ช้า: ขยาย element แล้วต้องลดสปีดด้วย
- FE7QC ของ elementดัน viewer ดู alpha ดู grain แล้วแก้ให้ถูกจุด
พื้นฐาน motion
keyframe, graph editor, timing/spacing, สปริง, overlap, camera shake และ retime สำหรับงาน comp
- M1Keyframe และ interpolationสอง key เดียวกัน แต่เฟรมช่วงกลางต่างกันได้มาก
- M2Graph editor: handle กับความเร็วลาก handle แล้วดูเส้นความเร็วเปลี่ยนตาม
- M3Timing และ spacingจำนวนเฟรม กับระยะห่างในแต่ละเฟรม คือสองเรื่องที่ต่างกัน
- M4Overshoot และ settleสปริงที่เลยเป้าครั้งเดียวแล้วนิ่ง
- M5Follow-through และ overlapping actionเสาอากาศหุ่นยนต์: ปลายมาช้ากว่าโคน
- M6Camera shake สำหรับงาน VFXshake ของระเบิดเริ่มตอน shockwave มาถึง ไม่ใช่ตอนแสงวาบ
- M7Retime: slow motion ที่ไม่กระตุกnearest, frame blend หรือ motion vectors
AI ในงาน comp: แนวคิด CopyCat
เทรนโมเดลจิ๋วในเบราว์เซอร์: คู่ input/target, เลือกเฟรมเทรน, overfitting, ลบ marker, คุ้มไหม และ QC ผลลัพธ์
- AI1โมเดลเรียนรู้อะไร: คู่ input → targetสอน grade สีจาก patch ก่อน/หลัง 3 จุด แล้วใช้กับทั้งเฟรม
- AI2เลือกเฟรมเทรน: ข้อมูลต้องครอบคลุมเทรนแต่ส่วนมืด แล้วโมเดลพังที่ท้องฟ้า
- AI3Loss curve, epochs และ overfittingโมเดลใหญ่เกินจำ noise เล็กเกินจับรูปไม่ได้
- AI4ลบ marker ด้วยโมเดลแบบ patchซ่อมมือไม่กี่เฟรม แล้วให้โมเดลทำที่เหลือ
- AI5เมื่อไหร่ ML คุ้ม เมื่อไหร่ทำมือคิดเวลาคนจากตัวเลขที่คุณประเมินเอง
- AI6อ่านผลลัพธ์: difference, flicker และ QCloss ดีไม่ได้แปลว่าทุกเฟรมดี
Case Files: แก้ปัญหา comp จากงานจริง
เคสจริงแบบนักสืบ: อาการ → หาต้นเหตุ → แก้ → ป้องกัน
- CF1เคส 1: CG ดูแปะ เพราะดำลึกกว่า plateแมทช์ดำกับของที่อยู่ระยะเดียวกัน ไม่ใช่จุดที่ดำที่สุดในภาพ
- CF2เคส 2: ขอบสว่างรอบ key ทั้งที่ matte ไม่ได้เปลี่ยนก่อนแก้ matte ให้เช็กสีที่ขอบก่อน
- CF3เคส 3: element ว่าง ๆ ที่ทำให้ทั้งเฟรมมืดลงพิกเซล alpha 0 ที่มีสีติดลบ จาก log black
- CF4เคส 4: ประกายไฟซีด และ bokeh เป็นวงเทาแสงถูกตัดที่ 1 ก่อน defocus แล้วยัง screen ซ้ำ
- CF5เคส 5: แสงข้างหลังมาติดบนตัวหุ่นplus แสงหลังจาก over ของหน้าแล้ว แสงจึงทับของหน้า
- CF6เคส 6: ประกายไฟหาย และขอบหุ่นมืดPremult ฆ่าทุกอย่างที่อยู่นอก alpha
- CF7เคส 7: grain ซ้อน grainregrain เฉพาะส่วนที่เปลี่ยน แต่ mask กลับด้าน
- CF8เคส 8: CG คมกว่า plateหาผู้ร้ายจากสามผู้ต้องสงสัย