نمایش نتایج 1 تا 10 از 10

نام تاپیک: دارم انجین مینویسم

  1. #1
    کاربر دائمی آواتار 1485159
    تاریخ عضویت
    فروردین 1388
    محل زندگی
    NULL
    سن
    30
    پست
    886

    دارم انجین مینویسم

    سلام
    من قبلا یه تاپیک زده بودم با عنوان "ساخت انجین 2 بعدی"
    که من در اون تاپیک متوجه شدم که باید برم دنبال opengl و رفتم.
    من همیشه دوسداشتم بیشتر بنویسم تا خوندن..
    حالا من میخوام یه انجین بنویسم که برای ساخت بازی هایی مثل دوز و اسنیک و... باشه و کم کم روش کارکنم و....
    ولی نمیدونم چطوری!!
    2 روزه که دارم هی مینویسم ولی به نتیجه نمیرسم
    از شما میخوام که منو راهنمایی کنید که یک انجین باید چطوری طراحی بشه..
    البته منظورم این نیست که آموزش بدین! منظورم اینه که بگین مثلا انجین برای ساخت بازی باید چه مراحلی رو طی کنه؟
    برای مثال:
    1- اول باید کاربر (برنامه نویس) یه هندل رو به انجین تحویل بده ..
    2- باید...
    3- باید...
    همین باید ها رو من نمیدونم!!
    ممنون میشم اگه راهنمایی کنید.

  2. #2

    نقل قول: دارم انجین مینویسم

    یه انجین قبل از هر کار باید و اما باید ساده باشه. یعنی برنامه نویس بازی رو تا د زیادی از مسائل مثل API و مخصوصا مسائل سیستمی (مثل روش کار با کی بورد، ساخت پنجره و ... ) به دور نگه داره. پس اینکه کاربر یه هندل به انجبن بده که انجین بیاد و براش یه چیزی مثل پنجره رو بسازه کاملا اشتباه هستش . البته انجین باید این گزینه رو هم به صورت اختیاری به برنامه نویس بده تا در صورت نیاز برنامه نویس ازش استفاده کنه.

    به عنوان مثال برای انجین من (D-Engine) برای شروع به کار ( ساخت پنجره و کنترل مسیج و لوگ و ...) کد زیر کافی هستش:
    #include "d-engine.h"

    ussing namespace DEngine;

    void main()
    {
    App.start();
    }


    تو مرحله دوم باید تا حد ممکن انعطاف پذیر باشه؟ یعنی به قدری روابط بین کلاسها (دیزاین) رو خوب بچینی که هر نوع قابلیتی رو که داخل بازیهای دو بعدی هستش رو ساپورت کنه ( که البته این مورد هیچ وقت محقق نمی شه و هر انجینی توی دنیا فقط روی چند تایپ خاص بازی جواب گو هستش نه همه نوع ها). این مورد کاملا تجربی هستش. و نمی شه گفت با خوندن چند تا کتاب میشه یه دیزاین خوب خوب داشتش.

    حالا که OpenGL رو انتخاب کردی. بهتره به فکر ساخت یه انجین دو بعدی باشی که رو همه پلتفرمها جواب بده. OpenGL پلتفرهای زیادی رو مثل iPhone، سریهای جدید نوکیا، Mac OS، Linux و ... رو ساپورت میکنه که این خیلی میتونه به کارت بیاد و باعث محبوب شدن انجینت بشه.

  3. #3
    کاربر دائمی آواتار 1485159
    تاریخ عضویت
    فروردین 1388
    محل زندگی
    NULL
    سن
    30
    پست
    886

    نقل قول: دارم انجین مینویسم

     به عنوان مثال برای انجین من (D-Engine) برای شروع به کار ( ساخت پنجره و کنترل مسیج و لوگ و ...) کد زیر کافی هستش:

    من توی انجینی که دیروز شروع کردم ( هنوز 5- 6 تا تابع براش نوشتم) کاربر با دادن نام فرم به انجین، انجین همه ی کار های مربوط به ایجاد پنجره و .. رو به طور اتوماتیک انجام میده و به وسیله توابع دیگه میشه این خصوصیات که پیشفرض هستند رو تغییر داد.
    آیا این کار مناسبه؟

  4. #4
    کاربر دائمی آواتار UltraZoom
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    تهران
    سن
    37
    پست
    103

    نقل قول: دارم انجین مینویسم

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

  5. #5
    کاربر دائمی آواتار 1485159
    تاریخ عضویت
    فروردین 1388
    محل زندگی
    NULL
    سن
    30
    پست
    886

    نقل قول: دارم انجین مینویسم

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

  6. #6

    نقل قول: دارم انجین مینویسم

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

    من هم این قضیه رو پیشنهاد می کنم مخصوصا اگه موتور مورد بررسی ات یک موتور سورس باز باشه.

    به این بازی هم یه نگاهی بنداز.

    http://www.gamedev.net/community/for...opic_id=532733

    http://www.normal-tanks.com/
    Kochol Game Engine
    http://www.kge3d.org



  7. #7
    کاربر دائمی آواتار 1485159
    تاریخ عضویت
    فروردین 1388
    محل زندگی
    NULL
    سن
    30
    پست
    886

    نقل قول: دارم انجین مینویسم

    مخصوصا اگه موتور مورد بررسی ات یک موتور سورس باز باشه.
    نه! حتی قرار نیست که انجین رو به dll تبدیل کنم! بلکه به صورت سورس در گیمم استفاده خواهم کرد.
    در مورد اون 2 تا گیم هم متوحه نشدم منظورتون چیه؟
    ممنون.

  8. #8

    نقل قول: دارم انجین مینویسم

    نقل قول نوشته شده توسط 1485159 مشاهده تاپیک
    نه! حتی قرار نیست که انجین رو به dll تبدیل کنم! بلکه به صورت سورس در گیمم استفاده خواهم کرد.
    هیچ فرقی نداره

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

    گفتم شاید بخوای از این بازی 2 بعدی ایده بگیری
    Kochol Game Engine
    http://www.kge3d.org



  9. #9
    کاربر دائمی آواتار 1485159
    تاریخ عضویت
    فروردین 1388
    محل زندگی
    NULL
    سن
    30
    پست
    886

    نقل قول: دارم انجین مینویسم

    اون هم یک گیم نه دو تا
    درسته
    من برای این انجین یه کلاس تعریف کردم که برنامه نویس بعد از اینکه یه نمونه از کلاس ایجاد کرد با تغییر در متغیر ها و ... میتونه شکل، خط، و.... ایجاد کنه. برای ایجاد هر شکل، یک کلاس لازم است، مگر اینکه polygon باشه.
    البته این کلاس اونقدر ها هم که فکر میکنید ساده نیست! بلکه میتونه تمامی خصوصیات(از قبیل زاویه ی چرخش، تسکچر(که فعلا غیر فعاله)، نقطه ی صفر و صفر، رنگ و...) یک شکل رو ذخیره کنه و موقع رندر کردن اونها رو تحویل رندرگر بده!

    به نظرتون چطوری؟ اشکالی که نداره؟

  10. #10
    کاربر دائمی آواتار 1485159
    تاریخ عضویت
    فروردین 1388
    محل زندگی
    NULL
    سن
    30
    پست
    886

    نقل قول: دارم انجین مینویسم

    من برای این انجین یه کلاس تعریف کردم که برنامه نویس بعد از اینکه یه نمونه از کلاس ایجاد کرد با تغییر در متغیر ها و ... میتونه شکل، خط، و.... ایجاد کنه. برای ایجاد هر شکل، یک کلاس لازم است، مگر اینکه polygon باشه.
    البته این کلاس اونقدر ها هم که فکر میکنید ساده نیست! بلکه میتونه تمامی خصوصیات(از قبیل زاویه ی چرخش، تسکچر(که فعلا غیر فعاله)، نقطه ی صفر و صفر، رنگ و...) یک شکل رو ذخیره کنه و موقع رندر کردن اونها رو تحویل رندرگر بده!

    به نظرتون چطوری؟ اشکالی که نداره؟
    البته هنوز کامل نشده ولی امتحانش رو پس داده!

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •