не кто случаем не в курсе как увеличить точность координат ? как оказалось вектора в юнити используют float и на больших расстояниях само сабой точности 8 бит не хватает... единственный выход как я вижу подправить вектора в самом движке дизасмом.... может кто лучше способ предложит ?
Re: точность системы координат
Добавлено: 24 мар 2010, 23:51
DbIMok
Тип значения Single представляет 32-разрядное число с одинарной точностью в диапазоне от -3,402823e38 до +3,402823e38
видимо речь о 7 десятичных знаках. нужно думать, как в твоей конкретной ситуации обойти эту проблему.
Re: точность системы координат
Добавлено: 24 мар 2010, 23:53
gnoblin
Нельзя бить пространство на сектора как-нить?
Re: точность системы координат
Добавлено: 24 мар 2010, 23:56
Kann
угу, правильно 7 знаков после запятой, ентого мало..... бить на сектора, да не хотелось бы..... вот видео, планета находится по центру координат, и даже при таком сравнительно небольшом удалении можно заметить что моделька кораблика начинает чуток прыгать....
Re: точность системы координат
Добавлено: 25 мар 2010, 00:00
Caligo
Kann писал(а):угу, правильно 7 знаков после запятой, ентого мало..... бить на сектора, да не хотелось бы..... вот видео, планета находится по центру координат, и даже при таком сравнительно небольшом удалении можно заметить что моделька кораблика начинает чуток прыгать....
Это некая модификация Инкома Т65?)
По сабжу: Для движения ты юзаешь transform.Translate, если да то у меня такая же ерунда, (спишу на перегрузки))
Re: точность системы координат
Добавлено: 25 мар 2010, 10:12
Paul Siberdt
Дело в накоплении погрешности при вычислениях с большим удалением от мирового нуля. Как решение - вычисления с векторами производить в мировом нуле, а уже после приращать им большое смещение в нужную позицию.
Re: точность системы координат
Добавлено: 25 мар 2010, 11:40
Kann
не въехал..... я для примера смещаю обычную сферу через transform.position.x само сабой position.x является Vector3, прибавляю ему смещение например так
var delta: Vector3 = Vector3(10,0,0); FixedUpdate(){ transform.position += delta; }
А, возможно, и не заработает
Re: точность системы координат
Добавлено: 25 мар 2010, 12:05
Battle Angel Alita
А не проще ли уменьшить масштаб? Сделать радиус земли не 6000 киллометров, а 6?
Re: точность системы координат
Добавлено: 25 мар 2010, 12:08
Paul Siberdt
Имелось в виду, желательно избегать рассчетов внутри длиннющего вектора. Запоминайте позицию и дальше работайте со сравнительно короткими дирекшенами. Под конец, приращайте позицию.
На малом же масштабе очень сильно вылезут артефакты неточности физики. Но Ангел дело говорит. Можно разделить пространство на две части - планета будет считаться своей камерой в своем метровом масштабе, корабль - своей в своем. Останется верно скомпенсировать взаименое перемещение камер.
Re: точность системы координат
Добавлено: 25 мар 2010, 12:11
Kann
один хрен.... тут по моему проблема все же в float и в том что тупо при больших значениях не хватает точности а именно знаков после запятой, так как объект смещенный например по Х начинает скакать только при смещении по Х координате, по Y и Z если они имеют небольшие значения не чего подобного не наблюдается,
с масштабом так же, проблема опять же в том что не хватает float чем меньше объект тем более точное позиционирование ему требуется
Re: точность системы координат
Добавлено: 25 мар 2010, 12:16
Paul Siberdt
Я как-то ковырялся с несколькими камерами именно в условных полетах в звездной системе. Небесные тела у меня считались отдельно от корабля. Разница конечных размеров была колоссальная, но все работало в разумных масштабах.
Re: точность системы координат
Добавлено: 25 мар 2010, 12:27
Kann
идею с камерами понел.... однако интересный финт ушами
Re: точность системы координат
Добавлено: 25 мар 2010, 12:28
Paul Siberdt
Вот, гляньте... чертовски топорно написано и неюзерфрэндли реализовано, но тута главное идея. Управление тупым осевым WASD, увеличьте скорость кубика в 1000 раз и сможете перемещаться между шариками. С единичной же скоростью относительно шариков, кубик практически неподвижен.
эээ.. надеюсь, все влезло в пак
Re: точность системы координат
Добавлено: 25 мар 2010, 12:42
Kann
спасибо, посмотрел, такое я уже изобретал чуть раньше, но там у меня выползли какие то проблемы... по моему с компенсацией перемещения камер... но наверно придется вернутся к этому варианту....