-
نقل قول: تشکیل گروه برای یادگیری Directx
خیلی وقت بود می خواستم این تاپیک رو بیارم بالا و به اونایی که فکر می کردند این کارا تو ایران نمیشه بگم که اشتباه می کنند! بگم که ایراد از طرز فکر و همت خودمونه.
تقریبا 4 ماه پیش بود که تاپیکی با این موضوع رو ایجاد کردم و از دوستان برای عضویت در یک گروه دعوت کردم. خیلی ها مثل همیشه می گفتند "امکان نداره!". بعضی ها که با تجربه بودند راهکار نشان می دادند و خطرات این کار را گوشزد می کردند. خیلی ها هم بی تفاوت از کنار آن می گذشتند.
جناب MIDOSEفکر می کنم اون معجزه ای که گفته بودید اتفاق افتاده و گروه الان تقریبا 4 ماهه که سرپاست و پیشرفت های زیادی هم داشته و با انگیزه ای که در بچه ها برای یادگیری می بینم بقیه تا آخر ماندنی هستند.
از جناب MIDOSE تشکر ویژه ای هم دارم چون توصیه های ایشون بسیار کارامد و عملی بودند. در طول این راه بعضی از این نکات رو از نزدیک لمس کردم. امیدوارم در ادامه باز هم ما رو راهنمایی کنند.
از ایده kochol خان هم استفاده کردم و برای غیبت ها جریمه ای در نظر گرفتم که چند نفری تا حالا پرداخت کردند.
اسامی اعضای گروه رو همینجا می نویسم بعدا با چهره های این دوستان هم آشنا می شوید:
جلال آقازاده- سامان وزیری- محمدعلی قدس- سیاوش عابدی- امیرحسین جوان آملی ( خودم ). البته اولش 7 نفر بودیم که به دلایلی 2 نفر نتونستند ادامه بدهند
در ضمن قراره که با آموزش های مکرر این تاپیک رو بالا نگه داریم تا پرچم اولین گروه موفق این بخش ( تا اونجا که من اطلاع دارم ) بالا بماند و دوستان جدید هم که مایل به همکاری هستند بتوانند اعلام کنند.
فکر کنم زیادی تعریف کردم! حالا بگم از مشکلات که کم هم نیستند:
اولین مشکل اینه که بلد نیستیم کار گروهی به معنای واقعی آن انجام دهیم. این به معنای ناتوانی نیست بلکه به نظرم این مشکل پایه ای است که نظام آموزشی کشور ما دچار آن است و برای همین است که می گن ما ایرانی ها نمی تونیم کار گروهی را درست انجام دهیم. یه جورایی هم از اول به گروه های معلم شاگردی عادت کردیم و ترک این عادت مشکل است. اما تشکیل گروه و پایداری اون به خیلی چیزهای دیگه مثل اخلاق اعضا، شخصیت و انگیزه کافی افراد، تکیه گاه علمی مناسب و ... بستگی دارد.
در مورد گروه خودمون بگم که به نظرم مهمترین عامل پایداری گروه اخلاق و شخصیت اعضای آن بوده طوری که تقریبا همه با هم جور بودیم و می تونستیم با هم کنار بیایم.
مشکل بعدی اینه که باز هم اکثر ما ایرانی ها تا زور بالا سرمان نباشه کاری انجام نمیدیم. تا امتحانی نباشه درس نمی خونیم؛ تا فشاری نباشه تمرین انجام نمیدیم. خیلی وقت ها شده مجبور شدم از گزوه امتحان بگیرم بلکه برنامه داده شده رو به طور کامل انجام دهند و اکثر مواقع هم مجبورم خودم اون بخش رو توضیح بدم. البته برای رفع این مشکلات برنامه هایی دارم که امیدوارم بتونم اجرایی کنم.
برای بیان مشکلات حرف زیاده اما همین مشکلات بعدا میشه تجربه و حداقل به من خیلی چیزها رو آموزش داده.
به هر حال با همه این دردسرها گروه پابرجاست و بچه ها هم انگیزه قوی دارند فقط باید عادت ها کمی تغییر کنه که زمان می بره.
وبلاگی هم برای گروه درست کردیم که گزارشات هر هفته رو توش می نویسیم. مسئول این وبلاگ جلال هست که ذوق هنری خیلی خوبی هم داره.
directxgroup.blogfa.com
در اولین جلسات از جزوه فراهی بخش کلاس ها رو مطالعه کردیم و چند تا تمرین هم انجام دادیم تا C++ دوره شود و اشکالات مشخص بشه. در کنار C++، یادگیری API های ویندوز را نیز شروع کردیم که تقریبا در حد نیاز کارمون یاد گرفتیم. البته C++ وسعت زیادی داره و مهارت در آن نیازمند تمرین مستمر و زیاده. برای همین تصمیم گرفتیم با دعوت از استادی برجسته در این زمینه یک دوره آموزشی برای بچه های گروه بگذاریم.
بعد از دوره اجمالی C++ کتابی که به عنوان منبع اصلی معرفی کرده بودم رو شروع به خوندن کردیم و مباحث پایه که شامل 3 فصل اول می شد رو به طور کامل خوندیم.
تا الان که این مطلب رو می نویسم مباحث initialize کردن DirectX و چندتا کار ساده مثل نوشتن روی صفحه و رسم خط و اشکال هندسی دوبعدی و حرکت آن ها رو یاد گرفتیم. عکس نمونه کارهای گروه به همراه لینک برنامه ها رو در زیر مشاهده می کنید:
اولین برنامه ای که اجرا کردیم متصل کردن پنجره به DirectX بود که فکر نمی کنم لازم باشه عکسی ازش بگذارم چون چیز خاصی نداره
دومین کار نوشتن یک متن ساده بر روس صفحه بود که چیزهای زیادی تو این قسمت یاد گرفتیم.
http://amsjavan.persiangig.com/Direc.../drawText2.jpg
لینک کد برنامه
سومین کارمون کشیدن خط روی صفحه بود که هر چند کار خاصی نبود اما برای ما که اولین بار بود این کار را انجام میدادیم کلی ذوق داشت. با استفاده از همین خط ها یک مربع کشیدیم و اون رو حرکتش دادیم:
http://amsjavan.persiangig.com/Direc...e/drawline.jpg
لینک کد برنامه
برنامه بعدی این بود که وقتی مربع حرکت می کنه هنگام برخوردش با دیوار، کاری کنیم که برگرده و از اون رد نشه. کار جالبی بود و کلی هم وقتمون رو گرفت اما نتیجه بدی نشد.
کار بعدی کشیدن یک چند ضلعی با استفاده از موس بود. این کار مستلزم این بود که طریقه ارتباط با موس رو یاد می گرفتیم که تقریبا تا حد کمی یاد گرفته بودیم و تونستیم برنامه رو بنویسیم. البته این برنامه یه جور برنامه نقاشی هم بود چون اگه کلید چپ موس رو نگه دارید و حرکتش دهید به طور پیوسته خط می کشه.
آخرین کاری که انجام دادیم به پیشنهاد سامان بود. سامان در مورد پروژه گرافیک دانشگاهش صحبت کرد و گفت که یه برنامه ای باید می نوشتند که چندضلعی رو روی صفحه رسم کرده و بعد بتوان اون رو چرخش داد. این پروژه در آخرین جلسه قبل امتحان ها مطرح شد و وقت نکردیم تو جلسه کاملش کنیم. بعدا خودم کاملش کردم و قرار شد اولین جلسه بعد از امتحانات بقیه اعضای گروه هم این برنامه رو بنویسند:
http://amsjavan.persiangig.com/Direc...atePolygon.jpg
لینک کد برنامه
در این برنامه با فشردن کلید چپ در نقاط مختلف می توانید چندضلعی را رسم کنید. با استفاده از کلید وسط موس می توانید چند ضلعی را حرکت دهید و با فشردن کلید راست موس و حرکت دادن به سمت چپ و راست می توانید چندضلعی را بچرخانید. البته با تغییر متغیر عمومی angle می توانید درجه دلخواه را قبل از اجرا کردن برنامه وارد کرده و هنگام اجرا با فشردن کلید R عمل چرخش را انجام دهید. چرخش بر اساس مبدا مختصات که گوشه بالا سمت چپ پنجره می باشد انجام می شود.
البته ما در جلسات اول روی مقدمات خیلی کند کار کردیم تا همه به طور کامل این بخش رو که پایه همه بخشهای دیگر است، به خوبی یاد بگیرند.
به علت شروع شدن امتحانات چند هفته ای به گروه استراحت داده شد.
قراره مطالب آموزشی از کارهایی که انجام می دهیم را به کمک اعضای گروه تهیه کرده و در همین تاپیک قرار بدهم تا بقیه دوستان هم استفاده کنند.
خوشحال میشم از نظرات همه دوستان در ادامه کار استفاده کنم.
-
نقل قول: تشکیل گروه برای یادگیری Directx
-
نقل قول: تشکیل گروه برای یادگیری Directx
نقل قول:
نوشته شده توسط
Armin060
آقا. من هم هستم.
چقدر با C++ آشنا هستی؟ تجربه برنامه نویسیت در چه حدیه؟ با کتاب انگلیسی مشکلی نداری؟ تا حالا با API های ویندوز کار کردی؟ اگه بخوای عضو گروه بشی باید بتونی طبق برنامه ای که بهت میدم خودتو به بقیه برسونی و بعد از اون هم هر هفته باید طبق برنامه عمل کنی و تمام کارها رو انجم بدی. غیبت هم نباید داشته باشی. در صورت هر گونه تخلف از قوانین، عدم انجام کارها و یا غیبت در جلسات طبق قوانین گروه باید جریمه پرداخت کنی. به سوالات بالا جواب بده تا بتونم تصمیم بگیرم.
-
نقل قول: تشکیل گروه برای یادگیری Directx
چقدر با C++ آشنا هستی؟
در حد کتاب C++ How To Program.
تجربه برنامه نویسیت در چه حدیه؟
تقریبا 4 سال
با کتاب انگلیسی مشکلی نداری؟
دارم. تقریبا 40% مشکل دارم. که رفع میشه.
نقل قول:
حالا با API های ویندوز کار کردی؟
بله کار کردم.
شرایط هم قبول.
-
نقل قول: تشکیل گروه برای یادگیری Directx
قبل از هر چیز بهتون تبریک می گم و خوشحالم در راهی که از دید عرف چندان(بهتر بگم؛ اصلن) ساده نیست توانستید اولین گام ها را بردارید مضاف بر اینکه کار گروهی هم بوده.
سعی کنید انرژیی که هم اکنون شکل گرفته را درست هدایت و درست مصرف کنید و اجازه بدید بعضی از مشکلات با گذر زمان حل شود و در حل انها عجله نکنید.
به کاری که انجام می دید ایمان داشته باشید و به خزعبلات بعضی افراد توجه نکنید.مشکلات هر چند سخت و دشوار روزی تمام می شوند و شما خواهید ماند و قدرتی انکار ناپذیر ...
الان برای جذب اشخاص جدید اقدام نکنید.
برای شما و دوستانتان ارزوی موفقیت دارم.
-
نقل قول: تشکیل گروه برای یادگیری Directx
دوستان فکر نمی کنید یادگیری HLSL و XNA که جایگزین گرایش قبلی استفاده از DirectX هست بهتر باشه؟
حداقل با این روش کدتون قابل ترنسفر به ویندوز، ایکس باکس و لینوکس هست.
-
نقل قول: تشکیل گروه برای یادگیری Directx
آقا ما رو هم بازی بدین
من C# در حد خوبی بلدم
با انگلیسی در حد را بنداز مشکلی ندارم
انگیزه بسیار بالایی هم دارم
-
نقل قول: تشکیل گروه برای یادگیری Directx
نقل قول:
دوستان فکر نمی کنید یادگیری HLSL و XNA که جایگزین گرایش قبلی استفاده از DirectX هست بهتر باشه؟
حداقل با این روش کدتون قابل ترنسفر به ویندوز، ایکس باکس و لینوکس هست.
گمونم DirectX رو XBox360 هم کاز کنه! ولی رو لینوکس نه.
-
نقل قول: تشکیل گروه برای یادگیری Directx
نقل قول:
نوشته شده توسط
Armin060
گمونم DirectX رو XBox360 هم کاز کنه! ولی رو لینوکس نه.
فکر نمی کنم کشف جدیدی کرده باشید. اگر دقت کنید من گفتم از XNA به جای DirectX استفاده کنید. جهت اطلاع حضرت عالی عرض می کنم که XNA داره با پروژه Mono.XNA به لینوکس پورت میشه. لطفا قبل از گمون کردن دقت کنید.
-
نقل قول: تشکیل گروه برای یادگیری Directx
بله، حتما. ولی خوب راستش هنوز هم از جمله ی اول شما همون برداشت اولی که کردم رو دارم. در حال بیخیال. ببخشید
-
نقل قول: تشکیل گروه برای یادگیری Directx
خدمت دوست عزیزمون جناب mohamnag عرض کنم که این بحث ها که مثلا چی از چی بهتره تو این فروم و جاهای دیگه زیاد شده و جوابش هم روشن و واضح می باشد فقط کافیه یک جستجوی ساده تو همین فروم انجام بدهید تا به یک جواب نسبی برسید. لطفا اینجا این نوع بحث ها رو ادامه ندهید.
در مورد دوستانی که تقاضای عضویت کردند ابتدا عرض کنم که ما در حال حاضر دو عضو جدید گرفتیم و تعداد اعضا به 7 نفر رسیده بنابراین در مورد پذیرش اعضای بیشتر محدودیت داریم و گزینش نسبت به قبل کمی سخت تر شده در هر صورت برای گفتگوی بیشتر لطفا پیغام های خصوصی خود را چک کنید.
-
نقل قول: تشکیل گروه برای یادگیری Directx
خوب ما باز هم با یک کار جدید از گروه برگشتیم.
بعد از مدت ها سر و کله زدن با directx، بچه های گروه هر کدوم کار نسبتا جدیدی را ارائه دادند. با پایان فصل 5 اعضای گروه توانایی این رو پیدا کردند که بتونند ایده های خودشون رو به صورت دو بعدی پیاده کنند و در واقع یک جور انگیره مضاعف و اعتماد به نفس بیشتر به همه داد. فصل 5 کتاب در مورد sprite ها بود و اینکه چه جوری می تونیم بازی های دو بعدی را در DirectX تولید کنیم. مثال خود کتاب که در طول فصل ایجاد شده را در زیر می بینید:
http://amsjavan.persiangig.com/Direc...pritedemo2.jpg
دانلود سورس کد
این یک فضاپیما است که به اطراف حرکت می کند و فقط توانایی پرتاب یک نوع تیر را دارد.
بعد از مطالعه این فصل و هنگام انجام تمارین، جلسات به صورت workshop برگزار می شد و اعضا به صورت دو به دو و یا تک نفره می نشستند و تمرین ها رو حل می کردند. برای مثال یکی از تمارین این بود که برای مثال کتاب دشمن طراحی کنیم. هر کدوم از بچه ها ایده های خودشون رو پیاده می کردند و بازی رو گسترش می دادند. نتایج جالبی به دست اومد و تقریبا بازی های جالبی ساخته شد.
اولین بازی کامل کار علی بود که نسخه پیشرفته spriteDemo هست. فضا و فضاپیما تغییر کرده، مدل های تیر گسترش پیدا کرده، دشمن هایی در طول بازی ایجاد شده و رفتارهای هوشمندانه ای از خود نشان میدهند، تعداد کشته ها و سلامتی سفینه هم نمایش داده میشه. عکس شاهکار دوستمون رو می تونید ببینید:
http://amsjavan.persiangig.com/Direc.../Pics/Ali2.jpg
البته این بازی ها هنوز اشکالات زیادی دارند اما این را در نظر بگیرید که این ها اولین کار بچه های گروه هست. خیلی ایده ها و امکانات بیشتری رو می شد به این بازی اضافه کرد در مورد این بازی هم علی به دلایلی از توسعه آن منصرف شد.
خوب بازی بعدی که می خوام بذارم کار خودمه. این بازی شباهت های زیادی به بازی علی داره چون به هر حال هممون مثال کتاب رو تغییر دادیم و امکانات اون رو افزایش داده ایم. تنها تفاوت اساسی این کار با بازی قبلی، انفجار دشمن هنگام از بین رفتن هست. این انفجار با استفاده از تکنیک Page Flipping ساخته شده است. این بازی هم مشکلات زیادی داره که می شد حل کرد اما تصمیم گرفتیم بازی های جدیدی بسازیم و وقتمون رو روی اونها بذاریم. برای مثال دشمن ها و قتی سفینه رو تعقیب می کنند روی هم میفتند و یکی می شوند در صورتی که اصلا نباید به هم برخورد کنند:
http://amsjavan.persiangig.com/Direc...Pics/Amir2.jpg
دانلود
بازی بعدی کار جلال و سامان هست که امکاناتش هم شبیه دو بازی قبلی است اما گرافیک جذاب تری داره:
http://amsjavan.persiangig.com/Direc...ics/Jalal2.jpg
کار سیاوش، محمد علی و سجاد هم هنوز به طور کامل آماده نشده.
دوستان توجه داشته باشند که تمام مراحل ساخت این بازی ها کد نویسی شده و برای هر عملی یک الگوریتم خاص ارائه شده است مقایسه این کارها با بازی های ساخته شده توسط موتورهای آماده مثل GameMaker و ... کار درستی نیست.
برای اینکه اعضای گروه در طول عید بی کار! نباشند یکسرری پروژه به انتخاب خود افراد در نظر کرفتیم و قرار شد هر کس تا آخر عید این باری های رو آماده کنه و تحویل بده.
علی یک بازی ابتکاری جدید طراحی می کنه که فعلا معلوم نیست اسمش چیه. می تونید تصویر نسخه اولیه رو در زیر ببینید:
http://amsjavan.persiangig.com/Direc...cs/AliCube.JPG
البته تصویر عمق این کار رو نشون نمیده باید بازی کنید تا به جذابیت کار پی ببرید. یکسری مانع هستند که به سمت چپ حرکت می کنند و شما باید از روی آن بپرید. علی سنگ تموم گذاشته و برای این بازی Map Editorهم طراحی کرده!
سامان و جلال هم قراره بازی OX رو پیاده سازی کنند.
خودم هم فعلا در نظر دارم که بازی Snake رو طراحی کنم
محمدعلی، سجاد و سیاوش هم هنوز به طور دقیق مشخص نشده که چه پروژه ای رو انجام می دهند.
هدف اصلی از انجام این پروژه ها تسلط بیشتر در DirectX و برنامه نویسی هست.
سعی می کنم در صورت توافق گروه آموزش ساخت این بازی ها رو برای علاقمندان به DirectX اینجا بذارم
امیر حسین جوان
-
نقل قول: تشکیل گروه برای یادگیری Directx
دوستان دایرکت کار خسته نباشید ، اما فکر نمیکنید یه کم بازی گرافیک پایینی داره اگر این بازیه خوبش باشه ، پس بدش چیه؟؟!!
-
نقل قول: تشکیل گروه برای یادگیری Directx
دوستان پیشرفت و همت خوبی رو داشتید، تبریک میگم و امیدوارم موفقتر از همیشه باشید.
-
نقل قول: تشکیل گروه برای یادگیری Directx
دوستان دایرکت کار خسته نباشید ، اما فکر نمیکنید یه کم بازی گرافیک پایینی داره اگر این بازیه خوبش باشه ، پس بدش چیه؟؟!!
متن کامل رو خوندید؟
-
نقل قول: تشکیل گروه برای یادگیری Directx
واقعا کارتون عالیه
سلام منم یه عاشق بازی سازیم ولی تا یک سال پیش فقط بازی میکردم و اصلا به خودم زحمت دیگه ای نمیدادم:تشویق:
ولی از یک سال پیش که وارد دانشگاه شدم بازی کردن رو کامل(98%) گذاشتم کنار و شروع به یادگیری کلی کردم ولی هنوز خیلی عقبم
c رو تقریبا کامل بلدم یعنی زبان ساخت یافته رو ولی C++ رو 2 ماهه که اومدم تو کارش و هنوز نتونستم با شی گرایی زیاد کنار بیام در مورد گرافیک و بازی سازی و opengl و directx هم زیاد تحقیق کردم و میدونم (هیچ منبع فارسی نداریم) همین چیزی که ساختید هم برای اول کار خیلی عالیه :تشویق:
من خیلی دوست داشتم که توی این گروه باشم ولی فک میکنم هنوز برام زوده (البته دارم سعی میکنم opengl رو یاد بگیرم) ولی به نظرم قبلش باید مفاهیم اولیه رو یاد بگیرم که اصلا api چیه و حتی با mfc چه طور کار کنم و ....
ولی اگه میشه کارتون رو به گروه محدود نکنید و یه چیزی هم تهش برا ما بگذارید اگه بتونید خلاصه چیزی رو که هر هفته یاد میگیرید روی وب بگذارید خیلی خوب میشه(زکات علم یاد دادنش هست) یا اگر جلسه ای برگزار کردید صدا رو ضبط کنید یا حتی فیلم:لبخند:
در آخر باید بگم که :
واقعا کارتون عالیه
-
نقل قول: تشکیل گروه برای یادگیری Directx
-
نقل قول: تشکیل گروه برای یادگیری Directx
Managed Code و Unmanaged Code چیه؟ یه جوری بگو ما هم بفهمیم.
-
نقل قول: تشکیل گروه برای یادگیری Directx
منظورش استفاده از .net هست ولی فکر کنم اشتباه گفته چون
Unmanaged Code میشه win32
managed Codeمیشه .net
-
نقل قول: تشکیل گروه برای یادگیری Directx
نقل قول:
کما اینکه شما هم توی پروژه Space Craft ، دستگاهتون (Device) رو بات توابع مستقیم DirectX ایجاد کردین اما برای مدیریت پنجره اصلی از توابع Managed راستش یه جورایی مخلوط کردین.
کجاش مدیریت شده بود؟؟ واسه پنجره از توابع Win32 استفاده کردیم دیگه. Win32 مدیریت شدست مگه؟؟؟ خب حالا چطوری باید درست کنیم؟
نقل قول:
اما فکر میکنم قدم مهمی که شما باید بردارید مخصوصا الان که دارای گروهی هستین این باشه که یک Engine انتخاب کنین و برای ادامه اونو به کار ببندید شما در حال حاضر خیلی پایه ای دارید کار میکنید ... . باید خیلی جلوتر از این حرکت کنید .
اینجا ما داریم DirectX یاد می گیریم. من که دارم DirectX یاد می گیرم انجین و این جور چیزا بنویسم، ولی خب اگر قرار بود بازی ساز بشم حتما می رفتم سراغ موتور. ( البته می خوام بازی ساز بشم :لبخند: و از خیلی وقت پیش موتور رو شروع کردم ) حالا باقی دوستان رو نمی دونم. مثل اینکه می خوان از بعد از عید unreal رو هم گروهی کار کنند.
-
نقل قول: تشکیل گروه برای یادگیری Directx
سلام
نقل قول:
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
-
نقل قول: تشکیل گروه برای یادگیری Directx
به نظر منم بهتر آدم وقتی اشتباه می کنه حداقل اشتباه خودش رو بپذیره نه اینکه بیاد مغالطه کنه .....
-
نقل قول: تشکیل گروه برای یادگیری Directx
سلام
پس از مدتها بالاخره تونستم این تاپیک رو update کنم. خیلی وقت بود که از بعد تعطیلات عید قصد داشتم گزارش کاملی رو از فعالیت های گروه بنویسم اما به علت برخی مشکلات و همچنین امتحانات دانشگاه این اتفاق تا الان به تاخیر افتاد.
قبل از سال نو با بچه ها قرار گذاشتیم که هر کی تو تعطیلات با توجه به چیزهایی که از Directx یاد گرفتیم یک بازی دو بعدی درست کنه و این را به عنوان پروژه عید نامگذاری کردیم. نتیجه کار خیلی بد نشد و اکثر بچه ها تلاششون رو کردند. البته بعضی از دوستان عقیده داشتند که عید زمان مناسبی برای این کار نیست در هر صورت با تمام مشکلات هر کسی یک کاری رو آماده کرد برخی هم نتوانستند پروژه رو کامل کنند. اینجا می خوام کار هر کدام از بچه ها رو معرفی کنم:
1- علی قرار شد پروژه قبلیش یعنی SquareGame را کامل کنه و یکسری امکانات جالب رو بهش اضافه کنه. جالب ترین تغییرش اضافه کردن فیزیک به بازی بود یعنی جاذبه رو در بازی لحاظ کرد طوری که وقتی مکعب به هوا پرتاب می شد با شتاب به سمت زمین می افتاد. یکسری موانع جدید و چند تغییر جزئی دیگه هم به بازی اضافه کرد. نمایی از این بازی رو می تونید در زیر ببینید. به زودی یک نسخه از بازی رو اینجا قرار می دهم چون تا بازی نکنید به جذابیت اون پی نخواهید برد:
2- جلال و سامان قرار شد با هم پروژه رو انجام بدهند. XO همون بازی معروف رو پیاده سازی کردند. البته در نهایت پروژه به دلیل مشکلاتی کامل نشد. شکل کلی بازی به صورت زیر هست:
X همون عکسه استخوان هاست که به صورت ضربدر زیر جمجمه قرار گرفته و O هم عکس جمجمه هست بقیه هم پس زمینه هستند.
3- سیاوش به تنهایی تصمیم گرفت پروژه ای شبیه به مثال کتاب رو بسازه. هر چند ایده جدیدی تو این بازی نبود اما ساخت این پروژه چیزهای خیلی زیادی رو به سیاوش یاد داد که دقیقا هدف ما هم همین بود. این پروژه یکی از کاملترین پروژه ها بود که سیاوش ساخت اون رو از صفر شروع کرد و اکثر کدها رو خودش نوشت:
4- محمد علی و سجاد هم قرار بود بازی پرتاب توپ رو بنویسند. این بازی به این صورت هست که شما ابتدا برای پرتاب یک زاویه تعریف می کنی و سپس با توجه به سرعت باد و شرایط جوی یک سرعت مناسب برای توپ انتخاب می کنی تا در نهایت توپ به هدف مشخص شده برخورد کند. البته این پروژه به دلیل کمبود وقت کامل نشد اما در همان حدی که نوشته شد چیزهای خوبی به سازنده ها یاد داد.
5- من هم بازی معروف Snake رو انتخاب کردم چون از بچگی همیشه دوست داشتم این بازی رو بسازم. نتیجه کار چیز بدی نشد هر چند خیلی امکانات جالب و زیادی میشد به آن اضافه کرد اما فرصت این کار پیدا نشد. این مار ما همه چی می تونه بخوره. نوشتن کدهای چرخش مار یکی از سخترین مراحل ساخت بود که بعد از کلی فکر کردن یک الگوریتم ساده برای آن نوشتم که نتیجه خیلی خوبی داشت. تصویری از بازی و Source اون رو در زیر قرار دادم:
-
نقل قول: تشکیل گروه برای یادگیری Directx
ما الات فصل 9 کتاب رو تموم کردیم و فصل 10 رو شروع به خواندم کرده ایم. تا الان تقریبا با مفاهیم اولیه 3D آشنا شدیم و کمی هم با مفاهیم VertexShader و PixelShader آشنایی پیدا کردیم. تمارین مختلفی در این زمینه انجام دادیم که تصاویر چند نمونه ساده از آنها رو اینجا میگذارم:
این یک مکعب خیلی ساده است که قابلیت چرخش در فضا رو داره. ابتدا مکان نقاط را دادیم و سپس طی مراحلی اون رو رسم کردیم. البته بعدا توسط PixelShader به این مکعب رنگ دادیم و توسط VertexShader تنظیمات مختلف مثل ViewSpace، WorldSpace و Projection را انجام دادیم. برای دانلود سورس اینجا را کلیک کنید.
این هم یک موج خطی است که بر روی یک Plane حرکت می کند. موج رو توسط یک معادله خط به نقاط می دهیم و مختصات هر نقطه توسط اون معادله خط در هر لحظه تغییر می کند.
-
نقل قول: تشکیل گروه برای یادگیری Directx
این هم یکی از جدیدترین و جالبترین کار 3D هست که تو این هفته توسط علی انجام شده. یک مدل ساده از DNA. دوستانی که با Directx کار کردند حتما می دانند که رسم چنین مدلی توسط کدنویسی با Directx کار بسیار مشکلی است و باید تک تک کره ها را کنار هم قرار داده تا چنین شکلی به وجود آید:
-
نقل قول: تشکیل گروه برای یادگیری Directx
دمتون گرم باحاله اگه می تونستید یه کاری کنید که یک صدای زمینه پخش بشه و این شکلا متناسب با ریتم آهنگ تغییر کنه خیلی باحال می شدا مثل winamp :چشمک:
-
نقل قول: تشکیل گروه برای یادگیری Directx
نقل قول:
نوشته شده توسط
amin1softco
دمتون گرم باحاله اگه می تونستید یه کاری کنید که یک صدای زمینه پخش بشه و این شکلا متناسب با ریتم آهنگ تغییر کنه خیلی باحال می شدا مثل winamp :چشمک:
براي گذاشتن آهنگ بايد دايركت ساند را ياد بگيريم . :چشمک:
-
نقل قول: تشکیل گروه برای یادگیری Directx
سلام، خسته نباشید. کارتون خیلی خوب بود.
شما که دارید این کتاب رو میخونید، اون رو ترجمه نکردید؟
اصلا کسی تاحالا این کتاب رو ترجمه نکرده؟
-
نقل قول: تشکیل گروه برای یادگیری Directx
نقل قول:
نوشته شده توسط
mahdi1373
سلام، خسته نباشید. کارتون خیلی خوب بود.
شما که دارید این کتاب رو میخونید، اون رو ترجمه نکردید؟
اصلا کسی تاحالا این کتاب رو ترجمه نکرده؟
من ترجمه اي نديدم حالا نميدونم هست يا نه ولي من داشتم يك قسمتي از فصل 4 را ترجمه ميكردم كه ديدم واقعا وقت نميكنم ديگه بي خيال شدم تازه معني و مفهومشم با ترجمه كمي از دست رفت :ناراحت:
من بهتون سفارش ميكنم كه انگليسي اين كتاب را بخونيد من انگليسيم خيلي ضعيف بوده و هست اوايل خيلي مشكل داشتم ولي كم كم يك مقداري راه افتادم:تشویق:
-
نقل قول: تشکیل گروه برای یادگیری Directx
فکر می کنم که ترجمه همین کتاب رو انتشارات ناقوس چاپ کرده باشه. شما برنامه نویسی ویندوز(windows 32 application) رو از کجا یاد گرفتید؟ آیا منبعی دارید؟ با برنامه نویسی MFC خیلی فرق داره؟
-
نقل قول: تشکیل گروه برای یادگیری Directx
نقل قول:
نوشته شده توسط
mahdi1373
فکر می کنم که ترجمه همین کتاب رو انتشارات ناقوس چاپ کرده باشه. شما برنامه نویسی ویندوز(windows 32 application) رو از کجا یاد گرفتید؟ آیا منبعی دارید؟ با برنامه نویسی MFC خیلی فرق داره؟
من همین الان در سایت ناقوس سرچ کردم چیزی پیدا نکردم حالا نمیدونم هست یا نه اگر بود به ما هم بگو
ما با چند تا کتاب انگلیسی و منابع اینترنتی و یک کتاب فارسی قدیمی و ... یاد گرفتیم. من اصلا تا به حال MFC کار نکردم نمی دونم با win 32 چه فرقی داره:اشتباه:
-
نقل قول: تشکیل گروه برای یادگیری Directx
ببین دوست عزیز مثل اینکه ناقوس رایانه یک کتاب فارسی برای یادگیری دارکت ایکس ۹ زده ولی از توی سایتش برداشته حالا شما تماس بگیرید و خودتون به شخصه از این شرکت بپرسید.فقط اگر پرسیدید ازشون سوال کنید که کدوم کتاب و نوشته ی کی را ترجمه کردن بعدش به ما هم اطلاع بدید
-
نقل قول: تشکیل گروه برای یادگیری Directx
اصلا من خودم این کتاب رو خریده بودم، ولی نمیدونستم که ترجمه همون کتاب آقای فرانک لونا است!
این هم آدرسش تو سایت ناقوس:
http://naghoos-andisheh.ir/product_i...roducts_id=209
میشه منابع رو معرفی کنید؟
-
نقل قول: تشکیل گروه برای یادگیری Directx
نقل قول:
نوشته شده توسط
mahdi1373
دوست عزیز این همون کتابی که ما استفاده میکنیمه؟منظورم اینه که همون ترجمش هست؟
چطوری نوشته؟خوب توضیح داده؟اگر فهمش بالا هست بگید من میخوام بخرم.لطفا کامل توضیح بدید چه عیب هایی داره چه خوبی هایی داره چون من شاید بخرمش
من خودم به شخصه که تقریبا کتاب برنامه نویسی بازی های کامیوتری در ویندوز رامیخوندم چون انگلیسیم ضعیف بود و هست و اون موقع خیللللیییی با کتاب انگلیسی مشکل داشتم البته الان یک مقداری را افتادم این کتاب خیلی قدیمیه مال اون موقع هست که تازه ویندوز ۹۸ اومده بوده!:متعجب:
ترجمه ی آقای داریوش فرسایی از انتشارات زند البته به نظر من زیاد خوب ننوشتنش و من فقط قسمت برنامه نویسی ویندوزش را خوندم . البته من زبون اصلی این کتاب(منظورم این بخشش که در مورد برنامه نویسی ویندوز هست) را به صورت یک تکه مقاله یا کتاب داخل کامیوترم دارم به صورت pdf
forgers win 32بقیه گروه کتاب
که انگلیسی هست را میخوندن که اگر بخواید پی دی اف این کتاب را دارم البته اونا هم کل این کتاب را نخوندمن بلکه یک قسمتیش که لازم داشتن را میخوندن چون این کتاب خیلی کامله
-
نقل قول: تشکیل گروه برای یادگیری Directx
نقل قول:
دوست عزیز این همون کتابی که ما استفاده میکنیمه؟منظورم اینه که همون ترجمش هست؟
چطوری نوشته؟خوب توضیح داده؟اگر فهمش بالا هست بگید من میخوام بخرم.لطفا کامل توضیح بدید چه عیب هایی داره چه خوبی هایی داره چون من شاید بخرمش
بله، ظاهرا که ترجمه همون کتابه. کتاب خوبیه، البته برای کسایی که برنامه نویسی ویندوز رو بلدن. شما که خودتون کتاب رو خوندین، خوبی ها بدی هاش رو می دونین، خوب این هم ترجمه همون کتابه. ولی به نظرم به خریدنش می ارزه، من که پشیمون نیستم.
نقل قول:
البته من زبون اصلی این کتاب(منظورم این بخشش که در مورد برنامه نویسی ویندوز هست) را به صورت یک تکه مقاله یا کتاب داخل کامیوترم دارم به صورت pdf
forgers win 32بقیه گروه کتاب
که انگلیسی هست را میخوندن که اگر بخواید پی دی اف این کتاب را دارم البته اونا هم کل این کتاب را نخوندمن بلکه یک قسمتیش که لازم داشتن را میخوندن چون این کتاب خیلی کامله
بله، من بسیار مشتاقم که این کتاب رو بخونم. اگه برام email کنید یا در پیام خصوصی لینکش رو بفرستید یا اگه مشکل ندارید همین جا بزارید تا همه استفاده کنند. ممنونم.
-
نقل قول: تشکیل گروه برای یادگیری Directx
نقل قول:
نوشته شده توسط
mahdi1373
بله، ظاهرا که ترجمه همون کتابه. کتاب خوبیه، البته برای کسایی که برنامه نویسی ویندوز رو بلدن. شما که خودتون کتاب رو خوندین، خوبی ها بدی هاش رو می دونین، خوب این هم ترجمه همون کتابه. ولی به نظرم به خریدنش می ارزه، من که پشیمون نیستم.
بله، من بسیار مشتاقم که این کتاب رو بخونم. اگه برام email کنید یا در پیام خصوصی لینکش رو بفرستید یا اگه مشکل ندارید همین جا بزارید تا همه استفاده کنند. ممنونم.
پس خوب ترجمه کردن دیگه؟ یعنی اوقدری خوب هست که بشه از روی اون به جای کتاب انگلیسیش خوند دیگه؟بعد کتاب را که دست نبردن؟تغییرش که ندادن؟
این کتابی هم که خواستید میخواستم آپلود کنم که دیدم لینکش هست
http://winprog.org/tutorial/files/fo...torial-pdf.zip
-
نقل قول: تشکیل گروه برای یادگیری Directx
من که زیاد انگلیسی اش رو نخوندم، ولی فکر کنم خوب باشه.
از بابت کتاب هم ممنونم.
-
نقل قول: تشکیل گروه برای یادگیری Directx
برای دوره فصل 4 تا 10 با بچه های گروه قرار گذاشته بودیم که بعد از امتحانات دانشگاه هر کسی یکی از این فصل ها رو برای بقیه ارائه بده و اسلاید هم برای اون فصل درست کنه:
فصل 4 : سیاوش
فصل 5 : جلال
فصل 6 : سجاد
فصل 7 : محمد علی
فصل 8 : سامان
فصل 10 : امیرحسین
فصل 11 : علی
تصمیم گرفتیم این اسلایدها رو اینجا بذاریم تا بقیه دوستانی که علاقمند هستند و در گروه شرکت ندارند استفاده کنند. امیدوارم به دردتون بخوره:
فصل 5 کتاب در مورد Timing، Direct Input، Animation و Sprite ها توضیحاتی داده است که اسلایدهای این فصل رو می تونید از اینجا دانلود کنید. این اسلایدها کار جلال هست و خیلی هم برای آماده کردنش زحمت کشیده. ارائه خوبی هم داشت.
بقیه اسلاید ها رو در روزهای آینده قرار میدم.
منتظر نظراتتون هستم.
-
نقل قول: تشکیل گروه برای یادگیری Directx
این بود پایان گروه directx گروهی که انصافا با همه پستی و بلندی ها توانست با تلاش و کوشش به حدی برسه که حالا هر کدوم از اعضا بتونند خودشون با directx برنامه نویسی کنند .البته در حد خیلی خیلی مبتدی ولی start خیلی خوبی بود برای همه اعضا تا بتوانند پله های بعدی ترقی رو خودشون بپیمایند .
نه اینکه مشکلی در گروه بوجود آمده باشه که تموم بشه نه بلکه بدلیل اینکه سامان و جلال کنکور داشتن منم مثل همیشه درگیر یک پروژه بودم ، سیاوش مدرسش شروع شده بود علی هم دیگه نمی اومد می موندند جوان و سجاد که اونها قرار شده با هم بخونند . به هر حال قرار شده 5 ماه دیگه باز دور هم جمع شیم و دوباره کار رو از سر بگیریم که البته 5 ماه دیگه کی مردست کی زنده .
مطالبی که تا به الان با گروه یاد گرفتیم به شرح زیر بود که به زودی سجاد Powerpoint آنها را آماده می کنه و اگر عمری بود اون رو اینجا می زاره :
فصل 1 الی 14 و همین طور فصل آخر که همون AdvanceTexturing بود رو با هم خوندیم و تقریبا اکثر اعضاء یاد هم گرفتند .
باید عرض کنم خدمتتون که این گروه اول با یاری خداوند متعال و سپس همکاری نسبتا خوب اعضا بخصوص محمدعلی که کلا نبود :متفکر: و سپس مدیریت خوب و بهتره بگم عالی جناب جوان عزیز که واقعا در پایداری گروه موثر بود تونست به مدت حدودا 1 سال به کارش ادامه بده و به حد خوبی برسه .
این متن پایانی رو گذاشتم که اگر کسی بعدا به این تایپیک مراجعه کرد بدونه که این گروه فعالیتش فعلا به اتمام رسیده و تا اطلاع ثانوی هم دوباره تشکیل نمی شود .
خداحافظ طراح بزرگ که آخرشم یه آرم برا گروه طراحی نکردی
خداحافظ انگل پهنای باند اینترنت
خداحافظ دردسر همیشگی
خداحافظ نخبه MIT (آرما ...)
خداحافظ آقای همیشه مدعی
خداحافظ رییس گروه
و خداحافظ آقای همیشه مشغول و مثلا پر مشغله و بی نظم
به امید موفقیت روز افزون همه شما عزیزان همتون رو به خدا می سپارم خدا نگه دار:لبخند::لبخند::چشمک:
-
نقل قول: تشکیل گروه برای یادگیری Directx
با سلام
بعد از چند مدتی که نبودم در سایت ماشالله دوستان خوب جلو اومدن اما من وقت نکردم هر 8 صحفه کامنت های دوستان و جریانی که گذشته بین این گروه نو تاسیس رو ببینم و در آخر که به این جا امدم تعجب کردم از دوست عزیز که از همه چیز خدا حافظی کردن دوستان عزیز گرافیک و دایرکتیکس که خواهان اون بودید اگر خوب جا بندازید بهترین کارها میشه انجام داد حتی میشه خارج از پلت فرم باشه یه چیزایی تو مایه جاوا من خودم هم چند مورد کار کردم تو دانشگاه هم ما با همین قدرت دایرکتیس تونسیتم یه بازی خوب و با کیفیت طراحی کنیم خیلی زیباست امیدوارم اگه وقت بود براتون آموزش ها رو آماده کنم بیارم ولی اونجور که دیدم دوستان تعدایشون کم لطفی نسبت به دایرکتیس داشتن که بنده حقیر به دفاع و به پاس زحمات مایکروسافت آمدم دفاع کنم و حمایت کنم امیدوارم موفق و سر بلند باشین یا حق