Задать вопрос
  • Почему луч выпускается не в ту сторону?

    1. direction должен быть нормализованным вектором, а не просто позицией чего-то.
    2. Если ты хочешь сделать рейкаст в от белого куба к красному, то тебе нужен вектор относительно белого куба, а не от начала координат.

    Но вероятно тебе на самом деле нужен Physics.Linecast
    Либо:
    var direction = Vector3.Normalize(cube.position - transform.position); // Направление к красному кубу.
    var start = transform.position;
    var ray = new Ray(start, direction);
    Debug.DrawRay(ray.origin, direction*1000);
    Physics.Raycast(ray);
    Ответ написан
    8 комментариев
  • Не могу сделать брутфорс почты на Python. В чем причина?

    @Drno
    потому что ты заходишь как "приложение", а надо стучаться как браузер, поэтому и сказали про юзер агента
    Ответ написан
    Комментировать
  • Почему объекты выглядят неправильно в запуске игры?

    GavriKos
    @GavriKos Куратор тега Unity
    Микропетпроджект - домашнее облако homeCloud
    С масштабированием скорее всего.
    Ширина границы - 1 пиксел. Масштаб 1:1 - пиксел виден. Потом вы отзумливаете - меняется масштаб. Как пол пиксела вписать?

    Делайте сетку независимой от зума (или наоборот - с перерасчетом толщины - зависит от реализации)
    Ответ написан
    1 комментарий
  • Какое решение задачи по циклам будет правильным?

    1. Определяемся с тем, что от нас хотят. Требования можно представить в виде такого псевдокода :)
    повторять всегда {
       сообщение = прочитать();
       если сообщение = "EXIT" то выйти;
       сообщение2 = прочитать();
       если сообщение2 = "EXIT" то выйти;
       количество_повторений = прочитать_число(сообщение2);
       повторять количество_повторений раз {
         напечатать(сообщение);
       }
    }


    2. Переводим буквально на C#:
    while(true) {
      Console.WriteLine("Введите сообщение");
      var message = Console.ReadLine();
      if (message == "EXIT") {
        return;
      }
      Console.WriteLine("Введите количество повторений");
      var message2 = Console.ReadLine();
      if (message == "EXIT") {
        return;
      }
      var count = int.Parse(message2); // по хорошему, надо бы как-нибудь обработать, если пользователь ввёл не число. В таком виде программа просто упадёт.
      for(var i=0; i<count; i++) {
        Console.WriteLine(message);
      }
    }
    Ответ написан
    Комментировать
  • Как проверить столкновение с объектом по его тегу?

    @Sannyprrod
    private void OnCollisionEnter(Collision collision)
    {
          if (collision.gameObject.CompareTag("FirstPart"))
          {
                Destroy(gameObject);
          }
    }
    
    Для 2D:
    private void OnCollisionEnter2D(Collision2D col)
            {
                if (col.gameObject.CompareTag("FirstPart"))
                {
                    Destroy(gameObject);
                }
            }

    +- вот так, но лучше, по возможности, искать решения без использования тегов, теги в основном bad practice
    Ответ написан
    2 комментария
  • Приделывать Git на сайт это хорошо?

    git - это система контроля версий.
    Это не "локальное хранилище" и не нечто, что можно "приделать" сбоку.

    Предположу, что под словом "приделать" вы имеете в виду использование git для доставки обновлений на продуктивный сервер.
    Моё мнение - так делать не стоит.
    Серверу совершенно не нужно хранить у себя всю историю версий.

    А вот локально да - лучше вести разработку в git.
    Ещё по хорошему следует хранить копию репозитория на каком-нибудь ещё сервере, например в собственном экземпляре gitlab и синхронизировать её с локальной при помощи git pull/push.

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

    @12rbah
    return 0;
        menu_for(v);
    Казалось бы, что могло бы пойти не так, попробуйте поменять местами return и menu_for
    Ответ написан
    Комментировать
  • Как приближать камеру к персонажу, если его не видно?

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

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

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

    Здесь никакой ИИ не нужен.
    Нужно только записать маршрут в виде точек, периодически проверять 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 комментарий
  • Какой набор библиотек используют в веб-геймдве?

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

    А почему обязательно 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 комментария