.3ds
Rozszerzenie nazwy pliku |
.3ds
|
---|---|
Rodzaj mediów internetowych |
aplikacja/x-3ds, obraz/x-3ds
|
magiczny numer | 4D 4D ( szesnastkowo ), MM ( ASCII ) |
Opracowany przez | Autodesk Inc. |
Typ formatu | Formaty plików 3D |
3DS to jeden z formatów plików używanych przez oprogramowanie do modelowania, animacji i renderowania Autodesk 3ds Max 3D.
Był to natywny format pliku starego programu Autodesk 3D Studio DOS (wersje od 1 do 4), który był popularny do czasu, gdy jego następca (3D Studio MAX 1.0) zastąpił go w kwietniu 1996 r. Istniejący od 1990 r. (kiedy to pierwsza wersja 3D uruchomiono Studio DOS), stał się de facto branżowym standardem przenoszenia modeli między programami 3D lub przechowywania modeli do katalogów zasobów 3D (wraz z OBJ , który jest coraz częściej używany jako format plików archiwizacji modeli).
Podczas gdy format 3DS ma na celu zapewnienie formatu importu/eksportu, zachowującego tylko podstawowe dane dotyczące geometrii, tekstury i oświetlenia, powiązany format MAX (teraz zastąpiony przez format PRJ) zawiera również dodatkowe informacje specyficzne dla programu Autodesk 3ds Max, aby umożliwić scenę być całkowicie zapisany/załadowany.
Struktura
3ds to plik w formacie binarnym .
Format opiera się na chunks , gdzie każda sekcja danych jest osadzona w bloku zawierającym identyfikator porcji i długość danych (w celu określenia lokalizacji następnego głównego bloku), a także same dane. Pozwala to parserom pomijać fragmenty, których nie rozpoznają, i pozwala na rozszerzenia formatu.
Fragmenty tworzą hierarchiczną strukturę, podobną do drzewa XML DOM . Pierwsze dwa bajty fragmentu to jego identyfikator. Na podstawie tej wartości parser może zidentyfikować porcję i zdecydować, czy ją przeanalizuje, czy pominie. Następne cztery bajty zawierają little-endian , która jest długością fragmentu, w tym jego danymi, długością jego podbloków i 6-bajtowym nagłówkiem. Kolejne bajty to dane fragmentu, po których następują podfragmenty, w strukturze, która może rozciągać się na kilka poziomów.
Poniżej znajduje się lista najczęstszych identyfikatorów porcji, przedstawionych w sposób hierarchiczny, przedstawiający ich zależności:
0x4D4D // Fragment główny ├─ 0x0002 // Wersja M3D ├─ 0x3D3D // Fragment edytora 3D │ ├─ 0x4000 // Blok obiektów │ │ ├─ 0x4100 // Siatka trójkątna │ │ │ ├ ─ 0x4110 // Lista wierzchołków │ │ │ ├─ 0x4120 // Ściany Opis │ │ │ │ ├─ 0x4130 // Ściany Materiał │ │ │ │ └─ 0x4150 // Lista grup wygładzania │ │ │ ├─ 0x4140 // Współrzędne mapowania s Lista │ │ │ └─ 0x4160 // Lokalny Układ współrzędnych │ │ ├─ 0x4600 // Światło │ │ │ └─ 0x4610 // Reflektor │ │ └─ 0x4700 // Kamera │ └─ 0xAFFF // Blok materiału │ ├─ 0xA00 0 // Nazwa materiału │ ├─ 0xA010 // Otoczenie Kolor │ ├─ 0xA020 // Kolor rozproszenia │ ├─ 0xA030 // Kolor odblaskowy │ ├─ 0xA200 // Mapa tekstury 1 │ ├─ 0xA230 // Mapa wypukłości │ └─ 0xA220 // Mapa odbić │ │ /* Części podrzędne dla każdego Mapa */ │ ├─ 0xA300 // Nazwa pliku mapowania │ └─ 0xA351 // Parametry mapowania └─ 0xB000 // Fragment klatki kluczowej ├─ 0xB002 // Blok informacji o siatce ├─ 0xB007 // Blok informacji o świetle punktowym └─ 0 xB008 // Ramki ( Początek i koniec) ├─ 0xB010 // Nazwa obiektu ├─ 0xB013 // Punkt obrotu obiektu ├─ 0xB020 // Ślad pozycji ├─ 0xB021 // Tor obrotu ├─ 0xB022 // Skala toru └─ 0xB030 // Pozycja hierarchii
niedociągnięcia
Zwrócono uwagę, że pomimo swojej popularności format może nie być najbardziej odpowiedni do wymiany danych 3D. Niektóre z wymienionych wad to:
- Wszystkie oczka muszą być wykonane z trójkątów .
- Wszystkie nazwy plików tekstur są ograniczone do formatu 8.3 DOS .
- Liczba wierzchołków i wielokątów na siatkę jest ograniczona do 65536 .
- Dokładnych normalnych wierzchołków nie można przechowywać w pliku .3ds. Zamiast tego używane są „ grupy wygładzające ”, aby program odbierający mógł odtworzyć (miejmy nadzieję dobrą) reprezentację normalnych wierzchołków. Jest to nadal pozostałość po wielu programach do animacji, które rozpoczęły się w latach 80. ( 3DS MAX , Lightwave i trueSpace nadal używają grup wygładzania, a Maya robiła to do wersji 2.51).
- Nazwy obiektów, świateł i kamer są ograniczone do 10 znaków. Nazwy materiałów są ograniczone do 16 znaków.
- Kierunkowe źródła światła nie są obsługiwane.
Notatki
- ^ Grupy wygładzania (przeczytaj o powierzchniach w Elements of Mesh Modeling, aby zapoznać się z uzasadnieniem ich użycia) są przechowywane jako pole bitowe , z 4 bajtami ( długi int ) dla każdej ściany, co pozwala na utworzenie do 32 (4 × 8) grup wygładzania na twarz.
Linki zewnętrzne
- strony internetowe
- Pliki 3D Studio Mesh (3DS, PRJ) — Autodesk Knowledge Network
- Samouczek parsowania 3DS autorstwa Amira „Genjixa” Taakiego
- Spacesimulator.net - czytnik plików w formacie 3ds, program ładujący , autorstwa Damiano Vitulli
- The Labs: 3DS File Format , autorstwa Jeffa Lewisa. Link teraz przez Internet Archive.
- lib3ds: biblioteka C do ładowania/zapisywania plików 3DS , licencja LGPL
- odniesienia do plików tekstowych
- Jim Pitts (18 grudnia 1994). „Format pliku 3D Studio” . Zarchiwizowane od oryginału w dniu 2009-04-04.
- Martin van Velsen i Robin Fercoq (styczeń 1997). „Format pliku 3D-Studio” . (na podstawie dokumentacji Jima Pittsa)
- Jochen Wilhelmy (1997-06-08). „Informacje o formacie pliku 3D Studio” . Zarchiwizowane od oryginału w dniu 2009-04-04. (na podstawie dokumentacji Christophe'a Chabanois, Jima Pittsa i Niklasa Beiserta)