Pull to refresh
18
0.2
Денис@Ravager

User

Send message
все это здорово насчет экстраполяции, а вот на практике как-то не получается…
вот к примеру, сервер тикает каждые 100мс
игрок тикает каждые 10мс(100 fps)
вот пришли мне данные что враг А двигается со скоростью 5метров в секунду.
я это экстраполирую до след. прихода пакета.
в идеальной вселенной время прихода между пакетами будет 100мс
в реальности будет задержка связанная как с сетью, так и с тем, что пакет не всегда приходит в начале кадра. он может придти сразу после попытки чтения из сети. вообщем в реальности разброс будет от 0 до 10-20 мс.
т.е. я для врага использую «старую скорость», потом приходит пакет с обновлением. я меняю позицию и происходит jittering.
как с этим справиться экстраполяцией я так и не смог :(
я пробовал и позицию менять постепенно, но там в итоге артефактов был вагон(визуальных в виде аномального изменения скорости)
в итоге сделал интерполяцию с буфером в 100мс. но экстраполяцию так и не поборол (
есть и другой момент:
вы у себя на компе забежали за препятствие и спрятались, и а потом внезапно умерли от хедшота. бонусом вас может перенести на то место, куда в вас попали. т.е. перед препятствием. потому что игрок, который в вас стрелял был с пингом 250мс. у себя то он выбежал из-за угла, стрельнул и попал в вас. а вы в тот момент бежали за препятствие и никого не видели. лагающий игрок это боль(
да и в след. статье тоже логично и предсказуемо. до тех пор, пока не начнешь это реализовывать ;)
лагающий игрок это всегда боль. как для остальных игроков, так и для сервера(приходится откатываться на несколько тиков, делать перерасчеты). проще всего конечно применять инпут сразу, как только он пришел от игрока. не совсем честно, но некоторые игры не парятся)
насколько я знаю в gl есть ограничение на толщину линии. причем везде разное)
Если вы думаете, что WebGL рисует 3D, вы ошибаетесь. WebGL ничего не знает о 3D, это скорее низкоуровневый 2D API, и всё что он умеет делать, это рисовать треугольники. Но он умеет рисовать их очень много и очень быстро.

да неужто? а как же three.js или playcanv.as? они наверное сами 3д дорисовывают, от нечего делать)
Безопасная работа с памятью без сборщика мусора.

и это во времена, когда игры делают на вебгл и js. где борьба за байты актуальны кроме embedded?
Отлов гонок данных во время компиляции.

это про то, что память нельзя шарить между потоками? что мешает не шарить память в плюсах? + есть костыль как все же делать это.
только надо написать кучу ненужных букв. в продакшн будут его юзать
Код, в котором невозможно забыть обработать ошибку.

угу, к нему идет костыль в виде unwrap.
А вы не путайте программирование вообще с решением конкретных задач

программирование ради программирования? всегда считал это извратом…
Rust привнёс уникальные вещи в программирование, которые ни один язык до него не предлагал

например?
думается, что пока это «сыровато» это не дает права утверждать что остальным языкам пора потесниться. рано еще
Я считаю, что Rust — это огромный прорыв в программировании. Язык сочетает современные практики, надёжность и невероятно тонкую среду исполнения. Си и плюсам пора потесниться в системном программировании, а Go, Haskell и скриптовым языкам — в вебе

ну считать можно что угодно… что вы можете предложить для веба? полноценный http сервер в rust есть? есть для вашего языка кодогенерация с protobuf? я пишу игровой сервер, есть у вас физический движок 2д? что у вас есть сейчас, чтоб я забросил плюсы или го и перешел к вам? модель многопоточности? да она и в го меня устраивает…
зачем в 2015 году опытному разработчику такая книга? есть stackoverflow, есть youtube есть куча туториалов в интернете с готовыми проектами и ассетами. бери да вставляй если писать лень свое… имхо трата денег
поэтому никогда не завидовал веб разработчикам. постоянно что-то меняется. какие-то стандарты новые и куча хомяков, которые радостно улюлюкают удалять флеш, не пользоваться IE9, не сидеть под линухом, не обновлять браузер. а мы как писали на плюсах, так и пишем)
забавно наблюдать весь этот марлезонский балет, происходящий в вебе. Сначала выпилили npapi. Пытаются убить флеш. Теперь вот пытаются сделать WebAssembly, который по сути тот же swf только кастрированный, без анимации. потом прикрутят к webasm студию для разработки игр. т.е. лет через 10 мы увидим новый флеш, который работает не как плагин а как часть стандарта. Только стоило ли тратить на это 10 лет?!
да никак не умудрялись. в общем то это не заслуга Adobe. Современный тренд — культивировать продукт для большинства. Для большинства хватает «фермы вконтактике» и видео ютуб на хтмл5. Все что в флеше делалось легко — делается(или не очень) костылями на хтмл5. Но кого волнуют проблемы индейцев? главное что стильно, модно, молодежно. А потом переизобретем свой велосипед под названием WebAssembly, который по сути тот же флеш кастрированный, только нативно поддерживаемый браузером. Кто мешал внедрить флеш не как плагин а как часть браузера? да вообщем-то никто. Дураки работу любят…
такое ощущение, что кому-то палец в рот не клади — дай поорать что флеш умирает. почитал оригинал — адоб никого не призывает отказываться от флеш. обычный ребрендинг. и флеш теперь не просто флеш, а еще и создание анимации для веба под хтмл. более того, в оригинале по-прежнему подчеркивается важность флеша как игровой платформы и отображение видео пока хтмл5 не хватает для этого сил
ну за деньги само собой всегда можно найти. не про это речь, на том же ГД всегда можно найти программиста, готового присоединиться к проекту за опыт, портфолио и просто из-за веры в светлое будущее… художников таких я почти не видел. может их мало, может просто более прагматичные люди)
печаль, что художника не нашли, по моему опыту это действительно сложно. можно найти неплохого программиста, но с художниками туго. все денег хотят. причем деньги != качество. могут такую какашку нарисовать — пожалеешь что сам не выучил фотошоп)
цвета в диалоге кошмарные. все сливается в одну кашу. ну и плюс сомнительно такая легкость интерфейса. отсутствие четких разделителей между панелями заставляет немного теряться. такое ощущение что все в кучу одну накидали: список контактов, история сообщения, какие-то кнопки.
да, я помню ты тогда на форуме предлагал бизнес-логику писать на шарпе вроде как. Жаль, конечно, что так ничего и не получилось ( Помню твои задачки в стиле «скомпилируется ли», эту «чашу» действительно не испить )
Эмиль, всяческих успехов. по С++, кстати, тебе действительно нет равных ) Надеюсь, что у тебя все получится, удачи!

Information

Rating
2,703-rd
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity

Specialization

Бэкенд разработчик, Веб-разработчик
Ведущий
Python
Golang