Crystallize
Нет, не согласен, потому что я руководствуюсь принципами логики, а не потоками сознания.
Если фгд-формат чёрным по белому определяет, что поля targetname должны быть target_source, а target - taget_destination, и именно это призвано отличать их от прочих полей, которые string - то джек строго этому следует. А если кто-то пишет кривые фгд - то почему бы тебе не обратиться к нему и не потребовать внести исправления?
XaeroX я поколупался с фгд, у меня есть допустим calc_position который упоминает пушаблю как entity to use. Для меня было бы логично настроить фгд так, что стрелочки шли бы от пушабли к кальку. Однако получалось только в обратном направлении когда у калька это поле является target_destination, либо никак. Вопрос даже не в том, где нагляднее будет destination а где source. В коде случайно нету какого-то намеренного запрета указывать связь "задом наперед"?
XaeroX т.е. если я просто по-тихому прочитал свойства энтити (или более наглядно, она мне их прислала) и не активировал её, то у ку-движков на такой случай всё равно есть только единственное понятие "активация"?
Кнопочка автоспайки вертексов (автосближения, точнее) с указанием минимального расстояния, для брашей. Ткнул, указал distance - все вертексы брашей на карте привелись либо к ближайшим, либо к пересечениям сетки (в зависимости от выбора). Зачем нужно? Чтобы компенсировать неточности при разрезании, потому что часто остаются дополнительные вертексы, расстояние между которыми может быть меньше 0,2 юнита, из-за чего возникают дыры (да и просто когда не доглядел). В случае со спайкой могут появляться инвалидные структуры, но для них теперь существует триангуляция, так при наличии указанной кнопки карту можно будет загерметизировать в 2 клика.
Обоснуй-ка. Если задано расстояние - 0.1 или 0.5 юнита, это ни к чему плохому не приведёт при исправной работе инструмента, просто потому что минимальное расстояние - 1 юнит, и меньше быть не может (за вычетом ситуаций, когда вручную двигаешь меж сетки). На этот случай такие браши можно спрятать на момент проведения операции.
Допустим, есть несколько объектов, названных objdoor, objtrigger и objsprite, представляющие имена для энтитей func_door, trigger_multiple и env_sprite. Если выделить эти объекты и начать редактировать поле имени, то будет (no change). А что если бы джек показывал общие совпадения букв? Тогда бы можно было делать префиксы и редактировать группово по ним. В данном случае префикс для всех энтить был бы obj(no change)