Jump to content

Problema con multiresolución


-Rex-

Recommended Posts

Hola a todos, Tengo un problema con la multiresolución, Lo que pasa es que en la resolucion 1280 x 600 ( En la que cree todo ) se ve muy bien todo lo que se ha creado en DX, Pero lo que pasa que en resoluciones como 800 x 600, Se ve los textos del mismo tamaño que en la resolucion 1280 x 600 y los textos sobresalen de la interfaz

Aqui dejo unas fotos del inventario en las dos resoluciones

1280 x 600

1YaaaUV.png

800 x 600

0rF9DB9.png

¿Como pudiera hacer para que en cualquier resolución el tamaño del texot se ajuste automaticamente con su resolución?

El mismo problema me pasa con el scoreboard..

Todo se ve muy pegado y sobreencimado..

lCuu66n.png

Aqui dejo un ejemplo de como aplico la multiresolucion

  
local x,y = guiGetScreenSize() 
local sx, sy = 1280, 600 
dxDrawText("Login",  ( 300 / sx ) * x, ( 257 / sy ) * y, ( 330 / sx ) * x, ( 268 / sy ) * y, tocolor(255, 255, 255, 255), 1.00, dayzfont, "left", "top", false, false, false, false, false) 

Link to comment
local fHeight = (sy / 600); 
local fontsize = fHeight * -- [[por el tamaño de fuente que quieras]] 

;

PD: 1280 x 600? en lugar de 600 la menor es 720.

La variable sy tiene como valor 600 asi que divido entre 600 dara 1 y no pasaria nada..

Link to comment
local fHeight = (sy / 600); 
local fontsize = fHeight * -- [[por el tamaño de fuente que quieras]] 

;

PD: 1280 x 600? en lugar de 600 la menor es 720.

La variable sy tiene como valor 600 asi que divido entre 600 dara 1 y no pasaria nada..

Obviamente te dará uno a ti porque tienes esa resolución, pero a diferencia de otras esta va a variar.

Por ejemplo yo uso la 1024 x 768 y divido las dos unidades por 1600 x 1200 y me queda el texto dentro del rectángulo, pero reducido e incluyendo el texto.

local sx, sy = guiGetScreenSize(); 
local screenX, screenY = (sx / 1600 ), (sy / 1200); 
local fontsize = screenY * 1.0; 
addEventHandler("onClientRender", root, function() 
    dxDrawRectangle(screenX*250, screenX*250, screenX*500, screenX*30, tocolor(0, 0, 0, 255), false); 
    dxDrawText("Yo soy GaBoX!", screenX*250 + 5, screenX*250 + 5, 0, 0, nil, fontsize); 
    dxDrawText("Numero de scripts: 20", screenX*250 + screenX*500 - 130, screenY*250 + 5, 0, 0, nil, fontsize); 
end) 

Link to comment
  • Recently Browsing   0 members

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