Salwan AlHelaly
خبير برمجة ألعاب
- عراقي مغترب - مصر
- blog.agdn-online.com/salwan
- Game Development, Art, Music
- التعامل مع الملفات (++VC)
لم أعتقد إن هكذا برنامج بسيط قد يحتوي على عدد كبير من التعقيدات... ولكن هذه ++C :P أنا أعتذر مرة ثانية عن أخطائي التي كان سببها التسرع. هنالك أشياء كثيرة سببت المشاكل الموجودة, ولقد كتبت برنامج يتبع نفس الإسلوب تستطيع أن تلقي نظرة على الإختلافات. وإذا وجدت أي …
- التعامل مع الملفات (++VC)
عفواً هنالك خطأ لم أنتبه له. دالة get لا تأخذ char بل إنها تعيد int لذلك: ch1 = test1Filet.get();
- إسناد قيمتين داخل Parameter واحد
The LoadString function loads a string resource from the executable file associated with a specified module, copies the string into a buffer, and appends a terminating null character. int LoadString( HINSTANCE hInstance, // handle of module containing string r…
- إسناد قيمتين داخل Parameter واحد
wsprintf( str, "%s %d %s" , "You Clicked Me " , j ," Times");
- التعامل مع الملفات (++VC)
السلام عليكم, ببساطة أنت تقوم بكتابة قيمة بحجم 32بت للملف (int) ولكنك عندما تقرأها تقرأها كقيمة 8 بت (char) لحل المشكلة فقط غير int و الـ char إلى unsigned char, الـ char لوحده يعرف قيمة 8 بت ذات إشارة مما يعني إن أقصى عدد ممكن 128 وأقل عدد ممكن -127, ولكن عند…
- إسناد قيمتين داخل Parameter واحد
مكتبة windows.h هي المكتبة المختصة بالـ Windows API, هي ليست حتى جزءاً من ++C, ولكن جميع الطرق التي قدمها المشاركون هي جزء من الـ ++C وهي موجودة في فجوال ستوديو مثلما موجودة في gcc تحت اللينوكس (الحقيقة ان هذه المكتبات هي جزء من C++ standards منذ إنشاء لغة ++C…
- إسناد قيمتين داخل Parameter واحد
السلام عليكم, مثال للقيام بالعملية المطلوبة بإستخدام كائن الـ string من مكتبة الـ STL التابعة للـ ++C: #include <iostream> #include <string> #include <sstream> #include <conio.h> void main() { // stringstream is an object that is used for string conversions. s…
- لعبة battle city .. من يحاكيها ؟
ليس للعبة أي ذكاء صناعي, تتحرك الدبابات بشكل عشوائي وتطلق النار بإستمرار, ولكني لاحظت إن جميع الدبابات تتجه في كثير من الأحيان للأسفل (بإتجاه الهدف) وقليل من الأحيان للأعلى وذلك منطقي لأن الهدف دائماً في الأسفل, هنالك طريقة بسيطة لجعل الإحتمالات حتى وإن كانت ع…
- لعبة battle city .. من يحاكيها ؟
السلام عليكم :) قبل أكثر من سنة بدأت صنع لعبة شبيهه, إستخدمت Python و Pygame ,لحسن الحظ فقد عثرت على آثارها في القرص الصلب :D الخريطة الظاهرة مرسومة بواسطة محرك بسيط للـ Tile والدبابة يمكن تحريكها بإستخدام الإتجاهات, ولكن هنالك مشكلة في حركة الدبابة... غريب لا…
- ما الفروق بين OpenGL و DirectX ... وما أفضلهم ؟؟
هنالك الكتابان, الكتاب الأزرق والكتاب الأحمر, الإثنان يمثلان المرجع الأساس للـ OpenGL, والإثنان مجانيان طبعاُ. الكتاب الأحمر هو دليل مفصل للعمل مع OpenGL والكتاب الأزرق هو المرجع الأساس لدوال OpenGL الإثنان موجودان بصيغة HTML ولكن انا متأكد انك تستطيع الحصول ع…
- ما الفروق بين OpenGL و DirectX ... وما أفضلهم ؟؟
السلام عليكم, :) DirectX بشكل عام يتألف من عدد من الواجهات مثل Direct3D و DirectInput, DirectSound إلخ كل منها تقوم بعمل منفصل, حيث إن الـ DirectX9 مثلاً يستطيع رسم المشاهد ثلاثية الأبعاد عبر Direct3D9 , تشغيل الصوت الثلاثي الأبعاد أو الثنائي الابعاد عبر 8 Dir…
- دايركت اكس 7 او دايركت اكس 10
لقد صدر الإصدار العاشر من Direct3D مع صدور نظام فيستا, وكان الـDirect3D 10 SDK موجود قبل أكثر من سنة من صدور الفيستا, ولكن بما إنه يحتاج كروت شاشة تدعمه تماماً (عددها حالياً لا يتعدى 8 وأرخص كرت منها يباع بسعر يفوق الـ 200 دولار هي غير منتشرة في المنطقة العربي…
- تحميل direct x
السلام عليكم, لقد رفعت لك نسخة مصغرة من ال SDK بحجم 6 ميغا من إصدار DXSDK FEB 2006 (من دون الـ Documentation) من هنا وشكراً :D
- ( المشروع مكتمل ) ورشة عمل : تطوير محرك الألعاب الذري ( AGE )
مرحباً, :) لقد تعلمت درساً على مر السنين, وهو أن لا أحاول أن أعيد إختراع العجلة, بدل كتابة محرك فيزياء كامل مثلاً تستطيع إستخدام عدد من المحركات التي يعمل عليها بروفيسورات في علم الفيزياء والبرمجة (حرفياً) وهي مجانية وقد إستمر تطويرها عدة سنين ولا تزال غير كام…
- لعبة صائد البط ( duck hunt) .. من يستطيع محاكاتها ..
بالنسبة للمسارات فهي ببساطة عشوائية, إختر موقع عشوائي على الشاشة ثم حرك البطة بإتجاهه, وعندما تصل هنالك, إختر موقعاً جديداً. أما بالنسبة للمسدس, ففكرته سهلة نوعاً ما ولكن تصنيعه صعب, المسدس يحتوي على عدسة مكبرة خاصة مثبت خلفها متحسس ضوئي (دايود), لحظة إطلاق ال…
- مميزات دايركت إكس 10
الـ SDK الكامل للدايركت أكس 10 موجود في تحديثات DX9SDK, مع أدوات, أمثلة, ودروس, إضافة للـ Documentation, ولكن إذا حاولت تشغيل أي من هذه الأدوات أو الأمثلة ستظهر لك رسالة خطأ تفيد بأنك لا تمتلك دعم للدايركت أكس 10 وتطلب دعم عتاد أو سوفت وير (Reference Rasterise…
- مميزات دايركت إكس 10
ملخص للإختلاف بين Direct3D9 والـ Direct3D10 من جهة الـ API (مأخوذ من الـ Direct3D10 API Documentation) D3D9_To_D3D10.doc
- مميزات دايركت إكس 10
انا ايضاً لم أصدق تلك الصور, لذلك فإني بحثت عن فيديو للعبة, ووجدت عدداً لا بأس به من Gamespot وتستطيع ان ترى بنفسك , حيث إن على الأقل واحد من هذه الفيديوات يتحدث عن محرك Crytek 2 الهائل المصمم للدايركت أكس 10 والذي تستخدمه لعبة Crysis نفسها, وكما ذكرت هي فعلاً…
- مميزات دايركت إكس 10
مرحباً, انا سأتكلم من جهة تقنية :) الدايركت أكس 10 يختلف بشكل كبير عن الـ 9 والـ 8, الإختلاف الأكبر هو في الحقيقة يأتي من الهاردوير وليس من الـ API فقط, حيث إن الـ GPU الذي يدعمه مصمم بطريقة مختلفة تماماًً, مثلاً من أكبر أوجه التغيير هي إن الأجيال السابقة جميع…
- كيف تصنع الألعاب؟
الأخ احمد صالح: شكراً لتثبيت المقالة اتمنى ان يساهم ذلك في زيادة الفائدة. انا أفكر أيضاً في بدأ سلسلة من الدروس والمقالات التي ترتبط بالمقالة أعلاه, أي مثلاً عن كيفية تصميم لعبة تيترس كأول لعبة وجميع المصاعب التي قد تواجه المطور أثناء عملية التصميم, وأرغب في ا…