O env_sprite e o env_glow são entidades muito semelhantes. Ambas servem para que um
sprite específico seja usado. A principal diferença entre as duas entidades é que o env_glow serve para
fazer sprites permanentes, como por exemplo efeitos de brilho das lâmpadas, enquanto o env_sprite pode ser
ativado ou desativado, fazendo com que seja possível o uso de outros efeitos nos mapas que não sejam permanentes
(como os efeitos utilizados no Half-Life - Single Player, para simular o teleporte de monstros).
Os sprites do Half-Life sao figuras 2D estaticas ou animadas, e sao desenhados da mesma maneira nao importando
sua posicao relativa ao jogador, ou seja, ele tem a mesma aparencia se visto de lado, de cima, de baixo, etc.
Por causa disso, ele deve ser bem posicionado, senao ficara esquisito se visto de um angulo que nao foi previsto.
Por exemplo, um sprite de fogo fica muito bom para ser visto de frente, mas se visto de cima, a chama
parece estar na vertical.
Um Sprite de fogo visto de frente e de cima:
Aqui esta uma listagem completa dos sprites disponiveis no Half-Life. Voce pode
tambem retira-los do arquivo PAK0.PAK usando o
PakScape ou o
PakExplorer e usar o
SprView para visualiza-los, ou algum outro
programa da secao ferramentas para visualizar/criar sprites
env_sprite
Com o env_sprite é possível utilizar sprites estaticos ou animados, e possui as seguintes propriedades:
Name : Nome da entidade, para poder ser ligada/desligada
Sprite Name : Aqui deve-se definir qual sprite será utilizada. Um exemplo seria
sprites/fire.spr. Lembre-se de sempre usar a barra "/" ao invés da "\"
Framerate : É a quantidade de quadros por segundo que serão mostrados. Serve para aumentar ou
diminuir a velocidade da animação (caso queira uma animação mas rápida, o valor deve ser aumentado,
e vice-versa) O Framerate padrao é 10.
Scale : É a "escala" do sprite. Mudando o valor aqui definido o tamanho do sprite será
mudado. Assim, se o valor for 1, o sprite estará em sua escala original, se for 2 o sprite
tera o dobro do tamanho, 0.5 tara metade do tamanho, etc...
Rendering Properties (Render FX, Render Mode, FX Amount e FX Color): Explicação abaixo
FLAGS: O env_sprite tem os os seguintes flags:
Start On: Se o env_sprite tiver um nome, ele comeca desligado e precisa ser ativado para aparecer.
Este flag faz com que um env_sprite com nome comece ligado.
Play once: Faz com que a animação do sprite seja executada apenas uma vez, depois o sprite some.
env_glow
O env_glow é muito semelhante ao env_sprite, mas mostra apenas com sprites estaticos. O unico caso
em que é preferivel usa-lo ao inves do env_sprite, é para fazer brilho em volta de luzes
(como o proprio nome ja diz, glow=brilho), usando os sprites sprites/glow01.spr (default),
sprites/glow02.spr, sprites/glow03.spr ou sprites/glow04.spr.
Lembre-se de usar sempre o Render Mode Glow ou Additive!
Em env_glow junto a uma luz:
Como o env_glow mostra apenas sprites estaticos, se você usar um sprite animado num env_glow,
como por exemplo o sprite fire.spr, o que vai acontecer é que o env_glow só utilizará o primeiro quadro da
animação do sprite. Nesse caso (fire.spr), o fogo ficará "imóvel", sem animação alguma. Se usar o
env_sprite, o fogo ficaria animado.
O env_glow faz com que o sprite seja permanente, e sendo assim não pode ser ativado ou desativado. Deste
modo, definir um nome (Name - Targetname) para ele é quase inútil, a não ser que se queira que o env_glow em
determinado momento desapareça de vez. Para isso, deve-se usar alguma entidade que possua a propriedade
killtarget, e nesse campo deve-se colocar o nome definido no Name do env_glow. Assim, quando a
entidade usada for ativada, seu killtarget ativará o env_glow, fazendo com que ele desapareça do mapa
(killtarget serve para "eliminar" uma entidade do jogo. Assim, o env_glow irá sumir). Mesmo assim, acho isso tudo
desnecessário, afinal pode-se simplesmente usar um env_sprite (ao invés do eng_glow) e desativá-lo, ao invés de
usar o killtarget para eliminar o env_glow.
As propriedades do env_glow sao as mesmas do env_sprite, portanto não serão re-explicadas.
A unica diferenca é que ele nao tem Framerate (afinal, é estatico), Scale nem flags.
Rendering Properties
Abaixo segue uma explicação dos Rendering Properties (propriedades da
visualização do sprite). Lembrando que os Rendering Properties são disponíveis para a
grande maioria das entidades, não somente env_sprite e env_glow, e por isso irei falar das
propriedades de objeto, e não especificamente para sprites (a não ser nos
modos Glow e Additive, quase que exclusivos para sprites).
Render FX : Controla o comportamento visual do objeto, se ele é normal, se pisca, pulsa, etc.
Render Mode : Controla como o objeto será visualizado. Existem 6 modos:
Normal (0): Esse é o Rendering Mode padrão. Não causa nenhuma modificação na aparência do objeto.
Color (1):
Faz com que a aparência da textura do objeto seja substituída pela cor que deverá ser
especificada em FX Color. Essa opção não é aplicável às model-based point entities (seriam
as entidades baseadas em models, como monstros, por exemplo. Não é aplicável a sprites tambem...).
Texture (2):
Serve apenas para que o nível de transparência de um objeto possa ser modificado (o nível de
transparência será definido pelo FX Amount, quanto menor, mais transparente).
O nível de transparência também pode ser
modificado se as outras opções do Render Mode forem usadas, e não só o modo Texture.
Glow (3):
Serve para dar os efeitos de brilho de luz ao redor das luzes. Assim, ao se fazer uma luz
qualquer (light), pode-se utilizá-la em conjunto com o env_glow para dar o efeito de brilho
ao redor da lâmpada. Ao usar o modo Glow, deve-se usar um certo nível de transparência para
que o sprite pareça um efeito de luz, variando o valor do FX Amount.
Solid (4):
Serve para brushes com texturas vazadas (aquelas que comecam com "{" e tem partes azuis), como grades e
portões. Para fazer as partes azuis serem transparentes, e assim dar o efeito de uma grade ou algo do tipo,
deve-se usar esse Render Mode (Solid), e usar o valor 255 em FX Amount.
Additive (5):
Efeito semelhante ao produzido com Render Mode Texture, com a diferença que o modo Additive
faz com que, já que vemos o objeto como resultado de uma sucessiva camada de quadros (modo
Texture), esses quadros são "adicionados" conjuntamente, dando um efeito mas opaco e de
maior brilho. Para fazer os efeitos de teleporte de monstros (Half-Life Single Player), foram utilizados
env_sprites com esse Render Mode.
Para utilizar com sprites (env_sprite e env_glow), os Render Modes que devem ser
usados são Glow ou Additive, para que a parte preta ao redor das sprites desapareça e para
causar os efeitos ideais dos sprites, mas há exceções, como por exemplo sprites que sejam
árvores ou arbustos, e então deve-se usar Render Mode Solid e FX Amount 255, como as
texturas de grades, para que a parte azul desapareça e o resto do sprite seja
visível como objeto sólido.
FX Amount: Serve para modificar o nível de transparência de um objeto. 0 (zero) faz com que o
objeto fique totalmente transparente, e 255 totalmente sólido, mas pode-se uasr variações entre
0 e 255. Um valor 153, por exemplo (60% de 255) faz com que o objeto apareça com 40% de transparência
(ou 60% de "solidez"). Para grades, deve-se uasr sempre o valor 255 (em conjunto com Render Mode Solid)
para deixar as partes azuis transparentes.
FX Color (R G B): Funciona apenas com os "Render Modes" que usem o FX Color (Render
Mode-Color e Render Mode-Glow). Serve para definir a cor do objeto, em RGB (Red Green Blue -
Vermelho Verde Azul). Para usar um valor em RGB, deve-se entender que cada cor varia do 0
(preto, sem cor) ao 255 (cor pura). Portanto, se quiser um vermelho puro, deve-se usar o
seguinte valor: "255 0 0".
Outras Referencias
p>Aqui esta um mapa de exemplo.
Aqui esta uma lista de sprites disponiveis no Half-Life.
Voce ainda pode criar seus proprios sprites.
por - DARKEagle e Mataleone -
|