Форум программистов, компьютерный форум, киберфорум
Unity, Unity3D
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/18: Рейтинг темы: голосов - 18, средняя оценка - 4.67
844 / 739 / 342
Регистрация: 22.09.2012
Сообщений: 5,034

Активные элементы интерфейса

16.12.2015, 12:06. Показов 3371. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть игра например Hill Climb Racing она на скрине я распаковал .apk файл и нашел внутри игры огромное количество файлов картинок, мелодий...

Ну а теперь ближе к делу! На экране есть педаль - это рисунок .png формата.
При нажатии ее она проваливается "меняется изображение на нажатую педаль" ну и происходят там события уже в игре.

Так вот вопрос как там эта педаль может быть организована?
Ее можно нарисовать как спрайт но тогда на спрайт нельзя нажать будет то есть он не активный элемент, а нам такое ненадо.
Ее можно поместить в компонент UI- image но у него нету события On Click()

Картинку педали можно поместить в компонент UI- Button и только тогда можно оформить клик мыши или тап на телефоне?

Вот и весь вопрос! картинку нужно сделать как кликабельный объект!

Интересно как там в оригинале игры.. Вот бы ее исходник раздобыть!
Миниатюры
Активные элементы интерфейса   Активные элементы интерфейса  
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
16.12.2015, 12:06
Ответы с готовыми решениями:

Картинки и активные элементы
Здравствуйте! Я начинающий программист. Подскажите с чего начать выполнение задания, так как сам я теряюсь. Задание прикреплено к теме....

Как вывести только не активные элементы инфоблока
Здравствуйте. Подскажите как можно вывести только не активные элементы инфоблока. Есть 2 страницы с компонентом bitrix:news. На одной...

Тест. Основные понятия теории цепей. Идеализированные пассивные и активные элементы
Здравствуйте, помогите пожалуйста. 1. По какому параметру участки электрической цепи классифицируются на активные и пассивные? 1)...

11
 Аватар для Cr0c
753 / 600 / 204
Регистрация: 06.08.2015
Сообщений: 2,432
16.12.2015, 12:32
Спрайт на кнопке в новом UI
0
36 / 11 / 1
Регистрация: 14.09.2015
Сообщений: 60
16.12.2015, 13:57
Картинку педали можно поместить в компонент UI-
почему бы не вставить в кнопку ? тем более у кнопки есть стейт который отвечает за нажатие.
1
 Аватар для Cr0c
753 / 600 / 204
Регистрация: 06.08.2015
Сообщений: 2,432
16.12.2015, 15:05
А этот код будет вызывать событие при удержании, а не только при отжатии кнопки...
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
using System;
using UnityEngine;
using UnityEngine.Events;
using UnityEngine.EventSystems;
using UnityEngine.UI;
 
public class RepeatButton : Selectable
{
    [Serializable]
    public class ButtonHoldEvent : UnityEvent { }
 
    [SerializeField]
    private ButtonHoldEvent m_OnHold = new ButtonHoldEvent();
 
    private bool _isHold = false;
 
    protected RepeatButton()
    { }
 
    public ButtonHoldEvent onHold
    {
        get { return m_OnHold; }
        set { m_OnHold = value; }
    }
 
    public override void OnPointerDown(PointerEventData eventData)
    {
        base.OnPointerDown(eventData);
        _isHold = true;
    }
 
    public override void OnPointerUp(PointerEventData eventData)
    {
        base.OnPointerUp(eventData);
        _isHold = false;
    }
 
    void Update()
    {
        if (!IsActive() || !IsInteractable() || !_isHold)
            return;
        m_OnHold.Invoke();
    }
}
1
9933 / 2936 / 494
Регистрация: 05.10.2013
Сообщений: 7,965
Записей в блоге: 232
16.12.2015, 22:16
На UIButton нужно просто заменить "Color Tint" на "Sprite Swap". Это видно на скринах ниже. Прикрепил пример.
Миниатюры
Активные элементы интерфейса   Активные элементы интерфейса  
Вложения
Тип файла: zip GasPedal.zip (130.6 Кб, 5 просмотров)
1
844 / 739 / 342
Регистрация: 22.09.2012
Сообщений: 5,034
19.12.2015, 00:36  [ТС]
Цитата Сообщение от Malkkiri Посмотреть сообщение
тем более у кнопки есть стейт который отвечает за нажатие.
Да оказалось поменять нажать и поменять спрайт можно даже как показал 8Observer8 и без кода (ну код на обработку событий тока потом напишу)

Cr0c, Нормально, но он какой то слишком сложный код, наверно проще парой строкой код оформить через GetKeyDown заместо GetKey

8Observer8, С кнопками разобрались, с круглыми кнопками тоже, со спидометром тоже- это два слоя, спидометр и стрелка выше слоем с трансформом в нужное время спрайты в png формате работают в этом напрвлении.

Вот еще разобраться с ползунком что на картинке?
Сам рисунок может быть элемент не активный например имага, но его же нужно обработать.
У меня пока такие версии - под ним лежит UI - ползунок с прозрачным фоном, он и обрабатывает данные.
Вторая версия сбоку узкой полосой отведена активная тап область и считывается просто положение пальца на экране.

Как сделать проще? При чем еще нужно учесть что ручку ползунка тоже поднимать и опускать надо.
Миниатюры
Активные элементы интерфейса  
0
36 / 11 / 1
Регистрация: 14.09.2015
Сообщений: 60
19.12.2015, 12:21
NIKOLAYY, можно slider кастомизировать. я его для hp-бара использовал.
0
 Аватар для Cr0c
753 / 600 / 204
Регистрация: 06.08.2015
Сообщений: 2,432
19.12.2015, 13:01
NIKOLAYY,
Цитата Сообщение от NIKOLAYY Посмотреть сообщение
через GetKeyDown заместо GetKey
так я про UI...
0
844 / 739 / 342
Регистрация: 22.09.2012
Сообщений: 5,034
21.12.2015, 01:12  [ТС]
Цитата Сообщение от Malkkiri Посмотреть сообщение
можно slider кастомизировать. я его для hp-бара использовал.
И что получилось?


Народ можно еще любой спрайт в сцене кликабельным сделать!
Чтоб заработало на спрайт обязательно одеть коллайдер и нацепить код клика:

C#
1
2
3
4
5
6
7
8
9
using UnityEngine;
using System.Collections;
 
public class MemoryCard : MonoBehaviour {
 
    public void OnMouseDown() { // Эта функция вызывается после щелчка на объекте.
        Debug.Log("testing 1 2 3"); // Пока мы только генерируем текстовое сообщение, выводимое на консоль.
    }
}
0
36 / 11 / 1
Регистрация: 14.09.2015
Сообщений: 60
22.12.2015, 15:18
NIKOLAYY, примитивный hp бар довольно классно работает
0
9933 / 2936 / 494
Регистрация: 05.10.2013
Сообщений: 7,965
Записей в блоге: 232
22.12.2015, 15:22
Цитата Сообщение от Malkkiri Посмотреть сообщение
hp бар
hp бар ещё удобно делать с помощью Image и его свойства Filled.

UPDATE. Точнее, я таймер делал, а hp бар - не пробовал
Изображения
 
1
844 / 739 / 342
Регистрация: 22.09.2012
Сообщений: 5,034
11.01.2016, 21:00  [ТС]
Народ разобрался, держите кому надо будет!
Кидаем на форму UI- компонент Slider, вставляем Background ему спрайт шкалы, в окно Handle в инспекторе вставляем спрайт самой бобышки, подгоняем спрайты по ширине и высоте.

Получаем рабочий ползунок!
Размножаем если требуется и цепляем на свой код, применяем в своих проэктах.

Сами ползунки в виде psd- файлов можно скачать здесь:
http://all-free-download.com/f... 64453.html

Кому лень качать готовые png- файлы ползунка можно взять у меня.
Миниатюры
Активные элементы интерфейса  
Изображения
  
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
11.01.2016, 21:00
Помогаю со студенческими работами здесь

Элементы интерфейса Windows
Здравствуйте. Хотел спросить где можно найти элементы из Windows 10 для Visual Studio Картинки внизу: button, textbox, checkbox и т.д

Выпадающие элементы интерфейса
Добрый день, мне нужно сделать раскрывающиеся и скрывающиеся элементы интерфейса. В моем случае этоTStringGrid и TValueListEditor, для того...

перестали перемещаться элементы интерфейса
В какой-то момент элементы интерфейса перестали перетаскиваться при нажатии на их "корешок" и попытке передвинуть возникает...

Чтобы не мигали элементы интерфейса
Как сделать чтобы не мигали элементы интерфейса когда меняешь их размеры ( по ходу выполнения программы)

DialogFragment не отображаются все элементы интерфейса
Здравствуйте. Пишу программу для андроид, среда eclipse classic 4.2.2, последние обновления android sdk. описание проблемы: В...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru