Слайдер изображений на Unity3D

Форум для самых маленьких, а так же тех, кому недосуг читать справку самостоятельно.

Слайдер изображений на Unity3D

Сообщение misha007killer 07 окт 2012, 10:42

Ребята, нужна ваша помощь. Делаю работу и нужен слайдер изображений.
Не знаю как реализовать. Надо типа этого:
http://www.htmldrive.net/items/demo/1206/jQuery-mouse-scroll-images-slideshow
Зарание спасибо.
misha007killer
UNец
 
Сообщения: 32
Зарегистрирован: 11 дек 2011, 11:05

Re: Слайдер изображений на Unity3D

Сообщение Левш@ 07 окт 2012, 13:10

А что не получаеться ?
_X.cor.R (Prologue)
Аватара пользователя
Левш@
Адепт
 
Сообщения: 4073
Зарегистрирован: 14 окт 2009, 16:34
Откуда: IBERIA
Skype: bars_levsha
  • Сайт

Re: Слайдер изображений на Unity3D

Сообщение AndreyMust19 07 окт 2012, 14:37

Делаете ScrollView, ползунок или слайдер. Внутри scrollView в зависимости от текущей позиции ползунка рисуете картинку.
Проще говоря - сделайте обычный ListBox,только вместо текстовых строк показывайте картинки.
Нужна помощь? Сами, сами, сами, сами, сами... делаем все сами
AndreyMust19
Адепт
 
Сообщения: 1119
Зарегистрирован: 07 июн 2011, 13:19

Re: Слайдер изображений на Unity3D

Сообщение misha007killer 07 окт 2012, 16:59

Спасибо большое за ответы, но можете ли вы объяснить по подробнее.
misha007killer
UNец
 
Сообщения: 32
Зарегистрирован: 11 дек 2011, 11:05

Re: Слайдер изображений на Unity3D

Сообщение Berk_off 22 окт 2012, 13:34

У меня тоже подобная задача появилась, решение нашел почти сразу. Но под Android у меня не работает нормально. Прошу помочь.

Синтаксис:
Используется csharp
//позиция скрола
public Vector2 scroll = Vector2.zero;
//смещение при касании экрана
public int offsetMove;


void OnGUI () {
        //создаем ScrollView в два раза шире текущего окна. Для примера
        scroll = GUI.BeginScrollView (new Rect (0, 0, Screen.width, Screen.height),
                scroll, new Rect (0, 0, Screen.width * 2, Screen.height));
        //кнопки
        GUI.Button(new Rect (20, 40, 40, 120, "Кнопка");
        GUI.Button(new Rect (80, 40, 40, 120, "Кнопка 2");
GUI.EndScrollView ();
}

void Update(){
        //если речь идет о мыши, то просто работаем с ней
        #if UNITY_EDITOR  ||  UNITY_WEBPLAYER
                //нажали левую кнопку, получили смещение
                if (Input.GetMouseButtonDown(0)){
                        offsetMove = (int) (scrollPlanet.x + Input.mousePosition.x);
                }
                //удерживаем нажатой, получаем положение скрола исходя от смещения
                if (Input.GetMouseButton(0)){
                        scroll = new Vector2(offsetMove - Input.mousePosition.x, 0);
                }
                #endif
                // если речь идет  о мобильных системах, то почти тоже самое. Хотя у меня тут лаги, еще и Remote странно работает (скорее не работает)
                #if  UNITY_ANDROID
                // Вычисляем точку начала смещения
                if (Input.touchCount == 1 && Input.GetTouch(0).phase == TouchPhase.Began) {
                        offsetMove = (int) (scrollPlanet.x + Input.mousePosition.x);
                }
                if (Input.touchCount == 1 && Input.GetTouch(0).phase == TouchPhase.Moved) {
                        scrollPlanet = new Vector2(offsetMove - Input.GetTouch(0).deltaPosition.x, 0);
                }
                #endif
}


 
Berk_off
UNец
 
Сообщения: 25
Зарегистрирован: 31 янв 2011, 11:47


Вернуться в Почемучка

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 24