Возвращает параметры окна игры. См. также: EVENT_POS_CONVERTER_CHANGED.
Существует две системы координат экрана игры - виртуальная и реальная. Обе начинают отсчёт с нуля, от верхнего-левого угла клиентской области окна (а в полноэкранном режиме - экрана), обе используются для указания местоположений и размеров виджетов. Виртуальные единицы существуют специально для позиционирования виджетов, поэтому, они используются наиболее часто - по ним позиционируются виджеты, позиционируемые по WIDGET_ALIGN_LOW, WIDGET_ALIGN_HIGH, WIDGET_ALIGN_CENTER, WIDGET_ALIGN_BOTH. Реальные (абсолютные) единицы используются крайне редко, только для тех виджетов, которые позиционируются по WIDGET_ALIGN_LOW_ABS.
Текущий виртуальный размер окна - по одной из осей равен базовому размеру окна, а по другой варьируется, в зависимости от пропорций окна (или экрана). Например, если пропорции окна шире чем 5:4, то виртуальная высота будет равна 1024, а ширина будет рассчитана относительно высоты, и в данном случае, будет превышать 1280. И наоборот, если пропорции окна уже 5:4, то виртуальная ширина будет равна 1280, а виртуальная высота будет рассчитана относительно ширины, и будет превышать 1024.
Реальный размер окна - размер в реальных пикселях операционной системы.
Базовый размер окна - это константы (1280x1024), используемые для рассчёта виртуального размера окна. Виртуальные ширина и высота окна никогда не бывают меньше этих базовых величин.
-- класс WidgetsSystemSafe -- семантика function GetPosConverterParams( self ) -- входные параметры нет -- возвращаемое значение: таблица с полями: fullVirtualSizeX: number( float ) - текущий виртуальный размер окна по X fullVirtualSizeY: number( float ) - текущий виртуальный размер окна по Y realSizeX: number( float ) - реальный размер окна по X realSizeY: number( float ) - реальный размер окна по Y referenceVirtualSizeX: number( float ) - базовый виртуальный размер окна по X referenceVirtualSizeY: number( float ) - базовый виртуальный размер окна по Y -- пример local posConverter = widgetsSystem:GetPosConverterParams() LogInfo( "fullVirtualSizeX: ", posConverter.fullVirtualSizeX ) LogInfo( "fullVirtualSizeY: ", posConverter.fullVirtualSizeY ) LogInfo( "realSizeX: ", posConverter.realSizeX ) LogInfo( "realSizeY: ", posConverter.realSizeY ) LogInfo( "referenceVirtualSizeX: ", posConverter.referenceVirtualSizeX ) LogInfo( "referenceVirtualSizeY: ", posConverter.referenceVirtualSizeY ) При резолюции экрана 1920x1200, в полноэкранном режиме, результат будет такой: fullVirtualSizeX: 1638.4001464844 fullVirtualSizeY: 1024 realSizeX: 1920 realSizeY: 1200 referenceVirtualSizeX: 1280 referenceVirtualSizeY: 1024