2014-03-28 1 views
0

이것은 간단한 질문 일 수도 있지만 어쨌든 묻습니다.대용량 객체/MC를 처리 할 때 As3 ios 성능

내 iPad 앱에는 30 개의 중첩 된 MC가 들어있는 비교적 큰 드래그 가능한 MC가 있습니다. 각각의 중첩 된 자식은 애니메이션을 적용합니다. 이제 내 질문은 한 번에 상위 MC에 30 MC를 모두 추가할지 아니면 화면 경계 내에있는 경우에만 추가할지 여부입니다.

상위 MC는 드래그 가능하므로 화면 뷰포트 내에 4-6 개의 자식 MC 만 있습니다.

30 MC를 모두 한 번에 상위 MC에 추가하면 성능이 저하됩니까? 또는 애니메이션 MC가 화면 내에있는 경우에만 처리합니까?

건배.

+0

기발한 깊은 무비 클립의 계층 구조 성능 저하를보십시오. 여기에있는 것이 아니라 마음에 두어야 할 것이 있습니다. – Dave

답변

0

무비 클립이 스테이지에 추가되었지만 화면 뷰포트 외부에서는 성능이 떨어지지 만 뷰포트보다 작습니다. 이 MC가 뷰포트 외부에있을 때 상위 MC를 스테이지에서 제거하지 않는 이유는 무엇입니까?

또한 30 개의 애니메이션 중첩 된 (벡터) 무비 클립은 낮은 장치에서 상당히 무겁습니다. 성능 최적화를 위해 Flash IDE에서 벡터 아트를 비트 맵으로 변환하거나 movieclip.cacheAsBitmap 속성으로 재생하거나 애니메이션을 블 리팅 (http://www.adobe.com/devnet/flash/articles/blitting_mc.html) 할 수 있습니다. 영상의 많은 좋은 성능을 전반적으로

http://gamua.com/starling/

+0

대단히 감사합니다. 실제로 FB에서 Starling 프레임 워크를 구현했습니다. 그러나 이것은 새로운 문제를 야기합니다. MC를 상위 MC에 중첩하는 기능은 프레임 워크에서 불가능합니다. 그리고 부모 MC가 필요하기 때문에 (그래서 모든 MC MC가 드래그됩니다, 부모 MC를 드래그 할 때), 나는 Starling이별로 도움이되지 않는다고 생각합니다. 또한 쿼드 드래그를 테스트 한 결과 래그 (lag)와 전혀 정확하지 않은 것으로 보입니다. – edutainPeople

+0

왜 Starling에서 영화 클립을 중첩 할 수 없다고 생각하는지 확신 할 수 없습니다. Sprite에서 addChild를 사용하고 트위터 (http://wiki.starling-framework.org/manual/movie_clips)로 스프라이트에 애니메이션을 적용 할 수 있습니다. Starling의 복잡한 애니메이션의 경우 http://dragonbones.github.io/를 살펴보십시오. Starling에서 Quads/Sprites를 드래그 할 때의 지연은 그다지 크지 않다고 생각합니다. http://gamua.com/starling/first-steps/# 예를 들어 '멀티 터치'데모를 엽니 다. –

+0

답변 주셔서 감사합니다. Stefan :) 동영상 클립을 만들 때 textureAtlas에 가야합니다.하지만 27 개의 서로 다른 타일로 된 MovieClips를 만들 것입니다. 그러나 애니메이션은 한 번에 6 개 정도 밖에 나오지 않습니다. 27 개의 MC를 드래그하여 하나의 특정 MC. Ipad/iphone이 처리하기에는 너무 많은가? (27 가지 텍스처 아트라스)? – edutainPeople