המחלקה GameComponent ב XNA - תכנות - HWzone פורומים
עבור לתוכן
  • צור חשבון

המחלקה GameComponent ב XNA


bdoron

Recommended Posts

התחלתי ליצור משחק ואני עובד עם הספר learn xna 4.0 ושם הוסבר לי איך ליצור sprites, איך להזיז אותם ..

ועכשיו למדתי שם ליצור מחלקת אב שהיא מייצגת sprite וממנה אני מוריש ל2 מחלקות נוספות, מחלקה אחת תייצר לי אובייקט שהמשתמש יוכל להזיז על ידי מקשים

ומחלקה נוספת לצורך שהמחשב ישלוט בה

עכשיו לאחר מכן נאמר לי שיש לי מחלקה בשם gamecomponent שהמטרה שלה זה להיות משולבת בgameloop

אני יודע מה זה הgameloop אבל אני לא מבין למה אני צריך את הgamecomponent

למה אני לא יכול ליצור את כל האובייקטים שלי כבר בgameloop במחלקה game1

למה אני צריך להשתמש בgamecomponent?

קישור לתוכן
שתף באתרים אחרים

בהמשך הספר הם מסבירים למה. הרעיון העיקרי הוא שכל GameComponent הוא יחידה עצמאית שיכולה לעבוד בלי תלות באחרות, וככה אתה יכול להדליק ולכבות GameComponents מסויימים במינימום מאמץ. נניח לדוגמה שאתה כותב משחק FPS ולשחקן יש HUD (תצוגה כזו שמראה איזה יש לו, כמה כדורים, כמה חיים וכו') ואתה רוצה לתת לו את האופציה להסתיר את ה-HUD הזה. אז כל מה שצריך לעשות הוא שה-HUD יטופל ע"י GameComponent משלו, וכשהשחקן בוחר להסתיר אותו אז כל מה שצריך לעשות הוא לסמן אותו כ-Disabled.

קישור לתוכן
שתף באתרים אחרים

אז מה שאתה אומר לי בגדול שהיתרון הכי גדול של gamecomponent זה שהמשחק שאני בונה יהיה יותר מודולרי, שנוכל לפרק את האובייקטים במשחק ליותר חלקים וככה יותר קל לתכנת משחק..

הבנתי נכון?

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

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

הבנתי?

קישור לתוכן
שתף באתרים אחרים

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

×
  • צור חדש...