This page has been translated automatically.
Видеоуроки
Интерфейс
Основы
Продвинутый уровень
Подсказки и советы
Основы
Программирование на C#
Рендеринг
Профессиональный уровень (SIM)
Принципы работы
Свойства (properties)
Компонентная Система
Рендер
Физика
Редактор UnigineEditor
Обзор интерфейса
Работа с ассетами
Контроль версий
Настройки и предпочтения
Работа с проектами
Настройка параметров ноды
Setting Up Materials
Настройка свойств
Освещение
Sandworm
Использование инструментов редактора для конкретных задач
Расширение функционала редактора
Встроенные объекты
Ноды (Nodes)
Объекты (Objects)
Эффекты
Декали
Источники света
Geodetics
World-ноды
Звуковые объекты
Объекты поиска пути
Player-ноды
Программирование
Основы
Настройка среды разработки
Примеры использования
C++
C#
UnigineScript
UUSL (Unified UNIGINE Shader Language)
Плагины
Форматы файлов
Материалы и шейдеры
Rebuilding the Engine Tools
Интерфейс пользователя (GUI)
Двойная точность координат
API
Animations-Related Classes
Containers
Common Functionality
Controls-Related Classes
Engine-Related Classes
Filesystem Functionality
Math Functionality
Node-Related Classes
Objects-Related Classes
Networking Functionality
Pathfinding-Related Classes
Physics-Related Classes
Plugins-Related Classes
IG Plugin
CIGIConnector Plugin
Rendering-Related Classes
VR-Related Classes
Работа с контентом
Оптимизация контента
Материалы
Визуальный редактор материалов
Material Nodes Library
Miscellaneous
Input
Math
Matrix
Textures
Art Samples
Учебные материалы

Unigine::Displays Class

Header: #include <UnigineDisplays.h>

The Displays class allows getting information about connected displays such as the number of screen displays and the index of the main one, their position and size in pixels. It provides access to the name and current dpi. This class also allows obtaining the total number of available modes for displays and getting the resolution and refresh rate by the mode index.

AppSystemLogic.h

Source code (C++)
#include <UnigineLogic.h>

class AppSystemLogic : public Unigine::SystemLogic
{
public:
	AppSystemLogic();
	~AppSystemLogic() override;

	int init() override;

	int update() override;
	int postUpdate() override;

	int shutdown() override;

	int showDisplayInfo(int current_display);

};

AppSystemLogic.cpp

Source code (C++)
#include "AppSystemLogic.h"
#include <UnigineDisplays.h>

using namespace Unigine;
using namespace Math;

EngineWindowViewportPtr window_0;
int current_display;

int AppSystemLogic::init()
{

	// get the main window 
	window_0 = WindowManager::getMainWindow();
	// set its position and size
	window_0->setPosition(Math::ivec2(60, 60));
	window_0->setSize(Math::ivec2(960, 600));
	// render the window
	window_0->show();

	// get the current display
	current_display = Displays::getCurrent();
	// show the information on the current display in the main window
	showDisplayInfo(current_display);

	return 1;
}

int AppSystemLogic::update()
{
	// check if the cursor has been moved to another display
	if (current_display != Displays::getCurrent())
	{
		// remove the information on the previous display
		for (int i = 0; i < window_0->getNumChildren(); i++) window_0->removeChild(window_0->getChild(i));
		// show the information on the display that is currently under cursor
		showDisplayInfo(current_display);
	}
	
	return 1;
}

int AppSystemLogic::showDisplayInfo(int i)
{
	ivec2 resolution;

	if (i == Displays::getMain()) window_0->addChild(WidgetLabel::create(window_0->getSelfGui(), String::format("Main display")));
	// the display name
	window_0->addChild(WidgetLabel::create(window_0->getSelfGui(), String::format("The display name: %s \n", Displays::getName(i))));
	// the display resolution
	resolution = Displays::getResolution(i);
	window_0->addChild(WidgetLabel::create(window_0->getSelfGui(), String::format("The display resolution: %d %d", resolution.x, resolution.y)));
	// the display dpi
	window_0->addChild(WidgetLabel::create(window_0->getSelfGui(), String::format("The display DPI: %d \n", Displays::getDPI(i))));
	// the number of modes of the display
	window_0->addChild(WidgetLabel::create(window_0->getSelfGui(), String::format("The num display modes: %d \n", Displays::getNumModes(i))));
	// the current mode of the display
	window_0->addChild(WidgetLabel::create(window_0->getSelfGui(), String::format("The current display mode: %d", Displays::getCurrentMode(i))));
	
	return 1;
}

Displays Class

Перечисления (Enums)

ORIENTATION#

ИмяОписание
ORIENTATION_UNKNOWN = -1Another undefined type of orientation.
ORIENTATION_LANDSCAPE = 0Landscape orientation.
ORIENTATION_LANDSCAPE_FLIPPED = 1Landscape orientation turned upside down.
ORIENTATION_PORTRAIT = 2Portrait orientation.
ORIENTATION_PORTRAIT_FLIPPED = 3Portrait orientation turned upside down.

Members


int getMain ( ) const#

Returns the main system display index.

Return value

The index of the main system display.

int getDefaultSystemDPI ( ) const#

Returns the default system dots/pixels-per-inch value.

Return value

The dots/pixels-per-inch value.

int getNum ( ) const#

Returns the number of available video displays.

Return value

The number of available video displays.

Math::ivec2 getPosition ( int display_index ) const#

Returns the display position by its index.

Arguments

  • int display_index - Display index.

Return value

Display position.

Math::ivec2 getResolution ( int display_index ) const#

Returns the display resolution by its index.

Arguments

  • int display_index - Display index.

Return value

Display resolution.

int getDPI ( int display_index ) const#

Returns the display DPI by its index.

Arguments

  • int display_index - Display index.

Return value

Display DPI.

int getNumModes ( int display_index ) const#

Returns the total number of available display modes.

Arguments

  • int display_index - Display index.

Return value

Number of available display modes.

Math::ivec2 getModeResolution ( int display_index, int mode_index ) const#

Returns the resolution of the selected display mode for the selected display.

Arguments

Return value

Resolution.

int getModeRefreshRate ( int display_index, int mode_index ) const#

Returns the refresh rate of the specified display mode.

Arguments

Return value

Refresh rate of the specified display mode.

const char * getName ( int display_index ) const#

Returns the system name of the display.

Arguments

  • int display_index - Display index.

Return value

System name of the display.

int getCurrent ( ) const#

Returns the index of the display that is currently under cursor.

Return value

The index of the display that is currently under cursor.

int getRefreshRate ( int display_index ) const#

Returns the current refresh rate of the specified display.

Arguments

  • int display_index - Display index.

Return value

Refresh rate of the specified display.

int getCurrentMode ( int display_index ) const#

Returns the current display mode for the specified display.

Arguments

  • int display_index - Display index.

Return value

Index of the display mode from 0 to the total number of available display modes.

int getDesktopMode ( int display_index ) const#

Returns information about the desktop's display mode. There's a difference between this function and getCurrentMode() when the application runs fullscreen and has changed the resolution. In such a case, this function will return the previous native display mode, and not the current display mode.

Arguments

  • int display_index - Display index.

Return value

Index of the display mode from 0 to the total number of available display modes.

Displays::ORIENTATION getOrientation ( int display_index ) const#

Returns the display orientation.

Arguments

  • int display_index - Display index.

Return value

Orientation, one of the ORIENTATION_* values.

int getUniqueID ( int display_index ) const#

Returns the unique ID for the display.

Arguments

  • int display_index - Display index.

Return value

Display unique ID.

int findDisplay ( const char * name ) const#

Returns the display index by its name.

Arguments

  • const char * name - Display name.

Return value

Display index.

int findDisplay ( int unique_id ) const#

Returns the display index by its unique ID.

Arguments

  • int unique_id - Display unique ID.

Return value

Display index, or -1 if the display is not found.

int findMode ( int display_index, const Math::ivec2 & resolution ) const#

Returns the index of the display mode by the display index and resolution.

Arguments

  • int display_index - Display index.
  • const Math::ivec2 & resolution - Display resolution.

Return value

Index of the display mode from 0 to the total number of available display modes, or -1 if the mode is not found.

int findMode ( int display_index, const Math::ivec2 & resolution, int refresh_rate ) const#

Returns the index of the display mode by the display index, resolution, and refresh rate.

Arguments

  • int display_index - Display index.
  • const Math::ivec2 & resolution - Display resolution.
  • int refresh_rate - Refresh rate.

Return value

Index of the display mode from 0 to the total number of available display modes, or -1 if the mode is not found.

int getByPoint ( const Math::ivec2 & point ) const#

Returns the index of the display that is located at the specified point. For example, you can submit the mouse coordinates as the argument to obtain the index of the display over which the cursor is hovering.

Arguments

  • const Math::ivec2 & point - The point position in global coordinates.

Return value

The index of the display located at the specified point.
Last update: 25.05.2023
Build: ()