כיצד לתכנת משחק וידאו?

1. בחר מנוע משחק.
2. השתמש במסגרות ובכלים אחרים.
3. למד שפת תכנות.
4. צור תוכנית משחק.
5. אוספים נכסי אמנות כמו טקסטורות, צלילים ומודלים.
6. תסריט את המשחק.
7. צור רמות משחק.
8. בדקו את המשחק לפני שחרורו.

באיזה מנוע משחק עלי להשתמש אם אצטרך לעבור בין קטעי תלת מימד למשחק דו-ממדי
באיזה מנוע משחק עלי להשתמש אם אצטרך לעבור בין קטעי תלת מימד למשחק דו-ממדי?

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

חלק 1 מתוך 2: תחילת העבודה

  1. 1
    שקול מנוע משחק. מעטים מפתחי המשחקים שממציאים מחדש את הגלגל וכותבים מנוע משחק משלהם מאפס, במיוחד למשחק הראשון שלהם. אם אתה רוצה לצלול ישר פנימה, אך עדיין יש לך הרבה הזדמנויות לתכנות, שימוש במנוע משחק הוא אפשרות טובה. מנוע כולל בדרך כלל כלים ברמה גבוהה יותר לשינוי מודלים תלת מימדיים, אירועי סקריפט ויישומי משחק נפוצים אחרים, אך עדיין יספק שפע של הזדמנויות תכנות מעשיות.
    • דוגמאות פופולריות כבדות תכנות כוללות Unity, UDK, Unreal Engine 4 ו- CryENGINE.
  2. 2
    השתמש במסגרות ובכלים אחרים. מסגרת היא שלב מתחת למנוע המשחק, אך עדיין מספקת סט כלים וממשקי API (ממשקי תכנות יישומים) כדי לחסוך לך זמן ולייעל את פרויקטי הקידוד שלך. שקול זאת לרמה המינימלית של תוכנה לשימוש בפרויקט המשחק הראשון שלך, וגם אז אתה צריך להרגיש בנוח להציג את עצמך כמתכנת, או להתעניין בצורה עמוקה בעבודה מאחורי הקלעים על מנועי המשחק. תלוי במסגרת המדויקת ו / או במנוע המשחק בו אתה משתמש, ייתכן שתרצה לבצע חלק מהעבודה בממשקי API מיוחדים נוספים, כגון OpenGL הפופולרי ליצירת גרפיקה תלת ממדית.
    • Polycode, Turbulenz ו- MonoGame הם דוגמה למסגרות שנוצרו עם משחקים דו-ממדיים ותלת-ממדיים.
  3. 3
    נסה IDE. סביבת פיתוח משולבת היא מהדר ואוסף של קבצי מקור לשימושים כלליים המקלים על בניית פרויקטי תכנות מורכבים. IDE יהפוך את התכנות למשחק להרבה יותר נוח, במיוחד אם הוא מגיע עם דרכים מובנות לקיים אינטראקציה עם מערכות גרפיקה ושמע.
    • Visual Studio ו- Eclipse הן שתי דוגמאות, אך ישנן רבות אחרות. חפש IDE המבוסס על שפה שאתה מכיר.
    מעטים מפתחי המשחקים שממציאים מחדש את הגלגל וכותבים מנוע משחק משלהם מאפס
    מעטים מפתחי המשחקים שממציאים מחדש את הגלגל וכותבים מנוע משחק משלהם מאפס, במיוחד למשחק הראשון שלהם.
  4. 4
    למדו שפת תכנות. מרבית הכלים לעיל מבוססים בשפת תכנות פופולרית, כך שעוקבים אחר ההדרכות הנלוות יעניקו לכם התחלה נהדרת. אמנם ניתן ליצור משחק כמעט בכל שפת תכנות חזקה מספיק, אך השפות הנפוצות ביותר הן C ++ או C # לכל המכשירים, Flash ActionScript או HTML5 לדפדפנים ו- Java או Objective C למכשירים ניידים. אלה אפשרויות טובות אם אתה מכוון בסופו של דבר להתקבל לעבודה על ידי אולפן משחקים קיים, אך שפע של משחקים עצמאיים נוצרים באמצעות Python, Ruby או JavaScript.

חלק 2 מתוך 2: יצירת המשחק

  1. 1
    צור תוכנית למשחק. בשר את מושג המשחק ככל שתוכל לפני שתתחיל, כולל הז'אנר, מצב הרוח וסוג המשחק. אם תתחיל לתכנת לפני שהרעיון יהיה ברור, סביר להניח שתצטרך לקרוע ולכתוב כמות משמעותית של עבודה. זה כנראה יקרה בכל מקרה, אבל תוכנית יציבה תמזער את האירועים הללו למינימום.
    • לכל המשחקים חוץ מהניסויים יש קשת התקדמות, אז זה מקום טוב להתחיל בתכנון. ההתקדמות מתרחשת בדרך כלל באמצעות אחת או יותר מהפעולות הבאות: לגלות עוד על העלילה והדמויות, לקבל החלטות המשפיעות על סיפור העלילה, להשיג יכולות חדשות או נתונים סטטיסטיים גבוהים יותר, לחקור אזורים חדשים או לפתור חידות קשות וקשות יותר.
  2. 2
    אסוף את נכסי האמנות שלך. אסוף או צור את כל המרקמים, הספריטים, הצלילים והמודלים שתזדקק להם למשחק שלך. יש לא מעט אוספים של נכסי משחק בחינם, אז כדאי לחפש. אם אתה עושה משחק דו מימד ואין לך אמן שיעזור לך, תוכל ליצור אמנות פיקסל משלך.
  3. 3
    תסריט את המשחק שלך. התסריט אומר למנוע מה לעשות ומתי לעשות זאת. אם השתמשת במנוע קוד פתוח, רוב הסיכויים שיש לו כבר שפת סקריפטים, וכנראה הדרכות שילמדו אותך להשתמש בו. אם אתה בונה מנוע משלך יהיה עליך ליצור שפת סקריפט משלך. כך או כך, תצטרך את המרכיבים העיקריים האלה לפחות:
    • לולאה המשחק פועל ללא הרף כי המחאות עבור קלט משתמש, מעבדת את התוצאה, ומעבדת אירועים אחרים, מחשבת מה צריך להיות מוצג, ושולח זו אל כרטיס המסך. זה אמור לרוץ לפחות 30 פעמים בשנייה.
    • סקריפטים של "מאזין פעיל" הבודקים אירועים ומגיבים כאשר הם מתרחשים. לדוגמא, תסריט אחד יכול לצפות בשחקן שמתקשר עם דלת, ואז להפעיל את האנימציה ה"פתוחה "ולהפוך את פתח הדלת ללא מתנגש. תסריט אחר יכול לצפות ב hitbox נשק הפונה לדלת, ולהפעיל במקום זאת את האנימציה "לפוצץ".
    שימוש במנוע משחק הוא אפשרות טובה
    אם אתה רוצה לצלול ישר פנימה, אך עדיין יש לך הרבה הזדמנויות לתכנות, שימוש במנוע משחק הוא אפשרות טובה.
  4. 4
    צור רמות אישיות. תכנון ברמה - שעשוי לכלול "רמה 1" מילולית, אזור שהשחקן יכול לחקור, או הסיבוב הבא של משחק לחימה - יבחן כמה כישורים שאינם קשורים לתכנות. התחל ברמה פשוטה המציגה משחק טיפוסי, בהתאם להנחיה הבסיסית הזו לז'אנרים הכוללים נסיעה בסביבות:
    • צור את המתאר הבסיסי של האזור.
    • החליטו על הדרך הבסיסית בה השחקן יעבור לרוב באזור. הוסף אתגרים והטבות (פריטים) בדרך זו. החלל אותם קרוב לאנדרנלין והתרגשות, או רחוק יותר זה מזה לאווירה רגועה יותר.
    • התחל להוסיף אלמנטים גרפיים. הצב מקורות אור לאורך השביל הראשי כדי לעודד את השחקנים לעקוב אחריו, ושמור על שבילי הצד או האזורים החשובים פחות.
    • התאם את המשחק, הסגנון וההגדרה. לדוגמא, משחק אימה מותח משגשג ברצועות חקר ריקות המנוקדות בהתקפות פתע. מטח אויבים בלתי פוסק מציף את השחקן באדרנלין במקום, בעוד לחימה הדורשת תכנון טקטי מדוקדק יכולה להסיח את דעתו של השחקן מהאווירה הרגשית.
  5. 5
    בדוק את המשחק שלך. עכשיו אתה יכול לראות למה כל העבודה הקשה שלך הפכה. בדוק כל רמה בזמן שאתה מלטש אותה, ופעמים רבות אחרי שהיא "גמורה". עשה ניסיון מודע לשחק את המשחק בדרכים שלא התכוונת, כמו לשחק תחילה בתחומים קשים יותר. יתרה מכך, מצא פלסטסטרים כדי לשים עיניים חדשות למשחק, ובקש כמה שיותר משוב.
    • צפה במישהו משחק מבלי לתת לו עצות, אלא אם כן מדובר במידע הדרכה בסיסי שטרם התווסף למשחק. טעויות מתסכלות ונקודות בהן השחקן "נתקע" הם סימנים שעליך לכלול הדרכה נוספת.
    • ברגע שהמשחק (או לפחות רמה) הושלם למדי, נסו למצוא אנשים זרים או מכרים שיעזרו למבחן המשחק. חברים נוטים להיות אופטימיים יותר, וזה נהדר למתן עידוד אבל לא מועיל לחיזוי כיצד השחקנים יגיבו.
  6. 6
    בצע את הצעד הבא. אם תסיים את הפרויקט, ייתכן שתרצה לשחרר אותו בחינם או להציע אותו למכירה, אך הקפד לקרוא את התנאים וההגבלות עבור כל מנועי המשחק או התוכנה שבהם השתמשת. בין אם סיימתם את המשחק כפי שדמיינתם אותו ובין אם לאו, כדאי לכם "להכניס" כמה נכסים ורעיונות לפרויקט אחר או שאפתני יותר, או לקחת את השיעורים שלמדתם ולהתחיל מחדש.

טיפים

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

אזהרות

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

שאלות ותשובות

  • איך אוכל ליצור משחק כמו מיינקראפט?
    Minecraft משתמשת ב- OpenGL Java Backbone. בעיקרון זהו סימולטור ארגז חול וירטואלי, כך שתצטרכו לקחת בחשבון את כמות הסקריפטים המשמשים על סמך אופי המשחק ולא התפקיד.
  • ניסיתי את שני מנועי המשחק Unity ו- Unreal. אני לא יכול להחליט באיזה מהם להשתמש. אז על איזה מהם היית ממליץ לי? או שאוכל להשתמש בשניהם אם הייתי רוצה?
    אחדות ידידותית יותר ובעלת עקומת למידה נמוכה יותר ובנתה ממשק API להוריד את זמן הפיתוח. כמו כן, יש לו כמה שפות שאפשר לבנות איתן משחקים, C #, UnityScript (שיבוט ה- Javascript של Unity עצמו), Boo (שפה פחות טובה שמכוונת יותר למשתמשי Python). עם זאת, פיזיקה ותאורה אינם הטובים ביותר ולכלים מורכבים יותר עליכם לקודד בעצמכם. Unreal הוא טוב להכנת משחקים יפים עם גרפיקה יפה, יש לו עקומת למידה גבוהה יותר ורוב הכלים מוגבלים למדי אז אתה צריך להכין את זה בעצמך. לצורך תכנות הוא משתמש בשפה משלו הנקראת Unrealscript. אם אתה מתחיל, בחר באחדות כדי להכיר את פיתוח המשחק ואת לא אמיתי אם אתה מנוסה יותר.
  • מה עלי להתחיל עם קידוד של משחק אנדרואיד ב- JavaScript?
    הורד IDE שבו אתה יכול להשתמש כדי ליצור משחקים באנדרואיד. כמה דוגמאות הן Visual Studio 2015 ו- Android Studio, אך ישנן אפשרויות רבות אחרות.
  • באיזה מנוע משחק עלי להשתמש אם אצטרך לעבור בין קטעי תלת מימד למשחק דו-ממדי?
    כזו שיש לה יכולות תלת ממדיות, כמו Unreal או Unity. אתה לא צריך לתכנת סתם משחק תלת ממדי בזמן שאתה נמצא באחדות או לא אמיתי.
  • היכן מקום טוב ללמוד שפת תכנית?
    אתרים, כמו Codecademy, מציעים הדרכות פשוטות להבנה; עם זאת, פשוט יותר ללמוד שפה חדשה ולא להתחיל. Codecademy יכולה להציע את זה. הדרכות מיועדות להבנה של כולם.
  • אילו אתרים עוזרים לי ליצור גרפיקה של פיקסל?
    ישנן אפשרויות רבות לאמנות פיקסל מקסימלית, החל בחינם וכלה בתשלום. הטוב ביותר לדעתי, והוא בחינם, יהיה pixilart.com יש בו מגוון נפלא של כלים להכנת אמנות, ודף אנימציה להכנת אנימציות!
  • האם אוכל ליצור משחקים טובים יותר, כמו משחקי תלת מימד?
    עם מנוע משחק תואם תלת-ממדי, כמו Unity & Unreal, אתה יכול.
  • באילו אתרים יש להשתמש שלא דורשים קידוד?
    קשה מאוד למצוא מנועי משחק שאינם דורשים תכנות, אך ישנם כמה מנועי משחק שנותנים לך אפשרות לתכנת או לא לתכנת. מנוע משחק ניצוץ הוא אחד מהם, אך כמה ממנועי המשחק הטובים ביותר, כמו יוניטי ואונריאל, דורשים תכנות.
  • איך אוכל ליצור דמות תלת ממדית?
    אתה יכול להשתמש באיזה כלי דוגמנות תלת-ממדי שאתה רוצה, אבל אני אמליץ בחום על בלנדר. בלנדר היא תוכנת דוגמנות תלת ממדית בחינם. אתה זקוק גם לתוכנית ציור כדי ליצור טקסטורות, אלא אם כן אתה מצלם ומשתמש בהם כמרקמים. אני ממליץ בחום על Gimp לטקסטורות, שהוא גם קוד פתוח וחינמי. אם אתה מתקשה בבלנדר, יש הרבה מדריכים לשימוש בו ב- YouTube. בלנדר גורו מועיל במיוחד.
  • כיצד אוכל למכור את המשחק שלי לחברה?
    צרו קשר עם מחלקת קשרי השותפים של חברה שמוכרת משחקים דומים וביצעו עסקה. הם עשויים לדחות את המשחק שלך, לתת הצעות כיצד זה יכול להתאים טוב יותר לקהל החברה, או להציע לך אפשרויות בלעדיות או לא בלעדיות להצגת המשחק. היו מקצועיים, אך היו עקשניים מכיוון שלחברות יש מאות הגשות בכל עת עליהן לנפות.
שאלות ללא מענה
  • אילו אפליקציות יכולות לעזור לי בתכנות משחק וידאו?

תגובות (5)

  • marybell
    עזר לי להכיר ולהבין את תהליך יצירת המשחק.
  • brycengreen
    מידע קל ומהיר כיצד לבנות משחק משלך. ככל שישיר יותר ולעניין יותר טוב. מכה!
  • schusterbrice
    חשבתי שפיתוח משחק וידאו היה קשה, אבל מאמר זה גרם לי להרגיש בטוח יותר לפתח את עצמי.
  • allenamber
    לא היה לי מושג לגבי פיתוח משחקים, אך מאמר זה נתן לי מידע רב.
  • bkreiger
    אתר יצרני המשחק היה מגניב וטוב.
FacebookTwitterInstagramPinterestLinkedInGoogle+YoutubeRedditDribbbleBehanceGithubCodePenWhatsappEmail