Crystallize
Я тебя очень прошу - не разговаривай с чужими постами старше пары недель. Люди обычно не помнят, что говорили/писали вчера, а ты тут такое устраиваешь.
Если есть что сказать нового - создай тему и предложи всем обсудить.
Друзья, а где в коде находится то, с какой скоростью player шевелит ногами в зависимости от текущей скорости его ходьбы и бега (какой-нить flInterval возможно)?
пробовал с двумя спрайтами: additive с черной альфой в начале палитры и alphatest с синей альфой в конце палитры - результат минимально отличается: фона спрайта нет, что хорошо, но сам спрайт немного прозрачный (хотя стоит WRITE_BYTE( 255 )). Как сделать его непрозрачным? (через env_sprite спрайты отображаются корректно)
Есть проблема с momentary_door, которую можно наблюдать, например, на c2a3a - когда дверь начинает возвращаться назад (если игрок отпустил вентиль), поочередно запускается и останавливается звук движения двери. Это приводит к тому, что играется лишь первый сэмпл (ну или несколько первых), и всё это повторяется пока дверь не достигнет исходного положения.
При использовании вентиля игроком такого не происходит, видимо, потому что промежутки между PlayerUse короче, чем между началом и окончанием "локального" движения (т.е. место назначения успевает обновляться).
При самостоятельном же возвращении вентиля за время между его вызовами Use к двери это локальное движение успевает закончиться, соответственно вызывается LinearMoveDone и остановка звука.
Кто-нибудь разбирался как исправить этот баг (ничего при этом не сломав)?
Вернулся на Спирит из-за его параметрических возможностей.
Не работало НИЧЕГО. Энтити не вращались через мультименеджер. Вектор указываешь-не вращаются, только если напрямую P Y R вобьёшь. Как-то раз у меня вроде получалось заставить их вращаться, с неудовлетворительным впрочем результатом, но потом я и это забыл.
Мучался как ни недели две. В общем пришлось качать всякие примеры, а на использование m_iszFacing их вообще нет даже из тех времён когда спирит был популярен. На ХЛРА вообще что-то для версии 1.0 или 1.1 лежит, из тех времён когда даже motion_manager ещё не придумали, а пользовались trigger_motion. Ну в общем скачал я опять ТЕА от безысходности, стал разбираться. Там оказывается есть простые карты где нет вот этой сотни логических кальк-энтитей названных типа nirealcamshorterpath для реализации стелса.
Что оказалось? Параметр noise, матьиво.
Такой неприметный, в фгдшке указан наравне со всеми, для него и дефолтное значение прописано, нигде не написано обратить на него особое внимание. НО ЕСЛИ ЕГО НЕ УКАЗАТЬ ТО НЕ БУДЕТ РАБОТАТЬ НИЧЕГО. Ну это я на Кварке просто. Как-то это связано с тем что noise посылается в CalcLocus_Ratio. Кстати если его нет, то в консоли ошибка, но не про noise а про CalcLocus_Ratio. И ты на неё смотришь и думаешь "хрень какая-то, у меня нет энтити calc_ratio. Наверное она как-то неправильно инициализировалась в коде".
Что интересно, отсутствие параметра message проходящего через CalcLocus_Velocity, Спириту никак не мешает и ошибок не генерирует.
Crystallize писал: Энтити не вращались через мультименеджер
С какого перепуга энтити должны вращаться через мульти_менеджер?
Ты наверное имел в виду motion_manager. Спирит-спиритом, но учти, в ксаше все эти прикрепления учитывают коллизии и блокируют другие энтити. А в спирите оно прёт ноклипом, такое в 2000-м году может представляло какой-то интерес, но не более.
Вообще эти кальки это какой-то бред больного наркомана, оно не нужно никак. Надо было просто сделать вменяемую парент-систему.
Дядя Миша моушн, да.
Если бы оно пёрло ноклипом, то невозможно было бы сделать на Спирите тот самый T.E.A. Там у motion_manager есть кажется режим, и не один, который учитывает коллизии.
Паренты конечно хорошо иметь, но кальки позволяют измерять расстояние (хотя это появилось только в 1.8 а для предыдущих версий придётся кодить) и плавно менять скажем скорость вращения в зависимости от этого. В Ксаше я не представляю как это воспроизвести, а то так бы конечно.
Что-то я не припомню чтобы там что-то учитывало коллизии. Но на мой взгляд проще написать несколько строчек, чем городить эти бессмысленные системы. Что ты там на этих калках делать собрался такого?
Добавлено 15-05-2019 в 18:19:
ЗЫ. Ты сейчас вступаешь на зыбкий путь доктора Тресни. Он мне тоже доказывал что сделает брашевый салют на локусах.
Дядя Миша писал: Что-то я не припомню чтобы там что-то учитывало коллизии.
3 из 5 режимов позиционирования их учитывают.
Цитата:
Дядя Миша писал: Но на мой взгляд проще написать несколько строчек, чем городить эти бессмысленные системы.
Я с тобой совершенно согласен, я и сам недавно посмотрел на другана который работает на двухмерной Multimedia Fusion и как быстро после 4 месяцев скриптинга развивается его проект и загрустил. Захотелось плюнуть на всё и уйти на Leadwerks 2.X (2008-2012) и писать на Луа: AddForce(x,y,z) и джамппад готов, прелесть. На Голде меня держит в основном хлрад и ещё немного лёгкость набрасывания брашами тестовых карт и скорость запуска тулзов.
Цитата:
Дядя Миша писал: Что ты там на этих калках делать собрался такого?
Да, я не разобрался и опять полез экспериментировать. Хотя я думаю никто особо не расскажет, тут только код изучать. https://youtu.be/wKdo5f5X_qc?t=47s
Я думаю при нажатии стрейфа мне нужно парентить "игрока" к камере и вместе поворачивать. Я думаю что motion_manager даст объекту скользить вдоль стенки или по наклонной поверхности, а ксашевская парент-система жёсткая и таких вольностей не позволяет. Хотя поднимаемые игроком пушабли как-то так себя и ведут.
Добавлено 16-05-2019 в 00:13:
Цитата:
Дядя Миша писал: ЗЫ. Ты сейчас вступаешь на зыбкий путь доктора Тресни. Он мне тоже доказывал что сделает брашевый салют на локусах.