2011-08-05 4 views
2

this 마우스 트레일 유형을 복제하려고합니다. 무비 클립을 변형 시키거나 무대에서 별도의 객체를 그리는 것인지 알 수 없습니다. 나는 그것을 느린 속도로 복제 할 수는 있지만, 빠른 속도로 어떻게하는지 잘 모른다.AS3의 변형 된 모양의 마우스 트레일

MouseEvent.MOUSE_MOVE는 마우스가 움직이는 곳을 정확히 그리기 위해 업데이트 속도를 늦추므로 커브를 만드는 데 curveTo를 사용해 보았지만 불행하게도 여전히 날카로운 각도를 얻는 지점에 도달했습니다.

이 효과를 만드는 기술에 대한 통찰력은 내가이 시점에서 머리를 때리는 것만으로도 크게 만족할 것입니다.

답변

0

몇 초를 살펴보면, 매 프레임마다 butc mdata 객체에 작은 mc를 블리 팅 (그리기)하고있는 동시에, 전체 비트 맵의 ​​알파를 퍼센티지로 작게하여 비트 맵 데이터를 디밍하는 동시에 exatcly 얼마나 많은, 그 실험을하시기 바랍니다.

따라서 사용 ...

BitmapData.draw 비트 맵 어딘가에 영화 클립 그리는 및

BitmapData.coloTransform 1 % 정도의 모든 프레임에 의해 decrase에게 전체 이미지의 알파 변경

그래서 alpha에 도달 할 때까지 alpha에 0.98을 설정할 때까지 모든 multiplier를 1.0으로 설정하면됩니다. 매 프레임마다 그리고 시간이 지남에 따라 그 색 변환을 수행하면 blitted 된 오래된 mc의 "흔적"이 사라집니다. 문제가 발생할 경우

function onEventFrame(e:Event){ 
    bitmap.colorTransform(new Rectangle(0,0, 300,300), new ColorTransform(1.0, 1.0, 1.0 , 0.98)); 
    bitmap.draw(dotMC, bla bla bla); 
} 

, 또는 위에 제공되는 AS3 참조 링크를 참조 : 컴파일 오류가

ColorTransform class

코드 snipet은, 아마, 당신이이 시도하는 방법에 대한 아이디어를 제공합니다 당신이 하나를 찾을 수 있다면 그물에 대한 자습서.

행운을 빈다.

+0

웹 사이트가 마지막으로로드되었습니다. 그래, 확실히 비트 맵 블릿 팅입니다. 코드 인식 기능을 사용하여 mc를 "스와브"로 만들려면 코드를 조금만 사용해야 할 것입니다. 너에게. ... – Neoraptor

+0

굉장해, 그게 올바른 길이었다. 단 한 가지 더, 내가 어떻게 드로 율을 빠르게 할 수 있는지 아십니까? 타이머 (1)와 MOUSE_MOVE는 화면을 휩쓸 때 지연됩니다. – TwinRavens

+0

물론 1 밀리 초이면 지연 될 것입니다 ... 20-30ms와 같이 현실감있게 만들어야합니다. 그것이 많이 건너 뛰는 경우 for 루프의 inbetween 포인트에 1mc를 초과하여 드로잉하여 "보간"하려고하면 ... "부드럽게"만들어야합니다. – Neoraptor