Задать вопрос
  • Как отредактировать строку по её индексу при чтении построчно файла?

    dollar
    @dollar Куратор тега Lua
    Делай добро и бросай его в воду.
    1) Считать все строки файла в массив (таблицу).
    2) Изменить элемент (строку) №22 в массиве.
    3) Перезаписать файл, записав в него из массива все строки заново.
    Ответ написан
    Комментировать
  • Как использовать 1 localstorage на 2 js файла?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Контент скрипт расширения работает как часть сайта, то есть отдельно от самого расширения. Поэтому используется localStorage сайта. Причем, у каждого сайта свой localStorage, и контент скрипт может быть привязан к нескольким или ко всем сайтам. Интересно, какой логикой должен руководствоваться браузер, чтобы связать localStorage какого-то одного сайта из многих и localStorage браузерного расширения воедино?

    В общем, чтобы обмениваться информацией между контент скриптом и расширением, нужно использовать сообщения. Для этого нужно добавить в расширение фоновую страницу, и там сделать обработчик сообщений. Таким образом, фоновая страница выступает как бы сервером, а каждый контент скрипт на любом сайте - клиентом.
    Ответ написан
    Комментировать
  • Почему игры созданные на Unity имеют много багов?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Потому что Unity прост в освоении. Нынче даже школьники могут легко начать делать игры на Unity. Таким образом, игры могут делать даже не программисты (не настоящие программисты).

    Второй причиной является экономия при разработке. Unity - это уже само по себе экономичное решение. Многое доступно из коробки. Специалисты стоят дешево. Во всяком случае, дешевле, чем серьёзные бородатые программисты на C++. Но можно же пойти дальше, и сэкономить на тестировании, на создании документации и пр. Отсюда и забагованность.

    Ну и третьим моментом являются разные странности и некоторая черезжопность использования Unity (не везде и не всегда, конечно же). То есть это недостаток опыта и знаний о самом Unity, о его болезнях.
    Ответ написан
    7 комментариев
  • Как вставлять изображение на canvas НЕ только при загрузке?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    С помощью data:URL (RFC 2397).
    Пример
    <img src="data:image/gif;base64,R0lGODlhEAAOALMAAOazToeHh0tLS/7LZv/0j
    vb29t/f3//Ub//ge8WSLf/rhf/3kdbW1mxsbP//mf///yH5BAAAAAAALAAAAAAQAA4AAA
    Re8L1Ekyky67QZ1hLnjM5UUde0ECwLJoExKcppV0aCcGCmTIHEIUEqjgaORCMxIC6e0Cc
    guWw6aFjsVMkkIr7g77ZKPJjPZqIyd7sJAgVGoEGv2xsBxqNgYPj/gAwXEQA7" width="16" 
    height="14">

    К слову, загрузка всё равно будет. Просто вы переносите картинку из отдельного файла в саму страницу, увеличивая время её загрузки. Иногда это оправданно. Но если картинки большие, то вы просто лишаете себя возможности показать какой-нибудь preloader, чтобы пользователь не скучал в ожидании.

    Соответственно, ваш код нужно поменять примерно так:
    Код
    const image = new Image();
    image.src = strDataURI; // картинка уже в строке
    texture = image;
    Ответ написан
    Комментировать
  • Mobile Game art/design - как создавать такой дизайн?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Используется художник, который специализируется на таком стиле или умеет его копировать (подражать другому художнику).
    Ответ написан
    Комментировать
  • Что будет в геймдеве с Flash после его закрытия?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Использовать Flash для разработки игр как-то странно в 2020 году. Это устаревшая технология, и закрытие лишний раз это подтверждает. Не будем вдаваться в подробности, что к этому привело, будем довольствоваться итоговыми фактами.

    На Flash можно было, и даже сейчас можно, достаточно эффективно прототипировать игры, но не разрабатывать для конечных потребителей. Хотя бы банально потому, что есть сложности с поддержкой в браузерах. Например, лично у меня Flash полностью запрещён от греха подальше, и рекомендую делать такие же настройки в браузере всем своим знакомым. Но прототипировать на флеше имеет смысл только если вы его хорошо знаете, а с нуля учить для этой цели смысла нет, потому что есть более современные и актуальные инструменты.

    Браузерные игры в 2020 можно разрабатывать на WebGL. Для этого вполне подходит Unity. Собственно, Unity как раз делает упор на кроссплатформенность, так что один и тот же проект вы сможете собрать под разные платформы без особых проблем. Ограничителем будет только отличие в целевых устройствах и способах взаимодействия с ними (разные размеры экрана, соотношения сторон, наличие мыши, клавиатуры, сенсорного экрана, датчиков и пр).
    Ответ написан
    7 комментариев
  • Какие персональные данные может получить ios приложение?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Это вы пошутили так?

    Apple очень много внимания уделяет конфиденциальности. Приложению доступны некоторые характеристики телефона и окружения, да и то не все, а к персональным данным оно получает доступ только после соответствующего разрешения от пользователя.

    К примеру, не смотря на информацию об ip при подключении к вашей WiFi-точке, приложение не может узнать её mac-адрес. Раньше было можно, а сейчас лавочку уже прикрыли.

    Разве что через идентификацию устройства можно вытянуть какие-то данные. Это когда разработчики двух разных приложений обмениваются информацией (с посредником или без него) о своей базе клиентов, и оказывается, что пользователь вашей игры недавно пользовался другим приложением или заходил на какой-то сайт. Но это уже выходит за рамки защиты ПД компанией Apple, которая продолжает ставить палки в колёса разработчикам приложений (но без фанатизма).

    Ну а громкие статьи, когда находится какой-то баг или дыра, как раз потому и громкие, что Apple делает акцент на безопасности, а по факту происходит утечка. Кроме того, многие журналисты стараются найти что-нибудь эдакое, чтобы можно было подать с красивым жёлтым заголовком. И "дыра в iOS" звучит более громко, чем "дыра в Android".

    Конечно, реальные дыры тоже бывают, причем порой огромные. Но по секрету скажу, ваши ПД и так не являются тайной для, например, государства. Даже вот я, при наличии определенных связей и денег, могу получить доступ к вашей переписке whatsapp. Так что если у вас какие-то реально большие секреты, то на Apple не стоит надеяться, нужно прилагать дополнительные усилия по обеспечению ИБ.
    Ответ написан
    Комментировать
  • Стоит ли учить Python разработчикам в Unity для работы с ИИ?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Нет, не стоит.

    ИИ в играх - это быстрое принятие решений. И нейронные сети там обычно не используются. Ну, в самой игре. Для тестирования игр используются, а для оживления NPC - нет. Кроме того, нейронная сеть занимает неоправданно много места в оперативной памяти. Поэтому дерево решений в большинстве случаев достаточно.

    С точки зрения геймдизайна ИИ в игре не должен быть слишком умным. Он должен уметь всего лишь красиво отдаваться игроку. :)
    Ответ написан
    Комментировать
  • JavaScript или Python - на чем проще написать игру?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Оба варианта так себе.
    Потому что это как бы не совсем игровые языки, не смотря на то, что при желании игру написать всё-таки можно на любом из них.

    На ум приходят два популярных хороших движка:
    1. Godot - там как бы Python, но не он. Там свой скриптовой язык, очень похожий на Python. Проблема здесь в том, что если буквально прикручивать Python, то это повлечет накладные расходы производительности. Так что если не хотите учить новый язык (а зря), то попробуйте Godot - сам движок учить всё равно придётся.
    2. Unity - там как бы был JavaScript, и в целом даже ещё есть. Но разработчики этого движка давно поняли, что это бесперспективняк, и стараются всячески уйти от поддержки Javascript. Рано или поздно они её выпилят в пользу C#, который гораздо лучше для игр. Да и то там, как и в случае с Godot, не совсем Javascript, а очень похожий язык, который в свое время нарекли Unityscript.

    Таким образом, C# - лучший выбор.

    Ещё можно рассмотреть Lua, как вариант, он идеально подходит для описания игровой логики и прост в освоении. Но движки с поддержкой Lua пока что уступают вышеперечисленным. Проще взять тот же Unity и прикрутить к нему MoonSharp, например, чтобы иметь возможность использовать Lua. Но только если это действительно нужно - например, для поддержки модификаций.
    Ответ написан
  • Налоги,налоги и ещё раз налоги?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    как не получить по шапке за неуплату налогов?

    1) Вовремя платить
    ИЛИ
    2) Мало зарабатывать

    Разработчик сам решает, как ему удобнее платить налоги. Можно с ИП, можно без ИП. Сервисы не занимаются вашими налогами.
    Ответ написан
  • Почему в данном регулярном выражении ленивый квантификатор не учитывает кавычку?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    let str = '...<a href="link1" class="wrong">... <p style="" class="doc">...';
    let regexp = /<a href="[^"]*?" class="doc">/g;
    alert( str.match(regexp) );
    Ответ написан
    Комментировать
  • Игра от steam не запускается на основной монитор, как можно принудительно запустить в основной монитор?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    На Linux никто из разработчиков толком не тестирует игры, потому что согласно статистике (кликнуть OS Version), им пользуются всего лишь 0.81% игроков на 2019 год. Так что если всплыл баг, то его разработчик может не исправить даже после жалобы и подробного описания.

    В любом случае, на вопрос по игре в Steam больше шансов получить нормальный ответ на форуме игры (отдельный форум или обсуждения в Steam).
    Ответ написан
    Комментировать
  • Я недавно зарегистрировался, отвечаю всем, дизлайков нет, почему я не могу больше отвечать никому?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Здесь есть ограничения.
    Ответ написан
    Комментировать
  • Может ли вирус выйти из виртуальной машины?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    В теории - может.
    На практике - это слишком сложно, шансы очень близки к нулю.
    Ответ написан
    4 комментария
  • Хороший ноутбук для учебы?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Что такое "ноутбук для учёбы"?
    При том, что вам нужно и работать, и играть. Написали бы "для работы и игр". В любом случае, это очень абстрактный вопрос.

    Комфорт в большой степени зависит от оперативной памяти. Так что смотрите на неё.
    Вот пример сортировки по цене ноутов с 16 Гб оперативки. До 50к - всего 10 моделей.
    Ответ написан
  • Как отфильтровать массив объектов в объекте?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    for (let year in data) {
    	let cache = {};
    	data[year] = data[year].filter(e=>{
    		if (cache[e.number]) return false;
    		return cache[e.number] = true;
    	});
    }

    Точно не знаю, что для вас значит слово "красиво". Если это значит в одну строчку, то мне кажется, что красота здесь является спорным моментом. Лично я под красотой понимаю, прежде всего, понятный код (для тех, кто с ним не знаком). А это в первую очередь означает наличие комментариев или хотя бы осмысленное именование. И для простых примеров как-то странно эту красоту наводить.

    Ну а по скорости всё зависит от алгоритма и акцента на использовании нативных функций. Выбор алгоритма, в свою очередь, зависит от многих факторов, которые в вашем вопросе не обозначены. Так что привожу просто наиболее очевидный для меня алгоритм.
    Ответ написан
    1 комментарий
  • Письменный английский за месяц?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Грамматика, очевидно. Времена.
    Ответ написан
    Комментировать
  • Как решить ошибку в Steam?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Вообще-то гуглится вполне.
    Ошибка 130 говорит о том, что используются какие-то левые настройки прокси.
    Проблема здесь в том, что если это не вы, то значит какой-то вирус поменял ваши системные настройки.
    Инструкция, как исправить, если причина не вирусе

    1. Нажать Win + R
    2. Ввести команду: inetcpl.cpl
    3. Перейти во вкладку "Подключения"
    4. Нажать кнопку "Настройки сети"
    5. Убрать все галочки (ну или можно оставить только первую - автоматическое определение)
    6. Нажать ОК
    7. Перезапустить Steam

    Ответ написан
    Комментировать
  • Можно ли писать искусственный интеллект на kotlin?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Можно.

    На всякий случай напомню, что ИИ - это не обязательно нейронная сеть. Но в любом случае подойдёт любой популярный язык программирования.
    Ответ написан
    Комментировать
  • Как начать понимать различные документации?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Для начала нужно определить, что именно вы не понимаете: смысл отдельных слов или же все слова знакомы, но они не складываются в общую картину? В первом случае нужно скрупулёзно изучать соответствующие определения. Если и там незнакомые слова, то изучать их тоже и так далее. Во втором случае нужно качать такой скилл, как логика. Ну и английский, само собой разумеется, так как гугл переводчик пишет бред в сложных случаях и почти всегда в технической документации.

    Понимание раздела документации начинается с названия. Обычно оно осмысленное. Например, UICollectionView - это UI + Collection + View. Каждое слово в отдельности достойно отдельной статьи, или даже книги. В целом, более-менее уже понятно, о чем будет речь.
    Далее следует короткое описание, что это такое. Хотя и так уже очевидно, но всё же для сомневающихся в своих догадках даётся чёткое определение.
    Потом технические детали, где упоминаются составляющие API - что это такое, как объявлено, какие параметры (если это функция), какой тип (если свойство) и т.д.
    Ну и затем всё остальное. В зависимости от темы могут быть специфические подразделы, примеры, ссылки по теме, таблица совместимости и т.д.
    В вашем примере представлен класс, так что в статье перечисляются все функции, свойства, зависимости и т.д.
    Ответ написан
    8 комментариев