Witamy na GTAOnline Obecny czas to 2018-12-14, 00:00 Użytkowników: 76983
Strona główna | Użytkownicy | Grupy | Faq | Regulamin | Zaloguj

Poprzedni temat :: Następny temat
Skalownie odśrodkowe.
Autor Wiadomość

boszboszek 
HEY





Informacje
Nick w MP: boszboszek
Wiek: 18
Na forum: 776 dni
Posty: 140
Piwa: 1199
Respekt: 115,8
Respekt: 115,8

Wysłany: 2018-08-13, 18:15   Skalownie odśrodkowe.



Witam,
chciałbym nauczyć wielu "skrypterów" skalowania odśrodkowego. Bo jak patrze na niektórych skalowanie, to łapie się za głowę. Jedynym minusem tego skalowania jest wymóg posiadania monitora full hd.

Jeżeli chcemy wyskalować cokolwiek - musimy pobrać rozdzielczość ekranu gracza.

local sxsy guiGetScreenSize() -- zwraca nam oś X i oś Ynp1920 1080



Następnie tworzymy zmienną, która będzie dzieliła naszą oś X(1920) na oś X clienta.

zmienna 1920/sx


Czyli jak skalujemy w full hd to zmienna będzie równa 1 - wynika to z prostego obliczenia (1920/1920 = 1)

Musimy nauczyć się też pozycjonować interfejs:

Od prawej do środka:
sx wartosc/zmienna


Od lewej do środka:
wartosc/zmienna


Środek:
sx/wartosc/zmienna


Od góry do środka:
wartosc/zmienna


Od dołu do środka:
sy wartosc/zmienna


Środek:
sy/wartosc/zmienna


Pamiętajcie też, że jeżeli chcecie wyskalować obrazek w dobrej jakości to powiększenie jego musi być proporcjonalne tzn. IMG jest w wymiarach 300x300, jeżeli chcemy go poszerzyć dwukrotnie - musimy też tak samo powiększyć drugą wartość, np. 600x600. Wtedy jest mała utrata jakości.

Ułatwiona funkcja do skalowania interfejsu stworzona przeze mnie.

local sxsy guiGetScreenSize()
local zoom 1920/sx

function scaleX(typevalue)
    if type == 'center' then
        return math.floor(sx/value/zoom)
    elseif type == 'left' then
        return math.floor(sx value/zoom)
    elseif type == 'right' then
        return math.floor(value/zoom)
    end
end

function scaleY(typevalue)
    if type == 'center' then
        return math.floor(sy/value/zoom)
    elseif type == 'top' then
        return math.floor(value/zoom)
    elseif type == 'down' then
        return math.floor(sy value/zoom)
    end
end

function scaleImage(value)
    return math.floor(value/zoom)
end


Mam nadzieję, że Wam pomogłem - jeżeli są jakieś błędy, to proszę o poprawienie mnie. Z góry dziękuje :D

Ostatnio zmieniony przez boszboszek 2018-12-10, 23:15, w całości zmieniany 2 razy  
Postaw piwo autorowi tego posta
 
Więcej szczegółów
Wystawiono 1 piw(a):
BialyDran

Pevo 
Ja wiem lepiej





Informacje
Nick w MP: Pevo
Wiek: 7
Na forum: 860 dni
Posty: 333
Piwa: 361
Respekt: 315,8
Respekt: 315,8Respekt: 315,8Respekt: 315,8

Wysłany: 2018-08-13, 18:20   



Bardzo dobry i wartościowy poradnik. Wszystko pięknie rozpisane :D

_________________
Discord: Pevo#3511
GG: 64700204
Usługi programistyczne: http://gtao.pl/<font-c...ne-vt125761.htm
Paczka RPG: http://gtao.pl/<font-c...rl-vt119413.htm
Postaw piwo autorowi tego posta
 

Kalizman 
Coś napewno...





Informacje
Wiek: 16
Na forum: 922 dni
Posty: 1378
Piwa: 2893
Respekt: 343,5
Respekt: 343,5Respekt: 343,5Respekt: 343,5

Wysłany: 2018-08-13, 20:35   



polecałbym dodać na sam koniec poradnika całe skalowanie i jakiś przykład (niekoniecznie)

_________________

Sprzedam gamemode RPG na platformę MTA:SA za niską cenę:
http://www.gtao.pl/%3Cfont-colorlime%3Esprzedam%3C-font%3E-gm-mta-country-rpg-vt126606.htm

Postaw piwo autorowi tego posta
 

OchIAch 





Informacje
Nick w MP: OchIAch
Wiek: 19
Na forum: 385 dni
Posty: 157
Piwa: 482
Respekt: 105,3
Respekt: 105,3

Wysłany: 2018-08-27, 15:09   



Średnio zrozumiałe. Dasz jakiś przykład? Zamiast np. zmienna/wartość co mam wpisać?

_________________
Postaw piwo autorowi tego posta
 

ST4GE 





Informacje
Nick w MP: ST4GE
Wiek: 15
Na forum: 156 dni
Posty: 99
Piwa: 60
Respekt: 61

Wysłany: 2018-08-28, 17:30   



"OchIAch" napisał/a:

Średnio zrozumiałe. Dasz jakiś przykład? Zamiast np. zmienna/wartość co mam wpisać?


Jak to co masz wpisać? Zmienna to zmienna i definiujesz jej nazwę według siebie...

Postaw piwo autorowi tego posta
 

DomineQ 
Amator LUA





Informacje
Nick w MP: EZ3N
Wiek: 16
Na forum: 1231 dni
Posty: 301
Piwa: 3345
Respekt: 80,5

Wysłany: 2018-10-01, 17:53   



Czyli rozumiem to tak, że jeżeli chcę wyskalować obrazek, żeby nie tracił jakości, to jeżeli jego wymiary to 300x300 np, to muszę go powiększyć x2?

Chodzi mi czy to powinno tak wyglądać:


sx/zmiennasy/zmienna600/zmienna600/zmienna


_________________
Postaw piwo autorowi tego posta
 

boszboszek 
HEY





Informacje
Nick w MP: boszboszek
Wiek: 18
Na forum: 776 dni
Posty: 140
Piwa: 1199
Respekt: 115,8
Respekt: 115,8

Wysłany: 2018-10-04, 15:00   



"DomineQ" napisał/a:

Czyli rozumiem to tak, że jeżeli chcę wyskalować obrazek, żeby nie tracił jakości, to jeżeli jego wymiary to 300x300 np, to muszę go powiększyć x2?

Chodzi mi czy to powinno tak wyglądać:


sx/zmiennasy/zmienna600/zmienna600/zmienna


Dokładnie o to chodziło, lecz pamiętaj abyś powiększał obraz z umiarem, ponieważ jest to grafika rastrowa, a nie wektorowa.

[ Dodano: 2018-11-20, 18:27 ]
Stworzyłem nową funkcje, zapraszam ^^

Postaw piwo autorowi tego posta
 

Vxen 





Informacje
Wiek: 20
Na forum: 1357 dni
Posty: 281
Piwa: 831
Respekt: 130,5
Respekt: 130,5

Wysłany: 2018-11-23, 09:09   



Może ktoś dać jakieś skalowanie przykładowe jakiegoś obrazka 215/215px.

Postaw piwo autorowi tego posta
 

Piorun 





Informacje
Nick w MP: Piorun
Wiek: 25
Na forum: 3983 dni
Posty: 1839
Piwa: 494
Respekt: 480,7
Respekt: 480,7

Wysłany: 2018-11-23, 12:00   



Złota zasada skalowania: nie skaluj.

_________________
Możesz mnie znaleźć na: Facebook
Postaw piwo autorowi tego posta
 

Vxen 





Informacje
Wiek: 20
Na forum: 1357 dni
Posty: 281
Piwa: 831
Respekt: 130,5
Respekt: 130,5

Wysłany: 2018-12-07, 22:37   



Może ktoś dać przykład na dxDrawRectangle

Postaw piwo autorowi tego posta
 

Vruzzi 
Pomocnik W serwerach





Informacje
Nick w MP: Vruzzi
Wiek: 13
Na forum: 140 dni
Posty: 14
Respekt: 50

Wysłany: 2018-12-08, 19:22   



przydał by się poradnik bardziej dla zielonych

_________________
discord:Vruzzi#8547
Własna Strona:RealLife.svpj.pl
Własny Project:RealLife
Postaw piwo autorowi tego posta
 

boszboszek 
HEY





Informacje
Nick w MP: boszboszek
Wiek: 18
Na forum: 776 dni
Posty: 140
Piwa: 1199
Respekt: 115,8
Respekt: 115,8

Wysłany: 2018-12-10, 23:17   



"Vruzzi" napisał/a:

przydał by się poradnik bardziej dla zielonych


W bardziej ziemski sposób nie mogłem tego wytłumaczyć :(

_________________

Lua
C++
HTML
CSS
JavaScript
Postaw piwo autorowi tego posta
 
Tagi: skalownie :: odśrodkowe.
Anonymous



Dołaczył: Wczoraj 0:00
Posty: 1
Skad: google.com


Anonymous Koniecznie zajrzyj na:







Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Wersja do druku

Skocz do:  


phpBB by Przemo modified by xXx 2003-2016

Template GTAONLINE created by gtaonline.pl



Strona wygenerowana w 0,51 sekundy. Zapytań do SQL: 19