FMEditor Project

Автор Михаил А, 21 декабря 2020 08:30:38

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

nemyax

Цитата: Soul_Tear от 21 декабря 2020 16:22:43какие это даст преимущества?
Неизвестно, пока никто не показал апишку.
Желаю тебе из тысячи рулеток одну — самую русскую!
Желаю тебе из тысячи надежд одну — самую крупскую!

Chuzhoi

#16
Судя по эскизу (маленькая картинка в конце авторского поста), автор задумал реализовать древовидный список всех примитивов на карте. Из игровых редакторов я такое видел только в QuArK, в котором делал карту для одной малоизвестной игры в 2001 году. Штука очень удобная, насколько я помню, ибо позволяет наглядно структурировать все, из чего состоит карта и что на нее установлено. Я потом долго сожалел, что ничего подобного нет ни в UnrealEd, ни в других попадавшихся мне редакторах.

Maxim

Михаил А Спасибо за наводку. Весьма любопытно. Поддерживая Chuzhoi и Zontik'a в осторожности и ожидании, отмечу только, что это само по себе здорово, что подобные движения происходят. Ну что же, будем следить. И пробовать.
Still they talk anyway
When there's nothing to say
There's so much said in empty words...

Zontik

ЦитироватьНа скриншоте в списке присутствует Spiral staircase - не уж то, там что можно создавать винтовые лестницы?
Давно же существуют любительские наработки в этом плане. Я ими никогда не пользовался, потому что быстрее построю вручную, чем настрою систему так, чтобы она сделала это за меня и так, как я хочу, а не так, как ей удобно. По-моему, даже в меню редактора этот пункт присутствует после установки какого-то патча или расширения.
Скорее всего, одну из них и внедрили в новый редактор, только уже не как бонус.
Дайте глазам отдохнуть! Тёмное место

Soul_Tear

Цитата: Zontik от 22 декабря 2020 08:30:07
Я ими никогда не пользовался, потому что быстрее построю вручную

Основная проблема ручного способа в том, что он плодит ошибки: появляются щели, лишние ячейки - а потом фейл оптимизации. Я их делаю мультибрашами: один уникальный завиток вручную, а затем клонирую. По одной ступеньке делать огромные лестницы разного размера муторно.

Zontik

У меня тоже поначалу лезли ошибки, но потом приспособился к формам и углам. Главное - не отключать сетку.
А мультибраш - инструмент довольно опасный как раз в этом плане. Надеюсь, новый редактор будет свободен от этих проблем. У них, конечно, на картинке лихо все вращается, но что будет, если потом загрузить такой файл обратно в DromEd?
Дайте глазам отдохнуть! Тёмное место

Soul_Tear

Цитата: Zontik от 23 декабря 2020 08:57:48
что будет, если потом загрузить такой файл обратно в DromEd?

А зачем это делать? Если софт окажется годным, то про Дромед можно будет смело забыть.

Zontik

Да, все дело в маленьком "если"...
Но зато это замечательный повод наконец выяснить, кто же все-таки не переваривает сильно дробные координаты и углы поворота: редактор или сам движок.
Дайте глазам отдохнуть! Тёмное место

nemyax

С точки зрения программы координаты не бывают "сильно дробными" или "на полшишечки целочисленными".
Желаю тебе из тысячи рулеток одну — самую русскую!
Желаю тебе из тысячи надежд одну — самую крупскую!

Zontik

Но дизайнер-то человек, а не программа. Он может оперировать такими понятиями, в отличие от программы, которой три знака после запятой - нормально, а четыре - разрыв шаблона.
Дайте глазам отдохнуть! Тёмное место

nemyax

Но у программы не может порваться шаблон 32-разрядного действительного числа от того, три там знака или четыре. Надо поглубже копать, в чём здесь дело. У дромеда лимит на знакоместа что ли?
Желаю тебе из тысячи рулеток одну — самую русскую!
Желаю тебе из тысячи надежд одну — самую крупскую!

Zontik

У Дромеда, похоже, встроенный генератор случайных чисел. Потому что при использовании сильно дробных величин он может вылететь, а может и нет. А возможен и третий вариант: предупреждение и последующие провалы игрока сквозь текстуры на ровном месте.
А скорее всего, числа не приводят к краху сами по себе, а приводят операции с ними. Перемножь два сильно дробных числа - и получится одно очень сильно дробное. Но не  всегда. Иногда результат волшебным образом не влияет на разрядность (0,5х0,6=0,3), и ничего не происходит.
Но мне неинтересно, почему это происходит, достаточно  знать, как этого избежать. Интересней другое: как это все связано с провалом игрока сквозь текстуры (это только одно из возможных последствий небрежной работы). Новый редактор, если я понял правильно, на разрядность чихать хотел. А не зачихает ли движок самой игры? Хотя те, кто взялся за эту работу, просто не могут не быть в курсе.
Дайте глазам отдохнуть! Тёмное место

nemyax

Цитата: Zontik от 28 декабря 2020 13:32:34при использовании сильно дробных величин он может вылететь, а может и нет
А в какой момент дромед падает?

Цитата: Zontik от 28 декабря 2020 13:32:34возможен и третий вариант: предупреждение и последующие провалы игрока сквозь текстуры на ровном месте
Тут как раз всё понятно. Компилятор из-за потери точности не состыковывает плоскости в герметичную геометрию, и получаются бсп-дырки. Пока у тебя всё аксиально кубиками, такой проблемы быть не может. Как только начинаются любые углы, надо уже аккуратнее.

Цитата: Zontik от 28 декабря 2020 13:32:34Перемножь два сильно дробных числа - и получится одно очень сильно дробное.
Чотынисёж 0_о
Желаю тебе из тысячи рулеток одну — самую русскую!
Желаю тебе из тысячи надежд одну — самую крупскую!

Zontik

ЦитироватьА в какой момент дромед падает?А в какой момент дромед падает?
Справедливости ради следует отметить, что сейчас заставить его упасть почти невозможно. Но ошибки от этого никуда не деваются, просто программа, не упав, позволяет продиагностировать случившееся и сузить круг поиска.
И происходит это при портализации или оптимизации.
Некоторые ошибки даже позволено игнорировать (в том случае, если оптимизации удалось завершиться успешно). И чаще всего с такой миссией все будет нормально. До определенного момента. Пока какой-нибудь несчастливый игрок в пятницу, 13-го не наступит на ту самую точку. Или пока ошибки не накопятся в какую-то критическую сумму и не вызовут наконец падение. Хотя изредка случается и наоборот: ошибки гасят друг друга. Или самоисправляются. У дизайнера в редакторе - язык слишком высокого уровня, чтобы судить о подоплеке того, что происходит тремя этажами ниже.
Кстати, я все равно не понимаю, как могут образовываться в BSP дыры, невидимые для рендера, но достаточные для проваливания физ. модели игрока с далеко не нулевыми размерами.
ЦитироватьЧотынисёж
Поясняю на примере. 0,001 х 0,005 = 0,000005. Ну как, увеличилась разрядность? А если на это число потом надо делить, а разрядности не хватает для отображения значащих цифр?
Дайте глазам отдохнуть! Тёмное место

nemyax

Цитата: Zontik от 28 декабря 2020 15:07:45я все равно не понимаю, как могут образовываться в BSP дыры, невидимые для рендера, но достаточные для проваливания физ. модели игрока с далеко не нулевыми размерами
Скорее всего и на рендере видно щель при большом приближении, раз проваливается.

Цитата: Zontik от 28 декабря 2020 15:07:450,001 х 0,005 = 0,000005. Ну как, увеличилась разрядность?
Смотря что понимать под разрядностью. Битность чиселки типа float не поменялась, и даже мантисса та же, что у одного из множителей. Порядок чуть увеличился. Впрочем математическому сопроцессору в данном случае пливать. Больше того, ты в примере удержался в диапазоне максимально возможной точности для всех трёх чиселок.
Желаю тебе из тысячи рулеток одну — самую русскую!
Желаю тебе из тысячи надежд одну — самую крупскую!