Старкрафт 2 модельный конвертер
|
|
nikikin | Дата: Суббота, 27 Февраля 2010, 13:41:41 | Сообщение # 1 |
Группа: Проверенные
Сообщений: 5397
Награды: 3
Репутация: 1805
Блокировки:
| Я искал для Харби анпаркер для Ваххи но нарыл нечто другое: Нарыл в интернете вот что. Quote Everything seems to be in order. This script will convert any .m3 model to .obj, keeping the mesh and texture map. Bones and animations are not yet supported (Bones is the next step). The php script must either be uploaded to a web server and the path of the model given to it as an argument or (the way I do it), download php-cli and run it from command line # php M3toOBJ.php myPath/to/model.m3 Code <?php # Starcraft 2 M3 to OBJ Converter v0.1 # Currently Imports: Mesh, Texture Map # Does Not Yet Support: Bones, Materials, Geosets, Animations ######################### # $argv[1] is a user editable field, ######################### $temp = explode(".m3", $argv[1]); $file = $argv[1]; $path = $temp[0]; echo("Exporting Model $path.m3 to $path.obj\n\n"); $file = fopen($file, 'rb') or die("Failed to open $file!\n"); if(fread($file,4) != "33DM") die("Failed! File is not a StarCraft 2 model!\n"); fseek($file, 4); # find where tags start $index = unpack(V, fread($file, 4)); # search for __8U "5F 5F 38 55" tag for vertex offset $offset = $index[1]; while(1){ fseek($file, $offset+16); $string = fread($file, 4); if ($string == '__8U'){ $offset+=20; break; } $offset++; } fseek($file, $offset); $index = unpack(V, fread($file, 4)); fseek($file, $offset+4); $maxVerts = unpack(V, fread($file, 4)); # maximum extents $maxVerts[1] = $maxVerts[1] + $index[1]; fseek($file, $offset+32); # face data $indexFaces = unpack(V, fread($file, 4)); fseek($file, $offset+36); $maxFaces = unpack(V, fread($file, 4)); $maxFaces[1] = $maxFaces[1]*2 + $indexFaces[1]; $i = 0; $offset = $index[1]; while(1){ if ($offset >= $maxVerts[1]) break; for($j=0;$j<3;$j++){ # read verts fseek($file, $offset); $temp = unpack(f, fread($file, 4)); $vert[$i] = $temp[1]; $offset +=4; $i++; } $offset+=12; for($j=0;$j<2;$j++){ # read UV fseek($file, $offset); $temp = unpack(v, fread($file, 2)); $uv[$k] = $temp[1] / 2046; $offset +=2; $k++; } fseek($file, $offset); # some model files have 4 null bytes after uv, let's hope there's no more special cases if (fread($file,1) != "FF") $offset+=4; $offset+=4; } $i=0; $offset = $indexFaces[1]; while(1){ # read faces if ($offset >= $maxFaces[1]) break; fseek($file, $offset); $temp = unpack(v, fread($file, 2)); $face[$i]=$temp[1]; $i++; $offset+=2; } $out = fopen($path . ".obj", 'w+'); for($i=0; $i<sizeof($vert); $i+=3){ fwrite($out, "v " . $vert[$i] . " " . $vert[$i+1] . " " . $vert[$i+2] . "\n"); } for($i=0; $i<sizeof($uv); $i+=2){ fwrite($out, "vt " . $uv[$i] . " " . $uv[$i+1] . "\n"); } for($i=0; $i<sizeof($face); $i+=3){ fwrite($out, "f " . ($face[$i]+1) . "/" . ($face[$i]+1) . " " . ($face[$i+1]+1) . "/" . ($face[$i+1]+1) . " " . ($face[$i+2]+1) . "/" . ($face[$i+2]+1) . "\n"); } fclose($out); echo("Done!\n\n"); ?> Кто поможет разобратся как делать или попробует написать консольный или графический експортер прошу писать сюда
|
|
|
|
nikikin | Дата: Суббота, 27 Февраля 2010, 13:48:56 | Сообщение # 2 |
Группа: Проверенные
Сообщений: 5397
Награды: 3
Репутация: 1805
Блокировки:
|
|
|
|
|
Nan0 | Дата: Суббота, 27 Февраля 2010, 14:06:07 | Сообщение # 3 |
10 уровень
Группа: Проверенные
Сообщений: 2828
Награды: 2
Репутация: 280
Блокировки:
| Фигня модельки в Ск2 низкополигональные, классными их делает шейдинг,так же навороченная система текстур и многое другое, чего Вар3 не подерживает Лучше ищите способы из Вов в Ск2
|
|
|
|
nikikin | Дата: Суббота, 27 Февраля 2010, 14:13:55 | Сообщение # 4 |
Группа: Проверенные
Сообщений: 5397
Награды: 3
Репутация: 1805
Блокировки:
| Nan0, какраз в старкрафте формат моделей .м3, а в вове .м2, подумай есть ли различия?
|
|
|
|
Nan0 | Дата: Суббота, 27 Февраля 2010, 14:15:47 | Сообщение # 5 |
10 уровень
Группа: Проверенные
Сообщений: 2828
Награды: 2
Репутация: 280
Блокировки:
| nikikin, есть, ибо не поддерживаються
|
|
|
|
nikikin | Дата: Суббота, 27 Февраля 2010, 14:18:51 | Сообщение # 6 |
Группа: Проверенные
Сообщений: 5397
Награды: 3
Репутация: 1805
Блокировки:
| ты ландшафтер, иди в раздел ландшафта
|
|
|
|
Nan0 | Дата: Суббота, 27 Февраля 2010, 14:27:59 | Сообщение # 7 |
10 уровень
Группа: Проверенные
Сообщений: 2828
Награды: 2
Репутация: 280
Блокировки:
| nikikin, а ты даже не модельщик, а конвертщик) И зачем такая тема в общении вообще?
Сообщение отредактировал Nan0 - Воскресенье, 28 Февраля 2010, 03:03:40 |
|
|
|
MaSer | Дата: Суббота, 27 Февраля 2010, 14:58:21 | Сообщение # 8 |
Котобог
Группа: Стримеры
Сообщений: 3574
Награды: 13
Блокировки:
| А я кот.
|
|
|
|
checkers]95 | Дата: Суббота, 27 Февраля 2010, 15:28:08 | Сообщение # 9 |
8 уровень
Группа: Заблокированные
Сообщений: 746
Награды: 1
Репутация: 297
Блокировки:
| nikikin, ты зря у орков мейн убрал, лучше бы алтарь.
^это что-бы не забывали офк!
|
|
|
|
Like_a_Spirit | Дата: Суббота, 27 Февраля 2010, 16:07:44 | Сообщение # 10 |
Группа: Ветераны
Сообщений: 3470
Награды: 6
Репутация: 1743
Блокировки:
| а я томат
|
|
|
|
MaSer | Дата: Суббота, 27 Февраля 2010, 16:12:41 | Сообщение # 11 |
Котобог
Группа: Стримеры
Сообщений: 3574
Награды: 13
Блокировки:
| Ты цитрус, умник.
|
|
|
|
checkers]95 | Дата: Суббота, 27 Февраля 2010, 16:35:11 | Сообщение # 12 |
8 уровень
Группа: Заблокированные
Сообщений: 746
Награды: 1
Репутация: 297
Блокировки:
| А я чек, просто чек. ^___^
^это что-бы не забывали офк!
|
|
|
|
Urievoll | Дата: Суббота, 27 Февраля 2010, 19:08:47 | Сообщение # 13 |
10 уровень
Группа: Ветераны
Сообщений: 2659
Награды: 10
Репутация: 959
Блокировки:
| Он томат
третий страйк! бэттер аут!
|
|
|
|
ShadowFriend | Дата: Суббота, 27 Февраля 2010, 20:31:06 | Сообщение # 14 |
7 уровень
Группа: Проверенные
Сообщений: 430
Награды: 0
Репутация: 65
Блокировки:
| а я человек 361
|
|
|
|
Nan0 | Дата: Воскресенье, 28 Февраля 2010, 01:52:31 | Сообщение # 15 |
10 уровень
Группа: Проверенные
Сообщений: 2828
Награды: 2
Репутация: 280
Блокировки:
| А я киборг ТТ
|
|
|
|
nikikin | Дата: Воскресенье, 28 Февраля 2010, 02:35:50 | Сообщение # 16 |
Группа: Проверенные
Сообщений: 5397
Награды: 3
Репутация: 1805
Блокировки:
| Ты никто) даже не ИИ
|
|
|
|
Nan0 | Дата: Воскресенье, 28 Февраля 2010, 03:04:04 | Сообщение # 17 |
10 уровень
Группа: Проверенные
Сообщений: 2828
Награды: 2
Репутация: 280
Блокировки:
| nikikin, осорбление + толстый троллинг
|
|
|
|
R[a]ndom | Дата: Воскресенье, 28 Февраля 2010, 04:33:37 | Сообщение # 18 |
Учитель класса "Б"
Группа: Проверенные
Сообщений: 785
Награды: 5
Репутация: 432
Блокировки:
| hello. i'm apple
Раньше человеку говорили в лицо: "Вы идиот?", а теперь более толерантно: "Вы тролль?"© Ru.Adekvat создан для проявления ненависти
|
|
|
|
ShadowFriend | Дата: Воскресенье, 28 Февраля 2010, 16:44:42 | Сообщение # 19 |
7 уровень
Группа: Проверенные
Сообщений: 430
Награды: 0
Репутация: 65
Блокировки:
| he apple infa 100%
|
|
|
|
Murador | Дата: Воскресенье, 28 Февраля 2010, 18:52:04 | Сообщение # 20 |
Группа: Проверенные
Сообщений: 1221
Награды: 1
Репутация: 446
Блокировки:
| а я предлагаю не писать кто ты есть^^ итак очевидно
|
|
|
|
checkers]95 | Дата: Воскресенье, 28 Февраля 2010, 19:33:02 | Сообщение # 21 |
8 уровень
Группа: Заблокированные
Сообщений: 746
Награды: 1
Репутация: 297
Блокировки:
| А он яблоко.
^это что-бы не забывали офк!
|
|
|
|
Nan0 | Дата: Воскресенье, 28 Февраля 2010, 21:26:35 | Сообщение # 22 |
10 уровень
Группа: Проверенные
Сообщений: 2828
Награды: 2
Репутация: 280
Блокировки:
| Quote (ShadowFriend) he apple infa 100% учи английский, а?
|
|
|
|
Ak0n™ | Дата: Воскресенье, 28 Февраля 2010, 21:30:33 | Сообщение # 23 |
10 уровень
Группа: Проверенные
Сообщений: 1575
Награды: 0
Репутация: 568
Блокировки:
| Я йода >< кто не знал nikikin, выгляедт прикольно) А можешь извлекать юнитов?
|
|
|
|
Nan0 | Дата: Воскресенье, 28 Февраля 2010, 21:38:51 | Сообщение # 24 |
10 уровень
Группа: Проверенные
Сообщений: 2828
Награды: 2
Репутация: 280
Блокировки:
| Ak0n™, он умеет только конвертировать, а не анимировать
|
|
|
|
Ak0n™ | Дата: Воскресенье, 28 Февраля 2010, 21:48:14 | Сообщение # 25 |
10 уровень
Группа: Проверенные
Сообщений: 1575
Награды: 0
Репутация: 568
Блокировки:
| Nan0, мне кажется ты его не дооцениваешь
|
|
|
|