المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : المصادر المفتوحة و برمجة الألعاب



wellknownQ8
03-12-2005, 07:41 PM
السلام عليكم و رحمة الله و بركاته

اقدم لكم مجموعة من محركات ألعاب كاملة و مفتوحة المصدر تستطيعون استخدامها في
برمجة الألعاب ==> يعني طريقة أخرى غير الGame Maker ;)

بسم الله نبدأ..

محركات الألعاب:
MasterX SDK
(http://www.lostsidedead-software.com/)و هو عبارة عن Classes و وظائف Functions للمساعدة على برمجة العاب الDirectX
و به دروس جيدة جدا للمبتدئين
http://www.lostsidedead-software.com/psccd2/intro.jpg

Quake 2 Engine (http://www.idsoftware.com/business/techdownloads/)
محرك ممتاز و مشهور بألعابه الجيدة مثل Soldier of Fortune مكتوب بلغة C++
http://www.idsoftware.com/games/quake/quake2/images/full01.jpg

Allegiance (http://research.microsoft.com/research/allegiance/)
لعبة فضاء ضخمة، لاكثر من لاعب من ميكروسوفت
http://www.freeallegiance.org/
http://www.freeallegiance.org/screenshots/screen4.jpg

Pygame (http://www.pygame.org/)
نظام لبرمجة الالعاب باستخدام لغة الPython
http://www.pygame.org/thumb/f6b13436315f091d53355b07ec1ec06d.jpg (http://www.pygame.org/projects/21/123/)

PPTactical Engine (http://aspc.cs.utt.ro/~karg/ppt/index.html)
محرك رائع لعمل العاب استراتيجية (حقيقية أو تكتيكية)
يستخدم الSDL و الDirectX
http://aspc.cs.utt.ro/~karg/ppt/ss/0.9.6/easyrecon_respiro_m.jpg

Golden T Game Engine (http://goldenstudios.or.id/products/GTGE/)
محرك جافا ثنائي الأبعاد و هو بسيط و سلس.
http://fubz.us/games/bin/screenshot/roboticswar.gif

Crystal Space (http://crystal.sourceforge.net/)
محرك قوي ثلاثي الأبعاد مكتوب بلغة C++
http://community.crystalspace3d.org/show_image.php?id=293&thumb=1 (http://community.crystalspace3d.org/tiki-browse_image.php?galleryId=5&sort_mode=created_desc&desp=1&offset=0&imageId=293)

ClanLib (http://www.clanlib.org/)
نظام متكامل ثنائي و ثلاثي الأبعاد متوافق مع DirectX و OpenGL
http://clanlib.org/gfx/games/kubekombat_small.jpg (http://clanlib.org/gfx/games/kubekombat.jpg)

OGRE (http://www.devmaster.net/engines/engine_details.php?id=2)
محرك ثلاثي الابعاد رائع مكتوب بC++
http://www.devmaster.net/engines/screenshots/OGRE-2.thm.jpg (http://www.devmaster.net/engines/screenshots/OGRE-2.jpg)

Irrlicht (http://www.devmaster.net/engines/engine_details.php?id=4)
محرك ثلاثي الابعاد ممتاز و مرن، يستخدم الC++/C, C#, VB.NET
http://www.devmaster.net/engines/screenshots/Irrlicht-2.thm.jpg (http://www.devmaster.net/engines/screenshots/Irrlicht-2.jpg)

jME (http://www.devmaster.net/engines/engine_details.php?id=78)
محرك جافا ثلاثي الأبعاد => رائع
http://www.jmonkeyengine.com/webstart/screenshots/PQTorus.png

Pand3D (http://www.devmaster.net/engines/engine_details.php?id=95)
محرك رهيب => C++
http://www.devmaster.net/engines/screenshots/Panda3D-1.thm.jpg (http://www.devmaster.net/engines/screenshots/Panda3D-1.jpg)

Nebula (http://www.devmaster.net/engines/engine_details.php?id=69)
:bigeyes: لا أعرف ماذا أقول لوصف هذا المحرك .
http://www.devmaster.net/engines/screenshots/The%20Nebula%20Device%202-2.thm.jpg (http://www.devmaster.net/engines/screenshots/The%20Nebula%20Device%202-2.jpg)

ألعاب جاهزة للتطوير:
و أيضا .. لمن يريد تطوير ألعاب كاملة و جاهزة، فعليه الدخول هنا:
https://sourceforge.net/softwaremap/trove_list.php?form_cat=80

ما قد تحتاجه:
- مكتبة SDL (http://www.libsdl.org/)
- Python Compilers
(http://www.thefreecountry.com/compilers/miscellaneous.shtml)- C/C++ Compiler (http://www.bloodshed.net/devcpp.html)
- Java Compilers
(http://www.thefreecountry.com/compilers/java.shtml)- Pathlib (http://pathlib.hildebrand.cz/pathlib.html): يتضمن خوارزميات لايجاد اقصر الطرق و تتبع الحركات و التوقيت و التصادم و التخلص من الطرق المسدودة


مصطلحات:
* محركات الألعاب - Game Engines
هو اساس برمجي لمحتويات لعبة فيديو، و يتعامل مع تصيير الرسوميات Graphical Rendering و التقنيات الأخرى الضرورية و قد يكون منها الذكاء الاصطناعي و بعض قوانين الفيزياء collision detection، و ايضا من خواص المحركات انها تكون جاهزة لكي تعمل على نظام معين (ويندوز او game consoles)

SDL
اختصار لSimple DirectMedia Layer
و هي مكتبة نظام ربط للوسائط المتعددة Cross-Platform multimedia library تركب على النظم (رسوميات، صوتيات، تطبيقات) و تستخدم لبرمجة الألعاب أو تطبيقات برمجية للوسائط المتعددة.

DirectX
عبارة عن مجموعة تطبيقات برمجية لتسهيل برمجة الالعاب مع النظام ويندوز.

OpenGL
اختصار لOpen Graphics Library و هو نظام ربط للتطبيقات الثلاثية و الثنائية الأبعاد، و يتميز بواجهة تضم اكثر من 250 وظيفة لانشاء مشاهد معقدة.

المصادر:
http://en.wikipedia.org (http://en.wikipedia.org/)
http://www.devmaster.net/engines/
http://www.lostsidedead-software.com/ => شكرا لArgonaut ;)
http://cyberloonies.com/game-engines.html
Free Game Programming Libraries and Source Code (http://www.thefreecountry.com/sourcecode/games.shtml)

و أخيرا .. أتمنى ان يعجبكم و يفيدكم هذا الموضوع .. و لعل وعسى يحفزكم على البرمجة و التطلع للأفضل ;)

كتب بلوحة مفاتيح Well-knownQ8
و شكرا و السلام ^^

سيفيروث
03-12-2005, 10:09 PM
ما شاء الله أخي العزيز wellknownQ8...

بصراحه موضوع تعجز اللسان عن وصف مدى روعته...

أشكرك أخي العزيز من عميق قلبي على هذا الموضوع الجميل...

ORP
04-12-2005, 05:52 AM
ياليت لو تدلنا اخ Well-knownQ8
على مواضيع تشرح برمجة الالعاب <<<<<<<<مبتدئ برمجه>>>>>>>

wellknownQ8
04-12-2005, 10:29 AM
ما شاء الله أخي العزيز wellknownQ8...
بصراحه موضوع تعجز اللسان عن وصف مدى روعته...
أشكرك أخي العزيز من عميق قلبي على هذا الموضوع الجميل...

^_^ عفوا أخي الكريم "كلاود"
و أتمنى ان يكون الموضوع حاز على اعجابكم و افادتكم :أفكر:

و شكرا لمرورك الطيب :)



ياليت لو تدلنا اخ Well-knownQ8
على مواضيع تشرح برمجة الالعاب <<<<<<<<مبتدئ برمجه>>>>>>>
أهلا بك أخي الكريم ORP
هناك منتدى خاص لبرمجة الالعاب يمكن يفيدك ( هنا (http://www.montada.com/forumdisplay.php?forumid=212))
أما عن مبادئ برمجة الالعاب هي تقريبا نفسها مبادئ البرمجة الاعتيادية...
و انا انصح بلغة الC++ لانها مفيدة في المجالين (برمجة الالعاب و التطبيقات)
و ستجد في هذا المنتدى مواضيع جيدة جدا في هذا الخصوص ... :)

و استطيع تلخيص برمجة الالعاب بالتالي:

أولا - ان كنت تريد التعلم لعمل العاب بسيطة ببرمجة سهلة و سلسة و جيدة:
- استخدم برنامج Game Maker ....أو الRPG Maker
أو

ثانيا - لبرمجة العاب من مستوى جيد الى احترافي:
يجب أن تكون لديك معلومات كافية عن برمجة C++ ، و عمل قواعد بينات (Data Structures ) بسيطة جدا و ليس بتعمق.
ثم بعد ذلك تأخذ فكرة عن الThreads ،
و ايضا يجب أن تكون لك معلومات جيدة عن الوراثة "Inheritance" و المنظور المادي "Object Oriented "
و إليك هذه المواقع المساعدة:

مجلة متخصصة لتطوير الألعاب:
http://www.digitalgamedeveloper.com/

http://gamedev.net/
و هو موقع من أفضل المواقع لبرمجة الألعاب و المعلومات اللازمة لذلك ، و خصوصا هنا:
http://gamedev.net/reference/start_here/

IGI2000
04-12-2005, 10:31 AM
مشاء الله عليك

الف الف شكر
الله يجزيك خير

wellknownQ8
04-12-2005, 07:53 PM
ربي يجزينا و اياك كل خير ^_^.. و .شكرا لمداخلتك اخوي الحبيب IGI2000
و لا تقاطع ;)

wellknownQ8
20-12-2005, 07:01 AM
السلام عليكم

عدنا :)

هذه مراجعة سريعة لبعض المحركات التي جربتها في الايام السابقة..

1- Panda3D
قضيت وقتا طويلا و ممتعا .. فقط لكي أرى هذا المحرك...
==> المحرك فعلا مذهل .. و معقد(متطور)
و اتضح ان البرمجة فيه هي بلغة البايثون و تستخدم مكتبات مكتوبة بالC++
رؤية الأمثلة فيه ممتعة جدا .. هذا بالاضافة الى وجود لعبة Asteroids المشهورة جدا .. و هي ممتازة كأساس و بداية.
و ايضا المحرك باندا يتضمن الpaython compiler .. لذا لا داعي للقلق بشأن الcompilers;)
هذا غير الدروس الكافية التي تستطيعون الحصول عليها من موقع الشركة (حتى ان هناك بعض الدروس بالفيديو ;) )

الخلاصة:
- محرك قوي جدا .. لكنه يتطلب المام جيد بلغة البايثون و معرفة جيدة عن كيفية رسم الرسوميات ثلاثية (او ثنائية) الأبعاد (المتجهات Vectors و ما شابه).
- قد يكون صعبا على المبتدئين.

---------------------------------------------------------

2- PPTactical
استخدامه معقد نوعا ما .. بالرغم من وجود الLevel Editor
و استخدامه مثل استخدام باقي الLevel Editors للالعاب من اضافة الوحدات Units و الاسطح و الخ..مع تحديد حركات الوحدات و أحداثها ..

الخلاصة:
صراحة لم اجربه لوقت طويل .. و تقييمي له هو ما دون المتوسط (قد اكون تسرعت في الحكم)

ملاحظة: من المهم جدا قراءة ملف الارشاد له بتمعن .. حتى تعرف كيفية استخدامه.

---------------------------------------------------------

3- GOLDEN T GAME ENGINE - GTGE
محرك ثنائي الأبعاد خفيف و سريع، مزود بدروس مفهومة و جيدة ..
و الجميل أنه بلغة الجافا => و المميز بلغة الجافا هو توحيد طريقة كتابة البرامج .. فمن ينظر للأكواد لا يستغربها بل يراها محببة ;)
يمكن العيب فيها هو عدم وجود SDK ، يعني سمة البرمجة فيه هي الغالبة. لكن لماذا الSDK و البرمجة فيها بسيطة ! ;)
لكن من الممكن تحميل أداة الgraphical user interface - GUI له .. و التي قد تساعد كثيرا عند البرمجة.

* تستطيعون رؤية ألعاب استخدمت نفس المحرك:
http://goldenstudios.or.id/products/games/index.php

الخلاصة:
- ممتاز و سهل الاستخدام
- أفضله للمبتدئين و خصوصا لمحبي الجافا.

---------------------------------------------------------

4- Nebula 2
للأسف .. ما فهمته من الموقع ان هذا المحرك يتطلب الVisual Studio .NET و أيضا Microsoft DirectX SDK
لكن ما رأيته كان مذهلا ... مذهلا جدا .. ففيه أدوات احترافية و رائعة .. و تحسسك بأنك تستخدم محرك ذو مستوى عال

مواقع تستخدم هذا المحرك:
radonlabs.de (http://www.radonlabs.de/nebulascreenshots.html)
لعبة NVA (http://www.nva-dasspiel.de/)
لعبة Betablockers (http://www.betablockergames.com/)

الخلاصة:
- محرك به خصائص كثيرة و متنوعة قوية جدا.
- للمتوسطين و المحترفين.

---------------------------------------------------------
5- Crystal Space
محرك جميل و قوي، يستخدم لغة الC++ و الcompilers المستحدمة
(Visual Studio, MinGW & Cygwin)

به العديد من مقومات المحرك الثلاثي الابعاد الكامل.

لكن الغريب ان استخدامه ليس سهلا .. فأغلب العمليات تتم يدويا.
و طبعا في حالة البرامج اليدوية يضطر الشخص لقراءة الملف الارشادي بتمهل.

ما يميز هذا المحرك .. هو دعمه بتمارين و شروح جيدة جدا من موقع الشركة..
مثلا هذا درس(خطوة بخطوة) للعبة "متاهة"
http://www.crystalspace3d.org/mazet...t_tutorial.html (http://www.crystalspace3d.org/mazetut/mazetut_tutorial.html)


و ايضا هذا العرض التقديمي الرائع => به الكثير من المعلومات المهمة في مجال محركات الألعاب بشكل عام و محرك CS بشكل خاص.
http://www.crystalspace3d.org/semin..._seminarie.html (http://www.crystalspace3d.org/seminar/html/cs_seminarie.html)

ألعاب استخدمت هذا المحرك:
Crystal Core (http://www.crystalspace3d.org/tikiwiki/tiki-index.php?page=Crystal+Core)
Bonez (http://bonez-adventures.com/main.html)
Open Outcast (http://www.openoutcast.de/ooc/?language=english)

الخلاصة:
- محرك قوي
- دعمه بالشروحات الكثيرة و الجيدة
- ليس للمبتدئين

------------------------
6- irrlicht
محرك جيد به أغلب ما تحتاجه لعمل لعبة 1st Person أو اي لعبة 3دي بالطبع..بالاضافة الى جاهزيته لعمل العاب 2.5D (مثل لعبة diablo)
برمجته بلغة C++ و يتطلب الcompilers:
Visual Studio و DevC++4.9

دروسه قليلة و لكنها كافية و مشروحه بعناية و بطريقة مفهومة.
ملاحظة .. في الموقع .. هناك اداة اسمها (Exception (http://home.tiscalinet.de/xception)) لاستخدام هذا المحرك داخل الGamemaker !

الخلاصة:
- محرك جيد جدا
- بساطة دروسه ما يسمح لمحبي محركات الثري دي و المبتدئين لاستخدامه.

----------------------------------

7- Pygame
.. برمجة الالعاب بلغة البايثون .... لم اتوقع انها straight forward هكذا !
اذا احد سألني عن برمجة الالعاب (برمجيا) => فسأقول له python

البرمجة فيها برمجة بحته .. اي لا ترى شيئا (interface) حتى تعمل compile
و بالنسبة لي، هذا افضل لكي يركز المبرمج على البرمجة و الذكاء الاصطناعي و الخ من اساس اللعبة ..

لغة البايثون هي لغة(OOP - Object Oriented Programming) و تشبه الى حد كبير برمجة الجافا أو الPerl و هي سهلة و سريعة و portable (اي من الممكن ان تعمل برامجها على اي نظام تشغيل) و هي قوية بسبب اعتمادها على مكتبة SDL

الوضع الطبيعي للغة هي عمل العاب ثنائية الأبعاد، اما ان كنت تريد دعم ثلاثي الابعاد فعليك بانزال PyOpenGL (http://pyopengl.sourceforge.net/)أو py3d.org (http://www.py3d.org/)

و ما اعجبني هو بساطة الموقع و الشروحات (Documentations and tutorials) المرتبة و الجيدة جدا، مما يسهل على المتعلم التعلم :)

أمثلة لألعابها:
http://www.pygame.org/projects/6
http://www.pygame.org/gamelets/

الخلاصة:
- ضرب عصفورين بحجر لمن يريد تعلم البرمجة و برمجة الالعاب (و حتى التطبيقات)
- للجميع :biggthump

-----------------------------------
أما عن البقية => فهذه آخر الأخبار:

Quake2 و Quake3 Engine
الظاهر يحتاجان الى وجود اللعبة الاصلية .. لانهما يتطلبان الملف quake2.exe أو quake3.exe

MasterX
عمل معي لكن الامثلة بسيطة جدا (فقط Hello World ! )

Allegiance
كانت لعبة من شركة ميكروسوف .. و بالرغم من انها كانت قوية برسومها و اعداداتها للاونلاين .. الا انها لم تلق النجاح المناسب.. ثم بعدها قرت ان تضعه الشركة كOpen Source، و حتى الان لم اجرب تشغيله.

ClanLib
كان على وشك العمل .. الا انها ظهرت لي مشكلة لم اجد لها حلا => ربما لأني استخدم MS Visual Studeo .Net 2005

jME
عذبني هذا المحرك => لكن الا أشغله :12:

OGRE
متطلباته لل Studeo .Net 2005 كثيرة .. :blackeye:

-------------------------------
هذا ما في جعبتي حتى الآن ..
و الى اللقاء :)

wazzz
26-12-2005, 03:48 PM
شكراً على هذه المعلومات القيمة

ayman_09
06-01-2006, 12:22 AM
شكرا على هذه المعلومات،
و اذا تسمحلي اضيف محرك اخر مجاني و قوي - مع انه قديم شوي
http://www.genesis3d.com

http://www.genesis3d.com/images/screenshots/thumbnails/Dshot3.jpg


http://www.genesis3d.com/images/screenshots/Dshot2.jpg

wellknownQ8
07-01-2006, 09:24 AM
محمد وسيم
عفوا و على الرحب و السعة .. :)

==========

عفوا أخي الكريم أيمن

و اذا تسمحلي اضيف محرك اخر مجاني و قوي - مع انه قديم شوي أكيد تفضل .. و اذا عندك اية ملاحظات او انتقادات فلا تترد بذكرها :)

Genesis3d: يبدو جيدا .. لكن لماذا لم يتم تطويره !؟ فآخر تاريخ له => 2002 !؟
على العموم شكرا لإضافتك :)