что такое полноэкранный режим - PullRequest
4 голосов
/ 28 февраля 2011

Я знаю, что вы можете подделать полноэкранный режим, расширив окно и исключив строку заголовка, строку состояния и другие вещи, мне это не интересно, я хочу знать о «реальном» полноэкранном режимене знаю, как это еще назвать), как в играх.

что такое полноэкранный режим?какой win-api я должен использовать для достижения этой цели?это можно использовать для воспроизведения фильмов в полноэкранном режиме?Я знаю, что Windows Media Player использует фальшивый полноэкранный режим, потому что я могу «разрезать» его и увидеть рабочий стол (используя регионы win-api).Могу ли я "вырезать" через "настоящий" полноэкранный режим, как через окно (используя регионы win-api) или это напрямую записывается в видеопамять, а в ней нет ничего "под"?*

Ответы [ 4 ]

1 голос
/ 28 февраля 2011

Если вы хотите делать игры для Windows в полноэкранном режиме, лучшим вариантом будет XNA . В нем используется DirectX, но скрыты многие детали реализации и прокладки, чтобы разработчику было легче начать работать над своей игрой.

XNA можно загрузить бесплатно и имеет хорошую документацию.

XNA Game Studio 4.0 можно загрузить здесь .

0 голосов
/ 16 мая 2012

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

Как вы знаете, не все полноэкраны созданы равными.

'правильный' полный экран - это место, где программа берет на себя управление экраном.Когда игра использует этот режим, она может изменить разрешение вашего экрана.Если вы когда-либо играли в старую игру и существовали, чтобы увидеть, что ваши значки испорчены, это так;на время игры ваш рабочий стол был с более низким разрешением.

с «полным экраном без полей» окно программы чередуется с любыми границами, строкой заголовка, рамкой и т. д. и представляет собой просто прямоугольникчистого рендеринга.Затем, если вы установите для этого контекста тот же размер, что и на рабочем столе, вы получите эффект полноэкранного режима.

В наши дни выполнение без полей обычно является более удобным для пользователя способом, поскольку это легче сделать ».Tab Out ', как другие программы по-прежнему графически вокруг.«Правильный» полноэкранный режим дает вам полный контроль над аппаратным обеспечением, поэтому теоретически у вас больше возможностей для вашей программы, но это означает, что вы должны ждать, пока что-то будет инициализировано при выходе из системы.

что вы делаете сВаш контекст рендеринга зависит от вас, так что да, вы можете использовать его для воспроизведения видео.Не имеет значения, если вы находитесь в «правильном» полноэкранном режиме или нет, код рендеринга будет таким же.

Что касается вырезания через правильные полноэкранные окна, я не уверен, но думаю, что будетбольше ничего не видно, есть только ваша программа.

Что касается того, что Win-API, есть только один API Windows, но я думаю, вы имеете в виду, что библиотека окон;поскольку это уже долгий ответ, я просто скажу, что многое зависит от того, что вы от него хотите.

Пожалуйста, не стесняйтесь оставлять комментарии, если вам нужно, чтобы я разъяснил или уточнил какие-либо вопросы.

0 голосов
/ 28 февраля 2011

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

0 голосов
/ 28 февраля 2011

Если вы не хотите использовать DirectX, создайте окно и вызовите ChangeDisplaySettings с флагом CDS_FULLSCREEN. Приложения OpenGL используют этот способ для перехода в полноэкранный режим.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...