• Как сделать бота, который превращает фото в комикс: пошаговая инструкция для чайников
    +3
    Забавно, чувак сзади одним глазом смотри сразу в две стороны :)
  • Тяжела ли работа программиста — взгляд с точки зрения психофизиологии
    +1
    Надо будет попробовать этот вариант, спасибо)
    Я в полной тишине очень долго засыпаю(несколько часов). Сильно помогает включить на фоне видео с ютюба, где слышится монотонный разговор и под него засыпать. Музыка почему-то слабо помогает.
  • О демонах и телепортации: две технологии, которые приближают «квантовое будущее»
    0
    Да не, я просто спросил :)
    С детства термин «миг» я понимал неправильно, вот и решил уточнить.
    Если миг это не самая маленькая единица времени, то сколько проходит времени между двумя состояниями(кадрами) вселенной? Сиг занимает 30 колебаний электромагнитной волны атома цезия, а значит не минимальная единица.
  • Самый худший UI управления громкостью звука
    +5
    Голосовалку худшего UI неплохо бы добавить)
  • Визуальный редактор логики для Unity3d. Часть 1
    +1
    Респект за проделанную работу, всё выглядит довольно хорошо! Правда название uViLEd выглядит страшненько)
    Пара вопросов:
    1. Что думаете по поводу Bolt? На мой взгляд он лучше чем Playmaker и быстрее. Почему его не выбрали?
    2. Почему решили перейти на Unity3d 2018.3 оставив поддержку старых версий? Учитывая что нет кодогенерации, и не используете напрямую компилятор Roslyn, вроде не проблема было писать на старой версии C#.
    3. Как обстоят дела с производительностью? Как-то кешируете вызовы или каждый раз дергаете функции через Reflection?
  • Прогнозирование физики на стороне клиента в Unity
    0
    Существует основной физический мир, который симулируется как и раньше. Там ничего не поменялось.
    Но теперь при загрузке или создании сцен, можно указать параметр(LocalPhysicsMode), который позволяет создать отдельный физический мир, независимо от основного. Объекты в этом новом мире существуют отдельно от основного, т.е. шарик из новой сцены не будет взаимодействовать с основным миром.
    Но есть нюансы:
    • Независимо от того, симулируем ли мы основной мир, у объектов/скриптов новой сцены будут вызываться FixedUpdate в такт с основным миром, с интервалом Time.fixedDeltaTime который указан в настройках
    • Во время вызова PhysicsScene.Simulate(float) не вызываются FixedUpdate у скриптов в этой сцене, однако вызываются события типа OnCollisionEnter
    • Не обязательно вызывать PhysicsScene.Simulate из FixedUpdate, можно из любого метода, напр из Update
    • Physics.Raycast не видит объекты в других физ. мирах, поэтому нужно использовать PhysicsScene.Raycast.
  • Вышла новая версия Unity 2018.3
    +2
    Согласен. Новая система префабав вообще топ, давно жду, фича должна облегчить работу многим.
    Они еще обновили PhysX, об этом забыли упомянуть в статье. Теперь можно симулировать физику для отдельных сцен. Это тоже важное обновление для синхронизации физических объектов в мультиплеерных играх.
    Visual Effect Graph тоже очень классная штука, правда работает вроде как только в HDRP.
    Добавлена поддержка C# 7.3 и оптимизировали рекомпиляцию отдельных файлов(Incremental C# Compiler теперь вроде как встроен по умолчанию).
    Профайлер памяти, без этого раньше было тяжело находить утечку памяти.
    В общем обновлений достаточно много и это всё полезные улучшения. В статье многое не описывается, советую почитать в блоге юнитеков.
  • Unity — подводные камни разработки 2D игры
    +4
    Статья якобы дает советы, а по сути советы дают автору.
    Я не против туториалов и советов, но не стоит писать статью с советами после первой пробы.
    Знающие люди не получили новой информации, а новички вряд ли поймут как решать эти проблемы, потому что Вы так и не написали как решить их, а просто пожаловались и предложили вариант как бы Вы хотели чтобы было удобно.
    Все проблемы в статье решаемы, если почитать документацию и немного знать математику.
    Не нужно ругаться на юнити, при изучении других технологий Вы наверняка тоже тратили время. Это нормально.
  • Прогнозирование физики на стороне клиента в Unity
    0
    Кстати, недавно юнитеки сделали разделение физических сцен, чтобы симулировать не все физические объекты, а только объекты в нужных сценах. Т.е. достаточно использовать PhysicsScene.Simulate для нужной сцены, а остальной мир будет симулироваться автоматически.
    blogs.unity3d.com/ru/2018/11/12/physics-changes-in-unity-2018-3-beta
  • На чём прокалывается ИИ при генерации человеческих лиц
    0
    После прочтения у меня 6/6, но думаю если бы не прочел статью, угадал бы только половину. Мне тоже кажется, что лучше перенести на верх и в конце предложить пройти тест снова
  • Почему компилятор превратил мой цикл с условием в бесконечный?
    0
    Никто не говорил, что Rust — плохой. C++ тоже не плохой. Они разные и у каждого есть свои плюсы и минусы. UB в C++ и вправду мерзкие. Если вдруг где-то кто-то допустил ошибку, то сложно потом найти. Но это цена за производительность. И возможно есть еще люди, которые вставляют ассемблерный код для оптимизации(хотя компиляторы очень хорошо оптимизируют). Какой нибудь Java или C# тоже ведь не плохие языки, но никто не говорит, что «в этих языках можно сделать лучше». Может и можно, но там тоже свои проблемы.
  • Опыт использования гибрида клавиатуры и мыши в программировании
    0
    Достаточно намагнитить жесткий диск в правильных местах)
  • Опыт использования гибрида клавиатуры и мыши в программировании
    –1
    Тру-программисту не нужна мышь
  • Исследователи побороли наиболее мощные блокировщики рекламы, грядет война форматов
    0
    И даже от Хабра можете отказаться? О_о
  • Портирование Quake3
    0
    Видимо неправильно сформулировал вопрос.
    Я понимаю, что у Вас есть поддержка OpenGL, и если использовать API, то все будет работать. Но ведь в Quake и так используется OpenGL API.
    Вы используете Mesa, а она как раз ориентирована для ускорения рендеринга, в том числе за счет использования аппаратного ускорения.
    Просто странно что у Вас по сути есть всё что нужно, но все же рендеринг программный.
  • Портирование Quake3
    0
    А что значит «появилась поддержка Open GL», если его нельзя или так сложно использовать?
  • Автор книги «Ведьмак» потребовал у CD Projekt Red минимум $16 млн
    +1
    Через 20 лет, — говорит он, — кто-нибудь спросит: „А вот эта игра про ведьмака — кто написал историю?” И никто не будет знать: „Кто-то написал”, — ответят они

    Думаю, если бы не игра, никто бы не и спрашивал про автора. Те кто читают книгу и так видят имя автора на обложке, но таких людей просто было бы на много меньше, так что игра пошла на пользу всем.
  • О демонах и телепортации: две технологии, которые приближают «квантовое будущее»
    0
    «Мгновение» разве не равно «миг»? А миг разве не минимальная единица времени?
  • Автоэнкодеры и сильный искусственный интеллект
    0
    Когда ИИ сможет создать ИИ лучше, чем он сам, улучшенный ИИ сможет создать еще более улучшенный ИИ и так далее. В итоге скайнет решит уничтожить больше половины человечества и Джон Коннор нас спасет :)
  • Создание интерактивной травы в Unreal Engine
    0
    В юнити нужно сделать примерно тоже самое что и в статье, только не нодами, а кодом.
    В общих чертах Вам нужно научиться:
    1. рисовать кистью по текстуре(векторное поле), для этого можно использовать RenderTexture либо напрямую задавать пиксели через texture2D.SetPixels.
    2. надо написать свой вершинный шейдер, который поворачивает все вершины на определенный угол вокруг точки (v.x, 0, v.z). Чтобы получить значение угла Вам надо спроецировать координаты вершины на текстуру, и цвет в этих координатах будет направлением куда поворачивать.
    Чтобы это смотрелось красивее, лучше менять силу поворота в зависимости от высоты вершины, т.е v.y.

    P.S. промазал веткой, это ответ для artemev на комментарий выше
  • Использование отладчика Android Studio по максимуму
    –2
    Все что под фоткой Ди Каприо, я читал его голосом :)
  • Как единственная строка древнего кода целых полгода сводила с ума разработчиков MMORPG
    –12
    Да, на дайлапе


    Что значит дайлап? dial-up?
  • Новая система распознавания лиц, установленная полицией Лондона, не может никого узнать
    0
    Тот случай, когда китайцев легче распознать, чем американцев :)
  • Выпуск#18: ITренировка — актуальные вопросы и задачи от ведущих компаний
    0
    Перепутал немножко, да, спасибо! Вы были правы, простите за этот спор) Но как говорится, в споре рождается истина!
  • Выпуск#18: ITренировка — актуальные вопросы и задачи от ведущих компаний
    0
    Думаю я оказался не прав)
    Я решил практическим путем проверить и накидал код: cpp.sh/8ibyj
    У меня получается 1/3 в ответе. Я где-то допустил ошибку?
  • Выпуск#18: ITренировка — актуальные вопросы и задачи от ведущих компаний
    0
    Я понял Вашу мысль :)
    Но мне все-таки кажется, что независимо от того какая именно сторона выпала в случае с фальшивой монетой, это не влияет на исход, т.е. не важно для нас.
    Давайте подождем ответы от автора статьи. Думаю кто-то из нас сильно удивиться :)
  • Выпуск#18: ITренировка — актуальные вопросы и задачи от ведущих компаний
    0
    Выбора монет не было. Мы не подкидываем монеты 2 раза. Мы не считаем количество разных подбросов чтобы получить текущую ситуацию. По условию мы имеем уже подброшенную монету и уже видим решку и от этого отталкиваемся. Нам осталось лишь перевернуть и увидеть что на обратной стороне.
    Чтобы посчитать вероятность нужно знать количество возможных исходов, а исходов у нас может быть только 2, потому что мы уже подбросили какую-то монету и мы уже знаем что выпала решка, и когда мы перевернем монету там будет либо решка либо орел.
  • Выпуск#18: ITренировка — актуальные вопросы и задачи от ведущих компаний
    0
    Всего вариантов может быть 2, т.к. монет только 2. Либо окажется что это правильная монета, либо фальшивая. Если вариантов исхода 2 то и ответ 1/2.
  • Спросите Итана: почему орбиты комет отличаются от орбит планет?
    0
    Если нет сопротивления движению(т.е. плотность в вакууме считать нулевым), нет препятствий, которые поменяют траекторию и солнце не высохнет, то можно никогда не упасть.
  • Сетевая оптимизация для Unreal Engine 4
    0
    Вы пишите так будто сетевой стек в анриле это что-то невероятно сложное, и только Вам удалось его понять.
    Проблема тут не в сети а в данных которые передаются. Если клиенту передавать данные о всей карте, то так или иначе можно написать мапхак.
    Единственный выход — это не передавать всю карту, а только то, что видит пользователь. Причем для каждого клиента нужно отсылать то, что видит именно этот клиент, а это может создать дополнительные сложности в разработке, поэтому многие забивают на это.
  • Реализация быстрых 2D-теней в Unity с помощью 1D shadow mapping
    0
    А почему нет варианта: лучше в 3д с 60 фпс, чем в 2д с 60 фпс?
    Такой вариант тоже есть :) Это зависит от игры.
    К примеру мне вот нравится 2д игра «Limbo», и при прохождении я не думал о том, что было бы круто, если игру сделали в 3д. Игру изначально задумывали в 2д и она очень хороша.
  • Исследуем минорные возможности C# 7
    0
    p.GetCoordinates(out var x, out var y);

    Читабельность ломается, непонятно какой тип. Хотя в некоторых случаях наверное удобно так писать.
  • Реализация быстрых 2D-теней в Unity с помощью 1D shadow mapping
    0
    Или же просто не помнят, что есть ещё и 3д (шлемы, очки...). А зря.

    Как говорится «за двумя зайцами погонишься, можешь ни одного не поймать».
    Не всем играм суждено быть в 3д и для VR.
    Универсальность не всегда хорошо.
    Например игру для смартфонов лучше сделать в 2д с 60 фпс, чем в 3д с 20 фпс(грубо говоря).
  • Unity 2018 и ProBuilder: создаем, редактируем и текстурируем 3D-модели прямо в редакторе
    0
    Отличная новость!
    Юнити все лучше и лучше.
    Спасибо за видосик!)
  • Альтернатива платному отключению рекламы в бесплатном приложении Android
    0
    Уж точно не рекламой.

    Кому как, ведь все люди разные. Кто-то предпочтет посмотреть рекламу и потратить свое время, чем потратит свои деньги.
  • Альтернатива платному отключению рекламы в бесплатном приложении Android
    0
    Но стоит помнить, что платят то за клики по баннеру, а не просмотры.

    Я говорю про видео рекламу, и тап по нему после просмотра, а не про баннер, который висит все время в меню.

    Можете дать ссылку на подтверждение Ваших слов?

    К сожалению официального подтверждения у меня нет. Я обычный программист, и это утверждение слышал внутри нашей компании. Игнорировать думаю не стоит.

    Даже если я прав, возможно не стоит переписывать код. Здесь говорится, что дешевая реклама в некоторых случаях выгоднее. Стоит изучить аналитику в admob.
  • Сетевой код для бедных
    0
    Да и вообще, почему нужно слать «слепки» состояния всего мира 60 раз в секунду? Почему не слать пачки изменений конкретных объектов с привязкой к меткам времени?

    На сколько я понял, автор так и сделал. Для этого он и хранит предыдущие состояния всего мира, потом сравнивает с состоянием мира клиента и отправляет ему разницу.
    По поводу «Игра поддерживает до 2048 объектов.» автор сам объясняет почему он так сделал.
    Если 2048 объектов это теоретический максимум для его игры, то почему бы и нет. Такой способ реализовать быстрее. Однако я бы все-таки не советовал так хардкодить, если есть возможность и время сделать лучше.

    Про разницу игровых состояний, сжатие данных и многое другое очень хорошо написал Гленн Фидлер. И автор любезно предоставил ссылку на его статьи: gafferongames.com
  • Альтернатива платному отключению рекламы в бесплатном приложении Android
    0
    На словах выглядит интересно, однако у меня есть одно подозрение.
    Если пользователь посмотрит рекламу 5 раз подряд, и он не кликнет по ссылке, то его ценность сильно уменьшится и этому пользователю будут показываться дешевая реклама. Т.е. Вы получите меньше денег за рекламу, чем если бы вы растянули эти 5 показов на больший временной отрезок.
  • Глубинное обучение с подкреплением пока не работает
    +1
    Спасибо за перевод!
    Как раз начал изучать эту тему.
    Попытался сделать что-то типа:https://www.youtube.com/watch?v=cyN-CRNrb3E, но только с одной палкой.
    Обучил нейросеть держать палку почти вертикально, коэффициент вознаграждения за «вертикальность» подобрать было не супер-просто. Но когда я попытался обучить держать палку идеально ровно и чтобы энергии на движение тратилось минимум, оказалось что нужно подбирать коэффициент наказания за «не вертикальность», что оказалось очень не просто, я так и не подобрал. Нейросеть думает, что ему и так не плохо и не хочет обучаться дальше.
    В общем для меня это пока боль, хотя казалось бы все должно быть просто и само по себе заработать.
    Буду копать дальше по приведенным в статье ссылкам. Возможно такие вещи стоило бы сделать через ГА.
  • Понимание lvalue и rvalue в C и С++
    0
    Да, понятно, что на lvalue/rvalue накладываются какие-то условия.
    В той же главе пишется:
    Таким образом не всем lvalue можно присвоить значение


    Например в случае:
    const int val = 0;
    val = 4; // Тут val все еще lvalue, хоть и нельзя так писать