Зделал обычную сферу в 3ds Max, кинул на ниё свой материал. Экспортонул получившуюся модель в *.3ds формат...
добавляю её так:
scene::IAnimatedMesh* fireballMesh = pSmgr->getMesh("media/models/fireball/fireball.3ds");
fireballMesh->setMaterialFlag(video::E_MATERIAL_FLAG::EMF_LIGHTING, true);
почему модель серого цвета, а не зелёного как я выставлял ???
вопрос - ты файл с настройками материалов закинул куда надо?если есть настройки материалов,то создаётся ещё один файл
6opoDuJIo я вроде и невидел такого файла... ща просто недома, а куда его потом закидывать... типа положить вместе с *.3ds
да
но это только может быть
попробуй свою модель экспортировать в .obj и там 100% будет .mtl файл
это и есть файл настроек материалов для .obj файла
.obj сделанный в maya 100% совместим с иррлихтом
6opoDuJIo сенкс, дома попробую...
ну как?получилось?думаю да,Если ты не написал ещё)
судя по всему надо просто добавить материал или вы думали что он по щучьему велению натягивается? :) надо бы еще экспортнуть материал (я право незнаю как это делается, но думаю это делается) в какой нить файл типа .jpg (например), а потом
irr::video::ITexture* tex = driver->getTexture("material.jpg"); irr::scene::IAnimatedMesh* fireballMesh = pSmgr->getMesh( "media/models/fireball/fireball.3ds"); irr::scene::IAnimatedMeshSceneNode = smgr->addAnimatedMeshSceneNode( fireballMesh, 0, -1, vector3df( x,y,z) ); sn->setMaterialFlag( irr::video::EMF_LIGHTING, true ); sn->setMaterialTexture( 0, tex);
а если увиденное не шибко обрадует, то либо заменить true на false в третьей строке... либо поднести свечу... шучу :) либо расположить по близости объекта источник света.
Юпи - просто добавь воды (с) реклама
P.s. если я правильно прочитал, то парень пользуется 3d max, а не maya
материалы натягиваются как раз,по щучьему велению,надо только их скопировать вместе с моделью
чо вы парите друг другу мозги.я тоже по началу шороъхнулся,но когда скопировал всё,что входит в материалы модели, я только её добавил,и получил полностью текстурированный уровень,добавленный одной строкой кода=)
прикольная информация, но это особенности формата .obj, а в случае с .3ds только описанный мною вариант.
можно еще и в B3D экспортировать, там тоже текстура и настройки материала грузятся автоматом вместе с моделью + в инете легко найти плагин для Макса, B3D PipeLine называется
Сделал модель и две текстуры (diffuse, opacity)
Ни как не могу применить правильно opacity-текстуру.
Либо весь объект полупрозрачный и белый (нужные части прозрачны), либо просто основная текстура(diffuse).
Подскажите, как надо.
Самый простой вариант - текстура с альфа-каналом (например tga), MaterialType = EMT_TRANSPARENT_ALPHA_CHANNEL_REF
Я уже думал об этом, и использую альфа-канал когда рисую деревья и кусты. Надеялся понять как это реализовать с помощью opacity текстуры.
Всем привет! Недавно начал юзать движок и столкнулся с многими проблемами. Одной из таких проблем - применение текстур к объекту. Для моделинга использовал 3ds max. В 3ds max - е создал модельку игральной кости и применил к ней материал Multi/Sub-Object, в котором для каждой грани игральной кости, применил свою отдельную difuse bitmap карту текстуры. Дальше для всей модели применил модификатор UVW Maping (с параметром - box). Экспортировал модель в 3ds формат в ту же папку откуда грузил текстуры (так же важно чтобы текстура была с коротким именем). У меня например это были текстуры с именами от one.bmp ... до six.bmp (для каждой грани игральной кости соответственно). Включил эту папку в проект и все заработало. Единственное пока еще не могу разобраться с тем как делать развертку текстуры, чтобы она лежала одним файлом, а не как у меня целых шесть.
вот что получилось ) осталось настроить правильно свет.
PS так же необходимо учитывать размер текстуры (чтобы она была в двойках) .....64x64......256x256....512x512 и т.д.
Тема в архиве.