แนวคิด

Ambient Occlusion

Ambient Occlusion (AO) คือเทคนิคการชาดิงที่ทำให้รอยแยก มุม และจุดสัมผัสมืดลงในบริเวณที่แสงรอบข้างถูกบัง ช่วยเพิ่มความลึกและความสมจริงให้กับเรนเดอร์

Ambient Occlusion คืออะไร

Ambient Occlusion เป็นเทคนิคการชาดิงและการเรนเดอร์ที่ประเมินว่าแสงรอบข้าง (ทางอ้อม) จะไปถึงแต่ละจุดบนพื้นผิวได้มากน้อยเพียงใด พื้นที่ที่มีเรขาคณิตอยู่ใกล้กันมากจะได้รับแสงน้อยกว่าและเรนเดอร์จะดูมืดลง ซึ่งรวมถึงมุมด้านใน ช่องแคบ/ซอกเล็กๆ และจุดที่วัตถุสัมผัสกัน ทำให้เกิดเงาสัมผัสแบบนุ่มนวลที่ช่วยให้ฉากดูสมจริงยิ่งขึ้น

วิธีการทำงาน

ต่างจากเงาโดยตรงที่ถูกสร้างโดยแสงเฉพาะอย่าง AO คือเอฟเฟกต์แบบโกลบอลที่ได้มาจากรูปทรงของเรขาคณิตเท่านั้น โดยทั่วไปจะถูก “บेक” ลงใน AO map ซึ่งเป็น textur แบบสเกลสีเทา เพื่อให้สามารถนำกลับมาใช้ซ้ำได้อย่างคุ้มค่าในตอนเรนเดอร์ เครื่องมือเกมยังสามารถคำนวณแบบเรียลไทม์ได้ในชื่อ SSAO (Screen-Space Ambient Occlusion) AO เป็นส่วนประกอบหลักของไพพ์ไลน์วัสดุ PBR และมักจะถูกผสานกับ normal map และ roughness map เพื่อเพิ่มรายละเอียดของพื้นผิวโดยไม่ต้องใช้พอลิกอนเพิ่มเติม

กรณีการใช้งาน

  • การอบแผนที่ AO เพื่อเพิ่มความลึกให้กับเกมแอ็ตเซ็ตแบบ low-poly

  • ปรับปรุงเรนเดอร์สินค้าเพื่อให้ส่วนต่างๆ ดูเหมือนแยกจากกันอย่างแท้จริง

  • การซ้อน AO ไว้ใต้เท็กซ์เจอร์เพื่อการตอบสนองของวัสดุที่สมจริง

อัปเดตล่าสุดเมื่อ 5 กันยายน 2569

เครื่องมือที่เกี่ยวข้อง

ตัวดู 3D ออนไลน์

ดูและตรวจสอบไฟล์ 3D ใดๆ ได้ในเบราว์เซอร์ของคุณโดยตรง

ตัวแปลงไฟล์ 3D

แปลงระหว่าง FBX, OBJ, GLB, STL และอื่นๆ

ตัวบีบอัดไฟล์ 3D

ย่อขนาดไฟล์ 3D โดยไม่สูญเสียคุณภาพที่มองเห็นได้

ตัวสร้างข้อความ 3D

แปลงคำอธิบายข้อความเป็นข้อความและรูปร่าง 3D

คำถามที่พบบ่อย

Ambient occlusion (AO) คือเทคนิคการเท็กซ์เจอร์? (ไม่ใช่) — เทคนิคการสร้างเงา (shading) ที่คำนวณ/ประมาณว่าแสง ambient และแสงทางอ้อมไปถึงแต่ละจุดบนพื้นผิวได้มากน้อยเพียงใด บริเวณที่เรขาคณิตแน่น/ชิดกัน เช่น ด้านในของมุม ซอก/ร่อง และจุดสัมผัส จะได้รับแสงน้อยลงและถูกเรนเดอร์ให้ดูเข้มขึ้น ซึ่งจะสร้าง soft contact shadows ทำให้ซีน 3D ดูเหมือนยึดแน่นและสมจริงตามหลักฟิสิกส์

AO จะสุ่มตัวอย่าง/วัดค่าจากเรขาคณิตรอบ ๆ ทุกจุดบนพื้นผิว เพื่อประเมินว่า hemisphere ด้านรอบนั้นถูกเรขาคณิตที่อยู่ใกล้ ๆ บัง/ปิดกั้นไปมากแค่ไหน ยิ่งจุดนั้นถูกล้อมรอบมากเท่าไร จุดนั้นก็จะยิ่งมืดลง โดยไม่ขึ้นกับแหล่งกำเนิดแสงใด ๆ โดยเฉพาะ ผลลัพธ์สามารถอบลงในเท็กซ์เจอร์ หรือคำนวณแบบเรียลไทม์ในเอ็นจินเรนเดอร์ได้

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

AO map คือ texture แบบไล่เฉดสีเทาที่เก็บค่า occlusion ที่คำนวณไว้ล่วงหน้าไปทั่วพื้นผิวของโมเดล การทำ baking จะช่วยให้คุณใส่ contact shading ที่สมจริงได้อย่างประหยัดในช่วงตอนเรนเดอร์ แทนที่จะต้องคำนวณใหม่ทุกเฟรม มันเป็นส่วนมาตรฐานของชุด texture PBR

baked AO จะถูกคำนวณไว้ล่วงหน้าใน texture จากเรขาคณิตคงที่ของโมเดล ทำให้เรนเดอร์ได้ค่อนข้างถูก แต่เป็นแบบนิ่ง (static) SSAO (Screen-Space Ambient Occlusion) จะคำนวณแบบเรียลไทม์จาก depth buffer ดังนั้นมันจะตอบสนองต่อฉากแบบไดนามิก แต่จะกินเวลา GPU ทุกเฟรม เกมมักจะรวมทั้งสองแบบเข้าด้วยกัน

ใน Blender คุณจะทำการ baking AO โดยการตั้งค่า low-poly target พร้อม UV layout, สร้าง image texture และเลือกประเภทการ baking ของ Ambient Occlusion ใน Render properties สำหรับ workflow แบบ high-to-low ให้ครอบ low-poly ด้วย cage รอบ ๆ แหล่ง high-poly เพื่อให้รายละเอียดพื้นผิวถูกถ่ายโอนไปยัง map

แผนที่ AO แบบอบ (baked) นั้นเรนเดอร์ได้ราคาถูกมาก เพราะมันเป็นแค่การค้นหาในเท็กซ์เจอร์เท่านั้น ส่วน SSAO แบบเรียลไทม์ใช้เวลาบน GPU อยู่บ้าง แต่ก็ยังถูกกว่าการจำลองแสงสว่างทั่วทั้งฉาก (global illumination) แบบเต็มรูปแบบมาก นี่จึงเป็นเหตุผลที่ SSAO เป็นการประมาณที่ได้รับความนิยมในเกม

ไม่จำเป็นอย่างเคร่งครัด แต่ AO ช่วยเพิ่มความสมจริงที่รับรู้ได้มาก โดยการเพิ่มเงาสัมผัสที่ละเอียดอ่อน ซึ่งดวงตาคาดหวังว่าจะเห็นเมื่อพื้นผิวมาบรรจบกัน หากไม่มีมัน โมเดลอาจดูเหมือนลอยอยู่ หรือให้ความรู้สึกแบนๆ โดยทั่วไปแล้วพา이พ์ไลน์สำหรับงานโปรดักต์และเกมส่วนใหญ่มองว่า AO เป็นเลเยอร์เริ่มต้น

Meshy สร้าง PBR-ready 3D models พร้อม texture ที่ตอบสนองต่อ ambient occlusion ได้อย่างถูกต้องในทุกเอนจิน นั่นหมายความว่า asset ที่สร้างด้วย AI จะดูมีความสมจริงและรายละเอียดทันทีที่คุณนำไปใส่ใน Unity, Unreal หรือ Blender โดยไม่ต้องมีขั้นตอน baking AO แบบทำเอง

ยังมีคำถามเกี่ยวกับ Ambient Occlusion อยู่ไหม?

ถาม Meshy 3D Agent ได้ทุกเรื่องเกี่ยวกับ 3D — ฐานความรู้ที่ติดตั้งมาในตัวจะตอบคำถามของคุณและแปลงให้เป็นโมเดลได้ทันทีในแชท