# Native Code > برنامه نویسی با C > برنامه نویسی با زبان C و ++C >  C++‎ برای ساخت بازی

## smspersia

سلام

میخواستم راجب برای ساخت بازی چندتا سوال بپرسم ؟
1-برای ساخت بازی سه بعدی کمپایلر ، خواسی می خواد
2- برای ساخت بازی چه قسمتی از C++‎ مهم تره  

ممون میشم اگه کمکم کنید

----------


## kitten

سلام
1- نه دوست عزیز با همین کامپایلر های معمولی سی پلاس پلاس مثل vs یا mingw برا ویندوز و gcc برا لینوکس می تونید بازی نویسی انچام بدید
2- برای شروع کار کلاس ها و ارث بری خیلی مهم هستند البته باید بتونید به خوبی با بردارها هم کار کنید و مفاهیم ریاضی بردارها را هم بلد باشید ولی اگه کلاس ها ، شی گرایی و ارث برای را بلد نیستید پیشنهاد م یکنم اول برید و این ها را یاد بگیرید و بعد بیایید به فکر بازی نویسی باشید
در ضمن برای نوشتن بازی باید از موتورهای تولید بازی مثل ogre3d یا directx استفاده کرد

----------


## voiceoffox

سلام بر همه ...........................................به نظر من زبون های برنامه نویسی رو برای ساختن بازی درست نکردن (این نظر حاصل تجربه خودمه! :متفکر: ) و برای ساختن یک بازی واقعی باید نرم افزار خاص خودش استفاده کرد... :لبخند:  اما نباید فراموش کرد که دونستن زبون های کاربردی مثل c برای ساخت بازی با موتور بازی ساز کاملا ضروریه :بامزه:

----------


## Salar Ashgi

> به نظر من زبون های برنامه نویسی رو برای ساختن بازی درست نکردن


اتفاقا ...! اگر شما یک جستجویی در وب انجام بدهید ، متوجه خواهید شد که اکثر بازیهای بزرگ را با ++C 
طراحی کرده اند ؛ حالا چه با OpenGL یا Library های استفاده شده از Qt و ...



> برای ساختن یک بازی واقعی باید نرم افزار خاص خودش استفاده کرد...


گفته تان وقعا بدور از منطق است ؛ چون مگر برای طراحی و نوشتن یک بازی ، نرم افزار وجود دارد ؟!
همه اش یک پروژه قوی برنامه نویسی است !

----------


## Mahmood_M

بهتر بود این سئوالات رو در بخش ساخت بازیهای کامپیوتری مطرح می کردید ، ولی به هر حال ، برای ساخت یک بازی باید موارد زیر دست به دست هم بدن ! :
1. یک داستان مناسب برای بازی
2. طراحی شخصیتهای بازی و یا دموهای اون توسط نرم افزارهایی مثل Maya یا 3D Studio Max یا Cinema 4D یا ... ، البته ممکنه از هر کدوم از این نرم افزارها برای ساخت قسمتی از انیمیشن ها استفاده بشه ...
3. استفاده از نرم افزارهای ساخت موزیک برای ساخت آهنگ و ملودی های درون بازی
4. استفاده از یک زبان برنامه نویسی برای ترکیب قسمتهای بالا
معمولا زبانهای برنامه نویسی کتابخانه هایی برای کارهای گرافیکی ارایه می کنند ، مهمترین کتابخانه های گرافیکی در ویندوز DirectX و OpenGL هستند ، که البته OpenGL در لینوکس هم پشتیبانی میشه ، ولی نکته ی مهم اینه که استفاده از این کتابخانه ها به زبان برنامه نویسی ارتباط زیادی نداره ، هر زبانی که کتابخانه ها و منابع بیشتری برای کار با DirectX یا OpenGL داشته باشه ، برای ساخت بازی مناسب تر هست ، چون معمولا برای زبان ++C کتابخانه های زیادی برای کار با DirectX و OpenGL ارایه شده و همچنین منابع یادگیری خیلی زیادتری نسبت به سایر زبانها برای این زبان وجود داره ، این زبان تقریبا به زبان اول برای اکثر توسعه دهنده های بازی تبدیل شده ...
برای راحتی کار برنامه نویسان بازیهای کامپیوتری ، شرکتهایی ( یا کسانی ! ) اومدن و مجموعه ای از دستورات پرکاربرد و اصلی DirectX یا OpenGL رو در ابزاری به نام موتور بازی یا Game Engine گردآوری کردن ، برنامه نویسهای بازیهای کامپیوتری به جای اینکه چندین خط کدنویسی کنند برای مثلا لود یک کارکتر در صفحه ، میان از موتورهای بازی استفاده می کنند که این کار رو براشون با اجرای چند متد سازه انجام میده ...
در حال حاضر موتورها چند دسته شدن و برای هر قسمت از DirectX یا OpenGL یک موتور مخصوص ارایه میشه ، مثلا موتور گرافیکی یا موتور کار با صدا یا موتور مربوط به حرکات و فیزیک بازی و ...
موتور بازی هم شامل کتابخانه هایی مثلا به صورت چند فایل DLL و Header و فایل سورس و ... هست که باید اونها رو درون برنامتون لود و از توابع و دستورات درونشون استفاده کنید ...

برخی از Game Engine ها هم برای خودشون نرم افزار مخصوص دارن ، مثل Game Maker و ...

پس به طور کلی ، شما با زبان برنامه نویسی به موتور بازی دستور می دید ، اون دستورات رو به DirectX یا OpenGL منتقل میکنه و DirectX هم به ویندوز میگه باید سخت افزار گرافیکی رو مجاب به رسم یا ... کنه !

توی شرکتهای بزرگ بازی سازی معمولا برای هر قسمت یک متخصص وجود داره ، مثلا یک داستان نویس ، یک آهنگ ساز ، یک گرافیست ، یک برنامه نویس و ... ، که البته هر کدوم اینها چند قسمت میشن و معمولا تعداد سازندگان یک بازی بزرگ مثلا Call of Duty ! بیشتر از 30 یا 40 نفر هستند ، البته این معنیش این نیست که برای شروع کار بازی سازی باید حتما تعداد افراد زیاد باشه ، معمولا یک شخص اگر مهارت کافی داشته باشه می تونه بازیهای کوچک رو راحت بسازه ...
علاوه بر این شرکتهای بزرگ معمولا موتورهای ساخت خودشون رو دارند و از اونها استفاده می کنند ...

اگر اطلاعات بیشتری خواستید بهتره در بخش ساخت بازیهای کامپیوتری بپرسید ...

موفق باشید ...

----------


## omidd1315

واقعا من از توضیحات *Mahmood_N بهره زیای بردم امیوارم موفباشند.

*

----------

