Какво е U3D файл?
U3D (Universal 3D) е компресиран файлов формат и структура от данни за 3D компютърна графика. Той съдържа информация за 3D модели като триъгълни мрежи, осветление, засенчване, данни за движение, линии и точки с цвят и структура. Форматът беше приет като ECMA-363 стандарт през август 2005 г. 3D PDF документите поддържат U3D вграждане на обекти и могат да се разглеждат в Adobe Reader (версия 7 и по-нови).
U3D форматът е разработен с оглед на целта да се установи универсален стандарт за съхранение и обмен на триизмерни данни. Форматът обаче намира основното си приложение при кодиране за 3D PDF, вместо да се използва като формат за обмен. Acrobat 3D преобразува поддържан тип 3D файл или в U3D, или в PRC при преобразуване в PDF.
U3D файлов формат
U3D файловете са в двоичен файлов формат, който е претърпял четири издания, както е описано в референтния документ ECMA-363, което води до актуализация на спецификациите с всяко издание. Стандартът за PDF файлове ISO-32000 приема U3D като позволен тип анотации и мултимедия.
Първото издание на U3D беше фокусирано върху ключовите представяния на свойствата на 3D графиката като геометрия, цвят, текстури, осветление, кости и базирана на трансформация анимация. Второто и третото издание коригираха някои грешки в първото издание, като третата версия беше най-често използваният тип в индустриалния софтуер. Четвъртото издание предоставя дефиниции за примитиви от по-висок порядък (криви повърхности). U3D спецификациите са достъпни онлайн за потребителска справка на уебсайта на ECMA.
Типове данни в U3D файлове
Двоичният файл ще съдържа следните типове: U8, U16, U32, U64, I16, I32, F32, F64 и String.
- U8 : 8-битово цяло число без знак
- U16 : 16-битово цяло число без знак
- U32 : 32-битово цяло число без знак
- U64 : 64-битово цяло число без знак
- I16 : 16-битово цяло число със знак
- F32: IEEE float с единична точност.
- F64: IEEE float с двойна точност.
- Низ: Низовете в U3D файл започват с 16-битово цяло число без знак, което определя общата дължина на символите в низа. Низовете винаги се обработват като чувствителни към главни и малки букви.
U3D файлова структура
U3D файл съдържа последователност от блокове. Във всеки U3D файл има 3 различни типа блок.
- Блок заглавен файл
- Декларационен блок
- Блокиране на продължение
Товарачът определя края на блок, ако данните в този блок не са необходими или ако декодерът за този тип блок не е наличен.
Блок заглавен файл
Блокът на заглавния файл съдържа информация за файла, която се използва от зареденото, за да определи как да чете файла.
Декларационен блок
Блоковете за декларация съдържат информация за обектите във файла. Обектите в декларационен блок трябва да бъдат дефинирани.
Блок за продължение
Допълнителна информация за обекти, декларирани в блок за декларация, се предоставя в блока за продължение. Всеки блок за продължение трябва да бъде свързан с блок за декларация.