רוצה להתחיל ללמוד שפה אבל לא יודע איזה :O - עמוד 2 - תכנות - HWzone פורומים
עבור לתוכן
  • צור חשבון

רוצה להתחיל ללמוד שפה אבל לא יודע איזה :O


shay33

Recommended Posts

C++. תתחיל ללמוד את השפה ואת הקנספטים שלה. אחר כך תלמד DX.

שים לב שכדי לפתח משחקים בתלת מימד אתה צריך לדעת הרבה הרבה הרבה הרבה הרבה הרבה הרבה הרבה הרבה הרבה הרבה הרבה מתמטיקה.

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

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

  • תגובות 36
  • נוצר
  • תגובה אחרונה

משתתפים בולטים בדיון

משתתפים בולטים בדיון

C++. תתחיל ללמוד את השפה ואת הקנספטים שלה. אחר כך תלמד DX.

שים לב שכדי לפתח משחקים בתלת מימד אתה צריך לדעת הרבה הרבה הרבה הרבה הרבה הרבה הרבה הרבה הרבה הרבה הרבה הרבה מתמטיקה.

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

אין כבר מה ללמוד C/C++ בשביל הדבר היחידי שהולך עכשיו זה managed ובשביל זה צריך לדעת C Sharp.

בכל אופן חבר שלך עשה משחק עם שימוש בDirectDraw זה לא ממש אותו דבר כמו Direct3D הAPI שונה לגמרי, וזה ממש לא נכון שכדי לתכנת בתלת מיימד צריך לדעת המון מתמטיקה, כן בהמשך תצתרך את זה, אבל גם כדי לדעת לתכנת משהו יותר מprintf צריך המון מתתמטיקה, בתכנות 3D אין הרבה יותר שימוש במתמטיקה מאשר בתכנות class a רגיל.

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

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

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

http://www.python.org/

http://pyopengl.sourceforge.net/

למשל, תסתכל על הקוד פה בשביל לסובב קובייה:

http://nehe.gamedev.net/data/lessons/lesson.asp?lesson=05

(תוריד את הקוד שם לשפה הזו).

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

מדוע צריך לדעת הרבה מתמטיקה? במה זה מתבטא? אם זה בקשר לזוויות והפרמטים של תזוזת האובייקטים אז לא ממש מדובר במתמטיקה "טהורה"

אשמח אם תרחיבו בנושא בבקשה :)

sdfzxc, האתר שהבאתה שמראה את מסובבים קובייה.. באיזו שפה זו? ++C?

אשמח אם תרחיבו על ההיבט המתמטי בשפות רלוונטיות (++C \ #C \ Python..)

Thanks

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

מדוע צריך לדעת הרבה מתמטיקה? במה זה מתבטא? אם זה בקשר לזוויות והפרמטים של תזוזת האובייקטים אז לא ממש מדובר במתמטיקה "טהורה"

אשמח אם תרחיבו בנושא בבקשה :)

sdfzxc, האתר שהבאתה שמראה את מסובבים קובייה.. באיזו שפה זו? ++C?

אשמח אם תרחיבו על ההיבט המתמטי בשפות רלוונטיות (++C \ #C \ Python..)

Thanks

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

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

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

תגידו, רק בן אדם אחד פה שם לב שהוא כתב שהוא 'רוצה להתפתח לתלת מימד'? לא קראתם את ההודעה, או שבכוונה התעלמתם מהמשפט הזה? שפת תכנות אנשים, שפת תכנות!

לדעתי כדאי לו ללמוד ספרדית.

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

נראה לי בכל מקרה כדאי לך להתחיל ללמוד משהו בסיסי סגנון C/C++ .

אחר כך תוכל לקרוא איזה ספר לתלת מימד לנ"ל או לויזואל בייסיק.

אגב צריך גם קצת מתמטיקה כדי לעבור מבסיס עשרוני להקסהדצימלי(16) בשפות נמוכות.

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

אלגברה ליניארית(בין היתר) זה קצת מתמטיקה.

אה.. אז אתם מתכוונים למתמטיקה של הגרפים (ככה אני קורא לזה..) שוב.. זאת לא המתמטיקה "הטהורה" ואני (אולי לא רק?) דווקא אוהב להתעסק עם הגרפים הללו.. הם הנושא היותר חביב במתמטיקה לדעתי :cool2:

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

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

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

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

ב- הסתכלתי באתר אבל לא ראיתי את הסוף שבו מופיעים הורדות של הקוד בשפות מרובות. מה לדעתכם השפה הכי מתאימה לקוד שכזה (ולמשחקים בכלל) ? ((++C)) ?

Thanks :xyxthumbs:

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

אה.. אז אתם מתכוונים למתמטיקה של הגרפים (ככה אני קורא לזה..) שוב.. זאת לא המתמטיקה "הטהורה" ואני (אולי לא רק?) דווקא אוהב להתעסק עם הגרפים הללו.. הם הנושא היותר חביב במתמטיקה לדעתי :cool2:

אtלגברה ליניארית בכלל לא קשור לגרפים. זה עוסק יותר במרחבים(בעלי N או 17 מימדים) שדות, חברויות למיניהם ועוד הרבה דברים מעצבנים למיניהם.

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

קודם תתחיל ללמוד שפת תכנות.

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

ראשית תודה על ההסבר.

חשבתי שהתכוונתה למשהו אחר שדיברתה על ליניארית.

שפת תכנות כבר התחלתי ללמוד (C >> Cpp) אבל עוד לא הגעתי לרמה שבה אני משתמש במתמטיקה מסוג כזה בתוכנית, למעשה אני מרגיש דיי רחוק מזה..

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

יש יתרונות משמעותיים?

ומאיפה ואיך לומדים ליישם את המתמטיקה בקוד?

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

לגבי המתמטיקה:

גרפיקה תלת מימדית (מהסוג שמתעסקים בו ב-PC) היא דווקא אחד הנושאים שהמתמטיקה שבו היא ברמה נמוכה יחסית. האלגברה הרלוונטית היא לא מסובכת מדי.

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

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

לגבי שפת תכנות:

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

אבל בשביל להתחיל עם אתה יכול עקרונית בכל שפה. אפילו VB או פסקל.

לגבי יישום מתמטיקה בקוד:

קודם אתה צריך ללמוד איזו מתמטיקה ליישם.

אחרי אתה צריך ללמוד איך ליישם אותה בקוד.

יש הרבה מדריכים ברשת, לדוגמא NEHE (שמשתמש ב-OpenGL מה שיחסוך לך המון עבודה).

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

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

ארכיון

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


×
  • צור חדש...