[TuT]Criando Cores Manualmente. -
zSuYaNw - 15.11.2010
Criando cores manualmente
Introduзгo:
Hoje irei ensinar como trabalhar com cores no SA-MP, ele trabalha da forma RGB que significa Red Green e Blue que й o famoso padrгo "vermelho" da web aonde as demais cores sгo extraнdas dessas 3 cores. Irei mostrar em uma imagem como funciona esse nosso sistema de cores:
(fonte
wiki)
Pela imagem vocк pode notar que, de Vermelho, Verde e Azul foram extraнdas outras cores como Ciano, Amarelo e Magenta, essas 3 cores vгo ser extraнdas outras 3 cores e assim vai. Como acabamos de entender a lуgica disso tudo, vamos agora entender como funciona em cуdigos! Na programaзгo й usado nъmeros para representar as cores, sendo nъmeros em base 10(decimal), em base 16(hexadecimal) ou atй binбrio mas sempre seguindo o mesmo padrгo de Vermelho, Verde e Azul. Para poder escrever uma cor devemos definir a quantidade que ela terб de tal cor, exemplo:
Neste exemplo, estamos dizendo que a nossa cor terб nada de vermelho, FF (ou 255 em decimal) e ela terб nada de vermelho.
Como vocк pode notar, na programaзгo usamos frequentemente nъmeros em base 16 (hexadecimal) para facilitar a leitura do cуdigo, mas vocк sabe oque й nъmeros hexadecimais? Nъmeros hexadecimais sгo em base 16, foram feitos para facilitar nossa vida quando iremos escrever uma quantidade enorme de nъmeros, pelo fato de eles serem simples e eficazes.
Nъmero em decimal | Nъmero em hexadecimal |
1024 | 400 |
2016 | 7E0 |
|
Como pode notar, teve uma pequena diferenзa entre o decimal e o hexadecimal. nota-se tambйm que foram adicionado letras a esses nъmeros... vamos ao significado de cada letra:
Nъmero em decimal | Nъmero em hexadecimal |
0 | 0 |
|
1 | 1 |
|
2 | 2 |
|
3 | 3 |
|
4 | 4 |
|
5 | 5 |
|
6 | 6 |
|
7 | 7 |
|
8 | 8 |
|
9 | 9 |
|
10 | A |
|
11 | B |
|
12 | C |
|
13 | D |
|
14 | E |
|
15 | F |
|
*Nota: 0 й o mнnimo e FF й o mбximo de uma determinada cor.
Agora como jб sabemos como funciona nъmeros em hexadecimal, vamos agora representar cores com hexadecimal.
Cor | Em Hexadecimal | Explicaзгo |
00FF00 | Verde claro | Essa cor contйm a quantidade 0 de VERMELHO, 255(ou FF em Hex) de VERDE e 0 de AZUL |
FF0000 | Vermelho Forte | Essa cor tem 255(ou FF em hexadecimal) de vermelho, 0 de vede e 0% de Azul |
0000FF | Azul Forte | Agora essa cor tem 0 de Vermelho, 0 de Verde e 255 de Azul(ou FF em hexadecimal) |
|
Nas cores acima, vocк pode notar oque eu expliquei atй agora que no padrгo RGB sгo 3 setores aonde temos que especificar a quantidade de uma cor que irб gerar a nossas cor. Na cor Azul forte por exemplo, especifiquei que ela terб NADA de cor vermelha, terб NADA de cor VERDE e apenas tudo cor Azul.
Em algumas linguagens como PAWN/C/C++ utilizamos um determinado prefixo para o compilador reconhecer que estamos trabalhando com hexadecimal, que й o 0x. Veja um exemplo:
PHP код:
SendClientMessage(playerid, 0x00FF00, "[Informaзгo]: Vocк estб registrado!");
Podemos tambйm usar nossa cor em decimal!
PHP код:
SendClientMessage(playerid, 65280, "[Informaзгo]: Vocк estб registrado!");
Como vocк pode notar, nгo usamos o prefixo
0x quando em base 10(decimal) pois o compilador jб reconhece que estamos falando de nъmeros em base decimal.
Um pequeno script exemplificando oque aprendemos hoje sobre cores:
pawn Код:
#include <a_samp>
#define COR_TESTE 0x61DAE0FF
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/Teste", cmdtext, true, 10) == 0)
{
SendClientMessage(playerid, COR_TESTE,"Tutorial do zSuYaNw, Testando Cores. 2016");
return 1;
}
return 0;
}
Transparencia:
Em textdraws pode-se definir uma certa intensidade da cor, aonde podemos atй deixar um textdraw totalmente claro ou totalmente forte. Veja um exemplo:
Cor branca em baixa intensidade: | Cor branca com alta intensidade: |
| |
Este fenфmeno de transparкncia pode ser feito adicionando um ultimo parвmetro em nossa cor, assim ficando 4 parвmetros: RR GG BB TT:
Veja um exemplo:
Aqui temos uma cor verde, eu ainda nгo defini nenhuma transparкncia para ela:
Irei deixar ela com mйdia intensidade, igual da primeira foto em nosso exemplo acima:
Existe vбrias intensidades que podemos usar, 00 sendo a mais baixa intensidade tornando a cor totalmente transparente e FF aonde ela fica em alta tensidade. Somente lembrando que essas intensidade de cores sу funcionam em textdraws, ao usar em um sendclientmessage por exemplo, a estrutura da cor muda totalmente.
Clique aqui para saber mais sobre intensidade de cores.
Crйditos:
- > zSuYaNw
Re: [TuT]Criando Cores Manualmente. -
Kasura - 15.11.2010
Ficou bom garfield mas
Quem й loco pra fazer uma cor manualmente se tem geradores kkkk
Re: [TuT]Criando Cores Manualmente. -
Falcon. - 15.11.2010
Bom... meus parabens pelo trabalho que deve ter dado para fazer esse tuto...
Kasura: Sempre tem uns loucos ae..Nunca duvide
Eu prefiro usar o IPE..й mais rбpido..(
e para preguiзosos )
Re: [TuT]Criando Cores Manualmente. -
SlashPT - 15.11.2010
nunca tinha pensado em isso mt bom
Re: [TuT]Criando Cores Manualmente. -
zSuYaNw - 15.11.2010
Quote:
Originally Posted by Kasura
Ficou bom garfield mas
Quem й loco pra fazer uma cor manualmente se tem geradores kkkk
|
eu fiz no intuito de a pessoa entender como funciona e tambйm quem nгo sabe aprender comofaz.
Quote:
Originally Posted by DarK TeaM PT
nunca tinha pensado em isso mt bom
|
valeww aeee
Re: [TuT]Criando Cores Manualmente. -
SlashPT - 15.11.2010
ya encinoume uma coisa calculadora windows da geito para fazer as contas dos trabalhos de casa por mim e tambem para isso ;3, realmente me ensinaste isso nunca tinha pensado... XD
Respuesta: [TuT]Criando Cores Manualmente. -
BiieL - 15.11.2010
Tb nunca pensei q essas cores fossem por RGB
mesmo usando RGB em cleo
Re: [TuT]Criando Cores Manualmente. -
HfV.pT - 15.11.2010
Tutorial porreiro !!
Re: [TuT]Criando Cores Manualmente. -
zSuYaNw - 15.11.2010
valew aeeeee
Re: [TuT]Criando Cores Manualmente. -
Kasura - 16.11.2010
gostava mais da sua outra foto ^^ Garfield