3DCenter.ru

Здравствуйте, гость ( Вход | Регистрация )

82 страниц V   1 2 3 > »   
Reply to this topicStart new topic
> Я только начинаю изучать Maxscript
C00PER
сообщение 24/06/2004, 03:06
Сообщение #1


Take him away!
Иконка группы

Группа: Модераторы
Сообщений: 2 575
Регистрация: 31/10/2002
Из: оттуда
Пользователь №: 1 040



Раз уж появилась традиция создавать такие темы, создадим её и тут, а то всякие шарики да стекляшки уже заезжены до дыр, а столь важный аспект Макса, как Скриптинг, особого интереса у населения не вызывает. Надо это упущение исправлять dry.gif

Вообщем, предлагаю здесь высказыать различные идеи, бредовые и не очень, а также методы их реализации. Новичкоф не обижать! RTFM - тоже дело нелёгкое и не сразу всем даётся tongue.gif

Ну и для начала выложу своё сегодняшнее творение - творение, которое появилось на свет после нескольких лет повторения одной и той же процедуры. Обычная ситуация - нам надо простому плоскому объекту назначить материал с текстурой. После создания материала и выбора битмапки, нам надо, чтобы текстура легла в соответствии со своими пропорциями, а не растягивалась по размеру объекта. Для этого, мы идём в UVW Map, и там жмём Bitmap Fit, там открывается окно выбора файла, там мы ищем этот файл, и хорошо если мы в редакторе материалов, при выборе битмапки воспользовались максовской листалкой, тогда она битмапка сразу видна в окне Bitmap Fit, а если мы битмапку закинули драг-н-дропом, например из ACDSee, то листать придётся с чёрт знает какого места. Вощем целая история. Ну вот, этот скрипт ставит большую и жирную точку в этом занятии, он автоматически ставит размер гизмы равный размеру битмапки. Всё бы замечательно, но мне хотелось бы добавить ещё одну функцию - чтобы он анализировал, по какой из осей объект шире всего, и применял UVWMap на эту ось. Я хотел считать размеры объекта командами $.min и $.max, но столкнулся с каким-то непредсказуемым поведением - они как-то странно ведут себя в локальных коорднатах (или я чего проглядел): по идее in coordsys local $.min должен показывать минимальное значение боундинг бокса, независимо от угла наклона объекта, однако стоит только чуть повернуть объект, как он выдаёт какие-то немыслимые значения.

Вот и скрипт. Самое разумное ему место - в менюхе Utilities в Редакторе материалов wink.gif

Сообщение отредактировал C00PER - 24/06/2004, 03:49
Go to the top of the page
 
+Quote Post
C00PER
сообщение 25/06/2004, 01:04
Сообщение #2


Take him away!
Иконка группы

Группа: Модераторы
Сообщений: 2 575
Регистрация: 31/10/2002
Из: оттуда
Пользователь №: 1 040



Сделал проверку габаритов. cool.gif Теперь плоскость гизмы параллельна оси самого большого габарита объекта, но стандартными средствами макса мне сделать это не удалось, поэтому нужны Avguard Extensions
Go to the top of the page
 
+Quote Post
Desead
сообщение 25/06/2004, 08:45
Сообщение #3


Знаток
Иконка группы

Группа: Участник
Сообщений: 257
Регистрация: 16/05/2003
Из: SPb
Пользователь №: 2 235



Тема интересная, но глядя на подобные форумы понимаешь, что максскрипт мало кого интересует по разным соображениям ,а жаль, можно значительно упростить себе жизнь. Вообщем развивать тему надо. Рано или поздно допишу скрипт который ищет нужный битмап по всем материалам, и ещё умеет искать объект с нужным ID, если кого заинтересует то выкину, говорите. Нужно конечно это гейм девелоперам в первую очередь
Go to the top of the page
 
+Quote Post
DIA-Doca
сообщение 25/06/2004, 17:23
Сообщение #4


MaxMan
Иконка группы

Группа: Пользователи
Сообщений: 223
Регистрация: 18/05/2004
Из: Краснодар
Пользователь №: 5 897



По-моему гей мекерам в первую очередь нужны скрипты, переводящие модели и анимации во внешние, открытые файлы.
Именно этим я щаз и занимаюсь.

Нас тут четверо собралось, игру делать будем. Вот я и взялся за это дело.
Go to the top of the page
 
+Quote Post
Desead
сообщение 25/06/2004, 17:28
Сообщение #5


Знаток
Иконка группы

Группа: Участник
Сообщений: 257
Регистрация: 16/05/2003
Из: SPb
Пользователь №: 2 235



QUOTE(DIA-Doca @ Jun 25 2004, 18:23)
По-моему гей мекерам в первую очередь нужны скрипты, переводящие модели и анимации во внешние, открытые файлы.
Именно этим я щаз и занимаюсь.

Нас тут четверо собралось, игру делать будем. Вот я и взялся за это дело.

это тоже надо, но это самая первая и очевидная проблема, а в период работы их ещё гора возникнет
Go to the top of the page
 
+Quote Post
Desead
сообщение 25/06/2004, 19:00
Сообщение #6


Знаток
Иконка группы

Группа: Участник
Сообщений: 257
Регистрация: 16/05/2003
Из: SPb
Пользователь №: 2 235



а кто-нить знает как скриптом нажать утилитку reset xform, я так понял можно воспользоваться $.transform но вот пока не понял как
или я всё таки не туда двигаюсь ?
Go to the top of the page
 
+Quote Post
C00PER
сообщение 28/06/2004, 07:23
Сообщение #7


Take him away!
Иконка группы

Группа: Модераторы
Сообщений: 2 575
Регистрация: 31/10/2002
Из: оттуда
Пользователь №: 1 040



Desead, вот тебе улучшенный ResetXform, который сохраняет информацию о вращении, то бишь обнуляет только масштаб.

http://scriptspot.com/download.asp?ID=1937

Или просто напиши ResetXForm $ , но это только для макса 6

А у меня появился ламерский вопрос: Как можно назначить одному Эррею в качестве цвета другой Эррей.
Например у меня есть:

CODE
sel = selection as array
col = for s in sel collect s.wirecolor


затем я например всем объектам назначаю один общий цвет, а потом мне надо для каждого объекта, находящегося в Эррее Sel назначить его исходный цвет, который лежит в Эррее Col

Вот что находится в первом Эррее:
CODE
#($Teapot:Teapot02 @ [15.607554,34.097706,0.000000], $Teapot:Teapot03 @ [-26.646317,-26.881655,0.000000], $Teapot:Teapot01 @ [-55.240364,7.516488,0.000000])


Вот что во втором:
CODE
#((color 223 189 154), (color 27 33 248), (color 4 230 216))


Как второе назначить первому ну никак не могу въехать smile.gif Пожалуйста не оставляйте без внимания сей пост, ибо в качестве благодарности вы получите довольно забавный скрипт
rolleyes.gif

Сообщение отредактировал C00PER - 28/06/2004, 08:05
Go to the top of the page
 
+Quote Post
Desead
сообщение 28/06/2004, 09:35
Сообщение #8


Знаток
Иконка группы

Группа: Участник
Сообщений: 257
Регистрация: 16/05/2003
Из: SPb
Пользователь №: 2 235



to COOPER: благодарю за помощь, вечером погляжу как там с цветом обстоят дела, чего если получится, то напишу
Go to the top of the page
 
+Quote Post
C00PER
сообщение 28/06/2004, 15:28
Сообщение #9


Take him away!
Иконка группы

Группа: Модераторы
Сообщений: 2 575
Регистрация: 31/10/2002
Из: оттуда
Пользователь №: 1 040



Ещё вопрос, совсем простенький lamer.gif
Есть две Point3... Как из них получить Matrix3? Пдразумевается что Scale будет равным 1 unsure.gif

edit: Свою ошибку понял, конечно сморозил полную херню, нужна ещё одна Point3. Будем копать дальше..

Сообщение отредактировал C00PER - 28/06/2004, 17:56
Go to the top of the page
 
+Quote Post
pepper
сообщение 28/06/2004, 22:45
Сообщение #10


Наш человек
Иконка группы

Группа: Участник
Сообщений: 415
Регистрация: 10/07/2003
Из: Киев, Украина
Пользователь №: 2 786



QUOTE
для каждого объекта, находящегося в Эррее Sel назначить его исходный цвет, который лежит в Эррее Col
.........
Как второе назначить первому ну никак не могу въехать

Сам ответил на свой вопрос и не заметил: rolleyes.gif

for j=1 to col.count do sel[j].wirecolor=col[j]

ЗЫ:Моделил дом для игрушки и в результате чего я тоже написал пару скриптиков по UVW mapping'y.Есть: применение для каждого полигона одного UVW, перестановка(обмен) 2-х UVW координат (с 2-х полигонов)...были еще идеи только сейчас не вспомню...
Go to the top of the page
 
+Quote Post
DIA-Doca
сообщение 29/06/2004, 09:20
Сообщение #11


MaxMan
Иконка группы

Группа: Пользователи
Сообщений: 223
Регистрация: 18/05/2004
Из: Краснодар
Пользователь №: 5 897



QUOTE(pepper @ Jun 28 2004, 23:45)
ЗЫ:Моделил дом для игрушки и в результате чего я тоже написал пару скриптиков по UVW mapping'y.

О, так мы коллеги? Тоже гейм мекер?
Так вот почему ты UVW мэппингу так помог быстро?! Кстате спасибо ещё раз!
Go to the top of the page
 
+Quote Post
Shiva
сообщение 29/06/2004, 09:46
Сообщение #12


Красив как Бог, умен как Дъявол
Иконка группы

Группа: Хранители порядка
Сообщений: 4 478
Регистрация: 16/06/2002
Из: Одесса
Пользователь №: 8



У меня другая идея...
Как насчет продолжить доброе дело мешьтулз??
У меня есть идеи инструменов, которых мне не хватает...
например все наверно знаете Grow и Shrink?!
И наверно знаете Ring и Loop?!
так вот.. очень часто мне надо Совмещенная команда.. т.е. чтобы Ring не окутывал кольцем всю модель а выделял лишь ближайшие 2е грани...
Смогете?..
а то у меня всейчас времени нету разбираться и вспоминать максскрипт..
Go to the top of the page
 
+Quote Post
Desead
сообщение 29/06/2004, 10:11
Сообщение #13


Знаток
Иконка группы

Группа: Участник
Сообщений: 257
Регистрация: 16/05/2003
Из: SPb
Пользователь №: 2 235



to COOPER: ну вот, тебе уже ответили, а я ещё даже не посмотрел :-)

по поводу выделений loop тоже вопрос у меня есть. Кто нибудь занет сам алгоритм по которому происходит выделение, на глаз понятно что там последовательные рёбра. Есть некоторые мысли но чтобы не изобретать с нуля велосипед, лучше его апгрейдить так сказать.

to Shiva: а мештулз автор больше не изменяет ??? я как то не задавался просто этим вопросом. Я давно пытался поглядеть алгоритм с помощью которого он реализует свои функции, но либо мне в тот момент знаний скрипта не хватало, либо моего образования, вообщем я понял только поверхностно. И с твоим выделением тоже разберёмся :-) мне 2 дня осталось до сдачи этапа, и постараюсь тебе помочь, если никто другой не опередит конечно.
Go to the top of the page
 
+Quote Post
C00PER
сообщение 29/06/2004, 11:31
Сообщение #14


Take him away!
Иконка группы

Группа: Модераторы
Сообщений: 2 575
Регистрация: 31/10/2002
Из: оттуда
Пользователь №: 1 040



QUOTE
Сам ответил на свой вопрос и не заметил:

Дык, ламер-с rolleyes.gif Спасибо! Ура! Работает! Ждите прикольную феньку cool.gif

QUOTE
У меня есть идеи инструменов, которых мне не хватает...
например все наверно знаете Grow и Shrink?!
И наверно знаете Ring и Loop?!
так вот.. очень часто мне надо Совмещенная команда.. т.е. чтобы Ring не окутывал кольцем всю модель а выделял лишь ближайшие 2е грани...

Хехе, мне тоже этого нехватает dry.gif

QUOTE
Я давно пытался поглядеть алгоритм с помощью которого он реализует свои функции, но либо мне в тот момент знаний скрипта не хватало, либо моего образования, вообщем я понял только поверхностно. И с твоим выделением тоже разберёмся

да, самый лучший выход это попытаться разобраться в готовом скрипте, как я и делаю tongue.gif

Сообщение отредактировал C00PER - 29/06/2004, 11:36
Go to the top of the page
 
+Quote Post
C00PER
сообщение 30/06/2004, 11:36
Сообщение #15


Take him away!
Иконка группы

Группа: Модераторы
Сообщений: 2 575
Регистрация: 31/10/2002
Из: оттуда
Пользователь №: 1 040



А можно-ли каким-нибудь образом сохранить материалы нескольких объектов для того чтобы назначить их им же в дальнейшем? Ну наподобие вот того примера с цветами.
Go to the top of the page
 
+Quote Post
Bots
сообщение Системное сообщение






82 страниц V   1 2 3 > » 
Reply to this topicStart new topic

3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0

 



RSS Текстовая версия Сейчас: 29/03/2024 - 02:15