Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Tellys Castro

Patterns no flash?

Recommended Posts

saudações

 

 

Pessoal, olha esse site.

 

http://www.brzdesign.com/

 

As fotos de fundo tem uma mascara .. parecem terem sido editadas e nela acrescentadas um pattern, de modo que o foco dela fica difuso.

 

Eu tentei fazer um semelhante, é bem tranquilo fazer num editor de imagem, porem, acho q o cara q fez o site ai, usando um script do flash pra isso, pq se nao a medida q a imagem fosse aumentando sua proporção, visto q o layout se adequa ao tamanho browser, o pattern ia tb aumentar, e no site dele n acontece isso.

 

entao tentei fazer o seguinte.

 

 

var container:MovieClip = setUpContainer(this.createEmptyMovieClip("coluna", this.getNextHighestDepth()));
var ln:Number = 10;
var spacer:Number = 1;
var duplicate:MovieClip;
hRepeat = Math.round(Stage.height/container._height+spacer);
wRepeat = Math.round(Stage.width/container._width+spacer);



function setUpContainer(mc):MovieClip {
var mc:MovieClip = mc.createEmptyMovieClip("container", mc.getNextHighestDepth());
var w:Number = 1;
var h:Number = w;
mc.beginFill(0x999999);
mc.lineTo(w,0);
mc.lineTo(w,h);
mc.lineTo(0,h);
mc.lineTo(0,0);
mc.endFill();
return mc;// return mc.container
}

for (var i:Number = 1; i<hRepeat; i++) {
var depth:Number = i;
var referenciaColuna:Number = i*(container._height+spacer);
patternColuna = container.duplicateMovieClip("clip-"+i, container["clip-"+i] ? depth++ :depth, {_x:0, _y:referenciaColuna});
for (var ii:Number = 1; ii<wRepeat; ii++) {
	var depth:Number = depth++;
	var referenciaLinha:Number = ii*(container._width+spacer);
	patternLinha = container.duplicateMovieClip("clip-"+depth, container["clip-"+depth] ? depth++ :depth, {_y:referenciaColuna, _x:referenciaLinha});
	depth++;
}
depth++;
}

 

O que nao deu certo, pois eu estrapolo a memoria do pc e tb n faz a mascara..

 

Alguem tem uma ideia?

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites
pois eu estrapolo a memoria do pc e tb n faz a mascara..

Claro, um monitor com 1280 x 1024 = milhares de mcs...

 

Você não precisa criar seu pattern pixel a pixel...

 

Crie por linha(vertical ou horizontal) com um width de 300px por exemplo...

Compartilhar este post


Link para o post
Compartilhar em outros sites

No AS3, você pode usar o seguinte código:

import flash.display.Sprite;

var background:Sprite = new Sprite();
background.graphics.beginBitmapFill(new Pattern()); // onde Pattern é a classe da imagem com linkage ativado
background.graphics.drawRect(0, 0, stage.stageWidth, stage.stageHeight);
addChild(background);

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.