Ещё вопрос - сильно ли ВМ будет сажать производительность? Вот если я например запилю на ней ботов ( а у меня они и так без всяких ВМ медленно путь находили ) - не будет ли слайдшоу? Поиск кратчайшего пути в графе можно делать за O( n^2 + m ) где n - количество вершин, m - количество рёбер в графе, например алгоритмом дейкстры.
ONeiLL писал: Ещё вопрос - сильно ли ВМ будет сажать производительность?
Практически можно и петафлопсовый кластер повесить - было бы желание.
Цитата:
ONeiLL писал: Поиск кратчайшего пути в графе можно делать за O( n^2 + m )
Да можно хоть О(n!) - опять же, было бы желание.
Ищи оптимальные алгоритмы, применяй кеширование, делай прекалькуляцию путей. Сложность запросто можно будет снизить до nlogn, а то и ниже (особенно амортизированную).
Очень даже важно. Даже полноценный мовевитч, как в ксаш-моде, по сути достаточно деревянная вещь без физического симулятора, а ведь на голой халфе нереализуемо в принципе - не хватает экспортов из движка.
Вот тех самых, которые я вывел в PhysicsInterface. Их немного, но крайне нехватает. Без них это не мовевитч получается, а ерунда.
Впрочем заранее судить не буду, подожду так сказать конкретнова релиза и проверю разные слабые места самостоятельно
Дядя Миша писал: Впрочем заранее судить не буду, подожду так сказать конкретнова релиза и проверю разные слабые места самостоятельно
Не понимаю, что ты этим хочешь доказать. То, что в ксаш-моде мовевич лучше? Охотно верю, я с этим и не спорил. Я сказал лишь, что у меня собственные решения по этому вопросу, которыми я делиться не особо расположен. Слабых мест в халфе предостаточно, например, я очень хочу убить кого-нибудь из вальвы за то, что не вытащили в дллку Host_Error (я уже предчувствую, как ты напишешь: а в ксаше он вытащен, и не раз - и в физическом интерфейсе, и в рендер-интерфейсе, и вообще везде)
Добавлено 15-03-2013 в 02:33:
Цитата:
Дядя Миша писал: Без них это не мовевитч получается, а ерунда.
Ерунда - это когда простой кнопке надо делать оригин-браш, чтобы она с ротатаблей вращалась. Вот это я понимаю - совершенно идиотское ограничение, добавляющее мапперу гемороя. Надеюсь, в ксаше ты эту глупость заборол, ну а в спирите - какой там..
XaeroX писал: Не понимаю, что ты этим хочешь доказать
Я ничего не хочу доказать. Я спросил, что там такое стало известно со времен ксаша и осхлдс. Ты сам отмалчиваешься, а потом думаешь, я что-то доказать хочу.
Цитата:
XaeroX писал: Ерунда - это когда простой кнопке надо делать оригин-браш, чтобы она с ротатаблей вращалась. Вот это я понимаю - совершенно идиотское ограничение, добавляющее мапперу гемороя. Надеюсь, в ксаше ты эту глупость заборол, ну а в спирите - какой там..
Я правильно понял, что кнопка без оригин-браша имеет нормальную колоизацию с учётом поворота по всем трём осям?
Эта концепция мне сильно напоминает подход Туркена: просишь кабину от вертолёта, а тебе дают неанимированного хряка.
Иными словами, народ ждёт бампа и параллакса, а ты их убеждаешь, что без оригин-браша гораздо лучше, чем с бампом и параллаксом %)
Добавлено 15-03-2013 в 00:00:
Цитата:
XaeroX писал: Стало понятно, что откуда и как вызывается.
Да оно вроде и раньше было понятно, не?
Лично для меня представлял загадку только флаг FL_ALWAYSTHINK. Я немного по другому про него думал.
а у меня они и так без всяких ВМ медленно путь находили ) - не будет ли слайдшоу? Поиск кратчайшего пути в графе можно делать за O( n^2 + m ) где n - количество вершин, m - количество рёбер в графе, например алгоритмом дейкстры.
Надо юзать приближенные решения, для задачи вполне хватит. Ну, и число вершин-то не большое.
Боты в ку1 работали на виртуальной машинке, при этом можно было играть с четырьмя на 133 пеньке без проблем. В эпоху, когда у брелока автосигнализации производительность выше, боятся ВМ и скидывать на нее тормоза просто глупо.
Спор про ООП повеселил, спасибо. Избранные места зачитал коллегам.
Дядя Миша писал: Да оно вроде и раньше было понятно, не?
Раньше - это когда? Когда ты код из моего тутора вставлял после вызова return? Или ещё раньше?
Лаури к этому времени, кстати говоря, свой мовевитч уже закончил.
когда я этот мой код начал правильно работать с модами халфы, очевидно же.
Добавлено 15-03-2013 в 11:40:
Цитата:
Примем во внимание то, что на чтение объектно-ориентированного кода мы тратим больше времени, чем на его написание. Это и называется производительность: вместо того, чтобы часами писать большое количество кода, чтобы добавить новый функционал, мы пишем всего лишь несколько строчек, но при этом часами пытаемся понять, какие именно строчки нужно написать!
Вот это я до вас и пытался донести, но меня как обычно никто не слушал.
Дядя Миша писал: на чтение объектно-ориентированного кода мы тратим больше времени, чем на его написание.
На самом деле это про змею, кусающую себя за хвост: нам сложновато читать ОО-код, поскольку там "все происходит где-то еще", но у нас же есть студия, которая позволяет скакать туда-сюда по хоткеям! Значит, можно не переживать, что методы не группируются по смыслу, а значит нам нужна еще более мощная навигация по коду, а значит мы будем группировать методы еще хуже и partial class будет означать не группировку по смыслу методов blob-class (за который сам по себе я бы руки отрывал), а размазывание методов по нескольким файлам, но ведь IDE не стоят на месте и рано или поздно...
знаю точно если в amxx был бы ооп, я бы уместил zombie plague mod код в 20 раз меньше строчек если не больше, и после этого он оставался удобно расширяем.
на текущий момент все плагины на контру где много кода, очень трудны в понимании и трудно расширяемы.
на мой взгляд ВМ с ооп было бы кстати)