UltKit
รูปภาพ11
PDF13
เอกสารและข้อมูล7
วิดีโอ6
เสียง4
เครื่องมืออื่น ๆ22

แปลง OBJ เป็น GLB

รวมไฟล์ OBJ ไฟล์ .mtl และรูปเท็กซ์เจอร์ทุกรูปไว้ใน GLB ไฟล์เดียว เปิดได้ทั้งในเบราว์เซอร์ หน้าสินค้า และโปรแกรมดู AR เมื่ออัปโหลดหรือแชร์โมเดล ลิงก์ระหว่างไฟล์จะไม่ขาดอีกต่อไป

แปลงไฟล์โมเดล 3D

หรือลากไฟล์ STL, OBJ, MTL … มาวางที่นี่ ·

สูงสุด 95 MB ต่อไฟล์· ได้สูงสุด 20 ไฟล์· ลบหลังจาก 30 นาที

ผลลัพธ์

ไฟล์จะถูกประมวลผลบนเซิร์ฟเวอร์ของเราและถูกลบหลังจาก 30 นาที

วิธีใช้เครื่องมือนี้

  1. 1

    อัปโหลดไฟล์ OBJ พร้อมไฟล์ประกอบ

    บีบอัดไฟล์ .obj, .mtl และโฟลเดอร์เท็กซ์เจอร์เป็นไฟล์ ZIP เดียวกันแล้วอัปโหลด หรืออัปโหลดเฉพาะไฟล์ .obj หากต้องการโมเดลที่ไม่มีเท็กซ์เจอร์ อัปโหลดได้สูงสุด 20 ไฟล์ ไฟล์ละไม่เกิน 95 MB

  2. 2

    ตรวจสอบสเกล

    glTF ใช้หน่วยเป็นเมตร ค่าเริ่มต้นของ หน่วยของโมเดล คือ m ซึ่งตรงกับไฟล์ OBJ ที่ส่งออกจาก Blender หากไฟล์ OBJ มาจากโปรแกรม CAD หรือเครื่องมือสำหรับพิมพ์ 3 มิติ ให้เลือก mm ใน การตั้งค่าขั้นสูง

  3. 3

    แปลงเป็น GLB

    กด แปลงเป็น GLB แล้วลากไฟล์ไปวางในโปรแกรมดูโมเดล เช่น model-viewer, three.js editor หรือ Windows 3D Viewer เพื่อตรวจสอบผลลัพธ์

OBJ คือโฟลเดอร์ไฟล์ที่พังได้ทันทีเมื่อไฟล์ใดไฟล์หนึ่งหาย ส่วน GLB คือโมเดล วัสดุ และเท็กซ์เจอร์เดียวกัน รวมอยู่ในไฟล์เดียวที่เว็บโหลดได้

OBJ ที่มีเท็กซ์เจอร์

3+ ไฟล์

model.obj · model.mtl · รูปเท็กซ์เจอร์

ไม่มีอะไรหล่นหายระหว่างทาง

ผลลัพธ์ GLB

1 ไฟล์

ฝังเมช วัสดุ และเท็กซ์เจอร์ไว้ในไฟล์

เหตุใดโปรแกรมดูบนเว็บและ AR จึงต้องการ GLB แทน OBJ

Khronos Group เปิดตัว glTF 2.0 ในปี 2017 เป็นฟอร์แมตสำหรับส่งมอบ และเรียกว่าเป็น JPEG ของงาน 3D คือกะทัดรัด โหลดเร็ว และมีไว้เพื่อแสดงผล ไม่ใช่แก้ไข ฟอร์แมตนี้กำหนดวัสดุแบบ physically based ที่มีแมปสีฐาน metallic roughness นอร์มอล และ occlusion กำหนดสเกลที่หนึ่งหน่วยต่อเมตรโดยให้แกน Y ชี้ขึ้น และเก็บเรขาคณิตในบัฟเฟอร์ที่ GPU ใช้ได้เกือบโดยตรง GLB คือคอนเทนเนอร์ไบนารีของฟอร์แมตนี้ ที่รวมคำอธิบาย JSON เรขาคณิต และรูปภาพไว้ในไฟล์เดียว

OBJ เกิดก่อนทั้งหมดนี้ วัสดุของ OBJ มาจากฟอร์แมต MTL ในช่วงต้นทศวรรษ 1990 ซึ่งออกแบบมาสำหรับโมเดลการแรเงาของยุคนั้น และเท็กซ์เจอร์เป็นไฟล์แยกที่หาพบด้วยพาธแบบสัมพัทธ์ หากอัปโหลดเฉพาะ .obj ขึ้นเว็บไซต์ โมเดลจะออกมาเป็นสีเทา และหากย้ายไฟล์ .mtl เท็กซ์เจอร์ก็จะหาย ด้วยเหตุนี้ model-viewer ของ Google, three.js, Babylon.js และ Scene Viewer ของ Android จึงถือ GLB เป็นค่าเริ่มต้นและ OBJ เป็นตัวเลือกรอง

OBJ

Wavefront OBJ

OBJ เป็นรูปแบบไฟล์รูปทรงเรขาคณิต 3 มิติที่พัฒนาโดย Wavefront Technologies เป็นไฟล์ข้อความธรรมดาที่ระบุจุดยอด (vertex) พิกัดเท็กซ์เจอร์ เวกเตอร์ปกติ (normal) และหน้า (face) โดยวัสดุและเท็กซ์เจอร์จะอ้างอิงอยู่ในไฟล์ .mtl แยกต่างหาก โปรแกรมสร้างโมเดล 3 มิติ เอนจินเกม และเครื่องมือพิมพ์ 3 มิติแทบทุกตัวนำเข้าไฟล์นี้ได้ OBJ ไม่รองรับภาพเคลื่อนไหว การทำโครงกระดูก (rigging) หรือลำดับชั้นของฉาก และเท็กซ์เจอร์จะหายไปหากไม่ได้เก็บไฟล์ MTL และไฟล์ภาพไว้ด้วยกัน

การบีบอัด
–
พื้นหลังโปร่งใส
–
ภาพเคลื่อนไหว
ไม่ได้
เปิดตัว
Wavefront Technologies
ตัวแปลงไฟล์ OBJ

GLB

glTF Binary (GLB)

GLB คือรูปแบบไบนารีของ glTF 2.0 ซึ่งเป็นรูปแบบส่งข้อมูล 3 มิติที่ Khronos Group เผยแพร่ในปี 2017 รวมรูปทรง วัสดุ PBR เท็กซ์เจอร์ และแอนิเมชันไว้ในไฟล์เดียวที่กะทัดรัดและออกแบบมาให้โหลดได้เร็ว GLB นิยมใช้กับ 3 มิติบนเว็บ โปรแกรมดู AR, Android Scene Viewer และตลาดโมเดลออนไลน์ เครื่องมือ 3 มิติบนเดสก์ท็อปรุ่นเก่าและโปรแกรม CAD บางตัวนำเข้าไม่ได้

การบีบอัด
–
พื้นหลังโปร่งใส
–
ภาพเคลื่อนไหว
ได้
เปิดตัว
2017 · Khronos Group
ตัวแปลงไฟล์ GLB

คนแปลง OBJ เป็น GLB เพราะตัวดูบนเว็บ แพลตฟอร์มอีคอมเมิร์ซ และแอป AR ต้องการไฟล์เดียวที่สมบูรณ์ในตัวและมีวัสดุแบบ physically based ขณะที่ OBJ กระจายอยู่ในไฟล์เมช ไฟล์ MTL และรูปเท็กซ์เจอร์แยกต่างหาก

เตรียมไฟล์ OBJ ให้แปลงเป็น GLB ได้อย่างเรียบร้อย

ควรทำไม่ควรทำ
อัปโหลด OBJ, MTL และเท็กซ์เจอร์รวมกันใน ZIP เดียวเปลี่ยนชื่อไฟล์เท็กซ์เจอร์หลังส่งออก OBJ แล้ว
ตรวจว่าไฟล์ .mtl อ้างอิงเท็กซ์เจอร์ด้วยชื่อไฟล์ ไม่ใช่พาธเต็มบนคอมพิวเตอร์ของคุณทิ้งเท็กซ์เจอร์ 8K ไว้ในโมเดลที่ใช้บนมือถือ
ใช้เท็กซ์เจอร์ PNG หรือ JPG เพราะ glTF 2.0 แกนหลักรองรับเพียงสองแบบนี้คาดหวังว่าวัสดุแบบสเปกคิวลาร์ล้วนจะดูเหมือนเดิมภายใต้แสงแบบ PBR
เลือก หน่วยของโมเดล ให้ถูกต้อง เพื่อให้โมเดลปรากฏในขนาดจริงใช้ GLB เป็นไฟล์ต้นฉบับสำหรับแก้ไข ควรเก็บซีนต้นฉบับไว้

ทดสอบไฟล์ GLB และนำไปใช้ต่อ

เปิดผลลัพธ์ในตัวดูโมเดลก่อนเผยแพร่ Windows 3D Viewer, three.js online editor และ glTF Sample Viewer รับไฟล์ที่ลากมาวางได้ทั้งหมด และแสดงให้เห็นว่าเท็กซ์เจอร์โหลดครบหรือไม่ และโมเดลหันถูกทิศหรือไม่ หากโมเดลนอนตะแคง ให้แปลงอีกครั้งโดยตั้ง แกนด้านบน เป็น Y-up

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

คำถามเกี่ยวกับการแปลง OBJ เป็น GLB

ทำไมโมเดลจึงใหญ่ผิดปกติเมื่อเปิดในโปรแกรมดู GLB

ตัวเลขในไฟล์ OBJ เป็นหน่วยมิลลิเมตร แต่ glTF อ่านทุกหน่วยเป็นหนึ่งเมตร แจกันสูง 200 mm จึงกลายเป็นสูง 200 เมตร ให้ตั้ง หน่วยของโมเดล เป็น mm แล้วแปลงอีกครั้ง ตัวแปลงจะปรับพิกัดให้เป็นหน่วยเมตร

การตั้งค่าวัสดุใดของ OBJ ที่ยังคงอยู่ใน GLB

สีกระจายแสงและแมปเท็กซ์เจอร์กระจายแสงจะกลายเป็นสีฐานของ glTF แมปบัมพ์หรือแมปนอร์มอลจะกลายเป็นเท็กซ์เจอร์นอร์มอล และค่าความโปร่งใสจะถูกคงไว้ ส่วนค่าสเปกคิวลาร์ไม่มีตัวเทียบตรง ๆ ในแบบจำลอง metallic-roughness ของ glTF จึงเป็นเพียงการประมาณ วัสดุมันวาวอาจต้องปรับค่า roughness เพิ่มเติมภายหลัง

นำไฟล์ GLB ไปใส่ในหน้าสินค้า Shopify ได้หรือไม่

ได้ Shopify รองรับไฟล์ GLB เป็นสื่อ 3D ของสินค้าและแสดงในตัวดูที่หมุนได้ อุปกรณ์ Apple ต้องใช้ไฟล์ USDZ สำหรับ AR ด้วย ซึ่งสร้างได้ด้วย แปลง GLB เป็น USDZ

เท็กซ์เจอร์ความละเอียด 4K จะทำให้ไฟล์ GLB หนักเกินไปสำหรับเว็บหรือไม่

รูปภาพจะถูกฝังลงไปตามต้นฉบับ เท็กซ์เจอร์ 4K สี่ภาพจึงอาจทำให้ไฟล์ใหญ่หลายสิบเมกะไบต์ หากโมเดลจะแสดงบนมือถือ ให้ปรับขนาดเท็กซ์เจอร์เป็น 1024 หรือ 2048 px ก่อนบีบอัด OBJ เป็น ZIP โมเดลจะดูเหมือนเดิมที่ขนาดการแสดงผลปกติ

GLB กับ glTF ต่างกันอย่างไร

ทั้งสองเป็นฟอร์แมตเดียวกันในแพ็กเกจต่างกัน glTF เป็นไฟล์ JSON ที่มีไฟล์ไบนารีและไฟล์รูปภาพแยกอยู่ข้าง ๆ ส่วน GLB รวมทั้งหมดไว้ในไฟล์ไบนารีเดียว GLB อัปโหลดและแชร์ง่ายกว่า แพลตฟอร์มส่วนใหญ่จึงขอไฟล์ GLB