у меня такой вопрос - как сделать возможным(при движении любого объекта, в сцене), автоматическое
передвижение слайдера времени( на панели анимации), на заранее определенное расстояние(к примеру 3 кадра)
Вот к примеру, двигаем сферу, и ползунок автоматически передвигается на 3 кадра и создает ключик.
При этом скрипт должен быть автоматическим, то есть включил его - работает для всех объектов(Даже если объекты Vertex, Скелет, и тд),
Как такое реализовать.
Много времени это сэкономит
P.S.
Мое Javascript(и то я его только начал познавать) мнение на этот счет
max script еще не изучал
var timesliderMove = slidertime
var GetFunctioOfmovingobject (orGetCurrientObjPosition тут запрашиваем позицию у объекта в сцене, если она меняется то у нас True) = dTheFunction
var Fnew Function = dThefunction
var MoveSliderFunction = MoveSlider
var addkeys = add keys function
var getFnctnsliderposition = slider position
function(var i = 0; i<0;i++)
По идее нужно запрашивать позицию слайда(чтоб не получилось что слайд на 37 кадре и мы его снуляем до 3), если она 0 то перемешаем на 3( или как она в макс скрипте добавляется)
if (Fnew Function == true)
timeSlider(Тут я реалино не знаю не использовал maxscript, могу только догадыватся) (slider position)Короче тут я реально запутался вроде еще If Добавлять надо Move slider (незнаю) to 3 || add key)
Пример для частного случая:
1. В новой сцене создаем одну сферу. Запускаем скрипт.
2. Перемещаем сферу с помощью мыши, используя Transform gizmos.
global igorznag_ms_temp=0;
fn move_slider=
(
if(mouse.buttonStates[1]==true and igorznag_ms_temp==0)then
(igorznag_ms_temp=1;animButtonState=true;slidertime+=3)
if(mouse.buttonStates[1]==false)then (igorznag_ms_temp=0;)
)
deleteAllChangeHandlers id:#igorznag_ms
when transform objects changes id:#igorznag_ms handleAt:#redrawViews do move_slider();
when geometry objects changes id:#igorznag_ms handleAt:#redrawViews do move_slider();
Мм не мог бы ты скинуть ссылки где есть примеры работы с Vertex и Костями.
Может моих знаний в JavaScript хватит для того чтобы адаптировать скрипт ко всем объектам - которые есть в сцене,
НО скрипт получился классный, спасибо
P.S.
igorznag_ms_temp - так обозначается сфера ?
Сделать бы под него отдельную менющку где выбираешь на сколько ячеек передвигать слайдер и выбирать к каким именно объектам, костям,Vertex, или просто объектам.
Спасибо разобрался с Bone, но только конкретным тем что в 3ds max созданное мной(За то сейчас создает для него ключики, по идее можно сделать скрипт который будет брать все bone(Правило - Getboneinscene), и к примеру располагать их в Gue, и просто при нажатии на нужную bone в Gui Скрипте, будет применяться ваше правило - как вам идея, ) ,
вот бы правило - для любых созданных bone, использовать ваши - скрипт правила.
Интересно как выделить bone, по средствам скрипта.
Если такое правило создать ro_ms_выделитьлюбыеbone то ваш скрипт будет применяться практически ко всему что можно анимировать, ну если только камеры и еще мелкие детали.
Доступ к резюме доступен только по пакетному доступу HR менеджерам зарегистрированных компаний. Узнать о вариантах корпоративных пакетов можно по ссылке.
GrndWrath
у меня такой вопрос - как сделать возможным(при движении любого объекта, в сцене), автоматическое
передвижение слайдера времени( на панели анимации), на заранее определенное расстояние(к примеру 3 кадра)
Вот к примеру, двигаем сферу, и ползунок автоматически передвигается на 3 кадра и создает ключик.
При этом скрипт должен быть автоматическим, то есть включил его - работает для всех объектов(Даже если объекты Vertex, Скелет, и тд),
Как такое реализовать.
Много времени это сэкономит
P.S.
Мое Javascript(и то я его только начал познавать) мнение на этот счет
max script еще не изучал
var timesliderMove = slidertime
var GetFunctioOfmovingobject (orGetCurrientObjPosition тут запрашиваем позицию у объекта в сцене, если она меняется то у нас True) = dTheFunction
var Fnew Function = dThefunction
var MoveSliderFunction = MoveSlider
var addkeys = add keys function
var getFnctnsliderposition = slider position
function(var i = 0; i<0;i++)
По идее нужно запрашивать позицию слайда(чтоб не получилось что слайд на 37 кадре и мы его снуляем до 3), если она 0 то перемешаем на 3( или как она в макс скрипте добавляется)
if (Fnew Function == true)
timeSlider(Тут я реалино не знаю не использовал maxscript, могу только догадыватся) (slider position)Короче тут я реально запутался вроде еще If Добавлять надо Move slider (незнаю) to 3 || add key)
igorznag
1. В новой сцене создаем одну сферу. Запускаем скрипт.
2. Перемещаем сферу с помощью мыши, используя Transform gizmos.
GrndWrath
А с костями и вертерх поинтами это уже отдельно ?
Мм не мог бы ты скинуть ссылки где есть примеры работы с Vertex и Костями.
Может моих знаний в JavaScript хватит для того чтобы адаптировать скрипт ко всем объектам - которые есть в сцене,
НО скрипт получился классный, спасибо
P.S.
igorznag_ms_temp - так обозначается сфера ?
Сделать бы под него отдельную менющку где выбираешь на сколько ячеек передвигать слайдер и выбирать к каким именно объектам, костям,Vertex, или просто объектам.
igorznag
Нет
GrndWrath
А в прочем ) где можно раздобыть полный список, того как в скрипте выглядит сфера или кость.
Ну то что вы объявляли - ro_ms
igorznag
FAQ форума MaxScript
MAXScript Reference
GrndWrath
вот бы правило - для любых созданных bone, использовать ваши - скрипт правила.
Интересно как выделить bone, по средствам скрипта.
Если такое правило создать ro_ms_выделитьлюбыеbone то ваш скрипт будет применяться практически ко всему что можно анимировать, ну если только камеры и еще мелкие детали.
GrndWrath
GrndWrath
То есть удалил 5-ый ключ, нажал ALT+Z Ключ вернулся и TimeSlider вернулся на положение 5-того ключа.
Я знаю знаю, надо хоть как то и мне принять в этом участие, немного самому подумать.
Но вообще очень классный получается скрипт.