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

نام تاپیک: توضیحات تکمیلی ساخت انجین و بازی.

  1. #1
    منتظر تایید آدرس ایمیل
    تاریخ عضویت
    آذر 1389
    محل زندگی
    پشت میز کامپیوترم!
    پست
    70

    Exclamation توضیحات تکمیلی ساخت انجین و بازی.

    نگید ضایست که زدم مبتدی!

    سلام
    خوبین؟
    یه دور بخش "طراحی و ساخت بازی های کامپیوتری" رو دور زدم. تقریبا همه توضیحات پایه ای که برای توسعه یه بازی یا انجین نیازه بود،جز توضیحات تکمیلی که اگه لطف کنید اینجا مطرح میشن.
    اول بگم که سطح بار اطلاعاتی این بحث توی برنامه نویس بالاست و من خیلی خوشحالم که بالاخره یه جایی و واسه حرف زدن گیر آوردم.ولی یه مشکلی هست اونم اینه که وقتی دوتا یا بیشتر از دوستان درباره یه مسئله تخصصی صحبت میکنن ممکنه خیلیها مثل من همه ی مطلبو نمیگیریم.چون درباره چیزهایی صحبت میشه که نمیدونم چیه.
    این فکرو کردم که اگه دوستان لطف کنن و هرکی به اندازه اطلاعات و تجربش یه دسته بندی کلی از این مسائل رو رسم کنن،مشکل خیلی ها حل بشه .هم سطح بار علمی مبتدی ها به حرفه ای ها نزدیک میشه هم سطح سوالات تو این بخش بالاتر میره. الان kochol‏ جان بخش سوالات متداول رو راه انداخته که میشه اینو هم بهش اضافه کرد.
    مثلا همین تاپیک "BSP چیه؟". من تا حالا فکر میکردم که حذف پردازشی اشیا خارج از دید دوربین رو خود دایرکت ایکس انجام میده. و نمی دونستنم که این یه الگوریتمه که باید تو انجین نوشت(نخندید من تا حالا فقط با موتورهای آماده کار کردم).برای جواب به سوالهایی مثل این میشه یه توضیح کلی از کارهایی که دایرکت ایکس میکنه و کارهایی که نمیکنه و یه موتور باید بکنه بدین.مثلا:
    لیست قابلیت های دایرکت ایکس یا لیست دستورات مهم دایرکت ایکس با توضیح فارسی.
    میدونم یه کم درخواست زیادیه ولی میتونه مثل یه داکیومنت به بچه های برنامه نویس کمک کنه.تو این بخش بچه هایی هستند که میتونن این کار رو بکنن.نه فقط دایرکت ایکس بلکه همه ابزارهای توسعه بازی.
    نمونش خودم بعد چند سال کار با موتورهای آماده تازه به این نتیجه رسیدم که بهتره برای بازی که دوست دارم درست کنم خودم یه موتور البته فقط در حد همون بازی بنویسم.هزار تا سوال دارم که باید بپرسم.ولی وقتی میام برنامه نویس ،باید بپرسم که دایرکت ایکس تا چه حدی کار هار و انجام میده و بقیش... .من دیگه قاطی کردم دیشب تو ویژوال سی باDXGI_SWAP_CHAIN_DESC یه صحنه سه بعدی clear کردم مثل سرخپوستا دور کامپیوتر میچرخیدم چون فکر میکردم موتورمو نوشتم!.
    منظورم توضیحات پایه مثل اینکه دقیقا یه انجین چیه و اگه یه صحنه سه بعدی با چهارتا مدل توش بسازیم انجینه،یا توضیحات تکمیلی مثل الگوریتم های بهینه سازی تصویر یا روش ها متدول ساحت بازی ها یا فلان بازی یا تکنیک رسم درخت و چمن روی ترین توی مدل ادیتور...خلاصه شهرفرنگه از همه رنگه!چند تا لینک نمونه بدید،بنظرم سمپل ها خیلی خوب میتونن کمک کنن.
    خلاصه اندازه هشت تا تاپیک حرفیدم و اندازه هیجده تا تاپیک جواب خواستم.

    حرف اصلی :

    من به عنوان یه انجین نویس مبتدی به توضیحات پایه ای و تکمیلی در رابطه با ساخت انجین نیازمندم.لطفا این توضیحات رو بدین.
    اینو بگم که هدفم یه موتور تجاری یا حتی استفاده مجدد نیست.میخوام با ویژوال سی پلاس،دایرکت ایکس،انویدیا فیزیکس،شیدر های hlsl ای که دانلود کردم یه بازی اول شخص شوتر بسازم.اگه پیشنهاد دیگه ای دارید بگید لطفا.
    متشکرم
    آخرین ویرایش به وسیله Vahid_67 : دوشنبه 27 دی 1389 در 23:58 عصر

  2. #2
    منتظر تایید آدرس ایمیل
    تاریخ عضویت
    آذر 1389
    محل زندگی
    پشت میز کامپیوترم!
    پست
    70

    نقل قول: توضیحات تکمیلی ساخت انجین و بازی.

    جواب دادن اینقدر سخته؟!
    من به عنوان یه انجین نویس مبتدی به توضیحات پایه ای و تکمیلی در رابطه با ساخت انجین نیازمندم.لطفا این توضیحات رو بدین.
    اینو بگم که هدفم یه موتور تجاری یا حتی استفاده مجدد نیست.میخوام با ویژوال سی پلاس،دایرکت ایکس،انویدیا فیزیکس،شیدر های hlsl ای که دانلود کردم یه بازی اول شخص شوتر بسازم.اگه پیشنهاد دیگه ای دارید بگید لطفا.
    متشکرم

  3. #3
    کاربر دائمی آواتار hi.alir
    تاریخ عضویت
    خرداد 1389
    محل زندگی
    Iran
    پست
    207

    نقل قول: توضیحات تکمیلی ساخت انجین و بازی.

    اگر جای شما بودم اول زبان یاد می گرفتم.

  4. #4
    منتظر تایید آدرس ایمیل
    تاریخ عضویت
    آذر 1389
    محل زندگی
    پشت میز کامپیوترم!
    پست
    70

    نقل قول: توضیحات تکمیلی ساخت انجین و بازی.

    نقل قول نوشته شده توسط hi.alir مشاهده تاپیک
    اگر جای شما بودم اول زبان یاد می گرفتم.
    اگه منظورتون زبان انگلیسیه!بلدم.
    من تجربیات دوستان رو خاستم که مثل یه شتابدهنده منو جلو بندازه.خوندن داکیومنت ها خیلی کمک نمیکنه.

  5. #5
    کاربر دائمی آواتار hi.alir
    تاریخ عضویت
    خرداد 1389
    محل زندگی
    Iran
    پست
    207

    نقل قول: توضیحات تکمیلی ساخت انجین و بازی.


  6. #6
    منتظر تایید آدرس ایمیل
    تاریخ عضویت
    آذر 1389
    محل زندگی
    پشت میز کامپیوترم!
    پست
    70

    نقل قول: توضیحات تکمیلی ساخت انجین و بازی.

    نقل قول نوشته شده توسط hi.alir مشاهده تاپیک
    این لینک PDF اسکن شده این کتاب:
    http://hotfile.com/dl/77151686/176d0...14135.rar.html

    اینم لینک یه کتاب PDF آموزش 2008vC++‎
    http://www.fileserve.com/file/NEgbHmm

  7. #7
    کاربر تازه وارد آواتار AbdolHabib8
    تاریخ عضویت
    دی 1389
    محل زندگی
    آرمانشهر
    پست
    30

    نقل قول: توضیحات تکمیلی ساخت انجین و بازی.

    سلام.
    من تا حالا فکر میکردم که حذف پردازشی اشیا خارج از دید دوربین رو خود دایرکت ایکس انجام میده. و نمی دونستنم که این یه الگوریتمه که باید تو انجین نوشت
    - حذف مثلث هایی که خارج از هرم ناقص تابش اند و یا پشت به دوربین اند توی پایپ لاین هست ( یعنی D3D این دو برش رو انجام می ده و حتی برش سفارشی با صفحه رو هم). حالا بهینه سازی که می شه انجام داد مثلا اینه که اگه تشخیص دادیم یه مدل – که ممکنه از چند هزار مثلث تشکیل شده باشه- خارج از دید دوربینه اونو واسه برش به پایپ لاین نفرستیم چون تست برش پایپ لاین به ازای هر مثلث انجام می شه. اینجوری یکم از CPU ضرر می دیم ولی کلی از GPU سود می بریم.در کل تا اونجایی که من فهمیدم اینها و خیلی دیگه از تکنیک هایی که توی پیکربندی موتورمطرح می شه جزو مستحباته یعنی شما بدون این ها هم می تونید یه صحنه جذاب داشته باشید ؛هرچند قطعا با حدودی سرعت کمتر ومحدودیت بیشتر.

    بنده چند تا نکته به ذهنم رسید که عرض می کنم :
    - اگر تنهایید و قصدی غیر از یاد گرفتن ( مثلا پول درآوردن ، رزومه جمع کردن ، مشهور شدن ، بازی مستقل ساختن و ... ) دارید به نظرم بهتره همین الآن توقف و تامل کنید چون بزودی از شدت مصائب آمپر انگیزتون می خوابه و از بابت این عمر تلف شده حسرت خواهید خورد.همچنین اگه شم فلسفی دارید و معمولا پشت همه چیز چرا می زارید وهمین طور اگه لازمه تا 2 یا 3 سال آینده به استقلال مالی برسید. حالت ایده آل اینه که موقع شروع ترم 3 مهندسی نرم افزار باشید و کاری بجز درس خوندن نداشته باشید.

    - این موادی که لیست کردید (D3D ، Physix وVisualC) برای اون چیزی که قصد دارید بهش برسید کافیه.(البته باید برنامه ای برای صدا (پیشنهاد : fmod) و اسکریپت (پیشنهاد : lua+luabind ) و GUI (پیشنهاد : Flash) هم ازهمین الان داشته باشید. همچنین با Physix در مورد گرافیک های ATI به مشکل برمی خورید (پیشنهاد : Bulet)) و موتور هم عملا چیزی نیست جز مجموعه مرکب و منظم همین ها. در هر حال مسیر شروع مشخصه : شما باید با تک تک این اجزا در سطح متوسط آشنا باشید تا بشه با این آشنایی نسبی یه طرحی از معماری اولیه بریزید وخروجی بگیرید.قبل از شروع می توید روی کاغذ بنویسید که از هر کدو از این کتابخونه ها چه توقعی دارید تا سردرگم نشید و به همون اندازه ای که لازم دارید یاد بگیرید.

    - با وجود نعمت این کتابخونه ها اون چیزایی که پیاده سازیش وظیفه شماست با تخفیف محدود می شه به :
    چارچوب کاری ( کلاس ها و توابع کپسول شده برای کار های روتین مثلا تایمر ، پنجره ، سریالایزر ، Event ، EventListener ، رنگ ، وکتور ، ماتریس ، ساختمان های داده ، ترد و موتکس و ... )
    سیستم رندرینگ (پیاده سازی روش های برای ترسیم مدل ، Terain ، آب ، کاراکتر انیمیت ، پارتیکل و بیلبورد )
    سیستم مدیریت منابع (مثلا باید این سیستم پاسخگوی DeviceLost و بارگزاری مجدد منابع باشه و اینکه بشه یک منبع یک بار بارگزاری بشه و چندین جا استفاده بشه و به موقع آزاد بشه)
    سیستم تزریق رویداد (جمع آوردی و تزریق رویداد های ورودی ، فیزیک ، سیستمی ، gameplay و ... به موجودیت هایی که درخواست دادند)
    تطبیق با موتور فیزیک و اسکریپت(...)
    پیکربندی و منطق موتور(از بابت این اسم من درآوردی عذر می خوام. منظورم تعریف کردن تعریف موجودیت و نحوه ارتباط این موجودیت با نماینده اش در دنیای فیزیک و سیستم هوش مصنوعی و رندرینگ و ماشین مجازی اسکریپت و نیز سایر موجودیت هاست.)
    سیستم هوش مصنوعی (مستحب موکد کفایی – به این خاطر که اینو میشه تا حدودی با همون اسکریپت پیاده کرد اما اگه تمهیداتی برای اجرای الگوریتم های هوش مصنوعی مثل دایجستر به بالا رو داخل سی داشته باشید خیلی به بهینگی کمک می کنه . کفایی هم به این خاطر که کتابخونش هم هست.)
    سیستم مدیریت صحنه (در ساده ترین حالت یک Display List که مشخص می کنه کدام موجودیت هایی باید بروزرسانی و ترسیم بشند).
    -worldEditor وتولست (تا اونجایی که می شه سعی کنید از محیط های آماده مثل Quak3 Map Editor یا همون مکس و غیره استفاده کنید اما اگه لازم شد چیزی رو از نو بنویسید سریع ترین راه برای بستن یه همچین چیزیی کار توی .net Framework و C#‎هست. دلیلش هم واضحه. همه چیز آمادست و همه چیز ویژواله.)

    - به تعداد انفاس بشر راه هست برای معماری و ساخت موتور. پس منتظر یادگرفتن فن ضربه نهایی استاد نباشید و با توجه به توانایی و نیازهمین امروزتون اولین ایده هاتون رو برای موتورتون پیاده کنید. این ایده اولیه همین طور صیغل می خوره تا به اونی که مطلوب شماست شبیه بشه. البته تجربه گرانبهای بنده اینه که با جرات تمام و بدون اکراه هر از گاهی کدهاتون رو از اول و با طرحی نو بنویسید. به عبارت دیگه معمولا در چند سال اول کد نویسی ، اشکلات با اصلاحات جزئی حل نمی شند و به عنوان اولین گزینه حتما باید از دکمه Shift+Del کمک گرفت.

  8. #8
    منتظر تایید آدرس ایمیل
    تاریخ عضویت
    آذر 1389
    محل زندگی
    پشت میز کامپیوترم!
    پست
    70

    نقل قول: توضیحات تکمیلی ساخت انجین و بازی.

    abdolHabib جان خیلی ممنون که وقت گذاشتی

    در مورد مثلث ها خیلی خوب شد آگاهم کردی.
    در مورد شدت مصائب و آمپر انگیزه حق با شماست و من این دوره رو چند سال پیش که یه پروژه رو با یه موتور آماده شروع کردم گذروندم و یکمی تجربه دارم.
    همچنین با Physix در مورد گرافیک های ATI به مشکل برمی خورید
    تحقیق کردم،اگه چیپست پردازشی فیزیکس روی گرافیک نباشه پردازش فیزیکی رو کلا سی پی یو انجام میده.
    اسکریپت (پیشنهاد : lua+luabind )
    فکر کردم که اگه با خود سی پلاس بنویسیم راحت تره ، اینا با هم چه فرقی دارن؟
    GUI (پیشنهاد : Flash)
    منظورتون GUI برای موتوره یا ادیتور؟فلش رایگانه؟چون میخام از ابزار های رایگان استفاده کنم میپرسم.
    پیاده سازی روش های برای ترسیم مدل ، Terain ، آب ، کاراکتر انیمیت ، پارتیکل و بیلبورد
    دقیقا چیه؟ببخشید که اینارو می پرسم ولی میخام مطمئن شم که مفاهیمی که من از اینا دارم کاملا درست هستند یا نه.
    بقه موارد ، تشکر

    اصلا بزار فکرمو توضیح بدم بعد دوستان با توجه به تجربشون بگن که درسته یا یه یا چه چیزهایی کم داره:
    من میخوام با ابزار هایی که گفتم یه بازی اول شخص شوتر بسازم.فکر کردم که ویژوال سی رو باز کنم،یه پروژه خالی بزنم،ابزار ها رو (دایرکت ایکس ، فیزیکس ...) اد کنم ، برنامه رو دسته بندی کنم انجین جدا بازی جدا ...توی انجین هم همینطور ...lمثل این:
    ضمیمه 65263
    خلاصه منظم ، یه لول ادیتور ساده در حد لول ادیتور بازی farcry2 که واسه بازی ابتیماز شده و... که نتیجش چیزی که میخام بشه.حالا تو این راه کمی دچار ابهامم.واضحش اینه که نمیخام شروع کنم بعد از چند مدت بفهمم که فلان کارو نکردم و باید از اول دوباره... .دیدم که اینجا کسایی هستند که تجربه این کار رو دارن منم ازشون خواستم که این تجربه رو به من بگن.
    ممنون
    آخرین ویرایش به وسیله Vahid_67 : چهارشنبه 29 دی 1389 در 14:43 عصر

  9. #9
    کاربر دائمی آواتار syntiberium
    تاریخ عضویت
    شهریور 1387
    محل زندگی
    scrin galaxy
    پست
    516

    نقل قول: توضیحات تکمیلی ساخت انجین و بازی.

    تحقیق کردم،اگه چیپست پردازشی فیزیکس روی گرافیک نباشه پردازش فیزیکی رو کلا سی پی یو انجام میده.
    تحقیقتون اشتباه بوده چون کارت گرافیک اینکارو انجام می ده و cpu زورش نمیرسه اینهمه مدل رو قوانین فیزیک روشون انجام بده .
    منظورتون GUI برای موتوره یا ادیتور؟فلش رایگانه؟چون میخام از ابزار های رایگان استفاده کنم میپرسم.
    ظاهر برنامت رو می تونی با نرم افزار فلش دکمه های منو و این جور چیز های دو بعدی رو طراحی کنی و بعدش باید فایل نصب فلش که حجمش کمتر از 10 مگا بایت هست و رایگانه را همراه با پروژت روی CD یا هر چی بریزی .
    پیاده سازی روش های برای ترسیم مدل ، Terain ، آب ، کاراکتر انیمیت ، پارتیکل و بیلبورد

    terain برای پستی و بلندی های یک land به کار می ره . آب یه جور effect هست که باعث می شه تصویر اشیای زیر آب با حالتی خاص حرکت کند . کاراکتر انیمیت یعنی مثلا یک آدم که چند تا حرکت مثل راه رفتن پریدن و غیره رو توی خودش داشته باشه . پارتیکل رو برای ایجاد دود و آتش و باران و از این جور چیز ها ازش استفاده می کنند .

  10. #10
    منتظر تایید آدرس ایمیل
    تاریخ عضویت
    آذر 1389
    محل زندگی
    پشت میز کامپیوترم!
    پست
    70

    نقل قول: توضیحات تکمیلی ساخت انجین و بازی.

    http://www.101cyber.com/post.asp?.ty...d=6&ToRecord=6
    http://www.havok.com/index.php?mact=...01returnid=102

    یه جا خوندم وقتی که شرکت Ageia فیزیکس رو ارائه میده چیپست اون رو روی یه کارت PCI بیرون داده.بعد که انویدیا اونو خریده چیپستشو روی کارت گرافیکش گذاشته.
    دوست عزیز پردازش فیزیک رو CPU انجام میده.ولی واسه انویدیا فیزیکس فقط در گرافیکهای انویدیا یه قسمت برای پردازش سیستم فیزیک انویدیا هست که اگه نباشه (گرافیک ساپورت نکنه ) این کارو CPU انجام میده.
    آخرین ویرایش به وسیله Vahid_67 : دوشنبه 09 اسفند 1389 در 00:26 صبح

  11. #11
    کاربر تازه وارد آواتار AbdolHabib8
    تاریخ عضویت
    دی 1389
    محل زندگی
    آرمانشهر
    پست
    30

    نقل قول: توضیحات تکمیلی ساخت انجین و بازی.

    تحقیق کردم،اگه چیپست پردازشی فیزیکس روی گرافیک نباشه پردازش فیزیکی رو کلا سی پی یو انجام میده.
    چیپ ستی در کار نیست. شتاب دهنده سخت افزاری Physix بر پایه CUDA کار می کنه و CUDA راه حل انویدیا برای استفاده های عمومی (غیر از پردازشات گرافیکی) از GPU ست . اصطلاحا GPGPU = General Purpose GPU. اما CUDA روی کارت های ATI کار نمی کنه. در مقابلش OpenCL و DirectCompute هست با همین کاربرد که روی هردو برند کار می کنه. Bulet می تونه بر پایه هر کدوم ازاین ها و همچنین CUDA کامپایل شه.
    اسکریپت (پیشنهاد : lua+luabind )
    فکر کردم که اگه با خود سی پلاس بنویسیم راحت تره ، اینا با هم چه فرقی دارن؟
    این ها رو ببینید :
    http://stackoverflow.com/questions/3...pting-language
    http://blue.kunstmusik.com/manual/html/ar02s02.html
    اگه بخوایم خیلی ساده و خلاصه بگیم ؛ با اسکریپت عمر شما و برنامه شما افزایش پیدا می کنه.

    پیاده سازی روش های ترسیم مدل ، Terain ، آب ، کاراکتر انیمیت ، پارتیکل و بیلبورد
    این هایی که عرض کردم چیزایی هست که می تونید مطمئن باشید خود D3D راه حل ثابتی برای اون ها نداره و شما باید به مرور زمان با هر کدوم از اونها آشنا بشید و یکی یکی پیاده سازی شون کنید.
    یه لول ادیتور ساده در حد لول ادیتور بازی farcry2 که واسه بازی ابتیماز شده

    واضحش اینه که نمیخام شروع کنم بعد از چند مدت بفهمم که فلان کارو نکردم و باید از اول دوباره... .دیدم که اینجا کسایی هستند که تجربه این کار رو دارن منم ازشون خواستم که این تجربه رو به من بگن.
    این دقدقه مال موقعی هست که شما برای همه ریسک های اساسی پروژه تون (یعنی همه زیر مسئله های یک موتورسه بعدی) یک جواب قطعی داشته باشید و بعد نگران این باشید که در پیاده سازی وهماهنگ کردن این ها – که قسمت اعظم کار هست- بخواید از تجربه های دیگران استفاده کنید تا توی زمان جلو بیفتید .
    در کل به نظرم میاد اگه قبل از هر کاری " Introduction to 3D Game Programming with DirectX 9.0c Shader Approach " رو شروع کنید بخونید خیلی زودتر به نتیجه می رسید.من این اطمینان رو به شما می دم که بعد از خوندن این کتاب شما حداقل همه اون چیزی که توی سیستم رندرینگ لازمه باشه رو می تونید پیاده سازی کنید.

  12. #12

    نقل قول: توضیحات تکمیلی ساخت انجین و بازی.

    عالی بود، ممنون

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

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