Посмотрите код внимательней, Init() и Cleanup() пришлось ввести потому что классы состояний — Одиночки, там один экземпляр класса и он статический, если так не делать, то они сразу будут занимать место в памяти. С другой стороны, если убрать Одиночек, то всю логику инициализации и удаления можно перенести в конструктор/деструктор.
Упомяну главу про паттерн Состояние из известнейшей книги по игровым паттернам Game Programming Patterns. Там хорошо описаны плюсы и минусы, архитектурные решения. Использованный здесь стек состояний там называется Pushdown Automata. В этой главе он специально не упоминает паттерн Одиночка, потому что этот паттерн считается переоценённым, вместо этого предлагает, как вариант, хранить экземпляры конкретных состояний просто как static поле в базовом классе состояния.
Они закрыли публичные чаты, нет смысла шифровать публичные чаты, они ведь всем доступны. С секретными чатами они, естественно, ничего не могут сделать.
Если покупали в России, тогда это хорошая новость. Кстати, предполагаю чтобы сменить region lock версию надо сначала удалить предыдущую из Steam насовсем.
Нашёл способ здесь https://steamcommunity.com/groups/HumbleBundleOfficial/discussions/0/481115363877849739/#c483367798498304604
Я не разбирался в какой момент активируется лок, но по способу выше можно определить стоит у тебя лок или нет.
Перевожу:
1. Открываем Steam консоль, для этого в обычном браузере вводим steam://open/console
2. В приложении Steam появляется внизу консоль, вводим licenses_for_app X, где X — это Application ID, число которое стоит в адресе на странице игры в Steam, для данной игры — 200510
3. Там мы видим License packageID 16376, в браузере вбиваем адрес https://steamdb.info/sub/Y, где Y — наше полученное число, т. е. https://steamdb.info/sub/16376/
У меня оказался залочен, где брал не помню, но не в humblebundle.
«У большинства людей нет причины приобретать мощные ПК… Ваш дерьмовый паршивый персональный компьютер является крупнейшим препятствием на пути популяризации виртуальной реальности», — говорит Лаки.
необходимо давать ссылки на оригинал высказывания, а в оригинале он отвечал на вопрос, где сам задающий назвал свой ПК crappy (паршивый), поэтому Палмер использовал это слово, а не потому что он такой нехороший человек, которым его выставили в этой статье http://arstechnica.com/gaming/2016/01/oculus-founder-your-crappy-pc-is-the-biggest-barrier-to-vr-adoption/, а вы подхватили.
Вот ссылка на вопрос (ниже ответ от Палмера):
https://www.reddit.com/r/pcmasterrace/comments/40ea0x/i_am_palmer_luckey_founder_of_oculus_and_designer/cytjzqr
про нерасторопность сотрудников этой сети магазинов можно писать отдельный пост, но сейчас не об этом
Можно целую книгу написать, как не надо делать на примере работы MediaMarkt. Я узнал на горьком опыте всю убогость этой сети магазинов. Пару лет назад покупал кое-что, после чего зарёкся там что-либо покупать, это просто параллельная вселенная дураков. Причём, тогда рейтинг в Яндекс.Маркет у MediaMarkt был 2 из 5 (завышено), после чудесным образом стал 4 из 5 и остаётся сейчас. Интересно кому они заплатили, не верится что они стали лучше.
Надеюсь у вас обойдётся.
Оригинальная статья вышла до выхода Undertale. Кроме того, удивляют претензии "(как мог забыть | почему не упомянута) игра X", автор мог не играть в это, а комментарии для того и созданы, чтобы дополнять.
Нужно нажимать на иконку магнита или «Скачать .torrent», а не на красивые зелёные кнопки для лохов. К слову, у rutor.org когда-то раньше тоже были кнопки фальшивки на MediaGet с .exe файлами.
Путь Яндекса в бездну продолжается. Говорят после смерти основателя Яндекса начались ухудшения, одна история с Кинопоиском чего стоит. Статья в тему на «Медузе» За что мы ненавидим «Яндекс».
Но на выходе из вершинного шейдера данные уже в 2D координатах + не совсем с ними связанный(сжатый) Z. Фактически 2D.
Этот этап в графическом pipeline называется растеризация, он очевидно нужен чтобы вывести картинку на двухмерный экран монитора, но до этого-то происходили операции вполне себе в трёхмерном пространстве.
По вашей логике OpenGL тоже 2D API? Для меня «низкоуровневый 2D API» это обращение к пикселям на экране, а OpenGL (WebGL) уровнем выше и позволяет работать с трёхмерными объектами. Так что я придерживаюсь википедии:
Open Graphics Library (OpenGL) is a cross-language, cross-platform application programming interface (API) for rendering 2D and 3D vector graphics.
WebGL (Web Graphics Library) is a JavaScript API for rendering interactive 3D computer graphics and 2D graphics within any compatible web browser without the use of plug-ins
Если вы думаете, что WebGL рисует 3D, вы ошибаетесь. WebGL ничего не знает о 3D, это скорее низкоуровневый 2D API, и всё что он умеет делать, это рисовать треугольники. Но он умеет рисовать их очень много и очень быстро.
Вы же, например, сами используете ниже векторы из трёх компонент. Я к тому, что API предполагает 3D.
int a[3] = { 0 }; /* { 0, 0, 0 } */
в С99 точно есть, мне кажется с С89 можно было так.
Я не разбирался в какой момент активируется лок, но по способу выше можно определить стоит у тебя лок или нет.
Перевожу:
1. Открываем Steam консоль, для этого в обычном браузере вводим steam://open/console
2. В приложении Steam появляется внизу консоль, вводим licenses_for_app X, где X — это Application ID, число которое стоит в адресе на странице игры в Steam, для данной игры — 200510
3. Там мы видим License packageID 16376, в браузере вбиваем адрес https://steamdb.info/sub/Y, где Y — наше полученное число, т. е. https://steamdb.info/sub/16376/
У меня оказался залочен, где брал не помню, но не в humblebundle.
необходимо давать ссылки на оригинал высказывания, а в оригинале он отвечал на вопрос, где сам задающий назвал свой ПК crappy (паршивый), поэтому Палмер использовал это слово, а не потому что он такой нехороший человек, которым его выставили в этой статье http://arstechnica.com/gaming/2016/01/oculus-founder-your-crappy-pc-is-the-biggest-barrier-to-vr-adoption/, а вы подхватили.
Вот ссылка на вопрос (ниже ответ от Палмера):
https://www.reddit.com/r/pcmasterrace/comments/40ea0x/i_am_palmer_luckey_founder_of_oculus_and_designer/cytjzqr
https://www.youtube.com/watch?v=gsbxCeJ78As
Panasonic Transparent TV — Abt CES 2016
https://www.youtube.com/watch?v=11mRlzE3_hw
Надеюсь у вас обойдётся.
По вашей логике OpenGL тоже 2D API? Для меня «низкоуровневый 2D API» это обращение к пикселям на экране, а OpenGL (WebGL) уровнем выше и позволяет работать с трёхмерными объектами. Так что я придерживаюсь википедии:
Open Graphics Library (OpenGL) is a cross-language, cross-platform application programming interface (API) for rendering 2D and 3D vector graphics.
WebGL (Web Graphics Library) is a JavaScript API for rendering interactive 3D computer graphics and 2D graphics within any compatible web browser without the use of plug-ins
Вы же, например, сами используете ниже векторы из трёх компонент. Я к тому, что API предполагает 3D.