<< Prev 1 2 |
Автор | Сообщение |
Душелов мастер Группа: Участники Сообщений: 115 |
Добавлено: 18-09-2009 09:44 |
не получается. пробовал модели форматов 3ds и obj, открывал данные модели в других 3D макетах- материал назначался нормально, то есть указывал путь к папке с материалами и в программах модель была с наложенной текстурой. А как правильно назначать материал объекту в данном случае? |
|
Душелов мастер Группа: Участники Сообщений: 115 |
Добавлено: 19-09-2009 16:41 |
дак в чем может быть проблема? Понимаю что самая главная- недостаток знаний, навыков... | |
Gecko Big Boss Группа: Администраторы Сообщений: 719 |
Добавлено: 19-09-2009 18:18 |
Выкладывай модель (3ds), приводи свой код загрузки. Иначе помочь никак не смогу. Потому что модели у всех разные, грузятся не всегда одинаково хорошо (иногда вообще не грузятся). | |
Душелов мастер Группа: Участники Сообщений: 115 |
Добавлено: 20-09-2009 08:30 |
Дом+Текстуры mesh=FreeformCreate('DATA/OBJECT/dom1.obj',global.scene); ObjectSetMaterial(mesh,'mnormal'); ObjectPitch(mesh,90); ObjectSetScale(mesh,10,10,10); ObjectSetPosition(mesh,0,0,0); ObjectRotate(mesh,0,0,0); matlib=MaterialLibraryCreate(); MaterialLibraryActivate(matlib); MaterialLibrarySetTexturePaths(matlib,'data/textures'); ObjectSetMaterial(mesh,'matlib'); Ещё вопрос вдогонку: имеет ли значение в таком варианте кода(или подхода если код не верен) расширение файлов текстур? То есть если на дом в блендере я натянул текстуры PNG а в папке они лежат в формате JPEG. |
|
Gecko Big Boss Группа: Администраторы Сообщений: 719 |
Добавлено: 20-09-2009 08:41 |
Так, пока скачивается модель, выскажусь относительно кода. Во-первых, что за материал 'mnormal' назначается модели? Если надо, чтобы текстуры для фейсгрупп грузились автоматически, этого делать не нужно. Во-вторых, почему matlib создается ПОСЛЕ создания объекта, когда надо ДО? Дело в том, что при загрузке модели с текстурами все материалы грузятся в текущую активную библиотеку. А куда они будут грузится, если библиотека еще не создана? В третьих, зачем ObjectSetMaterial(mesh,'matlib') ? matlib - это не материал, а библиотека, применить к объекту ее нельзя. Короче, для начала попробуй такой код: matlib=MaterialLibraryCreate(); MaterialLibraryActivate(matlib); MaterialLibrarySetTexturePaths(matlib,'data/textures'); mesh=FreeformCreate('DATA/OBJECT/dom1.3ds',global.scene); ObjectPitch(mesh,90); ObjectSetScale(mesh,10,10,10); ObjectSetPosition(mesh,0,0,0); ObjectRotate(mesh,0,0,0); |
|
Gecko Big Boss Группа: Администраторы Сообщений: 719 |
Добавлено: 20-09-2009 09:09 |
Ты же модель в оbj выложил! А оbj данные о текстурах сохраняет в отдельном файле (*.mtl или *.mlb, не помню точно). Так что давай 3ds. Но сначала сам его попробуй загрузить, как я написал. | |
Душелов мастер Группа: Участники Сообщений: 115 |
Добавлено: 20-09-2009 10:11 |
за архив извиняюсь, не тот выложил. весит 1 метр, уменьшен вес текстур и модель в формате 3ds сейчас попробую модель загрузить с твоим кодом. | |
Gecko Big Boss Группа: Администраторы Сообщений: 719 |
Добавлено: 20-09-2009 10:46 |
Конечно имеет. В этом-то и вся проблема. Материалы в модели ссылаются на файлы wood_19.bmp roof_22.png surface_12.p WoodFine.bmp tile_17.bmp windows_29.p tile_02.bmp surface_04.p которых нет, так как ты сконвертировал все в JPG. Ты уж разберись с этим. Выложи вариант модели, которая использует JPG. |
|
Душелов мастер Группа: Участники Сообщений: 115 |
Добавлено: 20-09-2009 10:50 |
проверил, работает, только я похоже где-то в блендере с материалами перемудрил. Вообще не понравился мне что-то его редактор материалов... | |
Душелов мастер Группа: Участники Сообщений: 115 |
Добавлено: 20-09-2009 11:32 |
проверил на другом доме(на который давал видео) все нормально отображается, ну если не считать что группы сглаживания слетели при экспорте. | |
Душелов мастер Группа: Участники Сообщений: 115 |
Добавлено: 24-09-2009 16:20 |
а как ты это проверил? просто открыл в каком-то 3D пакете? |
|
Gecko Big Boss Группа: Администраторы Сообщений: 719 |
Добавлено: 24-09-2009 17:00 |
Открыл в Anim8tor'е. |
Offtop.ru © 2003 |