Генератор города (...) Игра загружается в браузер. И для сокращения времени загрузки она должна «весить» как можно меньше.
Если используется настолько "квадратная" и повторяющаяся геометрия, не проще вообще было бы не связываться с 3D-редакторами городов и сделать процедурную геометрию? Типа, центр, ориентация, размерность и текстура коробки, а джаваскрипт уж, небось, осилит сделать восемь структурированных полигонов на лету, ну или на два больше, если текстура первого этажа должна отличаться. Небось, вообще на килобайты счёт пойдёт.
поскольку мы пишем не Mortal Combat
Вообще, идея перспективная - вместо того, чтобы, врезавшись в чужое транспортное средство, как ни в чём не бывало поехать далее, чтобы вылезали пацаны и, такие: "Ты куда прёшь, баран? - Да сам-то козёл! - Ты чо буровишь?!..." - и т. д., ветки диалога, потом бой, и, если проиграл, тебя везут квартиру отписывать.
Сначала нужно подготовить коллайдеры. Я решил отказаться от использования самих стен домов в их качестве: ведь, стены могут состоять из большого количества полигонов
Это ж, вроде, стандартная практика - использовать отдельную, сильно упрощённую модель для обсчёта физики? Что там "решать"?
Bounds (границы) строятся вокруг каждого коллайдера в форме боксов, стороны которых ориентированы по осям координат. (..) Почему бы просто не делать рейкастинг со всеми моделями зданий по всему массиву? При десятках тысяч объектов это накладно
В смысле, а какое-нибудь стандартное octree не спасёт отца русской демократии?
на более высоких скоростях довольно часто случались пролеты сквозь препятствия (...)
Есть же, вроде, эти, как их, недискретные какие-то методы расчёта коллизий, как раз для подобных случаев? Типа, не увеличивать до бесконечности частоту, а, имея вектор скорости, посчитать, пересечём мы хитбокс до начала следующей итерации или нет.
А вообще, возможно, если ты певец, то несколько лет с брэкетами во весь рот могут и карьеру похоронить. Даже если потом всё будет нормально и с тембром, и с прикусом, и с дикцией.
Я правша. Сколько-то лет назад начало от мыши как будто слегка ныть правое запястье, попробовал переучиться под левую руку, не дожидаясь туннельного синдрома - для работы получилось довольно быстро и легко, но вот для рисования и игр не получилось вовсе, но я не так часто этим занимаюсь, так что просто на время беру мышь в правую руку и меняю местами с правой половиной клавиатуры. Про numpad понимаю, сам когда-то так же страдал, думал поискать в продаже укороченную клавиатуру, а numpad, если что, отдельный докупить, но в итоге загулял на все деньги и с тех пор пользуюсь тем, что изображено на снимках выше.
Ой, что вы, я не готов к столь стремительному развитию отношений. А, впрочем, держите:
Рука с мышью орудует где-то в нижнем квадранте, для манипуляций с текстом и гуём хватает. Для игр или какого-то рисования на время меняю местами мышь и правую половину клавиатуры.
Потому что стон по поводу читеров в интернетах стоит уже сколько [десятков] лет? Столько же, сколько прошло с того момента, как многопользовательские игры более-менее распространились. Этот стон у нас песней зовётся. А все материалы по борьбе с читами (и этот, как видите, не исключение) всё так же описывают, что сканируется какая-то память и т. п., выявляются какие-то распространённые читы, и потом выявленные читеры жестоко банятся. Анализируется точность стрельбы, и слишком точно стреляющие принимаются за читеров и жестоко банятся. Будем оптимистами и примем процент забаненных читеров за 99 - оставшегося одного процента с лихвой хватит, чтобы испохабить любую игру. Даже если в этот раз вашей игровой сессии читера не досталось - осознания того, что в любой момент может прилететь читер и раздать хедшоты с разворота, хватит, чтобы испоганить игру. А действительно решить проблему, я так понимаю, невозможно - разве что стриминговыми игровыми сервисами, либо какими-то залами сертифицированных и опечатанных игровых автоматов.
В "информационной безопасности" хакеры, конечно, находят иногда дыры в безопасности, а потом разработчики это исправят, и хакеры вынуждены искать новые дыры. А читерство в играх существует на фундаментальном, основополагающем уровне, читы существуют, поскольку клиент-серверная архитектура в основе своей это позволяет, с этим ничего не делают и, похоже, в обозримом будущем не сделают. А все эти "часть читеров отсеется на таком уровне, часть читеров отсеется на сяком уровне" - это как воду в сите носить: часть молекул воды, конечно, отсеется, но, в итоге, и воды не принесут, и на полу лужи будут.
Не особо слежу за схемами и рекомендациями, но это для меня самая удобная поза для работы за компьютером. Спокойно высиживаю на кресле с вертикальной спинкой дни напролёт, совершенно не ощущая желания лечь, полу-лечь, вальяжно развалиться или жалко скособочиться. Является ли данная поза оптимальной в смысле избегания каких-то заболеваний в долгосрочной перспективе - за это не скажу, но именно сидеть за компьютером - нормально.
Один момент здесь поддержу - подставка для ног. Почему - вам наверняка хочется поставить ноги под столом на что-то, не любите когда они висят в воздухе?
У меня нет и никогда не было подставки для ног, но ноги при этом не висят и никогда не висели в воздухе. Может, у автора просто стол и стул подобраны не по росту?
Ну вот у кого не было этих следов от врезающегося в кожу края стола? (...) но по мне проще взять стол с вырезом
В смысле, это вот зачем автору вырез по центру стола? Я-то думал, чтобы заехать на кресле в эту выемку, а на выступающие края удобно локти положить, но было непонятно, даст ли это реально какие-то удобства при использовании такой клавиатуры, как на картинке.
Я себе после не сильно удачных попыток организовать клавиатуру на подлокотниках кресла и чуть более удачных экспериментов с подставками для локтей, привинчиваемыми к столу, самостоятельно, с использованием досок и струбцин из хозмага организовал вот такой "колхоз", которым очень доволен (устраивать дома полноценные столярные работы я возможности не имею).
Но это работает если клавиатура с половинками на ширине плеч и "вырез" достаточно глубокий. А что даёт вот это вот с приведённых в статье фотографий? Женщина же за столом с ровным краем пусть просто подъедет ближе к столу, а клавиатуру отодвинет подальше, чтобы руки легли на столешницу почти до локтей.
Родители решают повыделываться, при этом, видимо, не особо задумываясь, каково будет ребёнку существовать в обществе себе подобных под именем, звучащим как серьёзный эндокринный недуг с сомнительным прогнозом на пятилетнее выживание.
Начнём с того, что сама постановка задачи, возникни она не на интервью, а в реальных условиях, ненадолго остановит человека, чтобы действительно понять: а) зачем нужно находить середину связного списка? б) зачем выбирать именно связный список как упорядоченный контейнер для данных, у которого надо находить серединный элемент. Что-то тут, наверное, придумать можно, как-то обосновать - но ненадолго остановит.
С другой стороны, а зачем человеку действительно понимать, что происходит? Есть функция, возвращает срединный элемент, вот аргумент(ы), вот возвращаемое значение. Работает? Работает. Ну и не трожь, пускай работает. Можно, опять-таки, представить ситуацию, когда понадобилось действительно понять - прошёл, допустим, год, два, три, и почему-то понадобилось переделать. Но не по нескольку же раз на дню человек будет читать именно эту часть кода, каждый раз ненадолго останавливаясь, чтобы понять.
Идея 3 варианта довольно проста, только "у кого-то это щёлкает, а у кого-то не щёлкает". Предварить реализацию коротеньким комментарием о том, что происходит и почему это работает, и по лёгкости понимания и чтения оно, на мой взгляд, не только не уступит второму варианту, а даже его превзойдёт.
По Big-O такую же, одинаковое количество переходов к следующему элементу, но в третьем варианте отсутствуют операции сравнения текущего индекса указателя с вычисленной длиной списка, делённой пополам. Впрочем, выше @wataru, по-моему, уже написал про то же самое.
Да как посмотреть. А то ведь "внезапно" окажется, что федеративность конечно, федеративна, но фактически основная инфраструктура всё равно под Microsoft, а свою поднять хотя и можно, но фактически никто этим не будет заниматься для сервиса, из которого нельзя извлекать профит, на открытом-то федеративном протоколе да с альтернативными клиентами. И если Microsoft таки купит конкурента, то сможет довольно быстро прикрыть лавочку процентов на 95, а оставшиеся 5%, разделив судьбу Джаббера, отомрут сами.
С другой стороны, а кого покупать-то, у кого там щас самый популярный мессенджер - у Фейсбука? У этих, поди, не купишь, они сами с усами, к тому же, считай, это для них практически одна из составляющих ядра их бизнеса. Или Телеграм купят?
Профита в этом, на первый взгляд, никакого, но, учитывая, что с мессенджерами Microsoft опоздал на празднество Расина, теоретически, для них могло бы иметь смысл сделать как-то так, как вы описываете, руководствуясь принципом "так не достанься же ты никому!" Сделать хорошо, бесплатно, федеративно, альтернативно и лаяй, вложиться в пиар и привлечь юзеров с целью подосрать мессенджерам-конкурентам: да, мы не датамайнили юзеров, и уже не будем - но теперь и они не будут.
Вы анекдот про Холмса на воздушном шаре и программиста слышали?
Я ж вам его и рассказывал - уж не знаю, в первый для вас раз или в какой. Так и что? P2P имеет преимущества (меньше нагрузки на сервера, меньше зависимости от пинга до серверов, меньше точек отказа), имеет недостатки (вероятно, сложней в реализации и развитии, чем клиент-сервер; с безопасностью непонятно что, когда твой трафик идёт непонятно через кого - хотя методы шифрования, надёжно работающие в таких условиях, вроде, есть; сообщения в оффлайн, опять же, не ходят, потому что нет сервера, на котором такое сообщение может полежать, дожидаясь онлайна у получателя; прослушка, опять же, да). Вроде, понятно, почему для небольшой компании горячих эстонских парней, не имеющей развесистой инфраструктуры серверов по всему миру, достоинства перевешивают недостатки. Вроде, понятно и почему для техногиганта, имеющего развесистую инфраструктуру серверов по всему миру, достоинства P2P оказываются пренебрежимы, а вот недостатки (в кавычках и без) - вполне весомы. А с точки зрения человека, который простой юзер и не знает слова P2P, сообщения начали ходить в оффлайн - хорошо. Качество связи, по моим наблюдениям, тоже улучшилось - но я не берусь судить, что тому виной - отказ ли от P2P или просто развитие интернет-инфраструктуры.
Если используется настолько "квадратная" и повторяющаяся геометрия, не проще вообще было бы не связываться с 3D-редакторами городов и сделать процедурную геометрию? Типа, центр, ориентация, размерность и текстура коробки, а джаваскрипт уж, небось, осилит сделать восемь структурированных полигонов на лету, ну или на два больше, если текстура первого этажа должна отличаться. Небось, вообще на килобайты счёт пойдёт.
Вообще, идея перспективная - вместо того, чтобы, врезавшись в чужое транспортное средство, как ни в чём не бывало поехать далее, чтобы вылезали пацаны и, такие: "Ты куда прёшь, баран? - Да сам-то козёл! - Ты чо буровишь?!..." - и т. д., ветки диалога, потом бой, и, если проиграл, тебя везут квартиру отписывать.
Это ж, вроде, стандартная практика - использовать отдельную, сильно упрощённую модель для обсчёта физики? Что там "решать"?
В смысле, а какое-нибудь стандартное octree не спасёт отца русской демократии?
Есть же, вроде, эти, как их, недискретные какие-то методы расчёта коллизий, как раз для подобных случаев? Типа, не увеличивать до бесконечности частоту, а, имея вектор скорости, посчитать, пересечём мы хитбокс до начала следующей итерации или нет.
А вообще, возможно, если ты певец, то несколько лет с брэкетами во весь рот могут и карьеру похоронить. Даже если потом всё будет нормально и с тембром, и с прикусом, и с дикцией.
Я правша. Сколько-то лет назад начало от мыши как будто слегка ныть правое запястье, попробовал переучиться под левую руку, не дожидаясь туннельного синдрома - для работы получилось довольно быстро и легко, но вот для рисования и игр не получилось вовсе, но я не так часто этим занимаюсь, так что просто на время беру мышь в правую руку и меняю местами с правой половиной клавиатуры. Про numpad понимаю, сам когда-то так же страдал, думал поискать в продаже укороченную клавиатуру, а numpad, если что, отдельный докупить, но в итоге загулял на все деньги и с тех пор пользуюсь тем, что изображено на снимках выше.
Дикция, наверное, могла бы измениться.
Ой, что вы, я не готов к столь стремительному развитию отношений. А, впрочем, держите:
Рука с мышью орудует где-то в нижнем квадранте, для манипуляций с текстом и гуём хватает. Для игр или какого-то рисования на время меняю местами мышь и правую половину клавиатуры.
Потому что стон по поводу читеров в интернетах стоит уже сколько [десятков] лет? Столько же, сколько прошло с того момента, как многопользовательские игры более-менее распространились. Этот стон у нас песней зовётся. А все материалы по борьбе с читами (и этот, как видите, не исключение) всё так же описывают, что сканируется какая-то память и т. п., выявляются какие-то распространённые читы, и потом выявленные читеры жестоко банятся. Анализируется точность стрельбы, и слишком точно стреляющие принимаются за читеров и жестоко банятся. Будем оптимистами и примем процент забаненных читеров за 99 - оставшегося одного процента с лихвой хватит, чтобы испохабить любую игру. Даже если в этот раз вашей игровой сессии читера не досталось - осознания того, что в любой момент может прилететь читер и раздать хедшоты с разворота, хватит, чтобы испоганить игру. А действительно решить проблему, я так понимаю, невозможно - разве что стриминговыми игровыми сервисами, либо какими-то залами сертифицированных и опечатанных игровых автоматов.
В "информационной безопасности" хакеры, конечно, находят иногда дыры в безопасности, а потом разработчики это исправят, и хакеры вынуждены искать новые дыры. А читерство в играх существует на фундаментальном, основополагающем уровне, читы существуют, поскольку клиент-серверная архитектура в основе своей это позволяет, с этим ничего не делают и, похоже, в обозримом будущем не сделают. А все эти "часть читеров отсеется на таком уровне, часть читеров отсеется на сяком уровне" - это как воду в сите носить: часть молекул воды, конечно, отсеется, но, в итоге, и воды не принесут, и на полу лужи будут.
Не особо слежу за схемами и рекомендациями, но это для меня самая удобная поза для работы за компьютером. Спокойно высиживаю на кресле с вертикальной спинкой дни напролёт, совершенно не ощущая желания лечь, полу-лечь, вальяжно развалиться или жалко скособочиться. Является ли данная поза оптимальной в смысле избегания каких-то заболеваний в долгосрочной перспективе - за это не скажу, но именно сидеть за компьютером - нормально.
У меня нет и никогда не было подставки для ног, но ноги при этом не висят и никогда не висели в воздухе. Может, у автора просто стол и стул подобраны не по росту?
В смысле, это вот зачем автору вырез по центру стола? Я-то думал, чтобы заехать на кресле в эту выемку, а на выступающие края удобно локти положить, но было непонятно, даст ли это реально какие-то удобства при использовании такой клавиатуры, как на картинке.
Я себе после не сильно удачных попыток организовать клавиатуру на подлокотниках кресла и чуть более удачных экспериментов с подставками для локтей, привинчиваемыми к столу, самостоятельно, с использованием досок и струбцин из хозмага организовал вот такой "колхоз", которым очень доволен (устраивать дома полноценные столярные работы я возможности не имею).
Но это работает если клавиатура с половинками на ширине плеч и "вырез" достаточно глубокий. А что даёт вот это вот с приведённых в статье фотографий? Женщина же за столом с ровным краем пусть просто подъедет ближе к столу, а клавиатуру отодвинет подальше, чтобы руки легли на столешницу почти до локтей.
Little Bobby Tables.
Столько всего умные люди напридумывали. И не помогает ни*уя.
Родители решают повыделываться, при этом, видимо, не особо задумываясь, каково будет ребёнку существовать в обществе себе подобных под именем, звучащим как серьёзный эндокринный недуг с сомнительным прогнозом на пятилетнее выживание.
Начнём с того, что сама постановка задачи, возникни она не на интервью, а в реальных условиях, ненадолго остановит человека, чтобы действительно понять: а) зачем нужно находить середину связного списка? б) зачем выбирать именно связный список как упорядоченный контейнер для данных, у которого надо находить серединный элемент. Что-то тут, наверное, придумать можно, как-то обосновать - но ненадолго остановит.
С другой стороны, а зачем человеку действительно понимать, что происходит? Есть функция, возвращает срединный элемент, вот аргумент(ы), вот возвращаемое значение. Работает? Работает. Ну и не трожь, пускай работает. Можно, опять-таки, представить ситуацию, когда понадобилось действительно понять - прошёл, допустим, год, два, три, и почему-то понадобилось переделать. Но не по нескольку же раз на дню человек будет читать именно эту часть кода, каждый раз ненадолго останавливаясь, чтобы понять.
Забористые были силикаты у того ИИ, который генерировал КДПВ.
Идея 3 варианта довольно проста, только "у кого-то это щёлкает, а у кого-то не щёлкает". Предварить реализацию коротеньким комментарием о том, что происходит и почему это работает, и по лёгкости понимания и чтения оно, на мой взгляд, не только не уступит второму варианту, а даже его превзойдёт.
По Big-O такую же, одинаковое количество переходов к следующему элементу, но в третьем варианте отсутствуют операции сравнения текущего индекса указателя с вычисленной длиной списка, делённой пополам. Впрочем, выше @wataru, по-моему, уже написал про то же самое.
Да как посмотреть. А то ведь "внезапно" окажется, что федеративность конечно, федеративна, но фактически основная инфраструктура всё равно под Microsoft, а свою поднять хотя и можно, но фактически никто этим не будет заниматься для сервиса, из которого нельзя извлекать профит, на открытом-то федеративном протоколе да с альтернативными клиентами. И если Microsoft таки купит конкурента, то сможет довольно быстро прикрыть лавочку процентов на 95, а оставшиеся 5%, разделив судьбу Джаббера, отомрут сами.
С другой стороны, а кого покупать-то, у кого там щас самый популярный мессенджер - у Фейсбука? У этих, поди, не купишь, они сами с усами, к тому же, считай, это для них практически одна из составляющих ядра их бизнеса. Или Телеграм купят?
Ваш комментарий неявно постулирует слишком крутой, на мой взгляд, темпоральный градиент нравственного прогресса.
Профита в этом, на первый взгляд, никакого, но, учитывая, что с мессенджерами Microsoft опоздал на празднество Расина, теоретически, для них могло бы иметь смысл сделать как-то так, как вы описываете, руководствуясь принципом "так не достанься же ты никому!" Сделать хорошо, бесплатно, федеративно, альтернативно и лаяй, вложиться в пиар и привлечь юзеров с целью подосрать мессенджерам-конкурентам: да, мы не датамайнили юзеров, и уже не будем - но теперь и они не будут.
Я ж вам его и рассказывал - уж не знаю, в первый для вас раз или в какой. Так и что? P2P имеет преимущества (меньше нагрузки на сервера, меньше зависимости от пинга до серверов, меньше точек отказа), имеет недостатки (вероятно, сложней в реализации и развитии, чем клиент-сервер; с безопасностью непонятно что, когда твой трафик идёт непонятно через кого - хотя методы шифрования, надёжно работающие в таких условиях, вроде, есть; сообщения в оффлайн, опять же, не ходят, потому что нет сервера, на котором такое сообщение может полежать, дожидаясь онлайна у получателя; прослушка, опять же, да). Вроде, понятно, почему для небольшой компании горячих эстонских парней, не имеющей развесистой инфраструктуры серверов по всему миру, достоинства перевешивают недостатки. Вроде, понятно и почему для техногиганта, имеющего развесистую инфраструктуру серверов по всему миру, достоинства P2P оказываются пренебрежимы, а вот недостатки (в кавычках и без) - вполне весомы. А с точки зрения человека, который простой юзер и не знает слова P2P, сообщения начали ходить в оффлайн - хорошо. Качество связи, по моим наблюдениям, тоже улучшилось - но я не берусь судить, что тому виной - отказ ли от P2P или просто развитие интернет-инфраструктуры.
Авторизация по номеру телефона - сразу на хер.