3D Tiles คืออะไร? มาตรฐาน OGC สำหรับข้อมูล 3D เชิงพื้นที่
ในยุคที่งานสำรวจสมัยใหม่ผลิตข้อมูล 3D ออกมามหาศาล ไม่ว่าจะเป็น Point Cloud จาก LiDAR, โมเดล 3D จาก Drone Photogrammetry หรือข้อมูลอาคาร BIM — คำถามที่ตามมาเสมอคือ จะแสดงผลข้อมูลเหล่านี้บนเว็บอย่างไรให้ลื่นไหล โดยไม่ต้องโหลดไฟล์ขนาดหลายร้อย GB ทั้งก้อนพร้อมกัน?
คำตอบคือ 3D Tiles — มาตรฐานเปิดที่เปลี่ยนวิธีที่เราแสดงและแจกจ่ายข้อมูล 3D เชิงพื้นที่ขนาดใหญ่บนเว็บและแอปพลิเคชันต่างๆ ไปตลอดกาล
3D Tiles คืออะไร?

3D Tiles คือมาตรฐานเปิด (Open Standard) สำหรับการจัดเก็บและแสดงผลข้อมูล 3D เชิงพื้นที่ขนาดใหญ่ผ่านเครือข่าย พัฒนาโดยบริษัท Cesium และได้รับการรับรองเป็นมาตรฐานระดับสากลโดย OGC (Open Geospatial Consortium) ในปี 2019
หลักการสำคัญของ 3D Tiles คือการนำแนวคิด Tiling ที่ใช้กันดีในแผนที่ 2D (เช่น Google Maps หรือ OpenStreetMap ที่แบ่งแผนที่เป็น Tile เล็กๆ) มาขยายขึ้นสู่โลก 3 มิติ ทำให้แอปพลิเคชันโหลดเฉพาะส่วนที่ผู้ใช้มองเห็น ณ ขณะนั้น ไม่ต้องดึงข้อมูลทั้งหมดมาพร้อมกัน
ที่มาและประวัติ
3D Tiles เริ่มต้นจากทีมพัฒนา Cesium (เดิมชื่อ Analytical Graphics, Inc.) ในปี 2015 โดยมีเป้าหมายเพื่อแก้ปัญหาจริงในงาน: จะแสดง Point Cloud หลายพันล้านจุด หรือโมเดลอาคาร 3D ของเมืองทั้งเมืองบนเว็บเบราว์เซอร์ได้อย่างไร โดยไม่ทำให้เครื่องค้างหรือเครือข่ายแน่น ก่อนจะกลายมาเป็นมาตรฐาน OGC ที่ใช้กันอย่างแพร่หลายในปัจจุบัน
หลักการทำงานของ 3D Tiles

Tileset และโครงสร้าง Tree
ชุดข้อมูล 3D Tiles เรียกว่า Tileset ซึ่งประกอบด้วยไฟล์หลักชื่อ tileset.json ที่อธิบายโครงสร้างข้อมูลทั้งหมดในรูปแบบ Hierarchical Tree (ต้นไม้ลำดับชั้น) แต่ละโหนดในต้นไม้คือ Tile หนึ่งชิ้น โดยโหนดระดับบนสุด (Root) จะมีข้อมูลความละเอียดต่ำครอบคลุมพื้นที่กว้าง และโหนดลูกๆ จะมีข้อมูลละเอียดมากขึ้นเรื่อยๆ สำหรับพื้นที่เล็กลง
{
"asset": { "version": "1.0" },
"root": {
"boundingVolume": { "region": [-1.3197, 0.6988, -1.3196, 0.6989, 0, 88] },
"geometricError": 70,
"refine": "ADD",
"children": [...]
}
}
Level of Detail (LOD)
กลไกสำคัญที่ทำให้ 3D Tiles ทำงานได้อย่างมีประสิทธิภาพคือ LOD (Level of Detail) — ระบบจะเลือกโหลด Tile ที่มีความละเอียดเหมาะสมกับระยะห่างของกล้องโดยอัตโนมัติ:
- ดูจากไกล → โหลด Tile ความละเอียดต่ำ (ไฟล์เล็ก) ให้ภาพรวมทั้งพื้นที่
- ซูมเข้าใกล้ → โหลด Tile ความละเอียดสูงขึ้นเฉพาะส่วนที่กล้องชี้ไป
- หมุนกล้องออก → ยกเลิกโหลด Tile ที่ไม่ได้ใช้เพื่อประหยัดหน่วยความจำ
กระบวนการนี้เรียกว่า Streaming ซึ่งทำให้แม้ข้อมูลต้นฉบับจะมีขนาดเป็น TB แต่ผู้ใช้ยังสามารถโต้ตอบกับโมเดลได้อย่างลื่นไหลบนคอมพิวเตอร์ทั่วไป
Bounding Volume
แต่ละ Tile มี Bounding Volume ระบุขอบเขตพื้นที่ครอบคลุม ซึ่งใช้ในการตรวจสอบว่า Tile นั้นอยู่ใน Frustum (พื้นที่มองเห็นของกล้อง) หรือไม่ รองรับ 3 รูปแบบ:
- Region — กำหนดเป็น lat/lon/height ในระบบ WGS84
- Box — กล่องสี่เหลี่ยม Oriented Bounding Box
- Sphere — ทรงกลม เหมาะกับวัตถุกลมๆ หรือบริเวณโดยรอบ
ประเภทไฟล์ Tile ที่รองรับ

3D Tiles รองรับรูปแบบข้อมูล 3D หลายประเภท แต่ละแบบออกแบบมาสำหรับข้อมูลชนิดต่างกัน:
b3dm — Batched 3D Model
ใช้สำหรับ โมเดล 3D ของอาคารหรือวัตถุหลายชิ้น ที่บรรจุใน Tile เดียว เหมาะกับ City Model, BIM-to-3D Tiles และโมเดลอาคารจาก Photogrammetry ภายในไฟล์ใช้ glTF เป็น container
pnts — Point Cloud
ใช้สำหรับ Point Cloud โดยเฉพาะ เก็บข้อมูลตำแหน่ง XYZ พร้อม Attribute เช่น RGB Color, Intensity, Classification เหมาะกับข้อมูล LiDAR ทั้งจาก Drone, Mobile Mapping หรือ Terrestrial Laser Scanning
i3dm — Instanced 3D Model
ใช้สำหรับการแสดงวัตถุชนิดเดียวกันซ้ำหลายตำแหน่ง เช่น ต้นไม้ เสาไฟ หรือป้ายจราจรจำนวนมาก ประหยัดพื้นที่เพราะโมเดลต้นแบบถูกเก็บครั้งเดียว แต่ระบุตำแหน่งและ Transform ของแต่ละ instance
cmpt — Composite
ไฟล์รวม (Composite) ที่สามารถบรรจุ Tile ประเภทอื่นๆ หลายชนิดไว้ด้วยกันใน Tile เดียว เหมาะกับฉากที่มีทั้ง Point Cloud และโมเดล 3D ปนกัน
glTF (3D Tiles 1.1+)
ตั้งแต่ 3D Tiles เวอร์ชัน 1.1 เป็นต้นมา รูปแบบหลักเปลี่ยนมาใช้ glTF 2.0 โดยตรง ทำให้ Ecosystem กว้างขึ้นและรองรับ Extension ใหม่ๆ ได้ดีกว่า
ทำไมต้องใช้ 3D Tiles?

หลายคนอาจสงสัยว่าแค่เอาไฟล์ OBJ หรือ FBX ขึ้น Server แล้วให้ผู้ใช้โหลดมาเองไม่ได้หรือ? คำตอบคือ ทำได้ แต่ไม่ Scale — ลองนึกภาพ:
- Point Cloud จาก LiDAR Drone สำรวจพื้นที่ 10 ตร.กม. อาจมีจุดมากกว่า 2,000 ล้านจุด ขนาดไฟล์ LAZ กว่า 50 GB
- โมเดล 3D เมืองทั้งเมืองจาก Photogrammetry อาจมี Mesh หลายล้าน Polygon
ถ้าโหลดข้อมูลทั้งก้อนพร้อมกัน เบราว์เซอร์จะค้างหรือ Crash ทันที แต่ด้วย 3D Tiles:
| ประเด็น | ไฟล์ 3D ทั่วไป | 3D Tiles |
|---|---|---|
| การโหลดข้อมูล | โหลดทั้งหมดก่อนแสดง | Streaming เฉพาะส่วนที่มองเห็น |
| ประสิทธิภาพ | ช้า / ค้าง | ลื่นไหลแม้ข้อมูล TB+ |
| รองรับเว็บ | จำกัด | ออกแบบมาสำหรับเว็บโดยเฉพาะ |
| รองรับพิกัด | ระบบพิกัดท้องถิ่น | รองรับ WGS84 / ECEF |
| Metadata | จำกัด | รองรับ Attribute หลายรูปแบบ |
| มาตรฐาน | ไม่เป็นมาตรฐานสากล | OGC Standard |
การนำ 3D Tiles ไปใช้ในงานสำรวจและ GIS

Cesium / CesiumJS
Cesium เป็น Platform ที่รองรับ 3D Tiles ดีที่สุด ทั้ง Cesium ion (Cloud service สำหรับ Upload และ Convert ข้อมูล) และ CesiumJS (Library JavaScript สำหรับแสดงผล) สามารถโหลด 3D Tiles ด้วยโค้ดง่ายๆ:
const tileset = await Cesium.Cesium3DTileset.fromUrl(
"https://your-server.com/tileset.json"
);
viewer.scene.primitives.add(tileset);
ใช้กับ Cesium ion ก็ง่ายเช่นกัน — Upload Point Cloud LAZ, OBJ หรือ IFC ขึ้น Cesium ion แล้วระบบจะ Convert เป็น 3D Tiles อัตโนมัติ
QGIS
QGIS 3.34 ขึ้นไปรองรับ 3D Tiles แบบ Native ผ่าน 3D Map View สามารถเพิ่ม Tileset ได้ผ่าน Layer > Add Layer > Add 3D Tiles Layer แล้วใส่ URL ของ tileset.json ได้เลย เหมาะสำหรับการตรวจสอบข้อมูลหรือ Overlay กับชั้นข้อมูลอื่น
ArcGIS Pro / ArcGIS Online
Esri รองรับ 3D Tiles ใน ArcGIS Pro 3.x และ ArcGIS Online ผ่าน Scene Layer หรือ I3S (Indexed 3D Scene Layer) ซึ่งเป็น Format ของ Esri เองที่มีแนวคิดคล้ายกัน นอกจากนี้ยังสามารถ Publish ข้อมูล 3D Tiles ขึ้น ArcGIS Enterprise ได้
การสร้าง 3D Tiles จากข้อมูลสำรวจ
มีเครื่องมือหลายตัวที่ช่วย Convert ข้อมูลสำรวจเป็น 3D Tiles:
- Cesium ion — รองรับ LAS/LAZ, OBJ, FBX, IFC, KML (Cloud-based, ใช้งานง่าย)
- py3dtiles — Python Library สำหรับสร้าง 3D Tiles จาก Point Cloud (Open Source)
- 3dtiles-validator — ตรวจสอบความถูกต้องของ Tileset
- Potree Converter — แปลง LAS/LAZ เป็น Format สำหรับ Potree Viewer (คล้าย 3D Tiles)
- RealityCapture / Metashape — Software Photogrammetry ที่ Export เป็น 3D Tiles ได้โดยตรง
ตัวอย่างการใช้งานจริงในวงการสำรวจ
Digital Twin เมือง — นำโมเดล 3D อาคารจาก Photogrammetry หรือ LiDAR Drone มา Publish เป็น 3D Tiles บน WebGIS Platform เพื่อให้หน่วยงานวางแผนเมือง วิเคราะห์เงา หรือจำลองสถานการณ์น้ำท่วมได้จากเบราว์เซอร์
Point Cloud สำรวจก่อสร้าง — แปลง Point Cloud จาก Terrestrial LiDAR สแกนภายในอาคารหรือโครงสร้าง เป็น 3D Tiles เพื่อให้ทีมงานตรวจสอบ As-Built Model ผ่านเว็บได้โดยไม่ต้องติดตั้งโปรแกรมพิเศษ
แผนที่ภูมิประเทศ 3D — นำ DTM/DSM ความละเอียดสูงจาก Drone Survey มาสร้าง Terrain Tileset สำหรับแสดงผลใน Dashboard ติดตามโครงการ
3D Tiles กับ 3D Tiles Next (เวอร์ชัน 1.1)

ใน 3D Tiles 1.1 (รับรองโดย OGC ปี 2022) มีการปรับปรุงสำคัญ:
- glTF เป็น Format หลัก แทน b3dm/pnts/i3dm แบบเก่า ทำให้ Ecosystem กว้างขึ้นมาก
- Metadata Schema รองรับ Property ที่ซับซ้อนขึ้น เช่น ระบุว่าแต่ละอาคารมีชั้นกี่ชั้น หรือ Point แต่ละจุดมี Intensity เท่าไร
- Implicit Tiling กำหนดโครงสร้าง Tile แบบ Implicit ทำให้
tileset.jsonมีขนาดเล็กลงมาก สำหรับข้อมูลขนาดใหญ่ - Multiple Contents Tile เดียวสามารถมีข้อมูลหลาย Layer ซ้อนกันได้
สรุป
3D Tiles คือมาตรฐานที่เปลี่ยนเกมในการแสดงข้อมูล 3D เชิงพื้นที่ขนาดใหญ่ ไม่ว่าจะเป็น Point Cloud จาก LiDAR, โมเดลอาคารจาก Photogrammetry, หรือ BIM จากงานก่อสร้าง — ทั้งหมดสามารถแสดงผลบนเว็บได้อย่างลื่นไหลผ่านกลไก Streaming และ LOD
สำหรับนักสำรวจและวิศวกร GIS ที่ทำงานกับข้อมูล 3D ขนาดใหญ่ การทำความเข้าใจ 3D Tiles จึงเป็นทักษะสำคัญ โดยเฉพาะในยุคที่ Digital Twin และ Smart City กำลังกลายเป็นกระแสหลักในวงการ
หากคุณสนใจนำ 3D Tiles ไปใช้กับโครงการสำรวจหรือพัฒนา WebGIS Platform สามารถติดต่อทีมงาน WAIPIA Development ได้เลยครับ เรามีประสบการณ์ด้าน GIS, Drone Survey, LiDAR และการพัฒนา WebGIS Application ที่พร้อมช่วยคุณวางแผนและดำเนินโครงการตั้งแต่ต้นจนจบ
บริษัท ไวเปีย ดีเวลลอปเม้นท์ จำกัด 📞 095-7243421 📱 Line OA: @info_wd 🌐 waipia.com