вторник, 12 января 2010 г.

Конвертирование игровых 3d моделей

Тут небольшая заметка о правильности конвертирования игровых 3d моделей.
Итак,

Я сначала импортирую в макс оригинальную модель, потом выстраиваю в сцене с ней biped-скелет, переименовываю кости этого скелета в соответствии с импортированными только что, потом сохраняю только biped-скелет отдельным фалом max. Далее если у модели кости являются обычными Bone, то всё просто: использую плагин ActorX Export для превращения модели в psk-файл (unreal стандарт), затем с помощью скрипта Великого Гилдора :) с его сайта импортирую модель в сцену с biped-скелетом. Собственно всё! При импорте из psk-файла скелет подхватывается тот, что есть в сцене, и не важно как там кости были повёрнуты, какого размера были - теперь на biped они выглядят отлично.

т.е. схема получается такая:

- импорт оригинальной модели в 3d max;
- настройка biped-скелета;
- переименование костей biped-скелета;
- сохранение biped-скелета отдельным файлом;
- экспорт оригинальной модели в psk;
- открываем сохранённый biped-скелет;
- импорт модели из psk на biped-скелет.

Если же изначально у модели кости были не обычными bone, а допустим point helper (как в случае с devil may cry 4), то я сначала импортированную модель конвертирую в smd-формат. При конвертировании в smd любые объекты (даже геометрия), к которым привязана модель становятся типа bone, и уже при импорте модели обратно в 3d max из файла smd это хорошо видно, правда кости могут опять же быть повёрнутыми в разные стороны, но это не беда.

-- единственное, что у костей никогда не меняется - это их центр вращения --

Таким образом схема немного усложняется:

- импорт ориг. модели в 3d max;
- настройка biped-скелета;
- переименование костей biped-скелета;
- сохранение biped-скелета отдельным файлом;
- экспорт оригинальной модели в smd;
- импорт модели из smd-файла;
- экспорт модели в psk;
- открываем сохранённый biped-скелет;
- импорт модели из psk на biped-скелет.

Инструменты:

- 3d max;
- psk export plugin; (отсюда)
- psk import script; (отсюда)
- smd плагины; (отсюда)

p.s.: вообще же хочу заметить, что конвертирование моделей держится на чистом и очень прокачанном энтузиазме. Как бы ни хотелось всё автоматизировать всё равно придётся сидеть и думать и разбираться, как и что и почему!
Выше указал примеры полностью подходящие на данный момент к играм:

- The Wheel of Time (1999)
- X-COM: Enforcer (2000)
- Lineage II (2002)
- Unreal Tournament 2003 (2002)
- Devastation (2003)
- Desert Thunder (2003)
- Postal Fudge Pack (2003)
- Magic: The Gathering - Battlegrounds (2003)
- Tom Clancy's Rainbow Six 3: Raven Shield (2003)
- Harry Potter and the Prisoner of Azkaban (2004)
- Shark Tale (2004)
- Unreal Tournament 2004 (2004)
- Tribes: Vengence (2004)
- Spiderman 2 (2004)
- Unreal Championship 2: The Liandri Conflict (2005)
- SWAT 4 (2005)
- Land of the Dead: Road to Fiddler's Green (2005)
- Kung Fu: Deadly Arts (2006)
- Landmass (2007)
- BioShock (2007)
- Redneck Kentucky & the Next Generation Chickens (2007)
- Ragnarok Online 2: The Gate of the World (2007)
- Exteel (2007)
- Marine Sharpshooter IV (2008)
- Huang Yi (HE) Online (2008)
- Loco (2009)
- Killing Floor (2009)
- RoboBlitz (2006)
- Stranglehold (2007)
- BlackSite: Area 51 (2007)
- Alliance of Valiant Arms (2007)
- Medal of Honor: Airborne (2007)
- Monster Madness: Battle for Suburbia (2007)
- Mass Effect (2007)
- Warmonger: Operation Downtown Destruction (2007)
- Unreal Tournament 3 (2007)
- Lost Odyssey (2007)
- Hour of Victory (2007)
- Legendary (2008)
- Mortal Kombat vs. DC (2008)
- Rise of the Argonauts (2008)
- Turok (2008)
- Brothers In Arms: Hell's Highway (2008)
- Army of Two (2008)
- American McGee's Grimm (2008)
- Crimecraft (2008)
- Damnation (2008)
- Frontlines: Fuel of War (2008)
- Gears of War 2 (2008)
- Mirror's Edge (2008)
- Nurien (2008)
- Parabellum (2008)
- The Last Remnant (2008)
- Turning Point: Fall of Liberty (2008)
- 50 Cent: Blood on the Sand (2009)
- Batman: Arkham Asylum (2009)
- Black College Football: BCFX: The Xperience (2009)
- Fairytale Fights (2009)
- Huxley (2009)
- Magna Carta 2 (2009)
- Mortal Online (2009)
- Planet 51 (2009)
- Section 8 (2009)
- Shadow Complex (2009)
- Saw: The Video game (2009)
- X-Men Origins: Wolverine (2009)
- Borderlands (2009)
- Unreal Development Kit (UDK) (2009)

- Half-Life и все аддоны + cs
- Half-Life 2 и все аддоны + css
- Sin Episode 1
- Dark messiah of Might and Magic
- Vampire: the Masquerade - Bloodlines
- Battlefield 1942
- Doom 3 + аддоны
- Prey
- Quake 4
- Far Cry
- GTA Vice City и San Andreas (в GTA3 нет скелетной анимации)
- Neverwinter Nights + все аддоны
- Neverwinter Nights 2 (кажется)
- Rome Total War (старенькая стратегия)
- TES4: Oblivion + аддоны
- Fallout 3 + аддоны
- Return to the Castle Wolfenstein
- Warcraft 3
- Warhammer40k
- Star Wars Knight of the Old Republic (кажется)
- Civilization 4
- Loki
- Star Trek Bridge Commander
- Freedom Force
- Freedom Force vs the 3rd Reich
- Morrowind
- Dark Ages of Camelot
- Megami Tensei: Imagine
- Florensia
- Requiem: Bloodymare
- Atlantica Online
- Worldshift
- STALKER
- AION MMORPG
- Resident Evil 5
- Devil May Cry 4
- Lost Planet

Собрал практически все, что смог. По мере появления желания надеюсь превратить этот текст в туториал с картинками толкованием. Не могу найти ничего подобного в рамках русского комьюнити.