Пятница, 22 Ноября 2024, 22:36

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
После билда проект отображается не так, как надо
lakorisДата: Четверг, 12 Декабря 2013, 22:21 | Сообщение # 1
постоянный участник
Сейчас нет на сайте
Здравствуйте. Такая проблемка у меня. После билда проект отображается не так, как он отображается при запуске прямо из движка. Я выяснил, что это из-за одной переменной в коде, т.к. убрав ее, результат не изменился, а при запуске из движка от нее многое зависит.

О переменной:
Переменная типа Vector3. Вот куски кода, которые связаны с этой переменной:

Код

public Vector3 vel;
vel = tr.InverseTransformDirection(rigidbody.velocity);
if (vel.sqrMagnitude > 0.001f)
     vel = Quaternion.Inverse(Quaternion.LookRotation(vel))*vel*Mathf.Sign(vel.z) * velspeed;
rb.velocity = tr.TransformDirection (vel + (new Vector3(0f, inp.y * Time.deltaTime * speed, inp.z * Time.deltaTime * speed)));


Что делать? Помогите, пожалуйста. Может знает кто.


Сообщение отредактировал lakoris - Четверг, 12 Декабря 2013, 22:22
nwsxДата: Четверг, 12 Декабря 2013, 23:37 | Сообщение # 2
постоянный участник
Сейчас нет на сайте
тут не видно ничего такого что работало бы по-разному в редакторе и в билде

Westboro
Dungeon Journey на Google Play
lakorisДата: Четверг, 12 Декабря 2013, 23:40 | Сообщение # 3
постоянный участник
Сейчас нет на сайте
nwsx,
Цитата
if (ClosestBirthplace != null && dist < 0.15f) ЧТО-ТО ДЕЛАЕМ;


Делаем тестовый запуск в среде и видим, что условие проверяется верно, если в переменной не пусто и расстояние до объекта меньше 0.15 все работает как надо. !НО, если это сбилдить, то условие не проходит, в совершенно идентичных обстоятельствах, даже если в объекте действительно не 0.
Далее видоизменяем условие с "!= null" на "!= 0". Производим теже действия и о чудо, и в среде и после билда все работает как надо, условие проверяется корректно.
Я возможно что-то не понимаю, но какого дьявола?! Уж извините за эмоции.

У кого-то тоже похожая проблема была : Ссылка

Добавлено (12.12.2013, 23:40)
---------------------------------------------
Мйо скрипт:

robertonoДата: Четверг, 12 Декабря 2013, 23:41 | Сообщение # 4
Чокнутый Кот
Сейчас нет на сайте
Лучше бы прислал скриншот редактора и билда. А то я ничего не понял.
lakorisДата: Пятница, 13 Декабря 2013, 00:40 | Сообщение # 5
постоянный участник
Сейчас нет на сайте
robertono, переменная vel отвечает за движение моего объекта при нажатии на клавишу. В редакторе робит отлично, а вот в билде передвигается неимоверно медленно...

Добавлено (13.12.2013, 00:40)
---------------------------------------------
Мда.. Жестоко. То ли это баг, то ли я такой криворукий...

allodsДата: Пятница, 13 Декабря 2013, 01:07 | Сообщение # 6
почти ветеран
Сейчас нет на сайте
Увеличь свой vel, или не помогает
lakorisДата: Пятница, 13 Декабря 2013, 16:21 | Сообщение # 7
постоянный участник
Сейчас нет на сайте
allods, vel - Переменная типа Vector3

Добавлено (13.12.2013, 16:21)
---------------------------------------------
Никто не знает решения данной проблемы?

set16Дата: Пятница, 13 Декабря 2013, 16:37 | Сообщение # 8
постоянный участник
Сейчас нет на сайте
ClosestBirthplace != null это не ClosestBirthplace != 0, это если переменная ClosestBirthplace существует

А если vel.sqrMagnitude сначала поместить в переменную типа float, а потом в условие эту переменную.

Ссылка на описание метода


=>The darkness of distant lands [3D]<=

Сообщение отредактировал set16 - Пятница, 13 Декабря 2013, 16:44
seamanДата: Пятница, 13 Декабря 2013, 16:48 | Сообщение # 9
старожил
Сейчас нет на сайте
В мануале что напсано:
Цитата
In most cases you should not modify the velocity directly, as this can result in unrealistic behaviour.

Если вы меняете вручную скорость ригидбоди - ждите, что возможно нереалистичное поведение.
lakorisДата: Пятница, 13 Декабря 2013, 17:48 | Сообщение # 10
постоянный участник
Сейчас нет на сайте
seaman, хм.. странно..
set16, спасибо, попробую
allodsДата: Пятница, 13 Декабря 2013, 17:59 | Сообщение # 11
почти ветеран
Сейчас нет на сайте
Цитата set16 ()
ClosestBirthplace != null это не ClosestBirthplace != 0

Можно еще писать if(!ClosestBirthplace) если не существует тоесть if(ClosestBirthplace == null) и еще if(ClosestBirthplace) для проверки если существует
lakorisДата: Среда, 25 Декабря 2013, 19:01 | Сообщение # 12
постоянный участник
Сейчас нет на сайте
allods, Вы не поняли. ClosestBirthplace - это не мое. Это у кого-то такая-же проблема была, я вам сюда цитатнул.

Добавлено (13.12.2013, 19:53)
---------------------------------------------
set16, не помогло. Все так-же.

Добавлено (25.12.2013, 19:01)
---------------------------------------------
Проблему решил smile
Решение как-всегда простейшее - надо просто исправить все "Предупреждения / Warnings" в консоли. У меня их было куча из-за того, что я удалил папку со скриптами в проекте, а скрипты эти висели на объектах активных. Всем удачи)

  • Страница 1 из 1
  • 1
Поиск:

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