Среда, 24 Апреля 2024, 11:43

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
Форум игроделов » Записи участника » Lertmind [593]
Результаты поиска
LertmindДата: Воскресенье, 11 Сентября 2016, 17:10 | Сообщение # 61 | Тема: Вращение и поворот обьекта
заслуженный участник
Сейчас нет на сайте
ZVEN, сделать можно по-разному, если через OnTriggerStay:
Код
void OnTriggerStay(Collider other)
{
    if (мышкаНажата && other.CompareTag("тег_точки"))
    {
        // Всё хорошо
    }
}

Чтобы каждый раз не вызывался OnTriggerStay, можно сделать через OnTriggerEnter / OnTriggerExit, где сначала переменная bool выставляется в true, потом в false, а когда нажимается мышь проверяется эта переменная.
Другой способ, это делать Raycast и тому подобное.

Цитата ZVEN ()
как остановить вращение при использовании RotateArround
Просто не вызывай RotateAround :) Условие ставишь.
LertmindДата: Воскресенье, 11 Сентября 2016, 14:58 | Сообщение # 62 | Тема: Вращение и поворот обьекта
заслуженный участник
Сейчас нет на сайте
ZVEN, не понятно что за "другим объектом" и куда нажимается мышь. Объекты можно сравнивать по имени, тегу, наличию компонентов.
LertmindДата: Суббота, 10 Сентября 2016, 23:31 | Сообщение # 63 | Тема: Вращение и поворот обьекта
заслуженный участник
Сейчас нет на сайте
ZVEN, когда вынес в корень, координаты должны были измениться на мировые, это надо учесть. Можешь кинуть проект, я посмотрю.
LertmindДата: Суббота, 10 Сентября 2016, 22:46 | Сообщение # 64 | Тема: Вращение и поворот обьекта
заслуженный участник
Сейчас нет на сайте
ZVEN, у прямоугольника есть родитель? Предполагаю проблема в pivot point.
LertmindДата: Суббота, 10 Сентября 2016, 22:33 | Сообщение # 65 | Тема: Вращение и поворот обьекта
заслуженный участник
Сейчас нет на сайте
ZVEN, должно работать, если написать transform.RotateAround(new Vector3(0f, -1.9f, 0f), Vector3.forward, -20 * Time.deltaTime);
Кстати, в твоём коде была ошибка из-за того, что ты не изменял angle и позиция всегда была одна и та же.
LertmindДата: Суббота, 10 Сентября 2016, 22:16 | Сообщение # 66 | Тема: Вращение и поворот обьекта
заслуженный участник
Сейчас нет на сайте
ZVEN, сейчас проверил, прямоугольник движется как стрелка часов:
Код
using UnityEngine;

public class RotateAroundPoint : MonoBehaviour
{
    void Update()
    {
        transform.RotateAround(new Vector3(0f, 0f, 0f), Vector3.forward, -20 * Time.deltaTime);
    }
}

Добавлено (10 сентября 2016, 22:16)
---------------------------------------------
Про тригонометрические функции погорячился, забыл что в матрицах поворота это тоже используется, хотя есть кватернионы. Но я не знаю как это реализовано в Unity, просто лучше не использовать свои велосипеды, скорее всего в Unity это работает эффективнее.

LertmindДата: Суббота, 10 Сентября 2016, 21:59 | Сообщение # 67 | Тема: Вращение и поворот обьекта
заслуженный участник
Сейчас нет на сайте
RotateAround в помощь - крутит вокруг точки в пространстве. Чаще всего использование тригонометрических функций не нужно и их стоит избегать.
LertmindДата: Пятница, 09 Сентября 2016, 17:42 | Сообщение # 68 | Тема: Ctrl + V
заслуженный участник
Сейчас нет на сайте
Nana Kitade–Kesenai Tsumi
LertmindДата: Среда, 07 Сентября 2016, 18:42 | Сообщение # 69 | Тема: Вопрос-[ответ] по Unity
заслуженный участник
Сейчас нет на сайте
mrFrankenstein, Текстурный атлас, то есть поместить все кадры из gif в одну текстуру и сделать анимацию обычным для Unity способом через редактор спрайтов, окно Animation и Animator. Для автоматизации лучше написать дополнение для редактора, чтобы сразу выставлять нужные задержки кадров. Вообще gif никто не использует при разработке, потому что все анимации и так разложены по кадрам и гифки некачественные.

Добавлено (07 сентября 2016, 18:42)
---------------------------------------------

Цитата mrFrankenstein ()
как сделать анимированный спрайт
Анимированных спрайтов не бывает. Гугли про создание анимации в Unity.
LertmindДата: Среда, 07 Сентября 2016, 13:53 | Сообщение # 70 | Тема: Вопрос-[ответ] по Unity
заслуженный участник
Сейчас нет на сайте
Barbatos, я написал об этом "Использовать gif - тупость конечно, но если очень надо проще сделать разложение в атлас со всеми настройками.".
LertmindДата: Среда, 07 Сентября 2016, 12:59 | Сообщение # 71 | Тема: Вопрос-[ответ] по Unity
заслуженный участник
Сейчас нет на сайте
Vicka, зависимость от System.Drawing.dll, шикарно.
mrFrankenstein, гугл даёт неплохой проект UnityGifDecoder (видюшка от него https://www.youtube.com/watch?v=WRHKV7BEKhc). Конечно для UI придётся адаптировать и как пишет автор, могут быть проблемы производительности на мобильных устройства.
Использовать gif - тупость конечно, но если очень надо проще сделать разложение в атлас со всеми настройками.
LertmindДата: Вторник, 06 Сентября 2016, 16:15 | Сообщение # 72 | Тема: Вопрос-[ответ] по Unity
заслуженный участник
Сейчас нет на сайте
mrFrankenstein, варианты:
Код
Компонент c = hit.transform.GetComponent<Компонент>();
Компонент c = hit.collider.GetComponent<Компонент>();
Компонент c = hit.rigidbody.GetComponent<Компонент>();
LertmindДата: Вторник, 06 Сентября 2016, 16:11 | Сообщение # 73 | Тема: Корутины
заслуженный участник
Сейчас нет на сайте
Судя по описанию твой косяк, но ты почему-то не предоставил код.
LertmindДата: Вторник, 06 Сентября 2016, 14:17 | Сообщение # 74 | Тема: Проблема с лаунчером
заслуженный участник
Сейчас нет на сайте
Tymonr, это потому что уже исправили, ошибка была на сервере. Прочитай ответ:
I'm guessing it was a server issue. Looks to be working now! Thanks everyone for posting!
LertmindДата: Вторник, 06 Сентября 2016, 01:13 | Сообщение # 75 | Тема: Проблема с лаунчером
заслуженный участник
Сейчас нет на сайте
Ждать фикса. Похоже это у многих https://answers.unrealengine.com/questio....it.html.
LertmindДата: Воскресенье, 04 Сентября 2016, 23:28 | Сообщение # 76 | Тема: Проблема со стабилизацией после движения объекта
заслуженный участник
Сейчас нет на сайте
Tymonr, зачем ты привёл код, который соответствует Mathf.LerpUnclamped? И опечатка здесь: (1u), должно быть (1 - mu).
LertmindДата: Воскресенье, 04 Сентября 2016, 21:36 | Сообщение # 77 | Тема: Проблема со стабилизацией после движения объекта
заслуженный участник
Сейчас нет на сайте
urbemAngeli, сейчас догадался, что тебе проще сравнить t:
Код
float t = Time.time / speed;
y = Mathf.SmoothStep(transform.position.y, endPos, t);
if (t > 1) // Движемся пока не будем у цели
{
    transform.position = new Vector3(transform.position.x, y, transform.position.z);
}

speed конечно надо переименовать и добавить startTime, как в документации.
LertmindДата: Воскресенье, 04 Сентября 2016, 21:23 | Сообщение # 78 | Тема: Проблема со стабилизацией после движения объекта
заслуженный участник
Сейчас нет на сайте
SkorpyX, ага, пример смотрел из документации? Ещё раз на пальцах:
Код
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour {
    public float minimum = 10.0F;
    public float maximum = 20.0F;
    public float duration = 5.0F;
    private float startTime;
    void Start() {
        startTime = Time.time; // Время когда объект создался
    }
    void Update() {
        float t = (Time.time - startTime) / duration; // После создания объекта t = 0, потом t = 1
        // когда прошедшее время от создания объекта равно продолжительности анимации,
        // после равно больше 1, но это не важно, так как будет ограничено maximum
        transform.position = new Vector3(
            Mathf.SmoothStep(minimum, maximum, t), 0, 0); // SmoothStep принимает t линейно относительно времени,
        // но возвращает значение с замедлением от minimum до maximum
    }
}


Сообщение отредактировал Lertmind - Воскресенье, 04 Сентября 2016, 21:24
LertmindДата: Воскресенье, 04 Сентября 2016, 21:08 | Сообщение # 79 | Тема: Проблема со стабилизацией после движения объекта
заслуженный участник
Сейчас нет на сайте
Для сравнения float используй Mathf.Approximately.

Цитата SkorpyX ()
а почему у вас Time.time, а не Time.deltaTime?
Потому что туда передаются значения от 0 до 1 с линейным характером.
UPD: Даже пример из документации это предполагает https://docs.unity3d.com/ScriptReference/Mathf.SmoothStep.html, только у него без startTime и speed некорректно назван, потому что это переменная определяет промежуток времени, а не скорость.


Сообщение отредактировал Lertmind - Воскресенье, 04 Сентября 2016, 21:13
LertmindДата: Пятница, 02 Сентября 2016, 06:29 | Сообщение # 80 | Тема: Magic Tester
заслуженный участник
Сейчас нет на сайте
Кроме названия, что ещё будет генерироваться у заклинания? Если только название, то это плохая идея.
Форум игроделов » Записи участника » Lertmind [593]
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг