Jump to content

[Вопрос]: Разрешение мониторов и MTA


Recommended Posts

Здравствуйте, у меня появилось несколько вопросов по поводу различных разрешений мониторов у игроков:
1. Поддерживает ли MTA широкоформатные мониторы, такие как, например, монитор Samsung с разрешением 3840x1080?
( Я имею ввиду, картинка в MTA растягивается на всё разрешение или только на определённое, а по бокам чёрные полосы? )

2. Существуют ли способы оптимизации кастомного графического интерфейса сервера под различные разрешения мониторов у игроков?

Link to comment

1. MTA должна идти по идее на всех разрешениях. Если у вас не пошло на весь экран, то нужно создать отчет на баг трекере и приложить всю информацию. https://bugs.multitheftauto.com/
2. В МТА используется абсолютные размеры интерфейсов (px) или относительные размеры (в % от экрана). В большинстве случаев используют абсолютные значения.

Я в проектах использовал позиционирование вот так:

Если это диалоговое окно на весь экран.
https://wiki.multitheftauto.com/wiki/CenterWindow

Если это HUD элемент то от ширины/высоты окна вычитал/прибавлял px размера интерфейса.

Edited by Kenix
Link to comment
2 hours ago, Kenix said:

1. MTA должна идти по идее на всех разрешениях. Если у вас не пошло на весь экран, то нужно создать отчет на баг трекере и приложить всю информацию. https://bugs.multitheftauto.com/
2. В МТА используется абсолютные размеры интерфейсов (px) или относительные размеры (в % от экрана). В большинстве случаев используют абсолютные значения.

Я в проектах использовал позиционирование вот так:

Если это диалоговое окно на весь экран.
https://wiki.multitheftauto.com/wiki/CenterWindow

Если это HUD элемент то от ширины/высоты окна вычитал/прибавлял px размера интерфейса.

Можно пример кода,с переменными?xD
Просто,я последнее время,не знаю какие пере

менные использовать,для большего удобства.

Link to comment
  • Other Languages Moderators
27 minutes ago, BrekBerry said:

Можно пример кода,с переменными?xD
Просто,я последнее время,не знаю какие пере

менные использовать,для большего удобства.

Бож.... функция  guiGetScreenSize() возвращает высоту и ширину вашего разрешения, от этого и подстраивайте окна под разрешение относительными или абсолютными координатами.

Link to comment

На Wiki функции centerWindow есть пример.
 

addEventHandler( "onClientResourceStart", resourceRoot, function()
  myWindow = guiCreateWindow( 350, 100, 200, 250, "Window Title", false )
end )

addCommandHandler( "center", function()
  if myWindow then
    centerWindow( myWindow )
  end
end )

При старте ресурса появится окно.
Как только вы напишите команду /center окно будет отцентрировано под ваше разрешение экрана.

Не забудьте функцию centerWindow скопировать и вставить в код.

Edited by Kenix
Link to comment
4 hours ago, Kenix said:

На Wiki функции centerWindow есть пример.
 


addEventHandler( "onClientResourceStart", resourceRoot, function()
  myWindow = guiCreateWindow( 350, 100, 200, 250, "Window Title", false )
end )

addCommandHandler( "center", function()
  if myWindow then
    centerWindow( myWindow )
  end
end )

При старте ресурса появится окно.
Как только вы напишите команду /center окно будет отцентрировано под ваше разрешение экрана.

Не забудьте функцию centerWindow скопировать и вставить в код.

За это конечно спасибо,но я хотел бы для dx.
Получить размеры экрана,поделить одно значение на определённое число,и умножать на каждую координату dx-элемента?
local scx,scy = guiGetScreenSize()
local px = scx/1920
dxDrawImage(156*px,45*px,32*px,48*px)
или же вот так
local screenW,screenH = guiGetScreenSize()
local px,py = 1680,1050
local x,y = (screenW/px), (screenH/py)
dxDrawImage(5*x, 275*y, 20*x, 20*y)
Для того же самого худа,что лучше использовать,что он смотрелся на всех расширениях?))

 

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...