ساخت انجین بازی Game engine

saalek110

Well-Known Member
تفاوت های انجین خودتان و استفاده از بازی ساز
اول کدنویسی
یکی از مهم ترین تفاوتها این است که وقتی با یک زبان برنامه نویسی مثل سی کار می کنید دستتان باز است هر کدی بنویسید.
ولی در قسمت opengl یا directx هم باید بلد باشید.

در بازی ساز نیازی نیست opengl بلد باشید ولی اجباری است از کدنویسی بازی ساز استفاده کنید.
 
آخرین ویرایش:

saalek110

Well-Known Member
دوم امکانات
یک لیستی از امکانات آماده یونیتی نام می برم:
اول Terrain f3.jpg
دوم جاذبه
سوم برخورد
چهارم قابلیت ورود آبجکتهای آماده
از یک سری امکانات پایه ای تر مثل نورپردازی و سایه و تکسچر چشم پوشی کردم. چون ممکن است با زحمت کم بتوانید با opengl بسازید.

چون تجربه من هم در محیط زبان سی و هم در بازی سازها کم است بیشتر از این وارد این بحث نمی شوم. ولی این مقدار را لازم دانستم بنویسم.
 
آخرین ویرایش:

saalek110

Well-Known Member
وسعت امکانات بازی ساز:
محدودیت کدنویسی بسته به بازی سازش هم دارد. باید دید یونیتی یا یک بازی ساز دیگه گستردگی پوشش آن چقدر است.

زیاد این مثالی که می زنم به موضوع نزدیک نیست ولی خوب است بیان شود.
مقایسه سی پلاس و سی شارپ. یا کلا دات نت فریم ورکی ها با زبانهای کهنی مثل سی و پاسکال. کلمه کهن را به این جهت استفاده کردم که فقط به قدرت زبان توجه نکنیم و به ذخایر موجود کدها در اینترنت هم توجه کنیم. البته جاوا هم قدیمی است و سی شارپ هم به سرعت صاحب اینرتنت خاص خود می شود.
من در حدی تجربه ندارم که سی را با جاوا و سی شارپ مقایسه کنم ولی منظورم از این مثال این بود که ممکن است کدهای یونیتی جوابگوی تمامی نیازهای شما باشد.

کلا بستگی به این دارد که شما در چه سطحی بخواهید کار کنید.
شنیده اید خیلی بازی ها بازی ساز مخصوص خود را دارند. و دلایل مختلفی برای بازی ساز اختصاصی داشتن آنها نام برده شده که وارد بحثش نمی شوم.
پس وسعت کار و اهمیت کار مهم است. و ساختن بازی ساز توسط هر کس که باشد هزینه دارد چه شرکت بزرگ بخواهد بسازد چه من و شما و از طرفی بازی سازها هم شرایط و قابلیت ها و مزایا و معایب خود را دارند.

حالا این بحث چه فایده ای داشت؟
منظورم اینه ممکنه یک بازی ساز بتواند نیازهای شما را کامل برآورده کند. ولی بستگی دارد نیاز شما چه باشد.
منظور من بیشتر بازی سازهای تفننی است نه بازی سازهایی که قصد فروش و پول درآوردن را دارند.
 

saalek110

Well-Known Member
شباهت های محیط های کاری گرافیکی:
منظورم از این بحث این است که یک محیطی را شروع کنید چون خیلی تجربیات در محیط های دیگر قابل استفاده است. محیط منظورم نرم افزارهای گرافیکی مثل بازی سازهاست.

من خودم برنامه نویس بودم و گرافیک کار نبودم.
اولین تجربه ام در برخورد با مسایل گرافیکی در Activeworlds بود. آنجا کار خیلی ساده شده بود تا همه بتوانند کار کنند. ولی با مفاهیم گرافیکی کم کم آشنا شدم.
بعدا در محیط های دیگر دیدم همان چیزها به شکل های دیگر باز تکرار می شود. خیلی از مفاهیمی که در Activeworlds آشنا شدم همه جا به کارم آمد. یعنی از همان جا وارد دنیای گرافیک شدم. در آنجا افراد ساخت و ساز را به هم یاد می دادند. و کار خیلی ساده شده بود.

حتی اگر بخواهید بازی ساز خاص خود را بسازید بهتر است چند تا بازی ساز را ببینید چون خیلی چیزها دستتان می آید.

 

saalek110

Well-Known Member
من هر چیزی در این مورد می دانستم نوشتم.
دوستان شما هم از تجربیات خود بنویسید.
 
آخرین ویرایش:

saalek110

Well-Known Member
انواع موتورهای بازی
1- موتورهای سطح پایین (Roll – your- own Game Engine)

به‌رغم هزینه بالا، هنوز هم بسیاری از شرکت‌ها و طراحان مستقل بازی‌های کامپیوتری موتورهایی را ترجیح می‌دهند که عملاً بیشتر کارهای برنامه‌نویسی آن را خودشان انجام می‌دهند. موتورهای سطح پایین، با بهره‌گیری از گروه نرم افزارهایی مانند XNA، DirectX، Open GL و SDLهای ویندوز و لینوکس SDL (سرنام Simple Direct media Layer)، این امکان را در اختیار کاربران خود قرار می‌دهند که بتوانند به دلخواه خود نسبت به ویرایش و اعمال تغییرات دلخواه حتی در سطوح کلان اقدام کنند.

2- موتورهای سطح میانی (Mostly – Ready Game Engines)
بیشتر موتورهای بازی معروف به این گروه تعلق دارند. این گروه مجموعه امکاناتی را در اختیار کاربر قرار می‌دهند تا نسبت به ساخت بازی مورد نظر خود اقدام کنند. اعمالی مانند رندر کردن، تعریف خصوصیات فیزیکی محیط بازی ( برخورد‌ها و… ) و امثال آن‌ها کاملاً در این گروه از پیش تعریف شده هستند و نیاز به برنامه نویسی مجزا برای آن‌ها نیست. موتورهای معروفی مانند Unreal و Gamebryo از این گروه هستند. موتورهایی که به مقدار کمی برنامه‌نویسی نیاز دارند و برای ساخت یک بازی کامل، بر‌خلاف گروه نخست (سطح پایین)، به برنامه‌نویسی و کدنویسی فراوان نیاز ندارند و مراحل کار به نسبت ساده‌تر و کمتری دارند. به همین دلیل، به آن‌ها گروه موتورهای بازی «تقریباً آماده» می‌گویند.بسیاری از این موتورها نتیجه کار ده‌ها نفر برای صدها ساعت است و محصول نهایی تولید شده توسط آن‌ها به مراتب از گروه نخست با کیفیت‌تر است. هر چند که شاید این موتورها توانایی انجام تمام آن چیزهایی را که طراح در ذهن دارد، نداشته باشند، اما صرفه‌جویی در زمان و هزینه، در عین حفظ کیفیت محصول نهایی، این گروه را به پرطرفدارترین گروه موتورهای بازی در بین طراحان و شرکت‌های بازی‌سازی تبدیل کرده است.


3 – موتورهای سطح بالا (Point & Click Game Engines)
این گروه از موتورهای بازی که روز به روز بیشتر متداول می‌شوند، مجموعه کاملی از ابزارها و امکانات مورد نیاز را برای خلق یک بازی در اختیار طراحان و سازندگان قرار می‌دهند و طراح فقط با انتخاب ابزار مناسب و جای‌گذاری آن در محل دلخواه، می‌تواند نسبت به طراحی بازی اقدام کند. از جمله این موتورها می‌توان به نرم‌افزارهای Game Maker، Torque Game Builder و Unity3d اشاره کرد. این نرم‌افزارها حداکثر تعامل ممکن را با کاربر دارند و برای کار با آن‌ها به حداقل دانش کد نویسی نیاز است. البته این به آن معنا نیست که دانش برنامه نویسی برای کار با آن‌ها مفید نیست، اما وجود آن چندان ضروری هم نیست. مشکل اصلی موتورهای این گروه، محدودیت بسیار زیاد آن‌ها است. بیشتر این موتورها فقط در ساخت یک یا دو سبک از بازی‌ها کارایی دارند ( عمدتاً بازی‌های اکشن و راهبردی). البته این موضوع را نیز در نظر داشته باشید که همچنان می‌توان با استفاده از همین ابزارهای از پیش تعریف شده و صد البته با مقدار فراوانی خلاقیت، نسبت به ساخت و طراحی بازی‌های جدید و پر از نوآوری اقدام کرد. طی چند سال گذشته، انجام طراحی و ساخت یک موتور بازی توسط شرکت‌های بزرگ نرم‌افزاری، رشد چشم‌گیری داشته است. بسیاری از شرکت‌های بزرگ، صرفاً و به‌صورت کاملاً تخصصی روی این موضوع تمرکز کرده‌اند و در واقع محصول تولیدی این شرکت‌ها، موتورهایی است که به شرکت‌های سازنده بازی فروخته می‌شوند. قیمت مناسب و صرفه‌جویی در زمان طراحی و ارائه محصول، باعث شده بیشتر شرکت‌های صاحب نام در طراحی بازی، این میان افزارها را خریداری كرده و با کمک آن‌ها محصول نهایی خود را تولید کنند.

موتورهای بازی به چند دسته تقسیم می شوند که هر کدام می تواند قسمتی از روند توسعه را برعهده گیرد، بخشهای مختلف موتور بازی شامل موتور گرافیک، موتور صدا موتور فیزیک، هوش مصنوعی و … می باشد. بعضی از موتورها شامل ترکیبی از موارد فوق هستند که به این موتورها به اصطلاح موتورهای کامل گفته می شود؛ زیرا تمامی ابزارها جهت توسعه بازی را داراست.

موتور بازی سازی (Game Engine) چیست؟ و چه کاربردی دارد؟ | فول کده
 

saalek110

Well-Known Member
فیلم زیر نشان می دهد چطور به بازی خود چیزهایی را اضافه کنیم. من کل فیلم را نگاه کردم. احتمالا با همین آموزش بشه بازی کامل تیراندازی را ساخت.
البته انگلیسی است ولی با دیدن مراحل کار میشه احتمالا آن کارها را انجام داد. البته من تست نکردم.
UDK: How to Add Player Starts, PathNodes, Weapons, Items, Vehicles & JumpPads [Tutorial #15]
به آپارات هم منتقل کردم:
UDK: How to Add Player Starts, PathNodes, Weapons, Items, Vehicles JumpPads
 
آخرین ویرایش:

saalek110

Well-Known Member
فیلم ساخت احجام هندسی در Udk
فیلم را خودم ساختم(فیلمی در پست بعد معرفی شده که از خیلی جهات از فیلم من بهتر است)

لینک آپارات:
ساختن احجام هندسی در Udk
فیلم فقط 1 دقیقه و 14 ثانیه است.

لینک یوتیوب:

dd5.jpg چون فیلم بی صدا است نشد خوب آموزش بدهم. دو دکمه ای که در عکس می بینید سمت چپی برای ساختن شکل هندسی است و سمت راست برای منها کردن قسمتی از شکل موجود.

بحث کلی فیلم اینه که اول یک قالب از حجم مورد نظر به شکل خطوط و نقاط داریم و بعد با زدن آن دکمه سمت چپی که در انتهای فیلم زده شد یا زدن کنترل A شکل نهایی ساخته می شود.
آن دکمه سیاه که می خواستم انتهای فیلم بزنم ولی ناتمام ماند دکمه کانتنت بروسر است. می خواستم به شکل تکسچر بدهم. خودتان انجام دهید. وقتی پنجره باز شد متریال ها را انتخاب کنید و متریال مناسب را روی حجم ساخته شده بکشید.

کیفیت فیلم خوب از آب درنیامد. یعنی بیننده خوب نفهمید چی شد. بعدا فیلم های بهتری می سازم. اولین فیلمم بود خوب بلد نبودم.

اگر Udk مثل Unity خراب نشه قصد دارم با Udk ادامه بدهم.

------------------------------
این یک فیلم انگلیسی در آپارات است. توضیحات بیشتری داده. یک اتاق ساخته.
udk-3
 
آخرین ویرایش:

saalek110

Well-Known Member
آموزش فارسی آپارات زیر از آموزش من بهتر است. گوینده فارسی صحبت می کند و خوب توضیح می دهد. نماها را توضیح داده و براش را. براش همان قالبی است که احجام از آن ساخته می شوند.

آموزش بازی سازی-قسمت دوم
آموزش بازی سازی-قسمت دوم


با این دو فیلم تا حدودی ساخت احجام را یاد گرفتید.حالا می توانید محیط های دلخواه خود را بسازید.

images.jpg
 
آخرین ویرایش:

saalek110

Well-Known Member
سلام. بعد از چند سال غیبت چند ماهی اینجا مقداری فعال بودم. ولی باید به برنامه های دیگری برسم. بنابراین مدتی از کامپیوتر دور خواهم شد تا برنامه های دیگر را راه بیاندازم. :)
 

saalek110

Well-Known Member
این یک بازی ساز است که بازی برای روی سایت می سازد. مجانی هم هست.
a11.jpg
http://www.tululoo.com

نمونه پروژه داخلش این است که روی سایت خودم آپلود کردم. می توانید همین حالا بازی کنید.
باید بمب بگذارید تا دشمنانی که دنبال شما هستند با انفجار بمب کشته شوند.
دشمن قادر به کشتن شما نیست و شما هم بی نهایت بمب دارید.

با کلیدهای جهت حرکت کنید و با اسپیس بمب بگذارید.
http://saalek110.rf.gd/games/game3/index.html

تقریبا یک بازی کامله.
خوبیه این بازی ساز اینه خیلی راحت برای آپلود آماده می شود و دانلود و نصب چیزی نیازی ندارد.
حجم برنامه هم 3 مگا بیشتر نیست. البته خوب Game maker خیلی کامل تره ولی این هم کاربردهای خاص خودش را دارد.

a11.jpg

من دنبال ساخت یک برنامه آموزشی روی سایت یا اندرویدی بودم که این را پیدا کردم.
 
آخرین ویرایش:

saalek110

Well-Known Member

پیوست ها

  • tululoodoc.zip
    73.2 کیلوبایت · بازدیدها: 9
آخرین ویرایش:

saalek110

Well-Known Member
........
.........

اگر برایتان پیش امده که از خود بپرسید رو گرافیک بیشتر کار کنم یا داستان باید بگم باید روی :

گیم پلی کار کنید

بله گیم پلی از همه چیز مهم تر است گیم پلی چیزی است که گیمر را روی بازی نگه میدارد

در واقع اینطور است

1 گیم پلی :عامل جذابیت

2گرافیک و داستان :عامل موفقیت

........
.........
چگونه یک بازی گیمر پسند داشته باشیم
 

جدیدترین ارسال ها

بالا