Перейти к содержимому



  • Вы не можете создать новую тему
  • Авторизуйтесь для ответа в теме
Сообщений в теме: 2

#1
OFFLINE   metal_01

metal_01

    Member

  • Пользователи
  • PipPip
  • 92 сообщений
Привет. Меня попросили сделать кубик-рубик в афтере. Собственно сам кубик (4/4) создать не проблема, проблема его покрутить.
Поэтому было решено все сделать на экспрешенах. И так понеслось: создал одну грань (скажем переднюю, смотрящую на камеру). Поступил просто - сделал прекомпоз из картинки, в другом прекомпозе шейпом (Stensel Alfa) вырезал нужный квадратик (естественно все на экспрешенах) и т.д. - каждый квадратик в своем прекомпозе. Далее собрал их все в композиции, перевел в 3Д и вынес Ancher Point по оси Z на размер кубика, так чтобы центр всегда оставался в центре и с его помощью можно было легко вращать нужный кусочек. Далее решил все вращения привязать к 16 слайдерам (т.к. кубик 4 на 4), по 4 слайдера на каждую ось вращения. и дальше случился затык.
 
1 проблема - отвязка от одного слайдера и привязка к другому. т.е. возьмем первый кусочек - он находиться в позиции 1 - 1 - 1 (1 в 1горизонтальном ряду, 1 в первом вертикальном ряду, и 1 в 1 продольном ряду (ну по оси Z)) и если мы скажем повернули на 180 градусов по часовой стрелке (по оси Z) то он окажеться уже в позиции 4 - 4 - 1, т.е. перейдет в правый нижний угол, но останеться в первом продольном ряду. соответственно на него уже не должны влиять повороты 1 горизонтальных и вертикальных рядов (а он же изначально был именно там).
 
2 проблема - сохранение значения сращения. т.е. их прошлого примера, добавим вращение по горизонтали (по оси Y) в 1 ряду на 90 градусов, а затем вернем 1 кубик на место (т.е. вращение по Z на -180 градусов), и кубик, который мы повернули пернули первый раз, окажется на своем первоначальном месте, но по горизонтали (оси Y) мы его не вращали, а значение на слайдере уже 90 градусов.
 
Вот, прицепил простенький проектик с 1 гранью.
 
P.S. не отправляйте меня на aescript, тот скриптик с кубиком я уже скачал и посмотрел, моё мнение - чтобы с его помощью сделать нормальный сбор/разбор кубика - надо еще постараться и продумать каждый шаг вплоть до какую грань на сколько крутить и в какое время. Хотя автор все равно молодец.
P.S.S. Возможно есть и другой способ создания, но я что то уперся пока в этот. и Да - не предлагайте пожалуйста сделать это в 3D.
 
 


#2
OFFLINE   Rey

Rey

    Regular Member

  • Пользователи
  • PipPipPip
  • 134 сообщений

Были мысли сделать КР, но после мысленного анализа я так и не представил как делать перелинковку граней куба. Мне кажется это не возможно. Только плагин и в нем крутить массив. Или скрипт который сначала анализирует все повороты и после каждого поворота подменяет картинки граней. Т.е. как бы сбрасывается после каждого поворота грани на 90', а грани подменяются


Сообщение отредактировал Rey: 17 Ноябрь 2014 - 17:08


#3
OFFLINE   metal_01

metal_01

    Member

    Топикстартер
  • Пользователи
  • PipPip
  • 92 сообщений

Или скрипт который сначала анализирует все повороты и после каждого поворота подменяет картинки граней. Т.е. как бы сбрасывается после каждого поворота грани на 90', а грани подменяются

Скрип то как рас есть. но он не очень удобный, т.к. в нем, ты правильно сказал, нужно сперва все повороты рассчитать по всем осям  и по времени... 

у меня тут появилась идейка - а что если через вектор попробовать? Т.е. если у 1 кубика (который в положении 1-1-1) вектор -Z и по Y выше середины - одно условие. положений то именно у этого квадратика всего то 16, правда каждый квадратик так прописывать.... затрахаешся.

Где то встречал реализацию в синьке на экспрессо, но сейчас уже не вспомню... а ту, которую нашел - от 2007 года, и ссылки уже не работают


Сообщение отредактировал metal_01: 19 Ноябрь 2014 - 07:57






Темы с аналогичным тегами кубик, кубик-рубик, экспрешены, выражения

Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных