• Почему не любят c++ builder?

    maaGames
    @maaGames
    Погроммирую программы
    Потому что он по идеологии и принципу разработки больше Delphi/Pascal, чем C++... Потом будет очень сложно программировать в "нормальных" компиляторах. Не знаю, как сейчас, но 10-15 лет назад у Билдера были большие проблемы с соответствием стандарту. Возможно, моё предвзятое мнение морально устарело и нынешний Борланд очень даже торт, но проверять не буду.
    Ответ написан
    Комментировать
  • Почему в cout ограничено кол-во вводимых символов?

    maaGames
    @maaGames
    Погроммирую программы
    std::getline(std::cin, a1);
    пробельные символы - разделитель ввода (хоть с клавиатуры, хоть из файла, хоть откуда)
    Ответ написан
    6 комментариев
  • Как правильно использовать anonymous namespace?

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

    maaGames
    @maaGames
    Погроммирую программы
    Резистивный экран + толстый палец...
    Из личног оопыта могу лишь провести аналогию с планшетами/смартфонами. В "нумпаде" терминала кнопки стоят рядом и могут быть ложные нажатия. Я бы уменьшил "чувствительную" площадь кнопки, например, только в половину реального размера (это можно делать на лету, без правки макета). Т.е. чтобы нажимать нужно было прям на центр кнопки, а не хоть в какое её место тынцкать. В этом случае, при ложном срабатывании, палец попадёт между кнопок и ничего не напишется. Всё-таки это лучше, чем будет введена неправильная цифра.
    В почтовом отделении такой дешёвый резистивный экран стоял, что приходилось костяшкой пальца давить для срабатывания. (может защитное стекло не убрали...)
    Ответ написан
    4 комментария
  • Какую нужно иметь специальность, чтобы уехать работать Геймдевом за границу?

    maaGames
    @maaGames
    Погроммирую программы
    1. Учи английский. Очень-очень усердн оучи английский, чтобы прям разговорный без словаря.
    2. Учиться желательно не в России. Красный диплом Российского ВУЗа ничего не значит за границей, придётся подтверждать свою квалификацию.
    3. Заочные курсы или обучение в условном "оксфорде" будет громным плюсом. Т.е. тебе нужна любая бумажка об образовании полученная от признанного в мире университета или от какого-то учебного заведения в той стране, куда ты хочешь уехать.
    Без котируемого документа об образовании найти работу будет сложно, кроме случаев, если ты ещё в России настолько себя зарекомендовал, что тебя хотят все перекупить и к себе заманить (в геймдеве такого не будет, уверен на 99%).
    И последнее. Через 5-6 лет сложно предсказать, что будет в сфере геймдева. Т.е. сложно сказать, что конкретно нужно начинать учить сейчас, чтобы через 5 лет эти знания были нужны ещё на протяжении хотя бы пяти лет. Всё очень быстро меняется, каждые несколько лет появляются новые технологии, оборудование и т.д. и т.п.

    Это я не запугиваю и не отговариваю. Учитсья обязательно нужно, когда станешь хорошим специалистом, то многие двери могут открыться.
    Ответ написан
    Комментировать
  • Как добавить в видео внешнюю аудиодорожку?

    maaGames
    @maaGames
    Погроммирую программы
    Для удаления/добавления дорожек/субтитров и прочего, мне по душе MKVToolNix. В первую очередь, потому что GUI, во вторую - потмоу что просто склеивает, без перекодирования.
    Ответ написан
    1 комментарий
  • Html, как постепенно загружать фотографию?

    maaGames
    @maaGames
    Погроммирую программы
    progressive jpeg
    Ответ написан
    Комментировать
  • Как отделить светящийся объект от фона?

    maaGames
    @maaGames
    Погроммирую программы
    1) Ctrl+Alt+Shift + клик в любом из RGB каналов. Если есть Alpha-канал, то лучше в нём. (создаётся выделение по интенсивности цвета в данном канале)
    2) Ctrl+Shift+i (обращение выделения)
    3) delete (удалить чёрное, оставить белое)

    Но, в конкретном случае, лучше эту картинку накладывать в режиме Screen.
    Ответ написан
    1 комментарий
  • Как себя направлять в обучении, почему через 4 года опыта работы я все еще плохо программирую?

    maaGames
    @maaGames
    Погроммирую программы
    Обсудите с тимлидом или руководителемдиректором, чтобы хотя бы пару часов в неделю уделять код-ревью. В идеале, каждый день по пол часа (хотя бы) просматривать коммиты друг-друга. Они будут сопротивляться, мог это трата времени, но в итоге повысится качество разработки, будете тратить меньше времени на отладку своего и, главное, чужого кода.
    Ну и из очевидного, нужно на уровне компании или конкретного проекта придерживаться формализованного стиля кодирования (именование переменных и фукнций, скобочки и прочие мелочи). Раз у вас такие сложности во взаимопонимании, то нужно попытаться причесать весь код одной гребёнкой, чтобы было меньше отторжения при чтении. И, раз код совсем не ясен, то не хватает комментариев. Про то, какими должны быть комментарии можно почитать в книжках, на которые ссылаются в ответах выше.
    Ответ написан
    Комментировать
  • Алгоритм поворота динамического массива без доп памяти?

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

    maaGames
    @maaGames
    Погроммирую программы
    https://www.sfml-dev.org/documentation/2.5.1/class...

    getPosition ()
    Get the current position of the mouse in desktop coordinates.

    getPosition (const Window &relativeTo)
    Get the current position of the mouse in window coordinates.
    Ответ написан
    Комментировать
  • C++ OpenGL реализация физики, с чего начинать?

    maaGames
    @maaGames
    Погроммирую программы
    BSP tree или каке-то другие способы разделения пространства. Т.е. для коллизий проверяешь не каждый объект с каждым, а только те, которые потенциально могут столкнуться.
    К OpenGL никакого отношения не имеет, так что при гуглёжке можешь на OpenGL не ориентироваться.
    Ответ написан
    Комментировать
  • Какая приоритетная очередь быстрее?

    maaGames
    @maaGames
    Погроммирую программы
    Я бы сделал на std::deque. Вставка в начало и вытаскивание из конца у него работает махом. Сортировка и доступ чуть медленнее, чем у std::vector, но быстрее всех остальных. Придётся сортировать после каждого добавления узла (если делать лениво, то перед доступом можно сортировать, но это от нагрузки зависит, проверка перед доступом может всю пользу ленивости съесть). Еси добавления не частые, то можно и на векторе сделать, объём же ничтожный.
    Ответ написан
  • Как вывести несколько MessageBox на C++?

    maaGames
    @maaGames
    Погроммирую программы
    Напиши свой диалог и выводи егго немодально.
    Ответ написан
    Комментировать
  • Можно ли Встроить QT dialog в MFC CDialog?

    maaGames
    @maaGames Автор вопроса
    Погроммирую программы
    В общем, для диалога (или любого виджета) получаем виндовый HWND, после чего впихиваем его в имеющийся диалог методом 'HWND oldparent =SetParent( HWND child, HWND parent)'. После этого виджет становится дочерним окном стандартных виндусовских диалогов, в том числе MFC-шных (с точки зрения пользователя ведёт себя как обычный контрол диалога, т.е. визуальной разницы никакой, что и требовалось получить). Перед удалением диалога нужно для виджета вернуть родителя.

    #include <QtGui/5.12.6/QtGui/qpa/qplatformnativeinterface.h>
    
    QWindow * windowForWidget( const QWidget * widget )
    {
    	QWindow * window = widget->windowHandle();
    	if( window )
    		return window;
    
    	const QWidget * nativeParent = widget->nativeParentWidget();
    	if( nativeParent )
    		return nativeParent->windowHandle();
    
    	return nullptr;
    }
    
    HWND getHWNDForWidget( const QWidget * widget )
    {
    	QWindow * window = ::windowForWidget( widget );
    	if( window && window->handle() )
    	{
    		QPlatformNativeInterface * iface = QGuiApplication::platformNativeInterface();
    		return static_cast<HWND>(iface->nativeResourceForWindow( QByteArrayLiteral( "handle" ), window ));
    	}
    
    	return nullptr;
    }


    5e1585cb462c4267495335.png
    Ответ написан
    Комментировать
  • Как запустить android-эмулятор на машине с AMD Ryzen 3900X?

    maaGames
    @maaGames
    Погроммирую программы
    Обнаружил забавный момент. Скорее всего я у себя виртуализацию отключил как раз ради запуска РайзенМастера (или автоматом при инсталляции отключилась). Так что нужно быть внимательным.

    5e11668bce683847536789.png
    Ответ написан
    Комментировать
  • Как сгладить текстуру в смарт-объекте?

    maaGames
    @maaGames
    Погроммирую программы
    Вот тут выбери какую-нибудь интерполяцию, вместо 'nearest'. Возможно, придётся документ переоткрыть или пошевелить смарт-объект.

    5e06edd20c737403440471.jpeg
    Ответ написан
    Комментировать
  • Постфиксная запись на stack?

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

    maaGames
    @maaGames
    Погроммирую программы
    В фотошопе есть размытие Smart Blue, параметрами поиграть нужно, чтобы с конкретным узором лучше справлялось. Это только после размытия, без изменения резкости/контрастности и прочего

    5dfae9f3b6c8b010190998.png
    Ответ написан
    Комментировать
  • Можно ли в Google Play не показывать полный, реальный адрес, если продаешь приложение?

    maaGames
    @maaGames
    Погроммирую программы
    За несколько лет не забанили, домашний адрес уазывать тоже как-то нет желания.
    Но 100% гарантии нет, конечно, в любой момент могут требования поменяться. Подтверждение кошелька через пин-код в письме, которое только на реальный адрес присылается, но адрес там отдельно водится.

    5dfa576ea5e5c642995012.png
    Ответ написан
    2 комментария