میشه راهنمای بازی سازی رو بگید؟
Printable View
میشه راهنمای بازی سازی رو بگید؟
دوستان یک چیز رو بدونید فیزیک رو خودتون باید تویه بازی معرفی کنید، یعنی این که با قوانین ریاظی برای بازی شرح بدید که چجوری یک توپ توسط جاذبه به سمت زمین کشیده میشه. منظورم اینه که تویه برنامه نویسی که نمیشه فرمولهای فیزیک رو استفاده کرد، شما باید از ریاضی استفاده کنید.
در مورد این که اون درس گرافیک به درد میخوره یا نه باید بگم که مطمئنا به دردتون میخوره ولی نمی تونید با اون بازی بسازید. شما برای ساخت بازی نیاز دارید که یک کاراکتر سه بعی بسازید، خوب باید با استفاده از یک برنامه سه بعدی سازی این کاراکتر رو بسازید. برای دیوار هم نیاز دارید که آجرها رو به صورت واقعی نمایش بدید، شما که نمیتونید آجرها رو تک تم با برنامه گرافیکی بازید، پس میاین و یک عکس روی اون شکل سه بعدی به نام دیوار میذارید که به اصطلاح به این عکس تکچر میگن. این تکسچر رو هم به ویله عکاسی و ویاریش اون عکس با برنامه هایی مثل فوتوشاپ میسازن.
بله خود برنامه نویس میاد و زبان میسازه، البته این برای اسکریپت مخصوص خودشون استفاده میشه.نقل قول:
یه سوال دیگه چطوری زبان برنامه نویسی روتوی انجین قرار میدن یعنی خودشون زبان می سازن یا از زبانهای اماده استفاده می کنن؟
مثلا برنامه نویس برای انجین شرح میده که کاربر با نوشتن کلمه " برو " به شما دستور میده که این جسم در مسیر y به اندازه 2 متر حرکت کنه.
البته بگم که به این راحتی ها هم نیست ها، کامپیوتر زبان ماشین رو میفهمه و زبان ماشین هم تماما باید روشن و واضح باشه. ولی زبان انسان برای ماشین اصلا واضح نیست، چون که انسان در زبانش از احساس استفاده میکنه که کامپیوتر هم چیزی نمی فهمه.
اگر هم برنامه نویس بخواد که از زبان c++ در انجینش استفاده کنه میاد و یه کامپایلر مخصوص انجینش مینویسه. و شما علاوه بر استفاده از زبان C++ باید به دستورهایی که اون کامپایلر میتونه به زبان ماشین ترجمه کنه هم آگاه باشید.
خوب c++ زبان قوی هستش و دایرکس ویندوز هم از این زبان استفاده میکنه. در ضمن تحت داس بودن و یا نبودن این زبان فرقی و اصل کار کامپایلر مورد استفاده شماست نه محیط کاربری !نقل قول:
منظورم اينه كه كدوم زبان برنامه نويسي بهتره؟ C++ كه تحت داس هست، اون چطوري مياد و بازي و يا اينجاين ميسازه؟
کامپیلر هستش که میاد و زبان نوشتاری شما رو به زبان ماشین یعنی 01 تبدیل میکنه و برای کامپیوتر قابل فهمش میکنه. در ضمن بگم که تا وقتی که این زبان رو بلد نباشید من نمی تونم بیام و برای شما توضیح بدم که چجوری میشه انجین نوشت. ( چون خودم برنامه نویس حرفه ای نیستم )
در ضمن اگر شما حرفه ای باشید باید از دایرکس و یا OpenGL برای ساخت انجین استفاده کنید. این دو به اصطلاح Base برنامه نویسی برای ویندوز و سیستم عامل ها هستند. این دو رابطی هستند برای برقراری ارتباط میان سخت افزار و نرم افزرا.
البته قابل ذکر هم هست که شما خودتون هم میتونید این رابطه رو مستقیما ایجاد کنید. ولی خیلی خیلی سخته.
برای ساخت انجین اول از همه باید برنامه c++ رو بلد باشید. بعد برید و برنامه نویسی تحت دایرکس و OpenGL رو بخونید و در آخر هم باید برید و برنامه نویسی تحت سیستم عاملها مثل ویندوز XP و Vista و ... رو یاد بگیرید.
کار هر کس نیست خرمن کوفتن گاو نر میخواهد و مرد کهن
( گاوش رو که هست، فقط اگر بتونید مرد مورد نظر بشید خوبه )
ایا دایرکس و OpemGL رو تو دانشگاه هم درس میدن؟
متاسفانه خیر، این دو تا بیس رو باید خودتون یاد بگیرید.نقل قول:
ایا دایرکس و OpenGL رو تو دانشگاه هم درس میدن؟
شما اگر که برنامه نویسی c++ رو بلد باشید با خریدن یکی از آموزش این دوتا که به صورت کتاب تویه بازار وجود داره، میتونید که یک انجین بسازید.
البته بگم که ساخت انجین خیلی سخته، وبهتون پیشنهاد میکنم که اول با ساخت انجینها دو بعدی شروع کنید، گرچه در این موتورها گرافیک حرف اول رو میزنه. اگ تونستم و وقتی کردم، چند تا سورس از این بازیها دو بعدی میذارم تا بتونید اونها رو ببینید و ملاحظه کنید.
یکی از دوستانم توسنته به همراه یکی دیگر از دوستانش یک بازی بیلیارد ساده دوبعدی بسازه.
من خودم هنوز ندیدمش ولی اگر توسنته باشن که تویه بازیشون فیزیک رو رعایت کرده باشن جای تحسین داره. اگر توسنتم و اجازه دان سورسش رو براتون آپ میکنم تا که ازش استفاده کنید.
خیلی ممنون دوست عزیز از اطلاعات خوبتون اگه سورسها رو هم بذارید عالی می شه
جان ؟ :20:نقل قول:
ار توضيحات شما ممنون.
c++ خيلي سخته نه؟ من اصلا هيچ كلاس آموزش c++ رو در اطراف خونمون نميشناسم چقدر بد!؟
يه سئوال:
اين چند وقتيه كه برام سئوال شده كه DirectX محيط برنامه نويسي داره؟ يعني يه محيطي داره براي برنامه نويسي كه توش مثلا نرم افزارهاي 3D رو ميسازند؟! يا كه نه منظور از برنامه نويسي تحت DirectX اينه كه از SDK هاي اون در برنامه هاي ديگه مثل Visual Basic استفاده ميشه؟! (البته من SDK دايركت ايكس براي ويژوال بيسيك رو دارم).نقل قول:
برای ساخت انجین اول از همه باید برنامه c++ رو بلد باشید. بعد برید و برنامه نویسی تحت دایرکس و OpenGL رو بخونید و در آخر هم باید برید و برنامه نویسی تحت سیستم عاملها مثل ویندوز XP و Vista و ... رو یاد بگیرید.
شما ویژوال بیسیک رو چطور یاد گرفتید ؟؟ کلاس رفتید ؟
اگر ویژوال رو بلد باشید، یاد گیری C++ اون قدر ها هم سخت نیست. تنها چیزی که لازمه وقت و پشتکاره. ( که به شخصه ندارم :31: )
با کتابها هم میشه یاد گرفت.
در جواب سوالتون هم بگم که بله درست میگید، از Sdk دایرکس استفاده میشه. البته دایرکس خیلی خیلی بیس گنده ای داره و تنها یه قسمتش مربوط به بازی هستش. که برای همون قسمت هم کتاب هست و خوب هم آموزش میده. :27:
خيلي ممنون.نقل قول:
من VB6 رو كلاس رفتم(كه البته به من خيلي از چيزها رو ياد نداد) بعد هم متوجه شدم كه يك ورژن ديگه از VB اومده كه اسمش هم .NET هست. نشستيم پشت اين دات نت و كار كرديم تا يكم چيز حاليم شد.
ولي ميگم اگر من برم و C++ رو ياد بگيرم، آيا از دايركت ايكس براي C++ اس دي كا(SDK) يي هست كه بتونيم از دايركت ايكس در اون محيط استفاده كنم؟ يا كه نه اين SDK فقط براي Microsoft Visual Studio هست؟ اگر اين طوري باشه يعني فقط براي Visual Studio باشه كه با هم جور در نمياد چون شما و خيلي هاي ديگه ميگيد كه Visual Basic زبان خوبي براي كارهاي تري دي نيست. پس ميشه يه زبان از بين مجموعه ي Visual Studio برام معرفي كني كه بتونه جاي خالي C++ رو پر كنه؟!
عزیزم زبان C++ هم یکی از چندین زبان ویژوال هستش و اصلا نگرانش نباش. [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
در ضمن قابل ذکر هست که بگم دایرکس 9 از نسخه ویژوال 6 به بعد رو ساپورت میکنه. یعنی یا 6 و یا .net !!