Результаты поиска
|
|
IlyaKos | Дата: Суббота, 21 Мая 2022, 08:06 | Сообщение # 1 | Тема: Ограничение вращения двухмерного объекта (решено) |
участник
Сейчас нет на сайте
| Приводи к локальному ротейшну.
|
|
| |
IlyaKos | Дата: Воскресенье, 22 Августа 2021, 03:45 | Сообщение # 2 | Тема: Лучшие рок песни с 2001 по 2005 год, от Rus|Verm |
участник
Сейчас нет на сайте
| А как же Static-X - The Only (2003) и Drawning Pool - Bodies (2001)?
|
|
| |
IlyaKos | Дата: Воскресенье, 28 Февраля 2021, 03:06 | Сообщение # 3 | Тема: Некорректное срабатывание |
участник
Сейчас нет на сайте
| Попробуй вынести условия в апдейт, и обновляй, когда находишься в триггере.
Код void Update () { UpdateHandUp (); }
void UpdateHandUp () { if (!inTrigger) return;
*код*
}
void OnTriggerStay } if (tag == "hand") inTrigger = true; }
void OnTriggerExit () { if (tag == "hand") inTrigger = false; }
|
|
| |
IlyaKos | Дата: Суббота, 27 Февраля 2021, 14:42 | Сообщение # 4 | Тема: Некорректное срабатывание |
участник
Сейчас нет на сайте
| Так, пока ты в триггере, у тебя переменная постоянно моргает с тру на фолс туда-сюда, поэтому такой результат.
|
|
| |
IlyaKos | Дата: Воскресенье, 21 Февраля 2021, 17:35 | Сообщение # 5 | Тема: Вот мой проект игры в стиле Horror RPG |
участник
Сейчас нет на сайте
| Street Workout, найс.)
|
|
| |
IlyaKos | Дата: Воскресенье, 21 Февраля 2021, 13:43 | Сообщение # 6 | Тема: [РЕШЕНО] Назначение в переменную определенного объекта |
участник
Сейчас нет на сайте
| Можешь повесить какой-нибудь скрипт на дочерний объект и искать его внутри игрока:
переменная = игрок.GetComponentInChildren<Скрипт>()
|
|
| |
IlyaKos | Дата: Воскресенье, 10 Января 2021, 14:23 | Сообщение # 7 | Тема: Про циклы |
участник
Сейчас нет на сайте
| 1. Лучше вместо массива использовать динамический список List<GameObject>. При удалении объекта необходимо будет убирать их из списка через list.Remove (obj). Потом можно перезапустить сцену: if (list.Count == 0) LoadScene. 2. Если все-таки используешь массив, то после удаления объектов останутся нулы. Значит можно использовать System.Linq и проверить количество: int count = mFind.Count (x => x != null).
|
|
| |
IlyaKos | Дата: Пятница, 27 Ноября 2020, 17:27 | Сообщение # 8 | Тема: RigidBody.enabled |
участник
Сейчас нет на сайте
| Не уверен, но вроде можно включать/выключать через rigidbody.detectCollisions = true/false
Сообщение отредактировал IlyaKos - Пятница, 27 Ноября 2020, 17:27 |
|
| |
IlyaKos | Дата: Суббота, 21 Ноября 2020, 05:36 | Сообщение # 9 | Тема: RigidBody |
участник
Сейчас нет на сайте
| rocket.velocity = (target.position - spawn.position).normalized * rocketSpeed
|
|
| |
IlyaKos | Дата: Пятница, 04 Сентября 2020, 06:45 | Сообщение # 10 | Тема: Удаление объекта из массива |
участник
Сейчас нет на сайте
| Лучше подключи System.Linq, и используй динамические листы List<T> вместо массивов. Как я понял, у тебя элементы массива, объекты, удаляются, и ты получаешь нулевую ссылку. Почистить нулы можно так: - если продолжишь использовать массив: mChased = mChased.ToList ().FindAll (x => x != null).ToArray (); - если будешь использовать List: mChased.RemoveAll (x => x == null);
|
|
| |
IlyaKos | Дата: Среда, 02 Сентября 2020, 02:05 | Сообщение # 11 | Тема: Реализация зажатия кнопки |
участник
Сейчас нет на сайте
| Можно в момент нажатия присваивать например isPressed = true, и обновлять, пока тру, а при отжатии isPressed сбрасывать.
|
|
| |
IlyaKos | Дата: Вторник, 25 Августа 2020, 06:39 | Сообщение # 12 | Тема: Работа OnPointerClick [решено] |
участник
Сейчас нет на сайте
| 1) Можешь например ввести булевую переменную, типа bool pickUpAfterMoving; и if (distNow >= 3) { mover.StartMoveAction(this.transform.position, 10f); pickUpAfterMoving = true; }
И как-нибудь запоминать предмет и в апдейте проверить дистанцию, и, в случае pickUpAfterMoving = true вызвать PickUp. Либо как-то еще запоминать очередность действий.
2) Можно с поворотами подрючиться. А еще может быть возможно рендерить этот канвас другой камерой вышестоящим слоем, чтобы переграждал геометрию.
|
|
| |
IlyaKos | Дата: Воскресенье, 05 Июля 2020, 16:43 | Сообщение # 13 | Тема: Есть ли способ сократить эти строки кода |
участник
Сейчас нет на сайте
| Цитата alexsilent ( ) Придётся писать 4 новых функции, чтобы работать с отдельными осями: Код SetX(transform, 1); SetY(transform, 1); SetZ(transform, 1); TurnZ(transform, 1); // для поворота по оси Z
Можешь вот так)
Код void Set (x, y, z, bool setX, bool setY, bool setZ) { if (!setX && !setY && !setZ) return;
Vector3 position = transform.position;
if (setX) position.x = x; if (setY) position.y = y; if (setZ) position.z = z;
transform.position = position; }
и Set (1, 1, 1, true, true, false)
Мне кажется, это будет шустрее, нежели ты будешь 3 метода вызывать.
Сообщение отредактировал IlyaKos - Воскресенье, 05 Июля 2020, 16:50 |
|
| |
IlyaKos | Дата: Четверг, 25 Июня 2020, 12:30 | Сообщение # 14 | Тема: Коллайдеры |
участник
Сейчас нет на сайте
| Попробуй уменьшить Time -> Fixed TimeStep, поставить например 0.01 (дефолт 0.02). Это должно помочь, но из-за того, что физика будет обновляться в 2 раза чаще, возможна потеря фпс.
А на объекте, который двигается и сталкивается, в настройках РБ установи Interpolate и Continuous Dynamic.
И такой вопрос, как крутится объект, физикой?
Сообщение отредактировал IlyaKos - Четверг, 25 Июня 2020, 12:34 |
|
| |
IlyaKos | Дата: Вторник, 23 Июня 2020, 07:32 | Сообщение # 15 | Тема: Движение сферы плеером |
участник
Сейчас нет на сайте
| Цитата SiomonL ( ) Ну можно например так: Гоню я, здесь чтобы ось вращения получить, нужно векторное произведение взять такое Vector3 axis = Vector3.Cross (playerVector, NORMAL), где normal - нормаль к поверхности (можно получить например лучом от игрока)
и
сфера.RotateAround (сфера.position, axis.normalized, * Time.deltaTime * speed)
Сообщение отредактировал IlyaKos - Вторник, 23 Июня 2020, 07:33 |
|
| |
IlyaKos | Дата: Понедельник, 22 Июня 2020, 16:10 | Сообщение # 16 | Тема: Движение сферы плеером |
участник
Сейчас нет на сайте
| Ну можно например так:
Знаем вектор движения плеера - vector Получаем ось вращения: axis = Vector3.Cross (vector, Vector3.up)
сфера.Rotate (axis.normalized * speed)
Сообщение отредактировал IlyaKos - Понедельник, 22 Июня 2020, 16:11 |
|
| |
IlyaKos | Дата: Воскресенье, 07 Июня 2020, 10:55 | Сообщение # 17 | Тема: Unity, как динамично считать заполненность объекта(бутылки)? |
участник
Сейчас нет на сайте
| Первое, что пришло в голову, создать две точки - "дно" и "горлышко".
максимальная высота = (горлышко - дно).у
Затем перебрать в цикле детали и их коллайдеры (или рендереры), чтобы получить наивысшую точку к горлышку через коллайдер (или рендерер).ClosestPoint (горлышко).
Когда получили, сравнить позиции У "дна" и найденной точки: высота = (точка - дно).y
тогда наполненность можно считать равной:
наполненность (%) = высота/ максимальная высота
Либо другая реализация, задаться объёмом бутылки и объемами каждой детали, и высчитывать суммарный занимаемый объём и делить на объём бутылки, чтобы получить процент наполненности.
Сообщение отредактировал IlyaKos - Воскресенье, 07 Июня 2020, 11:00 |
|
| |
IlyaKos | Дата: Вторник, 02 Июня 2020, 06:40 | Сообщение # 18 | Тема: Antichrist [3D, FPS, Old-School, Poland shooter] |
участник
Сейчас нет на сайте
| Судя по частоте апдейтов, всё вышепоказанное было сделано ещё до начала конкурса, учитывая, что у автора и профиль в вк с именем Демон. Удачи.
|
|
| |
IlyaKos | Дата: Воскресенье, 24 Мая 2020, 17:06 | Сообщение # 19 | Тема: Голосование за тему для конкурса №14 от GcUp |
участник
Сейчас нет на сайте
| Не думаю, что хорошая идея - привязывать тему конкурса к одному конкретному жанру (шутер), по причинам малого разнообразия проектов и присутствия уже рабочих проектов у некоторых, которые подгонят их под тему.
|
|
| |
IlyaKos | Дата: Четверг, 21 Мая 2020, 06:08 | Сообщение # 20 | Тема: Голосование за тему для конкурса №14 от GcUp |
участник
Сейчас нет на сайте
| Голос за: "Камерная игра в одной небольшой локации".
|
|
| |