Задать вопрос
  • Какие есть подходы к реализации подключения различных модулей для приложения?

    maaGames
    @maaGames
    Погроммирую программы
    1. Реши вопрос о том, как будет выполняться оплата и как "программа" узнает о том, была ли оплата. Иначе один человек покупает модули, вкладывает на торренты и всё, второй человек уже не покупает :) Скорее всего, купив подписку на систему оплаты и проверки лицензии, ты сразу купишь систему защиты программы от взома (бюджетную денуво).
    2. Решив проблему оплаты и лицензирования ты автоматически решаешь вопрос разделения модулей. Не важно, будут это отдельные dll, скачиваемые по запросу или всё в одном ехе собрано - это уже будет разграничиваться системой защиты кода программы. А как конкретн осделать - как тебе будет удобнее.
    То есть бесполезно просто выносить фукнционал в dll и посылать её по почте сделавшим донат в донэйшеналертс. Нужно комплексное решение. Есть бесплатные варианты, от хакеров-первокурсников могут защитить.

    Если речь про мобилки, то есть стандартные средства конкретной платформы для "внутриигровых платежей" и средства проверки того, что было оплачено, а что нет.
    Ответ написан
    Комментировать
  • Почему arw формат, сохраненный в psd, начинает весить в 5-7 раз больше?

    maaGames
    @maaGames
    Погроммирую программы
    Склей слои, удали фрагменты, которые за границей кадра. Сохрани в jpg :)

    6000*4000 пикселов, 16 битный цвет, 2 слоя. Вполне нормальный размер у файла.
    Ответ написан
  • Почему вылетает исключение при удалении объекта?

    maaGames
    @maaGames
    Погроммирую программы
    Нет виртуального деструктора у IContainer, а удалять пытаешься полиморфно.
    Ответ написан
    Комментировать
  • Как можно реализовать движение объекта в 2d пространстве к еде с помощью нейросети?

    maaGames
    @maaGames
    Погроммирую программы
    Вознаграждение за "еду" не забыл добавить? Ближайшую еду не надо передавать, достаточно координаты любой еды или "всех едов". На самом деле, нужно всё игровое поле передавать или регион, в котором находится объект. Ведь движение будет не в пустом пространстве, в итоге надо будет обходить препятствия и "врагов".
    Штраф за каждое передвижение, большое вознаграждение за кушание еды. И учить, учить, учить... Нейросеть сама научится выбирать ближайшую цель и двигаться к ней.
    Например задать "здоровье" объекта равное числу клеток на игровом поле. За каждый шаг здоровье снижается на 1 и объект умирает, когда здоровье равно нулю. Такой подход гарантирует, что объект не сможет топтаться на одном месте и ходить кругами, а выживут только те, кто или будет бегать по всему полю и случайно наткнётся на еду и те, кто будет целенаправленно бежать к еде. В процессе отбора последние, скорее всего, останутся последними выжившими.
    Ну и множитель корректировки не дожен быть слишком большим или слишком маленьким, количество слоёв должно быть не слишком маленьким и не слишком большим, топология сети должна быть... какая-то.
    Ответ написан
    Комментировать
  • Можно ли оплатить кабинет разработчика чужой картой?

    maaGames
    @maaGames
    Погроммирую программы
    У меня счёт для выплат подтверждался "пин кодом", который присылался бумажным письмом на указанный адрес. Очевидно, сейчас это так же будет невозможно для жителей отменённой страны.
    Ответ написан
  • Как дамп данных windows 7 перенести на windows 10?

    maaGames
    @maaGames
    Погроммирую программы
    клонировать диск со старого ПК на новый (при этом будет в елости стары йдиск, если что-то пойдёт не так и можно будет повторные попытки делать, без риска потери данны).
    После клонирования диска сделать обновление системы до Вин10.
    Ответ написан
    Комментировать
  • Сайт с 'www' не работает, а без открывается на ура, почему?

    maaGames
    @maaGames
    Погроммирую программы
    Вообще не знаток проблемы и не уверен, что правильно понял вопрос, но для себя подобную проблему решил через файл .htaccess.
    Так же сделал редирект с http на https.

    Редирект с www на без www
    
    RewriteCond %{HTTP_HOST} ^www\.site\.ru$ [NC]
    RewriteRule ^(.*)$ http://site.ru/$1 [R=301,L]
    
    Редирект без www на www
    
    RewriteCond %{HTTP_HOST} ^site.ru$ [NC]
    RewriteRule ^(.*)$ http://www.site.ru/$1 [R=301,L]
    Ответ написан
    Комментировать
  • Как можно усложнить программу?

    maaGames
    @maaGames
    Погроммирую программы
    Ну элементарно же!
    Везде, во всех циклах и аргументах фукнций, вместо константных ссылок передавай по значению и будет тебе копирование массивов.
    Везде вместо [] используй at() - в нём есть проверка границ, очень чутка медленнее работает, чем [].
    " if (!visited[w])" убери проверку и всегда путь ищи, это прям радикально замедлит.
    Там же не path модифицируй, а на каждой итерации создавай копию и, если pop_back не требуется, то копируй временный путь в path.
    Ответ написан
    Комментировать
  • Какой метод сжатия текстур подходит для моего случая?

    maaGames
    @maaGames
    Погроммирую программы
    Если нужно уменьшить размер инсталлятора, то просто оптимизируй png файлы (optipng, pngout и прочие подобные програмки есть, включая онлайн версии). Если нужно именно распакованный размер текстур во время игры, то какой-нибудь из нативных для платфомры форматов испоьзуй. Как правило они делают картинку хуже, че мона была в png.
    Сомневаюсь, что у тебя гигабайты BMP спрайтов, поэтому не заморачивайся и сохраняй в png.
    Ответ написан
    Комментировать
  • Как сохранить и получить потом шаблонный тип, переданный методу класса?

    maaGames
    @maaGames
    Погроммирую программы
    template<typename T>
    struct Base
    {
       using USED_TYPE = T;
    
        T value;
    };


    а дальше всё очевидно.
    Ответ написан
  • Как освободить место на компьютере?

    maaGames
    @maaGames
    Погроммирую программы
    1. Отключить режим сна (гибернацию). Это освободит несколько гигабайт. Лучше погугли, но что-то типа: "powercfg -h off" в консоли под админом выполнить;
    2. Отключить Восстановление системы и удалить снимки имеющиеся;
    3. Установи Wise Disk Cleaner, выполни сперва стандартные очистки, потом выполни глубокую, которая ищет всякие логи и прочие временные файлы, оставшиеся в странных местах. Но тут надо быть аккуратным, при удалении сотен мегабайт всяких coockies браузеров удалятся авторизации на сайтах и придётся заново логиниться;
    4. Через установку-удаление компонентов удали ненужные компоненты виндоуса, если какой-то мусор есть. Типа XBox и прочей чужи;
    5. Ограничь размер файла подкачки в 2-4 гигабайта. Смысла от большого файла подкачки нет, вряд ли ты что-то серьёзное запустить сможешь на такой машинке... Может и 1 гигабайт поставить;
    6. Подкопи пару тысяч на новый SSD. Компьютер итак живой труп, а ты его додушиваешь SD-картой. Самый дешёвый SSD с алиэкспресса на 128 гигов сильно оживит ПК.
    Ответ написан
    Комментировать
  • Почему не видит data chunk?

    maaGames
    @maaGames
    Погроммирую программы
    Порядок байт совпадат с ожидаемым?
    "data" = 0x61746164
    может быть
    "data" = 0x64617461
    если не в том порядке байты считываешь
    Ответ написан
    8 комментариев
  • Как изменить определённую строку и записать новое значение в txt?

    maaGames
    @maaGames
    Погроммирую программы
    Считать весь файл в массив (если в файле сохранён массив), заменить третий элемент массива, сохранить весь массив в файл. То есть сделать полную перезапись файла.
    Ответ написан
    Комментировать
  • Как решить проблему в Visual Studio 2022?

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

    maaGames
    @maaGames
    Погроммирую программы
    Перед вот этой строкой
    for (int i = 0; i < rows_num; i++) delete[] Mat_1[i];   //Выдаёт ошибку тут

    нужно проверять if( Mat_1 != nullptr )

    А вот после этой строки цикл не нужен, там самоприсваивание происходит внутри одного массива
    Mat_1 = Mat_copy;                                       //Переназначаем указатели на память выде
    Ответ написан
  • Что подразумевается под функцией вектором?

    maaGames
    @maaGames
    Погроммирую программы
    int Func1(); - функция, возвращающая int
    std::vector Func2(); - функция, возвращающая вектор

    Перечитайте главы про функции и что такое возвращаемое значение.
    Ответ написан
    1 комментарий
  • Как написать код, где надо узнать в каком диапазоне число(без if else)?

    maaGames
    @maaGames
    Погроммирую программы
    Так вопрос в том, чтобы не не было цепоки if else if else if else if else... или чтобы вообще не было if в программе? Если это не извращенская "учебная" задача, то ответ уже дали выше: цикл по массиву диапазонов и один единственный if внутри цикла.
    Ответ написан
    1 комментарий
  • Какую сетевую библиотеку выбрать?

    maaGames
    @maaGames
    Погроммирую программы
    Ответ написан
    Комментировать
  • Как найти длинный путь между двумя точками?

    maaGames
    @maaGames
    Погроммирую программы
    Самый длинный путь - эта задача нерешаема, т.к. в самом начале игры змейка будет просто кругами бегать ВЕЧНО, ведь нет запрета на посещение одной и той же клетки.
    Но вы решаете совсем другую задачу.
    У вас задача съесть точку и удлинить змею, но не уткнуться в себя самого.
    Для этого задаёте список правил, которые, с большой долей вероятности, позволят эту точку избегать:
    2. двигаться вдоль границ игрового поля
    1. двигаться вдоль тела змейки
    3. ВАЖНО! не создавать петли. т.е. приближаясь к хвосту/стенке нежелательно оставлять незаполненные области
    4. избегать движения к точке
    5... ещё что-нибудь, что сразу в голову не приходит
    X. делать пункты 1-4 на несколько ходов вперёд. Допустим, на 50 щагов вперёд можно без проблем просчитываь. Если на 47 шаге скушали точку, при этом оставались пустые клетки, то отматываете назад и пробуете двигаться в другие стороны.
    Ответ написан
    Комментировать
  • Можно ли создавать android приложения, если у меня Iphone?

    maaGames
    @maaGames
    Погроммирую программы
    Если прилоение использует камеру или микрофон или акселерометр или более одного "пальца на экране", то без физического устройства не обойтись. Если "нажатия на экране" можно выполнять нажатиями на клавиатуре-геймпаде и перемещения только для одного пальца (ЛКМ+мышка), то можно обойтись эмулятором. Полноценная разработка не получится, разумеется, но чтобы начать изучение программирования под Андроид эмулятора вполне хватит. Даже службы ГуглПлэй на эмуляторе можно программировать. А вот с подержкой сети или сложно или невозможно. Я или не осилил подключение вайфая к эмулятору или это невозможно сделать.
    Ответ написан