הרצאה: אפליקציות תלת מימד (3D) עם Cross Platform

רונן צמיר, הרצה במפגש QT Meetup אודות פיתוח אפליקציות תלת מימד (3D) ב- Cross Platform. תחום התלת מימד (3D) עבר תהפוכות לא מעטות בשנים האחרונות, וגם כיום אין פתרון אחד מושלם, ועבור כל פרויקט יש לבחור את הכלי המתאים ביותר. במהלך ההרצאה רונן סקר את כלי הפיתוח השונים שיכולים להתאים ליישומי תלת מימד (3D), ובחן את היתרונות והחסרונות שלהם. לבסוף סיפק הדגמה של פרויקט לדוגמא המתבסס על פלאש כדי לפתח סביבת תלת מימד (3D) אינטראקטיבית.

בחלק הראשון של ההרצאה סוקר צמיר את השינויים שעברו על עולם הפיתוח בתלת מימד (3D). עולם שהתחיל כבר בשנות ה- 90 עם המשחקים הפשוטים הראשונים ולאחריהם עלייתם של משחקי הירי כגון דום. בתחילת שנת 2000 יצאו כלים שאפשרו כלים בתלת מימד (3D), כמו ספריות C++, ועלו היישומים הראשונים לווב עם אפלטים בג'אווה. הקרוס פלטפורם האמיתי לשימוש מסחרי היה ה- Shockwave director. ב- 2004/5 הוא יצא ואיפשר לקמפל תלת מימד (3D) למערכות שונות. לא הרבה אחרי יוצא הפלאש לראשונה – עוד אין לו תלת מובנה, אבל מתחילות להיבנות ספריות לכך.

פלאש הופך בהדרגה לכלי מוביל, ומיקרוסופט מוציאה את הסליברלייט כתגובה. אך הכל מתהפך כאשר סטיב גו'בס מודיע שהוא מוציא את הפלאש מה- iOS. למעשה הוא לא בדיוק אמר את זה – אלא רק שלדפדפן ספארי אי אפשר לכתוב פלאגין – מכיווון שפלאש היה הפלאגין הכי נפוץ הוא הכי נפגע. גם יוניטי אי אפשר לכתוב לספארי.

בחלק השני של ההרצאה, רונן צמיר מציג את הכלים השונים לביצוע Cross Platfrom 3D:

1. HTML5 נותן לנו את ה- WebGel, Canvas ו- CSS3. הייתרון הגדול ב- CANVAS הוא שאפשר לסמוך שהוא יהיה בסביבה בעתיד הרחוק, מה שאי אפשר להבטיח לגבי אף אחד מהכלים האחרים.
רונן מביא דוגמא ליישום תלת מימד (3D) שנבנה דרך ה- CANVAS. למרות שה- CSS3 לא נכתב לצורך גרפיקת תלת מימד (3D), כל עוד לא מדובר בוקטורים, אפשר ליצור סביבות תלת מימד (3D) פשוטות, כגון סיור תלת מימדי שמודגם בסרטון. לגבי WebGel – מסביר רונן שמדובר באחד הדברים הכי פחות Cross שיש. רץ על מעט מאוד דפדפנים, על פיירפוקס באנדרואיד רץ חלש מאוד.

2. פלאש (בו עוסקת ההרצאה בהרחבה בחלק השלישי)
3. Unity – כלי מאוד פשוט לתפעול שניתן להציב בו אלמנטים הבנויים מפוליגונים. מי שעסק בתוכנות מידול תלת מימד (3D) קל לו להפעיל ולהזיז אובייקטים. ניתן לחבר סקריפטים כדי לתת התנהגויות לאובייקטים. אך הוא חסר את הגיים מנג'ר – את המקום שבו מתחיל הכל.

בחלק השלישי מביא רונן דוגמא חיה לפיתוח סביבת תלת מימד (3D)

Comments (0)