# مباحث متفرقه برنامه نویسی > طراحی و ساخت بازی‌های کامپیوتری >  تشکیل گروه برای یادگیری Directx

## amsjavan

سلام به همه دوستان 
اوایلی که می خواستم کامپیوتر را یاد بگیرم همیشه فکر می کردم که به هیچ استاد و همکاری احتیاج ندارم و تنها خودم با استفده از یار همیشگی ام، کتاب، می توانم تمام قله های کامپیوتر را فتح کنم. غافل از اینکه نمی دانستم چه مشکلاتی در پیش رو خواهم داشت.
پس از سال ها فهمیدم که به تنهایی و فقط با استفاده از کتاب نمی توان همه چیز را در سریعترین زمان یاد گرفت( منظورم از نتوانستن دشوار بودن این کار هست در غیر اینصورت به نظرم هر کاری شدنی است ). حداقل در مورد خودم این مورد را مطمئن هستم.
من این وسط انگیزه ادامه کار را فراموش کرده بودم انگیزه ای که فقط در کار گروهی به دست می آید. برای مثال من دوست داشتم خیلی سریع C++‎‎‎ را یاد بگیرم یعنی در واقع به آخر کار نگاه می کردم اما دشواری راهی که باید طی می شد را در نظر نمی گرفتم. وقتی زمان یادگیری طولانی می شد کتاب به تنهایی نمی توانست انگیزه یادگیری را در من ایجاد کند. پس از مدت ها تصمیم گرفتم به کلاس های آموزشی بروم چون در این صورت در یک گروه که همه برای یک هدف آمده بودند قرار می گرفتم. و همچنین وقتی می بینی همه دارند پیشرفت می کنند سعی می کنی از همه جلو بزنی و انگیزه چند برابر می شود و در نتیجه آن پیشرفت بیشتری را هم خواهیم داشت. حالا اینجاست که کتاب می تواند نهایت استفاده را داشته باشد. اما متاسفانه در ایران مباحث دشوار و خاص کامپیوتری مثل DirectX کلاس های آموزشی بسیار کمی و اغلب بی کیفیت دارند و همچنین اگر هم وجود داشته باشد هزینه بسیار بالایی دارند. بنابراین تصمیم گرفتم طرحی را شروع کنم که با تشکیل یک گروه علاقمند به یادگیری DirectX خودمان با کمک همدیگر طریقه استفاده از این ابزار قدرتمند(Directx) را یاد بگیریم. به این ترتیب انگیزه و تلاش افراد برای یادگیری هم بالا رفته و با یک برنامه منسجم می توانیم به بهترین نحو آموزش ببینیم. 

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

پس از تحقیق فراوان در نهایت متوجه شدم یکی از بهترین کتاب های آموزشی DirectX کتاب Introduction to 3D Game Programming with DirectX 9.0c—A Shader Approach می باشد. البته من خودم کتاب W.Jones - Beginning DirectX 9 را قبلا مطالعه کرده بودم اما بعدا فهمیدم که کتاب اولی که معرفی کردم مناسبتر و بهتر آموزش داده است. 3 فصل اول این کتاب به مباحث پایه ای ریاضی پرداخته که به گفته خود نویسنده این مباحث برای فهم مطالب بعدی کتاب الزامی می باشد. فصل های بعدی نیز به ترتیب از آشنایی با Directx شروع کرده و به مباحث پیشرفته تری چون Lighting و Texturing رسیده است. البته مباحث زیادی در این کتاب مطرح شده که خودتان می توانید مشاهده کنید. لینک نسخه PDF را اینجا قرار می دهم:


http://www.ebookee.com/Introduction-...ch_277535.html 
حالا برنامه ای که در نظر دارم به این شکل می باشد( البته این برنامه نظر من هست و دوستانی که نظری غیر از این دارند لطفا مطرح کنند تا برنامه را با هم اصلاح کنیم) :

ابتدا باید گروه حداقل به 7 نفر ثابت برسد تا بتوانیم کار را درست پیش ببریم. هر نفر از اعضای گروه طی هفته با برنامه ای که خواهم گفت بخشی از کتاب را مطالعه میکند.  
آخر هر هفته در مکانی با هم قرار می گذاریم ( در این زمینه یکی از دوستان حاضر شدند اتاقی از یک شرکت را در اختیار ما بگذارند ) و اشکالات را مطرح کرده و تمرین حل می کنیم. در این جلسه های هفتگی که حداقل 1.5 ساعت خواهد بود یک نفر به صورت داوطلبانه مبحث آن هفته را توضیح داده تا در صورتی که کسی آن بخش را نفهمیده یا مثلا آن هفته مشکلی پیش آمده و نتوانسته آن بخش را مطالعه کند از برنامه عقب نماند. این کار برای بقیه هم مزایای بسیاری دارد مثلا اشکالات دوستان دیگر و یا همان کسی که توضیح می دهد معلوم می شود. برای مثال من یک موردی را دارم توضیح می دهم یکی از بچه ها به مطلبی که می گم ایراد گرفته و مثلا می گه فلان جا این درسته یکی دیگه میگه نه این درسته اینجوری یک بحثی شکل می گیره که به فهم درست مطلب کمک می کند. حداقل هم باید 5 نفر بخش مشخص شده آن هفته را مطالعه کرده باشند تا این بحث ها مفید باشد در غیر اینصورت اگر فقط یک نفر مطالعه کند نتیجه ای نخواهد داشت. بنابراین این برنامه روی همکاری تک تک اعضای گرو جلو می رود و با کمکاری یک نفر به پیشرفت گروه صدمه وارد می شود. بعد از مطالعه هر فصل یک هفته به اعضا برای حل تمرین فرصت می دهیم و در جلسه بعدی به حل اشکالات همدیگر و مباحثه می پردازیم. در میان هر هفته هم از طریق کنفرانس اینترنتی با هم ارتباط برقرار می کنیم و پیشرفت کار را بررسی کرده و به حل مشکلات می پردازیم. 
برنامه مطالعه به این شکل هست: 
3 فصل اول چون مباحثی هست که اکثرا قبلا در مدرسه خوانده ایم خیلی نیاز به حل تمرین ندارد چون جلوتر خیلی باهاشون کار می کنیم. البته این 3 فصل مباحث جدید مثل دستورهایی که DirectX برای تعریف بردارها و نقطه و ... معین کرده است را هم دارد. 
Chapter1 که 20 صفحه می باشد در هفته اول مطالعه می شود.

Chapter2 که 15 صفحه می باشد در هفته دوم مطالعه می شود.

Chapter3 که 21 صفحه می باشد در هفته سوم مطالعه می شود. 
Chapter4 که Direct3D Initialization نام دارد 40 صفحه می باشد و به معرفی Direct3D و نحوه تعریف آن و مباحث پایه ای Direct3D پرداخته و با یک مثال ساده کار را به پایان می رساند. این فصل چون شامل مباحث جدید می باشد برای فهم آن وقت و تلاش بیشتری را نیاز دارد. 
20 صفحه اول این فصل را در هفته چهارم مطالعه می کنیم.
15 صفحه دوم این فصل که مباحثش کمی سنگین تر می شود را در هفته پنجم مطالعه می کنیم.
5 صفحه آخر این فصل که مربوط به Debugging می باشد را به همراه تمارین این فصل در هفته ششم انجام می دهیم. 
این برنامه به طور نظری طراحی شده و در عمل ممکن هست نتیجه مطلوب را نگیریم برای همین برای فصل های آینده بعد از مطالعه این فصل ها برنامه ریزی می کنیم تا تجربه کافی برای برنامه ریزی بهتر را به دست آورده باشیم.

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

دوستانی که مایل به همکاری و شرکت در این گروه هستند اسامی خود را به همراه email همینجا اعلام کنند.

_توجه: طبق نوشته نویسنده کتاب برای یادگیری این کتاب حداقل باید در حد متوسط_ _C++‎‎‎__ را بلد باشید. آشنایی با_ _Windows Programming__ هم به یادگیری کمک می کند اما ضروری نیست._ 
منتظر نظرات شما هستم.

امیرحسین جوان آملی

amsjavan@yahoo.com

----------


## bghad1

سلام...
اميدوارم حالتون خوب باشه...خيلي دوس دارم كه بتونم شركت كنم تو اين برنامتون...
البته شايد C++‎  رو در حد خيلي پايين بلد باشم...اما چون از لحاظ syntax  شبيه C#‎ هستش و منم در حد شايد متوسط بلد باشم C#‎ رو عيبي نداره؟؟
خيلي دوست دارم و خوشحال مي شم كه بتونم به شما ملحق بشم و از كمك و تجربيات شما بهره مند بشم...

اسم من بهادر قدم خير هستش
آدرس ايميلمم bghad1@gmail.com

راستي، windows programming  رو هم تا يه حدودي بلدم...
مرسي ...
موفق باشين...
با تشكر...
فعلاً بــــــاي......

----------


## amsjavan

> سلام...
> اميدوارم حالتون خوب باشه...خيلي دوس دارم كه بتونم شركت كنم تو اين برنامتون...
> البته شايد C++‎‎  رو در حد خيلي پايين بلد باشم...اما چون از لحاظ syntax  شبيه C#‎‎ هستش و منم در حد شايد متوسط بلد باشم C#‎‎ رو عيبي نداره؟؟
> خيلي دوست دارم و خوشحال مي شم كه بتونم به شما ملحق بشم و از كمك و تجربيات شما بهره مند بشم...
> 
> اسم من بهادر قدم خير هستش
> آدرس ايميلمم bghad1@gmail.com
> 
> راستي، windows programming  رو هم تا يه حدودي بلدم...
> ...


خیلی خوبه. چون قبلا با C#‎ برنامه نویسی کردید مشکل زیادی پیش نمیاد اما به هر حال کارتون کمی سخت تر میشه. در مورد windows programming هم منظورم آشنایی با API های windows بود که تو #C شما مستقیما با API ها کار نمی کنید. به هر حال اگر دوستان دیگه توافق کنند ابتدا یک آموزش کوتاه هم در این زمینه خواهیم داشت چون به پیشرفت کار خیلی کمک می کنه.
من آنچنان تجربه ای هم در زمینه Directx ندارم فقط قبلا یک کتاب در این مورد خواندم آن هم نه به طور کامل. هدف از  تشکیل این گروه هم این هست که به یکدیگر در پیشرفت کار کمک کنیم.

----------


## MIDOSE

جهت فاز دهی این قسمت را مثل بچه دبستانی ها بخونید:
به نام خدا
من MIDOSE هستم و خیلی دوست دارم بازی بسازم،من می تونم با شما همکاری کنم و این که چهار کلاسی سواد دارم(نقطه)، اقامان(همون بابا) می گه سی پلاس خیلی خوب است من هم دوست دارم در اینده سی پلاس کار شوم(حالا اگه نشد دکتری ،مهندسی،راننده قطاری...).

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

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

این که شما تحقیق کردید و حتی برنامه ریزی و تعیین مکان هم کردید کار بسیار جالبی است،ولی در ظاهر.
شخصی که هدفمند باشه انگیزه فقط براش ابزاری است. البته منکر مهم بودنش نیستم ولی حداقل می تونی این همه هزینه و وقت را برای دو ساعت چت کردن با kochol یا pswinpooya(اگه درست باشه) یا Nima_NF  ،seyedof صرف کنی(یا تو دیدارهایی که سایت ترتیب می ده شرکت کنی).
چرا؟ به شخصه ترجیح می دم از تجارب این عزیزان و راه هایی که طی کردند استفاده کنی تا این که بخوایی با تعدادی که زیاد در این امر تجربه ندارند همکاری کنی(چه بسا که از مسیر خودت منحرف بشی).
شاید چند روز این تایپیک بالا باشه ولی اخرش چی!می تونی با شرکت در جلساتی که ظاهرن هر پنجشنبه هست(جناب seyedof مطلع هستند) که در مورد بازی سازی است انگیزه کسب کنی، تو محیط هایی که تقریبن اشخاص حرفه ای فعال هستند انگیزه چندین برابر محیط های معمولی ایجاد می شه.

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

در اخر از عزیزانی که نام بردم پیشاپیش معذرت می خوام(شاید دوست نداشتند اسمشون را ببرم، به حال می خواستند معروف نشند :لبخند گشاده!: )
ضمنن بعضی از کلمات نیاز به چشم بصیرت دارند  :متفکر:  :لبخند گشاده!: .

----------


## amsjavan

MIDOS عزیز خیلی ممنون از راهنمایی مفیدت. فقط چند تا نکته به نظرم می رسه که باید بگم.


> این را مطمئن باش 90 درصد افرادی که الان حاضر به همکاری هستند بعدن خبری ازشون نیست(در صورت معجزه خلاف این مسئله ممکنه)، شخصی مثل kochol چند سال پیش مسئله ای مشابه را مطرح کرد و خیلی ها قول همکاری دادند ولی در اخر کار نگم همه، 99 درصد دیگه پیداشون نشد.(اگه درست یادم مانده باشه)البته ایشون تنها کسی نبود که شاهد چنین موضوعی بود.


من تو چند تا فروم دیگه هم گفتم اگه از افرادی که در هر فروم اعلام آمادگی می کنند طبق گفته شما فقط 10% ازشون خبری بشه کار ما راه میفته. شاید هم معجزه بشه!




> شخصی که هدفمند باشه انگیزه فقط براش ابزاری است. البته منکر مهم بودنش نیستم ولی حداقل می تونی این همه هزینه و وقت را برای دو ساعت چت کردن با kochol یا pswinpooya(اگه درست باشه) یا Nima_NF ،seyedof صرف کنی(یا تو دیدارهایی که سایت ترتیب می ده شرکت کنی).





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


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




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


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



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


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

----------


## zoofa

سلام دوست عزيز
به نظر من به جاي وقت گذاشتن روي direct x روي open gl كار كنيد كه محدود به يك پلت فرم ( ويندوز ) نباشد و بتونين تو سيستم عامل هاي ديگه هم استفاده كنين و open source هم هستش.

----------


## amsjavan

> سلام دوست عزيز
> به نظر من به جاي وقت گذاشتن روي direct x روي open gl كار كنيد كه محدود به يك پلت فرم ( ويندوز ) نباشد و بتونين تو سيستم عامل هاي ديگه هم استفاده كنين و open source هم هستش.


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

----------


## zoofa

> الان من اگه دلایل خودم رو برای انتخاب Directx بگم اینجا یک بحثی ایجاد میشه که تاپیک رو از بحث اصلی منحرف می کنه. فقط اینو بگم که شما openGL رو باید با Dirct3D مقایسه کنی نه Directx.
> برای یادگیری openGL هم می تونیم یک گروه دیگه تشکیل بدیم که فعلا اینجا جای بحثش نیست.



بازم سلام  :لبخند گشاده!: 
ميشه منبعي رو براي دلايل انتخاب directx بگيد
ممنون مي شم

----------


## saied_hacker

نظرتون چیه که با کمک مدیران یه تایپیک جدا در مورد DirectX ایجاد بشه و در س ها در همان جا اراعه بشه...

روز به روز با افراد محدود ( حتی می شه پولیش کرد ( البته ارزون)) تا شلوغ نشه درسها رو اراعه و از افراد تمرین خواست....

----------


## zoofa

> نظرتون چیه که با کمک مدیران یه تایپیک جدا در مورد DirectX ایجاد بشه و در س ها در همان جا اراعه بشه...
> 
> روز به روز با افراد محدود ( حتی می شه پولیش کرد ( البته ارزون)) تا شلوغ نشه درسها رو اراعه و از افراد تمرین خواست....


من كه موافقم
وقتي پولي بشه بهتر هم هست
يعني همه نمي ياند و اونايي كه مي ياند پاش وايميسند :لبخند گشاده!:  :لبخند گشاده!:

----------


## MIDOSE

> من نمی دونستم همچین کلاس هایی هم هست


کلاس نه،یک سری جلسه هست که ظاهرن هر هفته بر گذار می شه(بد نیست یه سری بهشون بزنی)



> طبق گفته شما فقط 10% ازشون خبری بشه کار ما راه میفته


اون ده درصد بدتر از خودت نباشند بهتر نیستند(از نظر علمی) به هر حال من جوانب کار را گوشزد کردم که خدایی نکرده پشیمانیی در پی نداشته باشه.

 امیدوارم تو این مسیر موفق و پیروز باشی

----------


## bghad1

بازم سلام...من حرفاي midose  عزيز رو قبل دارم ؛ اما خوب بالاخره هركاري رو يه روزي بايد شروع كرد ديگه(البته بستگي به كارشم داره!!)
اما در كل به نظرم حرف اين دوست عزيزمونم بد نيست...
اما راجع به اينكه مي گي فلان درصد، من جزو غير اون فلان درصديم كه گفتياااا!!!!!! :دي:دي:دي

موفـق باشـيم

----------


## seyedof

سلام

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

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

ممنون علی

----------


## zoofa

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


سلام دوست عزيز
اين نشست ها كه ميگيد كجا برگزار مي شه و كي برگزار مي شه و هزينه اش چقدره و آيا همه رو راه مي دن يا نه؟؟  :لبخند گشاده!:

----------


## kochol

سلام

به نظر من وقتی که جلسه هفتگی برگزار می کنید هر کی که کمکاری کرده بود رو جریمه مالی کنید و همچنین برای غیبت ها هم جریمه مالی در نظز بگیرید.

این طوری حداقل یه سری اسپانسر پیدا می کنید D:

----------


## amsjavan

> سلام
> 
> به نظر من وقتی که جلسه هفتگی برگزار می کنید هر کی که کمکاری کرده بود رو جریمه مالی کنید و همچنین برای غیبت ها هم جریمه مالی در نظز بگیرید.
> 
> این طوری حداقل یه سری اسپانسر پیدا می کنید D:


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

----------


## bghad1

shyiar جان،اين جلسات قرار بود هر ماه برگزار بشه كه فعلاً مثل اينكه نشده هنوز..
اما تو اين جلسات ، اونجوري كه مي دونم همه مي تونن بيان و محدوديت نداره...
رايگان هم هست....
(البته ببخشيد كه تو كارتون دخالت مي كنما آقاي seyedof  :خجالت: )

----------


## MIDOSE

> بقیه دوستان که فقط حرف های نا امید کننده می زنند.


راسیاتش من حرف نا امید کننده ای نمی بینم.
دوست عزیزم هر چقدر با جوانب و مسائل مسیر اشنا باشی بهتر می تونی فعالیت کنی.

اگه می خوایی مثل بقیه ای که که قبلن ذکر کردم نشی:

اگه بتونی هر هفته(و حتی زودتر) ملاقات داشته باشید، گروهتون پایدار تر خواهد بود و کمتر احساس سستی (جازدن) به اعضا دست می ده.

وقتی من هر سه روز یکبار ملاقات حضوری داشته باشم رابطه ی دوستی(اموزشی) بیشتر می شه و این به نحوی سبب محکم تر شدن روابط می شه(پیوند یونی :لبخند گشاده!: )،ضمنن انتظار نداشته باش همین الان سی نفر حاضر بشند، تعدادتون حتی اگر دو نفر هم بود برای شروع خوبه.

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

وقتی ملاقات زیاد شد، تعداد اعضا هم زیاد می شه(مثلن من دوست خودم را دعوت می کنم).اگه می خوایی ملاقات حضوری باشه محدود به محل زندگیت می شی و اگر به صورت مجازی باشه احتمال رشد بیشتره و...

از این بحث ها تا دلت بخواد می تونم برات بگم ولی همین نکات را فعلنده داشته باش(تعدد ملاقات،سطح علمی خودت،طریقه ی ارتباط)، اگه بتونی به حرفام به خوبی عمل کنی و سعی در دعوت کاربران خود سایت(مخصوصن این کاره ها+حقوق) هم داشته باشی بد نیست :چشمک: .

نکته:مهمترین کار برات فعلنده استارت اول(و روشن شدن موتور) است.راستی عوامل فرعی(و نسبتن مهم) جذب یادت نره :چشمک: 

موفق باشی

----------


## AliyerEdon

من قصد همکاری ندارم ولی تا یه سال پیش که با DX و ++C کار می کردم و تمام (99 درصد) کتاب های برنامه نویسی رو دانلود کردم و اکثرا خوندم، این کتاب رو بهترین انتخاب کردم. کتابیه که به صورت دانشگاهی تالیف شده و از اصول شروع کرده و تمام مباحث DX گرافیکی رو پوشش داده:
برو تو این سایت و تمام کتاب هاش رو ببین. خاصتی لینک دانلود رو می دم.
در ضمن چون لینک دانلود این کتاب پیدا نمی شه و قیمتش خیلی زیاده، به همین خاطر زیاد معروف نشده ولی بهترینه. فقط کافی یه درسش رو بخونی!! به شدت دقیق و با اصول. راستی یکی از مولف هاش هم Frank Luna هست که همین کتابی که در صفحه ی اول معرفی کردید رو تالیف کرده.

http://www.gameinstitute.com

http://www.gameinstitute.com/courses.php

----------


## zoofa

> من قصد همکاری ندارم ولی تا یه سال پیش که با DX و ++C کار می کردم و تمام (99 درصد) کتاب های برنامه نویسی رو دانلود کردم و اکثرا خوندم، این کتاب رو بهترین انتخاب کردم. کتابیه که به صورت دانشگاهی تالیف شده و از اصول شروع کرده و تمام مباحث DX گرافیکی رو پوشش داده:
> برو تو این سایت و تمام کتاب هاش رو ببین. خاصتی لینک دانلود رو می دم.
> در ضمن چون لینک دانلود این کتاب پیدا نمی شه و قیمتش خیلی زیاده، به همین خاطر زیاد معروف نشده ولی بهترینه. فقط کافی یه درسش رو بخونی!! به شدت دقیق و با اصول. راستی یکی از مولف هاش هم Frank Luna هست که همین کتابی که در صفحه ی اول معرفی کردید رو تالیف کرده.
> 
> http://www.gameinstitute.com
> 
> http://www.gameinstitute.com/courses.php



سلام دوست عزيز
ممنون مي شم لينكشو بزاري يا اگر مشكلي هست برام با پيام خصوصي بفرستيد
ممنون

----------


## amsjavan

> راسیاتش من حرف نا امید کننده ای نمی بینم. 
> دوست عزیزم هر چقدر با جوانب و مسائل مسیر اشنا باشی بهتر می تونی فعالیت کنی.


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




> اگه بتونی هر هفته(و حتی زودتر) ملاقات داشته باشید، گروهتون پایدار تر خواهد بود و کمتر احساس سستی (جازدن) به اعضا دست می ده. وقتی من هر سه روز یکبار ملاقات حضوری داشته باشم رابطه ی دوستی(اموزشی) بیشتر می شه و این به نحوی سبب محکم تر شدن روابط می شه


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



> ضمنن انتظار نداشته باش همین الان سی نفر حاضر بشند، تعدادتون حتی اگر دو نفر هم بود برای شروع خوبه.


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



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


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



> از این بحث ها تا دلت بخواد می تونم برات بگم ولی همین نکات را فعلنده داشته باش(تعدد ملاقات،سطح علمی خودت،طریقه ی ارتباط)، اگه بتونی به حرفام به خوبی عمل کنی و سعی در دعوت کاربران خود سایت(مخصوصن این کاره ها+حقوق) هم داشته باشی بد نیست.


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

----------


## jalal.H

سلام amsjavan عزیز

من تا حدودی با C++‎ آشنایی دارم و به نوشتن بازی و مباحث پیرامون علاقه دارم

خوشحال میشم توی گروهت از من هم دعوت کنی  :لبخند گشاده!: 

در ضمن من جلال هستم

ایمیلم : j.aghazadeh@yahoo.com

----------


## jalal.H

سلام

اگه خواستین یه چند تایی(63 تا) کتاب تو زمینه ی Direct X ببینید میتونین به لینک زیر برین.

http://forum.webzist.com/showthread.php?t=10623

راستی کتابی رو هم که دوستمون " amsjavan " به عنوان منبع برای گروه انتخاب کردن اینجا هست.

اسمش چی بود ؟؟؟؟  :چشمک:

----------


## AliyerEdon

download ebook ke moarefi kardam:

http://www.ebookee.com/Game-Institut...II_177801.html

----------


## saman vazir

سلام amsjavan 
من سامان هستم، از طرحت خیلی خوشم اومد  :تشویق: 
من کارای گرافیکی و انیمیشن دوست دارم و خوشحال می شم اگه منم بتونم با گروه همکاری کنم.  :لبخند گشاده!: 
این هم ایمیلم : saman_fv@yahoo.com

----------


## amsjavan

> سلام amsjavan 
> من سامان هستم، از طرحت خیلی خوشم اومد 
> من کارای گرافیکی و انیمیشن دوست دارم و خوشحال می شم اگه منم بتونم با گروه همکاری کنم. 
> این هم ایمیلم : saman_fv@yahoo.com


من هم خوشحالم میشم اگر باهاتون همکاری کنم اما آیا شما به برنامه نویسی علاقه دارید و یا تا حالا تجربه برنامه نویسی داشته اید؟

----------


## saman vazir

بله من به برنامه نویسی علاقه دارم و  با زبان های C++‎ , C تا حدودی آشنایی دارم و کار کردم.

----------


## romixery

بابا بي خيال. اين 28 امين پست اين تاپيكه كه من مي زنم. شايد اين بحثا بيخود دارين كش مي دين.  براي برنامه نويسي با DirectX اينكه "*تا حدودي با زبان ++C آشنا هستم*" كافي نيست. بايد خوره زبان ++C باشي. شماها اصلاً‌ يه نمونه كد ساده از DirectX ديدين كه ببينيند معماريش چجوريه؟ بسيار مشكل،‌ سطح برنامه نويسي اون هم بسيار بالاست. بسيار بالا. خارج از تصور شما. من يك ماه روي DirectX كار كرم. نتيجه چي شد؟ اينكه فقط براي نمايش يك صفحه سياه، اونم به طور سه بعدي، حداقل بايد 500 خط برنامه نويسي كنم. اين تازه مرحله initialize هست. مرحله معماري اصلي مونده. پيشنهاد من اينه كه اول اساتيد حرفه اي هاي انجمن، يه آموزش كامل ++C بزارن. بعد بريد سراغ DirectX. اون وقت منم هستم. دوستاني كه ++C رو توي دانشگاه خوندن بدونن اين چيزايي كه توي دانشگاه ياد ميدن، چيزهاي بسيار بسيار ابتداييش هست. ++C يه دنياي تمام نشدي هست. مي تونيد اين رو تحقيق كنيد. تازه مسائل مالي و اينجور چيزا بماند....

----------


## jalal.H

خدمت دوست عزیزم romixery

البته جواب ایشون رو amsjavan جان باید بده ....

حقیقت رو گفتن خوبه ولی اگه گفتنش مفید تر از نگفتنش باشه...

این جوری که شما ته دل ما رو خالی کردی یه کم خطر داره ممکن باعث از بین رفتن امید بعضی ها بشه ولی شاید ما کارو شروع می کردیم به همین نتیجه می رسیدیم بعد برای هدفمون می رفتیم C++‎ رو هم در همون حدی که می گید یاد می گرفتیم ...

شاید هم من اشتباه می کنم ؟!  :متفکر:

----------


## bghad1

بازم سلام خدمت همه دوستان...
romixery جان، البته به نظرم تا حدود زيادي حرف شما درسته و من هم به شخصه حرف شما رو تا حدود زيادي تاييد مي كنم...
اما چيزايي كه اين وسط هست:



> براي برنامه نويسي با DirectX اينكه "*تا حدودي با زبان ++C آشنا هستم*" كافي نيست. بايد خوره زبان ++C باشي.سطح برنامه نويسي اون هم بسيار بالاست. بسيار بالا. خارج از تصور شما


خيلي نااميد كننده بود به نظرم(هر چند كه تا حدودي درست بود؛اما شايد با بيان ديگه اي مي تونستي منظورتو بهتر برسوني! البته به نظرم تا حدودي شمام كلاً نااميدي!!)




> شماها اصلاً‌ يه نمونه كد ساده از DirectX ديدين كه ببينيند معماريش چجوريه؟


براي نمونه ، من كدهاي directx رو ديدم..شايد بعضي جاها اونجوري كه شما مي گي باشه، اما تا اونجا كه من اطلاع دارم اينجوري نيست كه براي ساخت يه صفحه سياه 3  بعدي احتياج به 500 خط سورس نويسي باشه...




> دوستاني كه ++C رو توي دانشگاه خوندن بدونن اين چيزايي كه توي دانشگاه ياد ميدن، چيزهاي بسيار بسيار ابتداييش هست. ++C يه دنياي تمام نشدي هست. مي تونيد اين رو تحقيق كنيد


البته لازم نبود اينو يادآوري كني...چون فكر مي كنم كه حداقل اين يه مورد رو همه مي دونن كه تو دانشگاه فقط يه چيزايي مي گن كه برات ايجاد انگيزه يا كنجكاوي كنه و تو خودت بايد بري دنبالش..
دقت كن:  دانشجو == كسي كه جستجوي دانش رو مي كنه...
پس از خود لغتش معلومه ديگه :دي:دي

به هر حال مرسي...دستتم درد نكنه...
موفق باشيم...
خـدا نـگهـدار....

----------


## amsjavan

> بابا بي خيال. اين 28 امين پست اين تاپيكه كه من مي زنم. شايد اين بحثا بيخود دارين كش مي دين.  براي برنامه نويسي با DirectX اينكه "*تا حدودي با زبان ++C آشنا هستم*" كافي نيست. بايد خوره زبان ++C باشي. شماها اصلاً‌ يه نمونه كد ساده از DirectX ديدين كه ببينيند معماريش چجوريه؟ بسيار مشكل،‌ سطح برنامه نويسي اون هم بسيار بالاست. بسيار بالا. خارج از تصور شما. من يك ماه روي DirectX كار كرم. نتيجه چي شد؟ اينكه فقط براي نمايش يك صفحه سياه، اونم به طور سه بعدي، حداقل بايد 500 خط برنامه نويسي كنم. اين تازه مرحله initialize هست. مرحله معماري اصلي مونده. پيشنهاد من اينه كه اول اساتيد حرفه اي هاي انجمن، يه آموزش كامل ++C بزارن. بعد بريد سراغ DirectX. اون وقت منم هستم. دوستاني كه ++C رو توي دانشگاه خوندن بدونن اين چيزايي كه توي دانشگاه ياد ميدن، چيزهاي بسيار بسيار ابتداييش هست. ++C يه دنياي تمام نشدي هست. مي تونيد اين رو تحقيق كنيد. تازه مسائل مالي و اينجور چيزا بماند....


 سلام دوست عزیز
بله گفته شما درسته کار با DirectX کار ساده ای نیست. یکی از دلایل تشکیل گروه هم ساده نبودن یادگیری آن هست.
طبق گفته Frank D.Luna نویسنده کتابی که معرفی کردم شما باید C++‎‎ را در حد متوسط بلد باشید. متوسط یعنی این که کار با مباحث زیر را بلد باشید:
 pointers (اشاره گرها)    
 arrays (آرایه ها)    
 operator overloading (سربارگذاری عملگرها)
 linked list (لیست های پیوندی)
 inheritance (ارث بری)
 polymorphism (چند ریختی)


البته این که شما گفتید باید خوره C++‎‎ باشید اصلا درست نیست. من خودم ۱ سال پیش که خیلی C++‎‎ بلد نبودم(البته الان هم خیلی بلد نیستم) و دانشم در حد دانشگاه بود(البته کتاب هایی را هم در کنارش مطالعه می کردم )اما خوره نبودم از ارث بری و چندریختی اطلاعات خیلی کمی داشتم که کفایت می کرد٬ در آن زمان از روی کتابی که در پست اول اسمش رو گفتم شروع به یادگیری DirectX کردم و اصلا مشکلاتی که در این راه برام پیش آمد ربطی به تجربه کم C++‎‎ من نبود و به خود مفاهیم DirectX مربوط می شد که معمولا با تحقیق در اینترنت و کتاب های دیگه مشکلاتم رو حل می کردم. البته این را هم توجه داشته باشید که هر چقدر تجربه شما از برنامه نویسی و علمتون به C++‎‎ بیشتر باشد فرایند یادگیری سریعتر طی خواهد شد و مشکلات آسانتر حل می شود. همچنین درکتون هم از مسایلی که مطرح می شود بالاتر می رود.
به هر حال دوستانی که بعضی از مباحث گفته شده را بلد نیستند نگران نباشند. حدود ۱ ماه زمان می برد تا ما با مفاهیم ریاضی و پایه ای DirectX آشنا بشیم در این زمان به این دوستان کمک خواهم کرد تا در سریعترین زمان مباحثی از C++‎ را که مشکل دارند یاد بگیرند. برای این کار منابع زیادی از جمله فیلم و کتاب دارم که در اختیارشان قرار می دهم و یک برنامه ریزی هم برای این دوستان خواهم داشت. البته این به تلاش خود این دوستان بستگی دارد که باید دو برابر دیگران کار کنند.

----------


## jalal.H

سلام amsjavan جان

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

چون کسانی که کمتر از 20 پست داشته باشن نمی تونن پیام خصوصی بدن(مثل من  :لبخند گشاده!: )...

ممنون  :چشمک:

----------


## romixery

با سلام خدمت دوستان عزيز
از اينكه به طور كامل نقدم كردين خيلي ممنونم. مثل اينكه دوستان خيلي دلخور شدن. ببينيد، من جايي گفتم كه اين كار نشدنه؟ اگه نشدني بود، اصلاً DirectX به چه دردي مي خورد؟ من به اين اصل اعتقاد دارم كه خواستن توانسته. ولي چند نكته رو بايد بگم:
amsjavan عزيز:
pointers (اشاره گرها)    
 arrays (آرایه ها)    
 operator overloading (سربارگذاری عملگرها)
 linked list (لیست های پیوندی)
 inheritance (ارث بری)
 polymorphism (چند ریختی)
اين مواردي كه شما مي گين بايد بلد باشين. مباحث كمي نيست. اصول برنامه نويسي شيئي گراي حرفه اي رو همينا تشكيل ميده. من گفتم كه بايد حرفه بلد باشين. و بازم مي گم كه بايد حرفه اي باشين.
بد نيست كه يه سري به ويكيپديا بزنيد و ببينيد كه چند نوع مهندس براي ساخت يه بازي نياز هست. براي يه بازي معمولي حداقل يه تيم 7 الي 12 نفره حرفه اي. حداقلش اينه:
مهندسان برنامه نويس گرافيك ( بايد با مباحث گرافيك آشنا باشن)
مهندسان فيزيك ( براي اينكه اگه تو بازي يه تير شليك كردين به طرف، فقط بيفته زمين و بميره، نه منفجر بشه. براي طبيعي بودن بازي لازمه)
مهندسان صدا 
مهندسان كنترل بازي (مديريت ورودي و خروجي ها)
و ...
خوب همه اينها رو DirectX پوشش ميده. DirectX فقط گرافيك كه نيست.
حتماً‌ اين لينك رو ملاحظه كنيد:
http://en.wikipedia.org/wiki/Game_programmer
بازم ميگم. اين كار نشدني نيست. نمي خواستم كه توي دل دوستان عزيز رو خالي كنيم. اين افتخاري براي ايرانه كه دوستاني هستند كه مي خواين اين تكنولوژي پيشرفته رو بومي كنن. و اين عاليه و نمي خوام بگم نميشه. ميگم اگه كسي بياد توي اين كار، بايد تا تهش باشه. وسط كار جا نزنه. اگه اينجوري بشه، اين همه بحث و گفتگو هيچ فايده اي نداره. چون شروع كار هست، گروه 4 تا 5 نفره كفايت نمي كنه. يه جمع زيادي مي خواد تا در مدت زمان كوتاه، پيشرفت قابل توجهي داشته باشين. ولي اينو بگم كه آموزش ++C كاملاً لازمه. من خودم شخصاً‌ اگه بتونم كمكي در اين زمينه بكنم، بسيار خوشحال ميشم.
پيشنهاد من اينه كه اگه واقعاً تصميم به انجام اين كار گرفتين، تخصص و علايق بچه هاي تيم ارزيابي بشه، و هر كسي رو دنبال كاري بفرستين. نه اينكه همه روي يه بحث از DirectX بمونه. مثلاً گرافيك. در اينصورت در بقيه مباحث خلأ ايجاد ميشه، و كار رو به تعويق ميندازه. با برنامه كار كنيد و موفق باشين.
به اميد موفقيت.

----------


## amsjavan

> سلام amsjavan جان
> 
> لطف کن ایمیل خودتو بزار تا اگه کسی کاری داشت بتونه باهات تماس داشته باشه
> 
> چون کسانی که کمتر از 20 پست داشته باشن نمی تونن پیام خصوصی بدن(مثل من )...
> 
> ممنون


سلام جلال جان
ایمیلم رو که تو پست اول گذاشتم. حالا دوباره اینجا هم می ذارم:
amsjavan@yahoo.com

----------


## amsjavan

> amsjavan عزيز:
> pointers (اشاره گرها)    
>  arrays (آرایه ها)    
>  operator overloading (سربارگذاری عملگرها)
>  linked list (لیست های پیوندی)
>  inheritance (ارث بری)
>  polymorphism (چند ریختی)
> اين مواردي كه شما مي گين بايد بلد باشين. مباحث كمي نيست. اصول برنامه نويسي شيئي گراي حرفه اي رو همينا تشكيل ميده. من گفتم كه بايد حرفه بلد باشين. و بازم مي گم كه بايد حرفه اي باشين.


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




> بد نيست كه يه سري به ويكيپديا بزنيد و ببينيد كه چند نوع مهندس براي ساخت يه بازي نياز هست. براي يه بازي معمولي حداقل يه تيم 7 الي 12 نفره حرفه اي. حداقلش اينه:
> مهندسان برنامه نويس گرافيك ( بايد با مباحث گرافيك آشنا باشن)
> مهندسان فيزيك ( براي اينكه اگه تو بازي يه تير شليك كردين به طرف، فقط بيفته زمين و بميره، نه منفجر بشه. براي طبيعي بودن بازي لازمه)
> مهندسان صدا 
> مهندسان كنترل بازي (مديريت ورودي و خروجي ها)
> و ...
> خوب همه اينها رو DirectX پوشش ميده. DirectX فقط گرافيك كه نيست.


 هدف همه افراد در این گروه بازی ساختن نیست. خیلی ها شاید بخواهند از DirectX در برنامه هاشون استفاده کنند. شما این را هم در نظر داشته باش که کسی که برنامه نویس گرافیک هست و از DirectX استفاده می کنه حتما باید به قسمت های دیگر DirectX هم اشراف داشته باشه در غیر اینصورت کار گروهی غیر ممکنه




> اين افتخاري براي ايرانه كه دوستاني هستند كه مي خواين اين تكنولوژي پيشرفته رو بومي كنن.


قرار نیست این تکنولوژی رو بومی کنیم. ما می خوایم از این تکنولوژی در برنامه های بومی استفاده کنیم.



> چون شروع كار هست، گروه 4 تا 5 نفره كفايت نمي كنه. يه جمع زيادي مي خواد تا در مدت زمان كوتاه، پيشرفت قابل توجهي داشته باشين.


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




> ولي اينو بگم كه آموزش ++C كاملاً لازمه.


لازمه اما نه در اون حدی که شما می گید. در ضمن لازم نیست کار رو به خاطر C++‎‎‎ متوقف کنیم. می تونیم برنامه رو کند تر کنیم و به طور موازی C++‎‎‎ هم یاد بگیریم.




> پيشنهاد من اينه كه اگه واقعاً تصميم به انجام اين كار گرفتين، تخصص و علايق بچه هاي تيم ارزيابي بشه، و هر كسي رو دنبال كاري بفرستين. نه اينكه همه روي يه بحث از DirectX بمونه. مثلاً گرافيك. در اينصورت در بقيه مباحث خلأ ايجاد ميشه، و كار رو به تعويق ميندازه.


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

----------


## MOJTABAATEFEH

*موفقيت از آن كساني هست كه منتظر ديگران نمي مانند*

خوشحال مي شم منم دوستاي جديدي پيدا كنم كه با هم يك هدف رو دنبال مي كنيم
mojtaba.arabi20@gmail.com

----------


## amsjavan

> *موفقيت از آن كساني هست كه منتظر ديگران نمي مانند*
> 
> خوشحال مي شم منم دوستاي جديدي پيدا كنم كه با هم يك هدف رو دنبال مي كنيم
> mojtaba.arabi20@gmail.com


سلام دوست عزیز
میشه اسمتون رو بنویسید و بگید چقدر تجربه برنامه نویسی دارید

----------


## MOJTABAATEFEH

من شنيدم #C براي طراحي بازي قويتره آيا همين جوره؟
و اينكه هر كدام بهترن چه مزايايي نسبت به اون يكي دارند؟

با تشكر

----------


## amsjavan

> من شنيدم C#‎‎‎ براي طراحي بازي قويتره آيا همين جوره؟
> 
> و اينكه هر كدام بهترن چه مزايايي نسبت به اون يكي دارند؟ 
> با تشكر


این تاپیک برای هدف دیگه ای تشکیل شده و اینجا جای این بحث نیست. در ضمن شمااز DierctX می تونی تو C#‎‎ هم استفاده کنی. اما برای همراهی گروه باید C++‎‎ رو بلد باشی.

----------


## amsjavan

دوستان جدیدی که می خواهند با ما همکاری کنند بدانند که اولین جلسه گروه، جمعه این هفته به تاریخ 1388/7/3 برگزار خواهد شد. زمان آن هم از ساعت 10 صبح تا 12 می باشد. آدرس مکان جلسه هم برای اعضا ارسال شده است. دوستان جدید در صورت تمایل هر چه زودتر اطلاع دهند تا از گروه عقب نیفتند.

----------


## amsjavan

خیلی وقت بود می خواستم این تاپیک رو بیارم بالا و به اونایی که فکر می کردند این کارا تو ایران نمیشه بگم که اشتباه می کنند! بگم که ایراد از طرز فکر و همت خودمونه.
 تقریبا 4 ماه پیش بود که تاپیکی با این موضوع رو ایجاد کردم و از دوستان برای عضویت در یک گروه دعوت کردم. خیلی ها مثل همیشه می گفتند "امکان نداره!". بعضی ها که با تجربه بودند راهکار نشان می دادند و خطرات این کار را گوشزد می کردند. خیلی ها هم بی تفاوت از کنار آن می گذشتند.

 جناب MIDOSEفکر می کنم اون معجزه ای که گفته بودید اتفاق افتاده و گروه الان تقریبا 4 ماهه که سرپاست و پیشرفت های زیادی هم داشته  و با انگیزه ای که در بچه ها برای یادگیری می بینم بقیه تا آخر ماندنی هستند. 
از جناب MIDOSE تشکر ویژه ای هم دارم چون توصیه های ایشون بسیار کارامد و عملی بودند. در طول این راه بعضی از این نکات رو از نزدیک لمس کردم. امیدوارم در ادامه باز هم ما رو راهنمایی کنند.

 از ایده kochol خان هم استفاده کردم و برای غیبت ها جریمه ای در نظر گرفتم که چند نفری تا حالا پرداخت کردند. اسامی اعضای گروه رو همینجا می نویسم بعدا با چهره های این دوستان هم آشنا می شوید:
 جلال آقازاده- سامان وزیری- محمدعلی قدس- سیاوش عابدی- امیرحسین جوان آملی ( خودم ). البته اولش 7 نفر بودیم که به دلایلی 2 نفر نتونستند ادامه بدهند

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

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

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

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

 وبلاگی هم برای گروه درست کردیم که گزارشات هر هفته رو توش می نویسیم. مسئول این وبلاگ جلال هست که ذوق هنری خیلی خوبی هم داره. 
directxgroup.blogfa.com

 در  اولین جلسات از جزوه فراهی بخش کلاس ها رو مطالعه کردیم و چند تا تمرین هم انجام دادیم تا C++‎‎‎‎‎‎‎ دوره شود و اشکالات مشخص بشه. در کنار C++‎‎‎‎‎‎‎، یادگیری API های ویندوز را نیز شروع کردیم که تقریبا در حد نیاز کارمون یاد گرفتیم. البته C++‎‎‎‎‎‎‎ وسعت زیادی داره و مهارت در آن نیازمند تمرین مستمر و زیاده. برای همین تصمیم گرفتیم با دعوت از استادی برجسته در این زمینه یک دوره آموزشی برای بچه های گروه بگذاریم. 
بعد از دوره اجمالی C++‎‎‎‎‎‎‎ کتابی که به عنوان منبع اصلی معرفی کرده بودم رو شروع به خوندن کردیم و مباحث پایه که شامل 3 فصل اول می شد رو به طور کامل خوندیم. 
تا الان که این مطلب رو می نویسم مباحث initialize کردن DirectX و چندتا کار ساده مثل نوشتن روی صفحه و رسم خط و اشکال هندسی دوبعدی و حرکت آن ها رو یاد گرفتیم. عکس نمونه کارهای گروه به همراه لینک برنامه ها رو در زیر مشاهده می کنید:
اولین برنامه ای که اجرا کردیم متصل کردن پنجره به DirectX بود که فکر نمی کنم لازم باشه عکسی ازش بگذارم چون چیز خاصی نداره
دومین کار نوشتن یک متن ساده بر روس صفحه بود که چیزهای زیادی تو این قسمت یاد گرفتیم.



لینک کد برنامه

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



 لینک کد برنامه

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



لینک کد برنامه
در این برنامه با فشردن کلید چپ در نقاط مختلف می توانید چندضلعی را رسم کنید. با استفاده از کلید وسط موس می توانید چند ضلعی را حرکت دهید و با فشردن کلید راست موس و حرکت دادن به سمت چپ و راست می توانید چندضلعی را بچرخانید. البته با تغییر متغیر عمومی angle می توانید درجه دلخواه را قبل از اجرا کردن برنامه وارد کرده و هنگام اجرا با فشردن کلید R عمل چرخش را انجام دهید. چرخش بر اساس مبدا مختصات که گوشه بالا سمت چپ پنجره می باشد انجام می شود.

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

 قراره مطالب آموزشی از کارهایی که انجام می دهیم را به کمک اعضای گروه تهیه کرده و در همین تاپیک قرار بدهم تا بقیه دوستان هم استفاده کنند.

 خوشحال میشم از نظرات همه دوستان در ادامه کار استفاده کنم.

----------


## Armin060

آقا. من هم هستم.

----------


## amsjavan

> آقا. من هم هستم.


چقدر با C++‎ آشنا هستی؟ تجربه برنامه نویسیت در چه حدیه؟ با کتاب انگلیسی مشکلی نداری؟ تا حالا با API های ویندوز کار کردی؟ اگه بخوای عضو گروه بشی باید بتونی طبق برنامه ای که بهت میدم خودتو به بقیه برسونی و بعد از اون هم هر هفته باید طبق برنامه عمل کنی و تمام کارها رو انجم بدی. غیبت هم نباید داشته باشی. در صورت هر گونه تخلف از قوانین، عدم انجام کارها و یا غیبت در جلسات طبق قوانین گروه باید جریمه پرداخت کنی. به سوالات بالا جواب بده تا بتونم تصمیم بگیرم.

----------


## Armin060

چقدر با C++‎‎ آشنا هستی؟ 
در حد کتاب C++‎ How To Program.

تجربه برنامه نویسیت در چه حدیه؟ 
تقریبا 4 سال

با کتاب انگلیسی مشکلی نداری؟ 
دارم. تقریبا 40% مشکل دارم. که رفع میشه.




> حالا با API های ویندوز کار کردی؟


بله کار کردم.

شرایط هم قبول.

----------


## MIDOSE

قبل از هر چیز بهتون تبریک می گم و خوشحالم  در راهی که از دید عرف چندان(بهتر بگم؛ اصلن) ساده نیست توانستید اولین گام ها را بردارید‌‌ مضاف بر‌ اینکه کار گروهی هم بوده.

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

الان برای جذب اشخاص جدید اقدام نکنید.

برای شما و دوستانتان ارزوی موفقیت دارم.

----------


## mohamnag

دوستان فکر نمی کنید یادگیری HLSL و XNA که جایگزین گرایش قبلی استفاده از DirectX هست بهتر باشه؟
حداقل با این روش کدتون قابل ترنسفر به ویندوز، ایکس باکس و لینوکس هست.

----------


## bachebahal_1363

آقا ما رو هم بازی بدین 
من C#‎ در حد خوبی بلدم 
با انگلیسی در حد را بنداز مشکلی ندارم
انگیزه بسیار بالایی هم دارم

----------


## Armin060

> دوستان فکر نمی کنید یادگیری HLSL و XNA که جایگزین گرایش قبلی استفاده از DirectX هست بهتر باشه؟
> حداقل با این روش کدتون قابل ترنسفر به ویندوز، ایکس باکس و لینوکس هست.


گمونم DirectX رو XBox360 هم کاز کنه! ولی رو لینوکس نه.

----------


## mohamnag

> گمونم DirectX رو XBox360 هم کاز کنه! ولی رو لینوکس نه.


فکر نمی کنم کشف جدیدی کرده باشید. اگر دقت کنید من گفتم از XNA به جای DirectX استفاده کنید. جهت اطلاع حضرت عالی عرض می کنم که XNA داره با پروژه Mono.XNA به لینوکس پورت میشه. لطفا قبل از گمون کردن دقت کنید.

----------


## Armin060

بله، حتما. ولی خوب راستش هنوز هم از جمله ی اول شما همون برداشت اولی که کردم رو دارم. در حال بیخیال. ببخشید

----------


## amsjavan

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

----------


## amsjavan

خوب ما باز هم با یک کار جدید از گروه برگشتیم.

بعد از مدت ها سر و کله زدن با directx،  بچه های گروه هر کدوم کار نسبتا جدیدی را ارائه دادند. با پایان فصل 5 اعضای گروه توانایی این رو پیدا کردند که بتونند ایده های خودشون رو به صورت دو بعدی پیاده کنند و در واقع یک جور انگیره مضاعف و اعتماد به نفس بیشتر به همه داد. فصل 5 کتاب در مورد sprite ها بود و اینکه چه جوری می تونیم بازی های دو بعدی را در DirectX تولید کنیم. مثال خود کتاب که در طول فصل ایجاد شده را در زیر می بینید:



دانلود سورس کد
این یک فضاپیما است که به اطراف حرکت می کند و فقط توانایی پرتاب یک نوع تیر را دارد.

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

اولین بازی کامل کار علی بود که  نسخه پیشرفته spriteDemo هست.  فضا و فضاپیما تغییر کرده، مدل های تیر گسترش پیدا کرده، دشمن هایی در طول بازی ایجاد شده و رفتارهای هوشمندانه ای از خود نشان میدهند، تعداد کشته ها و سلامتی سفینه هم نمایش داده میشه. عکس شاهکار دوستمون رو می تونید ببینید:



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

خوب بازی بعدی که می خوام بذارم کار خودمه. این بازی شباهت های زیادی به بازی علی داره چون به هر حال هممون مثال کتاب رو تغییر دادیم و امکانات اون رو افزایش داده ایم. تنها تفاوت اساسی این کار با بازی قبلی، انفجار دشمن هنگام از بین رفتن هست. این انفجار با استفاده از تکنیک Page Flipping ساخته شده است.  این بازی هم مشکلات زیادی داره که می شد حل کرد اما تصمیم گرفتیم بازی های جدیدی بسازیم و وقتمون رو روی اونها بذاریم. برای مثال دشمن ها و قتی سفینه رو تعقیب می کنند روی هم میفتند و یکی می شوند در صورتی که اصلا نباید به هم برخورد کنند:



دانلود

بازی بعدی کار جلال و سامان هست که امکاناتش هم شبیه دو بازی قبلی است اما گرافیک جذاب تری داره:




کار سیاوش، محمد علی و سجاد هم هنوز به طور کامل آماده نشده.

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

برای اینکه اعضای گروه در طول عید بی کار! نباشند یکسرری پروژه به انتخاب خود افراد در نظر کرفتیم و قرار شد هر کس تا آخر عید این باری های رو آماده کنه و تحویل بده.

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



 البته تصویر عمق این کار رو نشون نمیده باید بازی کنید تا به جذابیت کار پی ببرید. یکسری مانع هستند که به سمت چپ حرکت می کنند و شما باید از روی آن بپرید. علی سنگ تموم گذاشته و برای این بازی Map Editorهم طراحی کرده!

سامان و جلال هم قراره بازی OX رو پیاده سازی کنند.

خودم هم فعلا در نظر دارم که بازی Snake رو طراحی کنم

محمدعلی،  سجاد و سیاوش هم هنوز به طور دقیق مشخص نشده که چه پروژه ای رو انجام می دهند.

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

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

----------


## REZAsys

دوستان دایرکت کار خسته نباشید ، اما فکر نمیکنید یه کم بازی گرافیک پایینی داره اگر این بازیه خوبش باشه ، پس بدش چیه؟؟!!

----------


## pswin.pooya

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

----------


## Armin060

دوستان دایرکت کار خسته نباشید ، اما فکر نمیکنید یه کم بازی گرافیک پایینی داره اگر این بازیه خوبش باشه ، پس بدش چیه؟؟!! 

متن کامل رو خوندید؟

----------


## sajjadgameactor

واقعا کارتون عالیه



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

ولی از یک سال پیش که وارد دانشگاه شدم بازی کردن رو کامل(98%) گذاشتم کنار و شروع به یادگیری کلی کردم ولی هنوز خیلی عقبم

c رو تقریبا کامل بلدم یعنی زبان ساخت یافته رو ولی C++‎‎  رو 2 ماهه که اومدم تو کارش و هنوز نتونستم با شی گرایی زیاد کنار بیام در مورد گرافیک و بازی سازی و opengl و directx هم زیاد  تحقیق کردم و میدونم (هیچ منبع فارسی نداریم)  همین چیزی که ساختید هم برای اول کار خیلی عالیه  :تشویق: 


من خیلی دوست داشتم که توی این گروه باشم ولی فک میکنم هنوز برام زوده (البته دارم سعی میکنم opengl رو یاد بگیرم) ولی به نظرم قبلش باید مفاهیم اولیه رو یاد بگیرم که اصلا api چیه و حتی با mfc چه طور کار کنم و ....
ولی اگه میشه کارتون رو به گروه محدود نکنید و یه چیزی هم تهش برا ما بگذارید اگه بتونید خلاصه چیزی رو که هر هفته یاد میگیرید روی وب بگذارید خیلی خوب میشه(زکات علم یاد دادنش هست) یا اگر جلسه ای برگزار کردید صدا رو ضبط کنید یا حتی فیلم :لبخند گشاده!:  

در آخر باید بگم که :
واقعا کارتون عالیه

----------


## mhpc_2009

سلام بچه ها دمه همتون گرم میخوام به شما یه حال اساسی بدم من خودم چند تا آموزش تصویری  ساخت بازی دانلود کردم مال شرکت game institue که اساتیدش معروفن از  Frank luna آموزش ها شامل CPP ، AI ، Physic ، Mathmatic و از همه مهمتر Directx به همراه کتابها و فایلهای پروژه می باشد لینکاشون اینها هستند:

FileFactory

http://www.filefactory.com/file/a2g4...rses.part1.rar
http://www.filefactory.com/file/a2g4...rses.part2.rar
http://www.filefactory.com/file/a2g4...rses.part3.rar
http://www.filefactory.com/file/a2g4...rses.part4.rar
http://www.filefactory.com/file/a2g4...rses.part5.rar
http://www.filefactory.com/file/a2g4...rses.part6.rar
http://www.filefactory.com/file/a2g4...rses.part7.rar

Storage.To

http://www.storage.to/get/v4APywfy/G...rses.part1.rar
http://www.storage.to/get/XZLupVhB/G...rses.part2.rar
http://www.storage.to/get/ISt9WL8F/G...rses.part3.rar
http://www.storage.to/get/RXWFunFK/G...rses.part4.rar
http://www.storage.to/get/DbX1YSz3/G...rses.part5.rar
http://www.storage.to/get/byMB3GVK/G...rses.part6.rar
http://www.storage.to/get/RyuP3f9x/G...rses.part7.rar

----------


## Armin060

Managed Code و Unmanaged Code چیه؟ یه جوری بگو ما هم بفهمیم.

----------


## amin1softco

منظورش استفاده از .net هست ولی فکر کنم اشتباه گفته چون 
Unmanaged Code میشه win32
  managed Codeمیشه  .net

----------


## Armin060

> کما اینکه شما هم توی پروژه Space Craft ، دستگاهتون (Device) رو بات توابع مستقیم DirectX ایجاد کردین اما برای مدیریت پنجره اصلی از توابع Managed راستش یه جورایی مخلوط کردین.


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




> اما فکر میکنم قدم مهمی که شما باید بردارید مخصوصا الان که دارای گروهی هستین این باشه که یک Engine انتخاب کنین و برای ادامه اونو به کار ببندید شما در حال حاضر خیلی پایه ای دارید کار میکنید ... . باید خیلی جلوتر از این حرکت کنید .


اینجا ما داریم DirectX یاد می گیریم. من که دارم DirectX یاد می گیرم انجین و این جور چیزا بنویسم، ولی خب اگر قرار بود بازی ساز بشم حتما می رفتم سراغ موتور. ( البته می خوام بازی ساز بشم  :لبخند گشاده!:  و از خیلی وقت پیش موتور رو شروع کردم ) حالا باقی دوستان رو نمی دونم. مثل اینکه می خوان از بعد از عید unreal رو هم گروهی کار کنند.

----------


## amsjavan

سلام 




> Unmanaged Code بیشتر در پروژه های Win32 استفاده میشه . Managed Code در واقع تنها در Net.


طبق تعریفی که Kate Gregory تو یکی از مقاله های خودش داده Managed Code چیزی است که کامپایلر Visual Basic .Net و کامپایلر های C#‎‎‎‎‎‎‎‎ تولید کرده و تحت کنترل CLR اجرا می شوند. این کامپایلرها کد را به زبان ماشین که به طور مستقیم قابل اجرا است کامپایل نمی کنند بلکه آن را به یک زبان میانی ( IL ) کامپایل می کنند. این کدهای تبدیل شده به IL را Managed Code می گویند چون فقط تحت کنترل و مدیریت CLR اجرا می شوند. البته این تعریف در سال 2003 ارائه شده و الان کامپایلرهایی برای زبان های دیگری هم هستند که می تونند Managed Code تولید کنند. بنابراین managed code و unmanaged code چیزی نیست که شما بخواهید از اون در پروژه هاتون استفاده کنید و توسط کامپایلر تولید می شود.
البته MSDN هم تعریفی ارائه کرده که و گفته که Managed Code کدی است که تحت کنترل CLR اجرا می شود ( برای مثال کدهای C#‎‎‎‎‎‎‎‎ و یا      Visual Basic .NET )  که به نظرم تعریف قبلی خیلی کاملتره.




> البته win32 دقیقا همون Unmanaged Code نیست همچنین Net. هم همون Managed Code .


ما در برنامه هامون از Win32 API استفاده کردیم و طبق گفته خود مایکروسافت Win32 API functions مثالی از Unmanaged Code هست:

MSDN : Code that runs outside the CLR is referred to as "unmanaged code." COM components, ActiveX components, and Win32 API functions are examples of unmanaged code.


> کما اینکه شما هم توی پروژه Space Craft ، دستگاهتون (Device) رو با توابع مستقیم DirectX ایجاد کردین اما برای مدیریت پنجره اصلی از توابع Managed راستش یه جورایی مخلوط کردین.


ما از win32 استفاده کردیم و همونطور که گفتم میشه Unmanaged Code.




> بزارید به جای توضیح که اینجا جاش نیست فقط حرفمو ثابت کنم using namespace std این یعنی شما  از Interface های .Net استفاده میکنین


این حرف شما دیگه واقعا جای تعجب داره!  using namespace std هیچ ربطی به .Net نداره و مربوط به کتابخانه های استاندارد C++‎‎‎‎‎ میشه. تمام identifier های کتابخانه استاندار C++‎‎‎‎‎ در حوزه ای به نام std هستند. شما به جای اینکه قبل از هر کردوم از اونها std:: قرار بدی همون اول using namespace std رو می نویسی تا به کامپایلر بفهمانی داری از این حوزه استفاده می کنی. برای اطلاعات بیشتر لینک زیر رو مطالعه کنید:
http://www.steveheller.com/cppad/Output/basics10.html

منابع:
http://www.developer.com/net/cplus/print.php/2197621
http://en.wikipedia.org/wiki/Managed_code
http://msdn.microsoft.com/en-us/library/ms973872.aspx

----------


## amin1softco

به نظر منم بهتر آدم وقتی اشتباه می کنه حداقل اشتباه خودش رو بپذیره نه اینکه بیاد مغالطه کنه .....

----------


## amsjavan

سلام

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

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


 1-      علی قرار شد پروژه قبلیش یعنی SquareGame  را کامل کنه و یکسری امکانات جالب رو بهش اضافه کنه. جالب ترین تغییرش اضافه کردن فیزیک به بازی بود یعنی جاذبه رو در بازی لحاظ کرد طوری که وقتی مکعب به هوا پرتاب می شد با شتاب به سمت زمین می افتاد. یکسری موانع جدید و چند تغییر جزئی دیگه هم به بازی اضافه کرد. نمایی از این بازی رو می تونید در زیر ببینید. به زودی یک نسخه از بازی رو اینجا قرار می دهم چون تا بازی نکنید به جذابیت اون پی نخواهید برد:

 
  

2- جلال و سامان قرار شد با هم پروژه رو انجام بدهند. XO همون بازی معروف رو پیاده سازی کردند. البته در نهایت پروژه به دلیل مشکلاتی کامل نشد. شکل کلی بازی به صورت زیر هست:



 X همون عکسه استخوان هاست که به صورت ضربدر زیر جمجمه قرار گرفته و O هم عکس جمجمه هست بقیه هم پس زمینه هستند.


 3-      سیاوش به تنهایی تصمیم گرفت پروژه ای شبیه به مثال کتاب رو بسازه. هر چند ایده جدیدی تو این بازی نبود اما ساخت این پروژه چیزهای خیلی زیادی رو به سیاوش یاد داد که دقیقا هدف ما هم همین بود. این پروژه یکی از کاملترین پروژه ها بود که سیاوش ساخت اون رو از صفر شروع کرد و اکثر کدها رو خودش نوشت:



 4-      محمد علی و سجاد هم قرار بود بازی پرتاب توپ رو بنویسند. این بازی به این صورت هست که شما ابتدا برای پرتاب یک زاویه تعریف می کنی و سپس با توجه به سرعت باد و شرایط جوی یک سرعت مناسب برای توپ انتخاب می کنی تا در نهایت توپ به هدف مشخص شده برخورد کند. البته این پروژه به دلیل کمبود وقت کامل نشد اما در همان حدی که نوشته شد چیزهای خوبی به سازنده ها یاد داد.


 5-      من هم بازی معروف Snake  رو انتخاب کردم چون از بچگی همیشه دوست داشتم این بازی رو بسازم. نتیجه کار چیز بدی نشد هر چند خیلی امکانات جالب و زیادی میشد به آن اضافه کرد اما فرصت این کار پیدا نشد. این مار ما همه چی می تونه بخوره. نوشتن کدهای چرخش مار یکی از سخترین مراحل ساخت بود که بعد از کلی فکر کردن یک الگوریتم ساده برای آن نوشتم که نتیجه خیلی خوبی داشت. تصویری از بازی و  Source اون رو در زیر قرار دادم:



دانلود سورس برنامه

----------


## amsjavan

ما الات فصل 9 کتاب رو تموم کردیم و فصل 10 رو شروع به خواندم کرده ایم. تا الان تقریبا با مفاهیم اولیه 3D آشنا شدیم و کمی هم با مفاهیم VertexShader و PixelShader آشنایی پیدا کردیم. تمارین مختلفی در این زمینه انجام دادیم که تصاویر چند نمونه ساده از آنها رو اینجا میگذارم:

     این یک مکعب خیلی ساده است که قابلیت چرخش در فضا رو داره. ابتدا مکان نقاط را دادیم و سپس طی مراحلی اون رو رسم کردیم. البته بعدا توسط PixelShader به این مکعب رنگ دادیم و توسط VertexShader تنظیمات مختلف مثل ViewSpace، WorldSpace و Projection را انجام دادیم. برای دانلود سورس اینجا را کلیک کنید.
  
  

 دانلود سورس

 این هم یک موج خطی است که بر روی یک Plane حرکت می کند. موج رو توسط یک معادله خط به نقاط می دهیم و مختصات هر نقطه توسط اون معادله خط در هر لحظه تغییر می کند.


 

دانلور سورس

----------


## amsjavan

این هم یکی از جدیدترین و جالبترین کار 3D هست که تو این هفته توسط علی انجام شده. یک مدل ساده از DNA. دوستانی که با Directx کار کردند حتما می دانند که رسم چنین مدلی توسط کدنویسی با Directx کار بسیار مشکلی است و باید تک تک کره ها را کنار هم قرار داده تا چنین شکلی به وجود آید:

  

سورس برنامه

----------


## amin1softco

دمتون گرم باحاله اگه می تونستید یه کاری کنید که یک صدای زمینه پخش بشه و این شکلا متناسب با ریتم آهنگ تغییر کنه خیلی باحال می شدا مثل winamp  :چشمک:

----------


## sia abedi

> دمتون گرم باحاله اگه می تونستید یه کاری کنید که یک صدای زمینه پخش بشه و این شکلا متناسب با ریتم آهنگ تغییر کنه خیلی باحال می شدا مثل winamp


براي گذاشتن آهنگ بايد دايركت ساند را ياد بگيريم .  :چشمک:

----------


## mahdi1373

سلام، خسته نباشید. کارتون خیلی خوب بود.
شما که دارید این کتاب رو میخونید، اون رو ترجمه نکردید؟
اصلا کسی تاحالا این کتاب رو ترجمه نکرده؟

----------


## sia abedi

> سلام، خسته نباشید. کارتون خیلی خوب بود.
> شما که دارید این کتاب رو میخونید، اون رو ترجمه نکردید؟
> اصلا کسی تاحالا این کتاب رو ترجمه نکرده؟


من ترجمه اي نديدم حالا نمي‌دونم هست يا نه ولي من داشتم يك قسمتي از فصل 4 را ترجمه مي‌كردم كه ديدم واقعا وقت نمي‌كنم ديگه بي خيال شدم تازه معني و مفهومشم با ترجمه كمي از دست رفت  :ناراحت:  
من بهتون سفارش مي‌كنم كه انگليسي اين كتاب را بخونيد من انگليسيم خيلي ضعيف بوده و هست اوايل خيلي مشكل داشتم ولي كم كم يك مقداري راه افتادم :تشویق:

----------


## mahdi1373

فکر می کنم که ترجمه همین کتاب رو انتشارات ناقوس چاپ کرده باشه. شما برنامه نویسی ویندوز(windows 32 application) رو از کجا یاد گرفتید؟ آیا منبعی دارید؟ با برنامه نویسی MFC خیلی فرق داره؟

----------


## sia abedi

> فکر می کنم که ترجمه همین کتاب رو انتشارات ناقوس چاپ کرده باشه. شما برنامه نویسی ویندوز(windows 32 application) رو از کجا یاد گرفتید؟ آیا منبعی دارید؟ با برنامه نویسی MFC خیلی فرق داره؟


من همین الان در سایت ناقوس سرچ کردم چیزی پیدا نکردم حالا نمی‌دونم هست یا نه اگر بود به ما هم بگو
ما با چند تا کتاب انگلیسی و منابع اینترنتی و یک کتاب فارسی قدیمی و ... یاد گرفتیم. من اصلا تا به حال MFC کار نکردم نمی دونم با win 32 چه فرقی داره :اشتباه:

----------


## sia abedi

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

----------


## mahdi1373

اصلا من خودم این کتاب رو خریده بودم، ولی نمیدونستم که ترجمه همون کتاب آقای فرانک لونا است!
این هم آدرسش تو سایت ناقوس:
http://naghoos-andisheh.ir/product_i...roducts_id=209

میشه منابع رو معرفی کنید؟

----------


## sia abedi

> اصلا من خودم این کتاب رو خریده بودم، ولی نمیدونستم که ترجمه همون کتاب آقای فرانک لونا است!
> این هم آدرسش تو سایت ناقوس:
> http://naghoos-andisheh.ir/product_i...roducts_id=209
> 
> میشه منابع رو معرفی کنید؟


دوست عزیز این همون کتابی که ما استفاده می‌کنیمه؟منظورم اینه که همون ترجمش هست؟
چطوری نوشته؟خوب توضیح داده؟اگر فهمش بالا هست بگید من می‌خوام بخرم.لطفا کامل توضیح بدید چه عیب هایی داره چه خوبی هایی داره چون من شاید بخرمش
من خودم به شخصه که تقریبا کتاب برنامه نویسی بازی های کام‍یوتری در ویندوز رامی‌خوندم چون انگلیسیم ضعیف بود و هست و اون موقع خیللللیییی با کتاب انگلیسی مشکل داشتم البته الان یک مقداری را افتادم این کتاب خیلی قدیمیه مال اون موقع هست که تازه ویندوز ۹۸ اومده بوده! :متعجب: 
ترجمه ی آقای داریوش فرسایی از انتشارات زند البته به نظر من زیاد خوب ننوشتنش و من فقط قسمت برنامه نویسی ویندوزش را خوندم . البته من زبون اصلی این کتاب(منظورم این بخشش که در مورد برنامه نویسی ویندوز هست) را به صورت یک تکه مقاله یا کتاب داخل کام‍یوترم دارم به صورت pdf
  forgers win 32بقیه گروه کتاب 
که انگلیسی هست را می‌خوندن که اگر بخواید پی دی اف این کتاب را دارم البته اونا هم کل این کتاب را نخوندمن بلکه یک قسمتیش که لازم داشتن را می‌خوندن چون این کتاب خیلی کامله

----------


## mahdi1373

> دوست عزیز این همون کتابی که ما استفاده می‌کنیمه؟منظورم اینه که همون  ترجمش هست؟
> چطوری نوشته؟خوب توضیح داده؟اگر فهمش بالا هست بگید من می‌خوام بخرم.لطفا  کامل توضیح بدید چه عیب هایی داره چه خوبی هایی داره چون من شاید بخرمش


بله، ظاهرا که ترجمه همون کتابه. کتاب خوبیه، البته برای کسایی که برنامه نویسی ویندوز رو بلدن. شما که خودتون کتاب رو خوندین، خوبی ها بدی هاش رو می دونین، خوب این هم ترجمه همون کتابه. ولی به نظرم به خریدنش می ارزه، من که پشیمون نیستم.



> البته من زبون اصلی این کتاب(منظورم این بخشش که در مورد برنامه نویسی  ویندوز هست) را به صورت یک تکه مقاله یا کتاب داخل کام‍یوترم دارم به صورت  pdf
>   forgers win 32بقیه گروه کتاب 
> که انگلیسی هست را می‌خوندن که اگر بخواید پی دی اف این کتاب را دارم البته  اونا هم کل این کتاب را نخوندمن بلکه یک قسمتیش که لازم داشتن را می‌خوندن  چون این کتاب خیلی کامله


بله، من بسیار مشتاقم که این کتاب رو بخونم. اگه برام email کنید یا در پیام خصوصی لینکش رو بفرستید یا اگه مشکل ندارید همین جا بزارید تا همه استفاده کنند. ممنونم.

----------


## sia abedi

> بله، ظاهرا که ترجمه همون کتابه. کتاب خوبیه، البته برای کسایی که برنامه نویسی ویندوز رو بلدن. شما که خودتون کتاب رو خوندین، خوبی ها بدی هاش رو می دونین، خوب این هم ترجمه همون کتابه. ولی به نظرم به خریدنش می ارزه، من که پشیمون نیستم.
> 
> 
> بله، من بسیار مشتاقم که این کتاب رو بخونم. اگه برام email کنید یا در پیام خصوصی لینکش رو بفرستید یا اگه مشکل ندارید همین جا بزارید تا همه استفاده کنند. ممنونم.


پس خوب ترجمه کردن دیگه؟ یعنی اوقدری خوب هست که بشه از روی اون به جای کتاب انگلیسیش خوند دیگه؟بعد کتاب را که دست نبردن؟تغییرش که ندادن؟
این کتابی هم که خواستید می‌خواستم آپلود کنم که دیدم لینکش هست
http://winprog.org/tutorial/files/fo...torial-pdf.zip

----------


## mahdi1373

من که زیاد انگلیسی اش رو نخوندم، ولی فکر کنم خوب باشه.
از بابت کتاب هم ممنونم.

----------


## amsjavan

برای دوره فصل 4 تا 10 با بچه های گروه قرار گذاشته بودیم که بعد از امتحانات دانشگاه هر کسی یکی از این فصل ها رو برای بقیه ارائه بده و اسلاید هم برای اون فصل درست کنه:

فصل 4 : سیاوش
فصل 5 : جلال
فصل 6 : سجاد
فصل 7 : محمد علی
فصل 8 : سامان
فصل 10 : امیرحسین
فصل 11 : علی

تصمیم گرفتیم این اسلایدها رو اینجا بذاریم تا بقیه دوستانی که علاقمند هستند و در گروه شرکت ندارند استفاده کنند. امیدوارم به دردتون بخوره:

فصل 5 کتاب در مورد Timing، Direct Input، Animation و Sprite ها توضیحاتی  داده است که اسلایدهای این فصل رو می تونید از اینجا دانلود کنید. این اسلایدها کار جلال هست و خیلی هم برای آماده کردنش زحمت کشیده. ارائه خوبی هم داشت.

بقیه اسلاید ها رو در روزهای آینده قرار میدم.
منتظر نظراتتون هستم.

----------


## m2148059

این بود پایان گروه directx گروهی که انصافا با همه پستی و بلندی ها توانست با تلاش و کوشش به حدی برسه که حالا هر کدوم از اعضا بتونند خودشون با directx برنامه نویسی کنند .البته در حد خیلی خیلی مبتدی ولی start خیلی خوبی بود برای همه اعضا تا بتوانند پله های بعدی ترقی رو خودشون بپیمایند .
نه اینکه مشکلی در گروه بوجود آمده باشه که تموم بشه نه بلکه بدلیل اینکه سامان و جلال کنکور داشتن منم مثل همیشه درگیر یک پروژه بودم ، سیاوش مدرسش شروع شده بود علی هم دیگه نمی اومد می موندند جوان و سجاد که اونها قرار شده با هم بخونند . به هر حال قرار شده 5 ماه دیگه باز دور هم جمع شیم و دوباره کار رو از سر بگیریم که البته 5 ماه دیگه کی مردست کی زنده .
مطالبی که تا به الان با گروه یاد گرفتیم به شرح زیر بود که به زودی سجاد Powerpoint آنها را آماده می کنه و اگر عمری بود اون رو اینجا می زاره :
فصل 1 الی 14 و همین طور فصل آخر که همون AdvanceTexturing بود رو با هم خوندیم و تقریبا اکثر اعضاء یاد هم گرفتند .
باید عرض کنم خدمتتون که این گروه اول با یاری خداوند متعال و سپس همکاری نسبتا خوب اعضا بخصوص محمدعلی که کلا نبود  :متفکر:  و سپس مدیریت خوب و بهتره بگم عالی جناب جوان عزیز که واقعا در پایداری گروه موثر بود تونست به مدت حدودا 1 سال به کارش ادامه بده و به حد خوبی برسه .
این متن پایانی رو گذاشتم که اگر کسی بعدا به این تایپیک مراجعه کرد بدونه که این گروه فعالیتش فعلا به اتمام رسیده و تا اطلاع ثانوی هم دوباره تشکیل نمی شود .
خداحافظ طراح بزرگ که آخرشم یه آرم برا گروه طراحی نکردی
خداحافظ انگل پهنای باند اینترنت
خداحافظ دردسر همیشگی 
خداحافظ نخبه MIT (آرما ...)
خداحافظ آقای همیشه مدعی 
خداحافظ رییس گروه 
و خداحافظ آقای همیشه مشغول و مثلا پر مشغله و بی نظم
به امید موفقیت روز افزون همه شما عزیزان همتون رو به خدا می سپارم خدا نگه دار :لبخند گشاده!:  :لبخند گشاده!:  :چشمک:

----------


## flash118

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

----------


## hi.alir

چه آموزش هایی؟

----------


## bozhmehrani

منم هستم.حیلی فکر خوبیه

----------


## matrix-program

پس کو آموزش ها :افسرده:  :افسرده:  :افسرده:

----------


## orache

تاپیک 4 سال پیشو بالا اوردی

----------

