מיטוב מיטוב אנימציית מערכת חלקיקים של Flash CS3
עכשיו שיש לנו את הפלאשר מערכת החלקיקים של מערכת CS3 שלגיים עובדת בדיוק כמו שאנחנו רוצים, הגיע הזמן למטב את קוד תוכנית סצינת השלג. אם בדקת את האנימציה שכתבנו בהדרכות הקודמות, בטח שמת לב שאחרי זמן מה, האנימציה נוטה להטיל את משאבי המחשב שלך. במדריך זה, נסקור כמה דרכים לייעל את האנימציה.

כפי שקודם כעת, אנו משתמשים במאזין אירועים אחד כדי להאזין לכל פריים חדש של האנימציה. עם כל פריים חדש, פונקציית פתית השלג (מטפל באירועים) יוצרת פתית שלג חדשה ומוסיפה פתית שלג לרשימת תצוגות הפלאש. בשלב הבא אנו משתמשים ב- Math.random () כדי לאזן את המיקום ואת תכונות האלפא של פתית השלג הזו. אנו משתמשים במאזין אירועים שני בכדי להתקשר לפונקצית השלג, שוב עם כל מסגרת חדשה. פונקציית השלג בודקת אם פתית השלג עברה מעבר לקצה הימני או התחתון של הבמה. אם כן, אנו מסירים את מאזין האירועים השני שחוזר על פונקציית השלג. זה גורם לכך שפתית השלג האחת מפסיקה ליפול ואילו פתיתי השלג האחרים ממשיכים ליפול. החזרה על הפונקציה של פתית השלג יוצרת את הנפשת השלג. מה שעלינו לעשות כעת הוא לשנות את הקוד כך שיהיה יעיל יותר.

שיטה ראשונה

השיטה הראשונה מחייבת הוספה של שורת קוד אחת בלבד לתוכנית שלנו. יש לנו כבר הצהרה מותנית בתוך פונקציית השלג הבודקת אם פתית השלג חרגה מהבמה, ואם כן, מסירה את מאזין האירועים ומונעת את פתית השלג מנפילה.
פתית השלג מפסיקה לזוז אך היא עדיין נראית בתחתית הבמה. מכיוון שהוא עדיין גלוי ועדיין ברשימת התצוגה, פלאש עדיין מבזבז משאבים על פתית השלג הזו. אם נסיר את פתית השלג מרשימת התצוגה, זה ישחרר את המשאבים והאנימציה תהיה יעילה יותר. כדי להסיר את פתיתי השלג שאיננו זקוקים להם עוד ברשימת התצוגה, אנו יכולים להוסיף קוד removeChild להצהרה המותנית.

if (_Snowflake.y> 370 || _Snowflake.x> 550)
{
stage.removeEventListener (אירוע .ENTER_FRAME, שלג);
removeChild (_Snowflake);
}
אחר
{_Snowflake.y + = 5; _Snowflake.x + = Math.random () * 10; }


כשאתה בודק את הסרט שלך, פתיתי השלג נעלמים כשהם מגיעים לקצה הימני או התחתון של הבמה והאנימציה יעילה יותר.

הבא →

זכויות יוצרים 2018 Adobe Systems Incorporated. כל הזכויות שמורות. צילומי מסך של מוצרי אדובי הודפסו מחדש עם אישור של Adobe Systems Incorporated. אדובי, פוטושופ, אלבום פוטושופ, אלמנטים פוטושופ, אילוסטרייטור, InDesign, GoLive, Acrobat, Cue, Premiere Pro, אלמנטים בכורה, גשר, After Effects, InCopy, Dreamweaver, Flash, ActionScript, זיקוקים, לתרום, לכידת, Flash Catalyst ונייר פלאש. הוא / הם [a] סימנים מסחריים רשומים או סימנים מסחריים של Adobe Systems Incorporated בארצות הברית ו / או במדינות אחרות.