Перейти к контенту

Malandrinus

Жители
  • Число публикаций

    1 930
  • Регистрация

  • Последнее посещение

  • Дней в топе

    13
  • AMKoin

    160 [Подарить AMKoin]

Весь контент пользователя Malandrinus

  1. dark_stalker, Ещё раз, при чём здесь правки движка? Надо делать переразметку окна инвентаря: перемещать и менять размеры не одного элемента а нескольких взаимосвязанных. Криво вышло? Значит что-то не доделал.
  2. dark_stalker, "всё равно" что именно? Что ты в итоге хочешь получить?
  3. Венгерская нотация существует с единственной целью облегчить понимание типов переменных. Её использование было актуально в эпоху, когда экономили на символах для имени переменной, а среды разработки были несовершенны и не обеспечивали подсказок, проверки синтаксиса на лету, быстрых переходов к объявлениям и т.п. В сущности её назначение - скомпенсировать некоторые врождённые недостатки одного конкретного языка программирования, а именно СИ (не С++, обращаю внимание) и причём, именно в ту древнюю эпоху несовершенных сред разработок. В настоящее время во многих языках эта нотация бесполезна, поскольку не соответствует современным реалиям. К примеру, она ничего не даёт в случае массированного использования ООП, поскольку в этом случае основной упор делается на использование разных классов, а на каждый класс префиксов не напасёшься. Также, одним из самых полезных элементов венгерской нотации является различение переменных и указателей, но во многих языках (и в частности Lua) указателей нет, а почти всё представлено единообразно ссылками. Это ещё ладно, но зачастую венгерская нотация входит в противоречие с концепцией языка, например с шаблонными типами C++, поскольку в этом случае заранее вообще невозможно сказать, какой тип будет у переменной. Кроме того, даже в том случае, когда использование оправданно, у этой нотации есть и неочевидные врождённые минусы. К примеру, использование венгерской нотации попутно принуждает к использованию паскалеобразной записи имён с использованием заглавных символов в начале слов-частей. Обращаю внимание, в Паскале, откуда это исходно пошло, использование заглавных букв является факультативным, поскольку там идентификаторы регистронезависимы, и использование разного регистра безвредно. В СИ-образных языках регистр имеет значение, и в общем это является источником приличного числа ошибок. Т.е. как бы облегчая чтение такая нотация фактически усложняет написание. Именно поэтому в стандартной библиотеке С++, а также в boost принят подход записи всего только нижним регистром, а макросов - только верхним. Лично я нахожу такой подход достаточно комфортным и в других языках и практикую его в том числе в Lua. Моё субъективное мнение, что сам идентификатор вполне способен обеспечить понимание сути того, что за ним стоит, если конечно дать ему внятное имя. ЗЫ:
  4. AndreySol, прозрачность 100% задал, конечно не работает
  5. dark_stalker, так окно надо увеличивать в размере, чтобы помещалось без полосы прокрутки. Это всё в конфигах окна надо делать, правки движка здесь уже ни при чём.
  6. В движке заглушки сделаны массивом фиксированного размера, и это практически не изменить. Впрочем, ничто не мешает добавить их скриптами.
  7. abramcumner, Речь ведь не об апгрейдах, а о максимальной вместимости. В немодифицированной версии можно настроить апгрейды до максимум пяти артов. Вот этот предел и изменён, т.е. можно настроить на бОльшее количество. Кстати, не помню, что там происходит, если настроить на больше и как это стыкуется с интерфейсом. Давно делал и толком не тестировал.
  8. abramcumner, Так в ЧН арты только в костюме и могут быть. Там и менял в нескольких местах. Максимальный размер массива 5 вшит в код. Заменил на десять. Хотя исходники выложены, меняйте хоть на сто.
  9. abramcumner, В x-ray extensions для ЧН тоже есть такая правка. Там в нескольких местах надо было править. Правда правку интенсивно не тестировали, но я у себя погонял, вроде работает. Что за закрывашки?
  10. KD87, Буду весьма признателен за любую помощь.
  11. Да там давно надо весь пост про game_object переписывать. У меня накопилось много исправлений и дополнений, но всё руки не доходят это дело оформить. В первую очередь надо оформить пост с истинной иерархией классов, как серверных так и клиентских. Затем полную таблицу сетов (зарегистрированных в движке пар), затем только новый пост про game_object, где все функции рассортированы по этим классам. Найти бы время для всего этого.
  12. AndreySol, инициализируются соответственно x1,x2,y1,y2 lt - это left top, координаты левой верхней вершины rb - right bottom, координаты правой нижней вершины это объекты класса vector2, который экспортирован только начиная с ЧН. Поэтому в ТЧ попытка получить эти свойства приведёт к вылету. В их использовании особой необходимости по-любому нет.
  13. Malandrinus

    X-Ray extensions

    С точки зрения геймплея ничего в ЗП не вырезали, только добавили. Убрали пару ненужных классов и зачем-то порезали оконную систему. Если точнее, то не столько порезали, сколько типа оптимизировали. Но в процессе под нож попали вращение текстур и получение активного окна. Вращение текстур уже вернули, а вот с main_input_receiver сложнее. Ну и всё собственно, если последняя фишка вам не критична, то ЗП по всем параметрам лучше.
  14. Gun12, Потому, что за такой код надо обрывать руки. Числа с плавающей запятой на равенство не сравнивают, поскольку вычисления с плавающей запятой приблизительные по определению и выполняются в общем случае с ошибками округления. Вот и всё, что можно здесь сказать.
  15. Malandrinus

    X-Ray extensions

    Shadows, здесь как раз тот случай, когда особой необходимости в новой функции нет. Вот такой штатный вариант работает ничуть не хуже. get_console():execute("flush")
  16. Malandrinus

    X-Ray extensions

    Shadows, Не знаю. Скорее всего, значение скорости для прыжка берётся не из этой ячейки, а откуда-то ещё. Надо разбираться, куда ещё копируется это значение при загрузке объекта.
  17. Malandrinus

    X-Ray extensions

    Shadows, А ты возьми проверь, не поленись. Вот у тебя по смещению читается то же значение, что в конфиге, так? Запиши по этому смещению новое значение и прочитай заново. Оно? Значит метод работает.
  18. STRIFER, Это вроде настраивается. Где-то в настройках было. Взялся снова за это дело, ты прав, повороты можно делать очень мизерные, вполне подходит для худа, но вот я никак не смог разобраться как вообще сделать задуманную анимацию, там все путается, время задается как-то совсем непонятно, извращенно все до безобразия. На выходе получается совсем не то, что ты делаешь поочередно. STRIFER
  19. dark_stalker, извини, но твоего вопроса я не понял
  20. Зачем здесь softice? Не режим же ядра надо отлаживать, а обычное приложение. windbg вполне себе самодостаточен. Там и точки останова и пошаговая отладка. Не ахти как удобен, но своё дело делает. Добавлено через 2 мин.: abramcumner, по идее иду тоже можно использовать в качестве отладчика, но я лично не пробовал. Кстати, а разве softice под xp/семёркой работает ?
  21. Иватушник, потому что я имел в виду логику прапорщика из анекдотов в стиле "летают, но низенько-низенько". Извиняюсь, если ненароком кого задел. Реальные люди естественно к анекдотическим имеют мало отношения. Сбалансированный нож имеет центр тяжести в районе гарды, там где его держит мизинец. Большой же палец держит его у самого края рукоятки, при этом практически не имеет значения, сбалансирован он или нет. Его по любому начнёт вести вниз. А здесь нож стоит как влитой, как будто рука держится за весло. Собственно, вот такое движение пальцами вполне естественно, когда я хочу перехватить некую рукоятку, но только при условии, что рукоятка никуда не девается: весло в самом деле, дверная ручка и т.п. Если я держу вот так нож ладонью вниз и хочу его перехватить, то для этого я должен его слегка подкинуть, как мы обычно подкидываем мячик. Т.е. как бы и не выпускаем из руки, но придаём ему некое ускорение наверх, и пока он долю секунды летит наверх, слегка разжимаем руку (целиком) и перехватываем. Или, чтобы нож никуда не делся, взять его другой рукой за лезвие и тогда шевели пальцами сколько влезет. Или переверни ладонь наверх, чтобы при разжатии ладони нож остался лежать, а не валился бы вниз. Или взять нож лезвием в другую сторону, и тогда он всегда будет балансировать на большом пальце. Во, вспомнил, где точно такое движение видел. Ковбои же так играют рукояткой револьвера в фильмах перед тем, как его выхватить =) В случае с анимацией критерием качества является как раз правдоподобие. Зачем, скажем, используют захват движения реальных актёров? Именно потому, что сложно сделать реалистичное движение полностью с нуля. Я кстати не говорил, что анимация некрасивая. Само по себе даже это спорное движение пальцами вполне себе смотрится, но просто на мой взгляд физически неправдоподобно. STRIFER, На мой взгляд более естественным бы смотрелся один из перечисленных выше вариантов. К примеру, пусть рука делает тоже самое движение, что и перед пробой лезвия пальцем, но вместо этого как раз вот так перехватывает. В таком положении это вполне возможно. Не знаю только, будет ли это смотреться. Кстати, я пригляделся и заметил, что именно это здесь и происходит. После пробы пальцем, ещё до поворота руки в исходное положение, происходит перехват с частичным разжатием руки. И в этот момент это смотрится очень естественно.
  22. Иватушник, Ну что за логика прапорщика. Законы физики для военных уже не писаны? Попробуй сам взять в руку тяжёлый нож так, как показано в видео, и попробуй начать легонько разжимать пальцы начиная с мизинца. Нож оказывается зажат фактически только у самой крайней точки рукоятки, где его кольцом держат большой и указательный пальцы. После этого он начинает не легонько колебаться, а конкретно падать вниз. Так играть пальцами можно только когда нож держишь ладонью вверх, чтобы он при этом оставался фактически лежать на ладони даже при полностью разжатой ладони. И то начнёт сваливаться, если сильный дисбаланс в сторону лезвия. И какая разница? Впрочем добавлю, что я специально взял тяжёлый кованный нож, а не легонькое тонкое лезвие с невесомой пластиковой рукояткой. Вот лёгким может и можно было бы так поиграть, но боевой должен быть массивным. Мне в сущности всё равно. Просто как-то резануло глаз, что в этот момент возникает ощущение приклеенности рукоятки к ладони, вот и сказал.
  23. STRIFER, Это где пальцем лезвие пробует? Нормально получилось. Однако, там есть одна анимация, на мой взгляд не очень удачная. Это волнообразное движение пальцами на 11-й секунде. Что-то мне этот момент показался неестественным, и я не поленился его проверить. Взял в руку тяжёлый кухонный нож так, как на анимации ладонью вниз, и попробовал вот так вот поперебирать пальцами. Знаешь, что? Нож попросту вываливается из руки =) В любом случае при таком движении он не может остаться в том же положении, как будто приклеен к ладони. Его начинает сильно болтать, поскольку даже при частичном раскрытии пальцев центр прижима рукоятки к ладони смещается и сам прижим ослабляется, и вес ножа начинает его вращать.
  24. AndreySol, Первое, это не статик. Статик - это вполне конкретный класс CUIStatic, один из многих оконных классов. Второе, класс для этого элемента не экспортирован и никак в скриптах не доступен.
  25. Malandrinus

    X-Ray extensions

    Real Wolf, Недоглядел в спешке. Добавил.
×
×
  • Создать...