เอนจิน PBR ของ Google Filament ได้รับความสนใจจากชุมชนนักพัฒนา แม้จะมีความสับสนเรื่อง Sceneform

ทีมชุมชน BigGo
เอนจิน PBR ของ Google Filament ได้รับความสนใจจากชุมชนนักพัฒนา แม้จะมีความสับสนเรื่อง Sceneform

เอนจิน physically based rendering (PBR) ของ Google ชื่อ Filament กำลังได้รับความสนใจเพิ่มขึ้นในชุมชนนักพัฒนา โดยมีเครื่องมือและ wrapper ใหม่ๆ ที่ทำให้สามารถเข้าถึงได้ง่ายขึ้นในหลากหลายแพลตฟอร์ม อย่างไรก็ตาม ยังคงมีความสับสนเกี่ยวกับความสัมพันธ์กับโปรเจกต์ที่ถูกยกเลิกไปแล้ว และความคล้ายคลึงของชื่อกับวัสดุสำหรับการพิมพ์ 3 มิติ

เครื่องมือพัฒนาข้ามแพลตฟอร์มเริ่มปรากฏขึ้น

ระบบนิเวศของ Filament กำลังขยายตัวด้วยโซลูชันที่ขับเคลื่อนโดยชุมชน ซึ่งช่วยเชื่อมช่องว่างระหว่างแพลตฟอร์มต่างๆ การพัฒนาที่น่าสังเกตคือการสร้าง package สำหรับ Dart/Flutter ที่ wrap ฟังก์ชันการทำงานของ Filament ทำให้นักพัฒนาสามารถสร้างแอปพลิเคชันด้วย codebase เดียวที่สามารถทำงานบน macOS, iOS, Android, Windows และแพลตฟอร์มเว็บได้ วิธีการนี้ช่วยลดความซับซ้อนในการพัฒนาอย่างมาก ขณะเดียวกันก็ยังคงความสามารถในการเรนเดอร์ที่ทรงพลังของ Filament รวมถึงฟีเจอร์ shadows, antialiasing และ color grading

PBR (Physically Based Rendering): วิธีการเรนเดอร์ที่จำลองการมีปฏิสัมพันธ์ของแสงกับวัสดุในลักษณะที่ถูกต้องตามหลักฟิสิกส์ ทำให้ได้ผลลัพธ์ภาพที่สมจริงมากขึ้น

คุณสมบัติหลักของ Filament :

  • แพลตฟอร์มเป้าหมาย: OpenGL ES 3.1 บน GPU มือถือ
  • แพลตฟอร์มที่รองรับ: Android , iOS , macOS , Windows , Web (ผ่าน community wrappers)
  • ความสามารถในการเรนเดอร์: เงา, การปรับความเรียบ, การปรับแต่งสี, วัสดุ PBR
  • พารามิเตอร์วัสดุ: ใช้หน่วยทางฟิสิกส์ (เมตร, เคลวิน, ลักซ์/ลูเมน, แคนเดลา)
  • เป้าหมายการออกแบบ: ประสิทธิภาพบนมือถือ, คุณภาพ, ความง่ายในการใช้งาน, ความคุ้นเคย, ความยืดหยุน

ขจัดความสับสนเกี่ยวกับโปรเจกต์

การสนทนาในชุมชนเผยให้เห็นความสับสนที่ยังคงมีอยู่ระหว่าง Filament และโปรเจกต์ Sceneform ของ Google ที่ถูกยกเลิกไปแล้ว แม้ว่า Sceneform จะเป็นเฟรมเวิร์กที่เน้น AR และใช้ Filament เป็น renderer พื้นฐาน แต่ทั้งสองโปรเจกต์มีจุดประสงค์ที่แตกต่างกัน Sceneform ถูกเก็บถาวรที่เวอร์ชัน 1.16.0 แต่ Filament ยังคงมีการพัฒนาอย่างต่อเนื่องในฐานะเอนจิน rendering แบบ standalone ความแตกต่างนี้มีความสำคัญสำหรับนักพัฒนาที่กำลังประเมินเทคโนโลยีกราฟิกส์ปัจจุบันของ Google

การเปรียบเทียบสถานะโปรเจกต์:

โปรเจกต์ สถานะ วัตถุประสงค์ ความสัมพันธ์
Filament กำลังพัฒนาอยู่ เอนจิ้นการเรนเดอร์ PBR โปรเจกต์เดี่ยว
Sceneform เก็บถาวรแล้ว (v1.16.0) เฟรมเวิร์ก AR ใช้ Filament เป็นตัวเรนเดอร์
Community Wrappers กำลังพัฒนาอยู่ เครื่องมือข้ามแพลตฟอร์ม สร้างบน Filament

ความท้าทายในการตั้งชื่อในชุมชนเทคนิค

การเลือกใช้ชื่อ Filament เป็นชื่อโปรเจกต์ได้จุดประกายการถกเถียงเกี่ยวกับความสับสนที่อาจเกิดขึ้นกับศัพท์เทคนิคของการพิมพ์ 3 มิติ ซึ่งแตกต่างจากความขัดแย้งในการตั้งชื่อซอฟต์แวร์อื่นๆ ที่โดเมนแตกต่างกันโดยสิ้นเชิง ทั้ง Filament เอนจิน rendering และ filament สำหรับเครื่องพิมพ์ 3 มิติ ต่างก็เกี่ยวข้องกับคุณสมบัติของวัสดุและการแสดงทางกายภาพ สมาชิกในชุมชนบางคนตั้งความหวังในตอนแรกว่าจะเป็นเนื้อหาเกี่ยวกับการผลิต filament สำหรับเครื่องพิมพ์ 3 มิติที่ตรงกับการตั้งค่า PBR ในดิจิทัล ซึ่งเน้นย้ำให้เห็นว่าโดเมนเหล่านี้มีความเกี่ยวข้องกันอย่างใกล้ชิด

เฮ้ย ฉันตื่นเต้นไปชั่วขณะจากหัวข้อ คิดว่าเป็นเรื่องเกี่ยวกับวิธีการผลิต filament สำหรับเครื่องพิมพ์ 3 มิติจากการตั้งค่า PBR เพื่อให้คุณสามารถปรับแต่งวัสดุในคอมพิวเตอร์และให้ filament ของคุณตรงกับเวอร์ชันดิจิทัล

การเข้าถึงทางเทคนิคและการมุ่งเน้นประสิทธิภาพ

ปรัชญาการออกแบบของ Filament เน้นประสิทธิภาพบนมือถือขณะที่ยังคงคุณภาพ โดยกำหนดเป้าหมายไปที่ OpenGL ES 3.1 บน mobile GPU ภาษา material shader ของเอนจินได้รับการกล่าวขานว่าเข้าถึงได้ง่ายสำหรับนักพัฒนา แม้ว่าฟีเจอร์บางอย่างเช่น GPU instancing แบบครอบคลุมยังคงอยู่ใน wishlist การมุ่งเน้นของโปรเจกต์ในเรื่อง lightweight deployment และหน่วยที่ถูกต้องตามหลักฟิสิกส์ (เมตร, เคลวิน, ลักซ์) สอดคล้องกับแนวปฏิบัติการพัฒนาสมัยใหม่ที่ให้ความสำคัญทั้งประสิทธิภาพและความง่ายในการใช้งาน

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

อ้างอิง: Physically Based Rendering in Filament