• Как приближать камеру к персонажу, если его не видно?

    @Farawa
    Стрелять лучом из персонажа в направлении камеры изначальной заданной длиной, если луч попал в окружение, то брать точку чуть ближе и ставить туда камеру, гугли Physics.Raycast
    Ответ написан
    6 комментариев
  • Как посмотреть адрес в памяти у переменной с помощью отладчика (VS)?

    wataru
    @wataru
    Разработчик на С++, экс-олимпиадник.
    В отладчике же можно целые выражения вводить. &x введите в watches.
    Ответ написан
    1 комментарий
  • Хочу заняться программирование БПЛА/ ИИ на БПЛА, с чего начать?

    vabka
    @vabka
    Токсичный шарпист
    написать ИИ, который будет направлять дрон по заданному маршруту

    Здесь никакой ИИ не нужен.
    Нужно только записать маршрут в виде точек, периодически проверять GPS, и корректировать курс.

    анализировать данные, полученные по маршруту.

    Что это вообще значит? Какие данные он должен анализировать? Как? Какой результат в итоге хочется получить?

    Начать можешь с формулирования задачи и изучения матчасти (посмотри уже существующие решения как минимум), а после этого уже всё само по себе должно образоваться.
    Ответ написан
    Комментировать
  • Может кто-нибудь дать реальную задачу на которой можно применить ООП?

    Real_Fermer
    @Real_Fermer
    Программист PHP
    Понимание - зачем придет тогда, когда перестанете радоваться, что у вас хоть что-то работает. И начнете развивать свои приложения. Тогда поймете что поддержка приложения - это очень важная задача.
    Сделайте 5-6 небольших приложений - не применяя никаких техник/методик разработки.
    отложите их на месяц. А потом вернитесь и попробуйте внести изменения. Тогда вы поймете зачем нужны методики разработки.
    А для приложений HellowWord Не нужны ни ОПП, ни паттерены, ни уж тем более фреимворки
    Ответ написан
    Комментировать
  • Может кто-нибудь дать реальную задачу на которой можно применить ООП?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    ООП очень тяжело заходит потому что совершенно непонятно для чего оно нужно.

    Ровно для того же, для чего нужно программирования без ООП. ООП - просто достаточно простая и удобная абстракция для программирования.

    Я так понял, что бы в этом всём разобраться нужно писать свою CMS на ООП.

    Нет. Достаточно просто решить любую задачу с использованием ООП и без и сравнить для себя. Без ООП, т.е., функциональное программирование - у тебя куча файлов с кучей функций, каждый раз, когда нужно произвести какие-то вычисления над какими-то данными надо импортировать нужную функцию и использовать её для обработки данных. Когда у тебя десять строк кода и три функции - это достаточно просто. А если у тебя тысяча функций и несколько сотен видов данных для обработки, да еще и кучей разных форматов? А десять тысяч? Делать огромную документацию, в которой описывать какая функция с какими видами данных может работать и каждый раз её пересматривать в процессе написания или чтения кода? А вот ООП, говоря простым языком, позволяет группировать функции в отдельные группы, т.е. классы, которые могут работать с определенными типам данных и связывать сами эти группы функций с определенными типами данных, а так же связывать классы друг с другом (иерархия, наследование и прочее). Т.о., это упрощает работу с данными и их обработкой: просто создаем новый экземпляр класса и получаем удобный интерфейс для дальнейшей обработки каких-либо данных, путем использования методов этого класса для обработки данных, хранящихся в полях данного экземпляра или передаваемых в качестве параметров методов и сохраняемых в полях позднее.
    Ответ написан
  • Какие существуют популярные библиотеки/фреймворки для создания нейросетей и машинного обучения для C++?

    @rPman
    Что не так то? нормальная документация с примерами - https://www.tensorflow.org/api_docs/cc
    Окей, из крупных проектов гуглится сразу opennn.net открыто доступно с примерами

    Только непонятно зачем тебе именно c++?

    Нейронные сети это работа с данными, и главное, работа со специализированным оборудованием типо gpu, которое на пару порядков быстрее обычного процессора. Какая тебе разница на чем писать в конечном счете, все равно ты будешь пользоваться готовым инструментарием по его правилам?

    И да, opencl - общепринятый язык описания кода для высокоэффективных вычислений на универсально любом оборудовании (cpu/сопроцессор/видеокарта/...) это по факту язык с c++ синтаксисом.
    Ответ написан
    4 комментария
  • Какую выбрать СУБД, если в день может быть более 11млн записей?

    При такой постановке задачи лучшим вариантом СУБД будет та, которую знают и умеют обслуживать ваши админы.
    С таким объёмом вставок справится любая мейнстримная на правильно подобранном железе. Что ещё вы собираетесь делать с этими записями нам неведомо, посему на выбор повлияеть не может.
    Ответ написан
    1 комментарий
  • Какой набор библиотек используют в веб-геймдве?

    vabka
    @vabka
    Токсичный шарпист
    Не существует какого-то одного набора библиотек - всё подбирается исходя из задачи. Некоторые библиотеки, которые могут использоваться ты уже назвал. Некоторые другие - ты можешь узнать из описания вакансий.

    А почему обязательно JavaScript? Браузерные игры вполне могут делаться и на юнити.

    Что-то может и под Wasm делаться, а там уже и C++ и Rust живут со своими экосистемами.

    А некоторые браузерки и не требуют 3d вообще - там может использоваться и какой-нибудь кастомный 2д движок, а часть логики может обрабатываться на сервере, который вообще написано на php.
    Ответ написан
    Комментировать
  • Как погрузиться в начала/фундамент программирования?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Как построенн язык программирования, например: Как понять, как устроенны ключевые слова; Препроцессорные процессы: define, include и др.; - Я правильно понимаю, нужно опустится на ещё более низкий уровень до ассемблера? - Ассемлер является той фундаментальной сущностью в программировании (не считая машинный код, который и так человек не должен понимать)?

    Абсолютное большинство ЯП имеют во-первых - стандарт, где описывается вся его логика, а во-вторых открытый исходный код(либо имеется открытая реализация) и где можно изучить все детали реализации.

    Возможно достичь понимания работы программ не физически, а программно. (Я не знаю как это точно сказать.) То есть не как в комп’ютере выполняется программа, а как работает отдельная сущность - программа? - И вообще это возможно, либо я просто многое чего хочу от жизни?

    Любая программа - это просто алгоритм. Так что смотрим что делает программа и спокойно разбираем её алгоритм. А если есть исходный код - то вообще все полностью можно разобрать.

    Ну и вообщем, какие-то фундаментальные знания - на чём базуется/построенна програмированние и IT, тоже не помешало. Например рекомендуют SICP почитать, правильно ли я тогда пойду или это не то. Если да, можете ещё набросать ваши варианты? Буду признателен.

    Фундамент - бинарная логика. Над ней - процессорные инструкции или машинный код. Далее - ассемблер, минимально простая абстракция для составления инструкций для процессора. Следующий этаж - язык программирования высокого уровня, который в своем составе имеет какой-то типовой набор абстракций (переменные, функции, операции с памятью, блоки и разные типы данных), функций и алгоритмов для более человечного описания алгоритмов и для работы с данными. ЯП бывают разные и решают проблему в какой-то определенной области или для какой-то цели. Также существуют предметно/проблемно-ориентированные ЯП (DSL - domain-specific language) - более узкие решения. Дальше - стандартные и дополнительные библиотеки для упрощения работы с определенными данными, алгоритмами и прочее. Выше лежат фреймворки реализующие какой-то определенный каркас/функционал для реализации программ/алгоритмов для решения задач в рамках какой-то специфической области.
    Ответ написан
    4 комментария
  • Как получить координаты мыши?

    KraGenDeveloper
    @KraGenDeveloper
    Unity Developer
    Ось так -
    Input.mousePosition; // x y position
    Input.mousePosition.x; // x position
    Input.mousePosition.x; // y position

    Док-ва
    Ответ написан
    4 комментария
  • Может ли файл обрабатываться в многопоточном режиме?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Да, может. Кто же ему запретит?
    Ответ написан
    4 комментария
  • Какие есть варианты проверить, что у судоку только одно решение?

    Adamos
    @Adamos
    Вариант проверить, что у головоломки есть только одно решение, только один.
    Написать решатель такой головоломки и скормить ему задание. Если он успешно ее решает - результат единственный. Если упирается в "вилки" - значит, головоломка составлена неправильно.
    Все подобные головоломки составляются на компьютере именно таким образом:
    - заполняется готовое поле решения
    - убирается по одной цифре, после чего запускается решатель
    - если он не смог решить головоломку, цифра возвращается на место
    - цикл повторяется до перебора всех цифр (или не всех, если нужно составить головоломку меньшего уровня сложности).
    Например, в наборе головоломок от Simon Tatham судоку тоже есть (под названием Solo), и составляется она именно так.
    Ответ написан
    2 комментария
  • При уничтожений одного обьекта уничтожаются все, как исправить?

    K0TlK
    @K0TlK
    Буллю людей.
    Потому что хп зомби у тебя статик поле. Всё, что статик - принадлежит классу, всё что не статик принадлежит конкретному объекту, класс - фабрика объектов, существует в единичном экземпляре => твое хп одно для всех => если хп == 0, то оно 0 у всех зомби. Убирай статику, делай TryGetComponent(out Zombie zombie) в OnCollisionEnter в Bullet и отнимай хп у конкретного зомби.
    Ответ написан
  • Началии разрабатывать телеграмм бота для музыки. Задались вопросом об АП(? стоит тк хабр просит)?

    vabka
    @vabka
    Токсичный шарпист
    Если клиент не получает данных - он не сможет эти данные сохранить.
    Если клиент в каком-то виде данные получает - всегда будет какой-нибудь, хоть и обходной, способ эти данные сохранить.

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

    vabka
    @vabka
    Токсичный шарпист
    WaitForSecond нужно не просто создавать, а делать yield return

    Соответственно и Die должен возвращать IEnumerable и вызываться через StartCoroutine
    Ответ написан
    2 комментария
  • Как писать ботов для веб игр на питоне?

    trapwalker
    @trapwalker
    Программист, энтузиаст
    Каких ботов? каких игр? Хотя бы пример какой привели бы... Для пасьянса вы хотите там бота или для чего?
    Игры предлагают SDK для этого, или предполагается реверс-инженерить протокол и ломать защиты?
    Надо сперва детализировать задачу, а потом искать под нее библиотеки и курсы.
    В общих чертах скорее всего вам придётся делать парсер, придётся разбираться с авторизацией и делать http-запросы, возможно использовать селениум. Придется строить модель игрового мира, описывать объектную модель предметной области, может быть понимать немного теорию игр и теорию конечных автоматов. Если вы адаете такие вопросы (не детализируя), то скорее всего узконаправленные курсы вам помочь пока не смогут. Надо расширять эрудицию в целом.
    Ответ написан
    Комментировать
  • Стоит ли заморачиваться с проверкой не совпадения Guid?

    vabka
    @vabka Куратор тега C#
    Токсичный шарпист
    GUID генерируется не полностью случайно, а с использованием идентификатора машины и времени, что сильно снижает шанс коллизии.

    К слову скажу, что за всё время работы в разных компаниях я ни разу не слышал о коллизиях GUID, которые бы реально произошли. Даже на очень нагруженных распределённых системах.
    Ответ написан
    3 комментария
  • Как заменить встроенный zoom на кастомный?

    0xD34F
    @0xD34F Куратор тега Яндекс.Карты
    Использую yandex-map@beta

    Beta? Зачем пытаться использовать заведомо неготовый инструмент?

    пытаюсь изменить параметр zoom в YandexMap, но не работает, и что-то мне подсказывает, что не всё так просто

    Знаете - да. Не всё так просто. Открыл я исходник компонента, и не смог найти там никакого кода, который бы отвечал за изменение состояния карты при изменении значений параметров. Так что придётся менять zoom вручную, напрямую обращаясь к карте:

    setup() {
      ...
      let map = null;
    
      return {
        ...
        onCreate: e => map = e,
        updateZoom: z => map.setZoom(Math.max(1, Math.min(19, map.getZoom() + z))),
      };
    },

    <yandex-map
      ...
      @created="onCreate"
    />
    ...
    <button @click="updateZoom(+1)">+</button>
    <button @click="updateZoom(-1)">-</button>

    Ну или ждите, пока компонент допилят.
    Ответ написан
    1 комментарий
  • Можно ли удалить рекламу Yandex с сайта?

    Fragster
    @Fragster
    помогло? отметь решением!
    Есть несколько предположений:
    1. Сам сайт (или залитый на него вредоносный код через бэктор или намеренно разработчиком)
    2. Вход не через https через мобильную сеть - опсосы замечены в модификации трафика
    2.а Вход через левый прокси (не через vpn, не через socks-прокси, а через http-прокси)
    3. Кривые/вредоносные расширения браузера (хз, есть дли у мобильного я.браузера они, если честно)
    4. Сам я.браузер (что его прям полностью дискредитирует)
    Ответ написан
    2 комментария