Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   простая трансформация объекта (http://www.flasher.ru/forum/showthread.php?t=194032)

nikasdf 06.02.2013 20:49

простая трансформация объекта
 
Вложений: 1
здравствуйте

Есть 3д стол (картинка) мне надо на него уложить карты (объекты)

Как можно это сделать "просто" не используя 3д движки и т д ?

expl 06.02.2013 21:23

Можете ручками разложить MovieClip-ы,
оттрансформировав сдвигом/сжатием,
пронумеровать ("position0", "position1", ....") и по имени брать нужный MovieClip.
А в эти MovieClip-ы уже просто класть карты без трансформаций через addChild - они автоматом станут правильными.

nikasdf 06.02.2013 21:55

Спасибо за ответ, идея понятна. А если без 'ручек' то как решить программным путем ?

Wolsh 06.02.2013 22:22

повернуть и сжать по Y.

nikasdf 06.02.2013 23:22

Цитата:

Сообщение от Wolsh (Сообщение 1119483)
сжать по Y.

это как ? Если не сложно выложите кусок кода

dimarik 07.02.2013 00:02

Код AS3:

obj.rotation = angle;
obj.scaleY = 0.7;


expl 07.02.2013 00:34

Кстати, не обязательно каждое возможное положение карты добавлять отдельно
Можно один трансформированный мувиклип возле каждого игрока положить,
а в него программно добавлять несколько карт, как будто работаете на обычной плоскости
(просто у вас картинка готовая уже и не динамическая - что кодом, что руками придется "хардкодить" координаты и параметры трансформаций, так уж лучше руками визуально)

nikasdf 08.02.2013 23:23

Цитата:

Сообщение от expl (Сообщение 1119495)
Кстати, не обязательно каждое возможное положение карты добавлять отдельно
Можно один трансформированный мувиклип возле каждого игрока положить,
а в него программно добавлять несколько карт, как будто работаете на обычной плоскости
(просто у вас картинка готовая уже и не динамическая - что кодом, что руками придется "хардкодить" координаты и параметры трансформаций, так уж лучше руками визуально)


Я сделал мувиклип(table) вложил туда 3д картинку + трансформированный мувиклип, работает. Но как только у мувиклипа(table) меняется положение то трансформированный мувиклип уже не совпадает с проекцией картинки

expl 09.02.2013 15:51

Цитата:

Но как только у мувиклипа(table)
А вы там не 3d-трансформации часом делали? А то при перемещении угол от объекта к камере может меняться и соответственно отображение.

Там есть обычные плоские трансформации - сдвиг и растяжение/сжатие (у вас вроде стол - изометрическая проекция - и использовать 3d-трансформаций не требуется)

Т.е проблемы с тем, что 3d трансформации используете, или я не угадал?

nikasdf 10.02.2013 05:28

Вложений: 1
Цитата:

Сообщение от expl (Сообщение 1119921)
А вы там не 3d-трансформации часом делали?

Точно использую 3d-трансформацию для того чтобы повернуть по Х

Цитата:

А то при перемещении угол от объекта к камере может меняться и соответственно отображение.
Спасибо понятно

Цитата:

Там есть обычные плоские трансформации - сдвиг и растяжение/сжатие (у вас вроде стол - изометрическая проекция - и использовать 3d-трансформаций не требуется)
Извините что туплю но буду очень признателен если ткнете носом, покажите пример.

FLA файл с картами и столом в аттаче

expl 10.02.2013 13:57

К сожалению, FlashIDE вообще никакой не установлено :(
Поэтому на пальцах:
Делай раз:
Код:

            <---> - курсор
        [ ]-----[ ]-----[ ]
    /                /
  [ ]              [ ]
  /                /
[ ]-----[ ]-----[ ]

Делай два:
Код:

           
        [ ]--
    /    --[ ]--
  [ ]            ---[ ]
  /                /  /|
[ ]--            [ ]  / - курсор
    --[ ]--    /  \/
            ---[ ]

Ну и подровнять:
Код:

           
        [ ]--
    /    -[ ]-
  [ ]          --[ ]
  /              /
[ ]--        <-[ ]-> - курсор
    -[ ]-    /
          --[ ]


nikasdf 11.02.2013 15:18

Вложений: 1
Цитата:

Сообщение от expl (Сообщение 1120026)
К сожалению, FlashIDE вообще никакой не установлено :(
Поэтому на пальцах:
Делай раз:
Код:

            <---> - курсор
        [ ]-----[ ]-----[ ]
    /                /
  [ ]              [ ]
  /                /
[ ]-----[ ]-----[ ]

Делай два:
Код:

           
        [ ]--
    /    --[ ]--
  [ ]            ---[ ]
  /                /  /|
[ ]--            [ ]  / - курсор
    --[ ]--    /  \/
            ---[ ]

Ну и подровнять:
Код:

           
        [ ]--
    /    -[ ]-
  [ ]          --[ ]
  /              /
[ ]--        <-[ ]-> - курсор
    -[ ]-    /
          --[ ]


Еще раз спасибо за такое тщательное объяснение но все равно перспективой трансформации без 3д трансформа не добиться

Думаю есть два варианта решение проблемы

1) Использовать простой 3д движок
или
2) Нарисовать трансформированные карты и засунуть их во второй фрейм

Черные карты: фрее трансформ
Красные карты: 3д трансформ

Hauts 11.02.2013 15:32

Цитата:

Черные карты: фрее трансформ
Что-то совсем уж вы их перегнули. Не показательный пример же.

Wolsh 11.02.2013 16:17

У Вас на первом скриншоте была изометрия, а здесь перспектива.
Давайте уже как-то определимся, как бы это ну совсем не одно и то же.

Добавлено через 13 минут
Цитата:

Думаю есть два варианта решение проблемы
3) Создать пустой спрайт-контейнер, придать ему нужное положение и перспективу (как у поверхности стола), и просто размещать в нем нормальные, не трансформированные, карты.


Часовой пояс GMT +4, время: 13:04.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.