الشبكة العربية لمطوري الألعاب

محترف  انس مشاركة 1

السلام عليكم.

احاول حاليا كتابة برنامج بعالج قاعدة البيانات MySql عن طريق لفة C++.لكنني اوجه صعوبة في ذلك نظرا لقلة خبرتي بهذا المجال، فاود ان اعرف ان كان هناك من حاول من قبل و يمكنه افادتنا 😄 .

و كسؤال خارجي، ماهي اهمية قواعد البيانات في تطوير الالعاب ؟ و هل هي مجرد كمالية ام انها اليوم من الضروريات ؟

اتمنى ان اجد اجوبة عبى هذه الاسئلة .

شكرا جزيلا لكم.

يلام.

خبير مدير وسام البهنسي مشاركة 2

في 14/رمضان/1430 12:26 م، قال انس بهدوء وتؤدة:

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

لم أحاول ذلك من قبل. لكن الواجهة البرمجية موجودة طبعاً:
http://sourceforge.net/projects/mysqlcppapi/
 



في 14/رمضان/1430 12:26 م، عقد انس حاجبيه بتفكير وقال:

ماهي اهمية قواعد البيانات في تطوير الالعاب ؟ و هل هي مجرد كمالية ام انها اليوم من الضروريات ؟

تقصد ما أهمية استخدام قاعدة بيانات في برنامج لعبة؟ لأننا أعتقد جميعاً نتفق على أن قواعد البيانات بنية تحتية أساسية لأية شركة برمجيات عصرية. 
أما في حالة استخدام نظام قاعدة بيانات في برنامج لعبة، فإنها ليست كمالية. وإنما تقنية ضرورية لحل بعض المسائل التي تواجهها لعبة ما. ذكرتُ سابقاً مثال أننا نستخدم نظام قاعدة بيانات فعلي وبتعلميات SQL في لعبة NHL07. حيث يحتفظ بكافة معلومات اللاعبين والملاعب والمدربين والفرق ... الخ في جداول قاعدة البيانات. هذه المعلومات يتم تحديثها حتى بعد أن يتم نشر اللعبة وذلك من خلال تحديثات الإنترنت أثناء اللعب على الإنترنت.
 
هناك أيضاً ألعاب الـ MMORPG الحديثة والتي جميعها تعتمد على نظام قواعد بيانات لحفظ بيانات اللعبة. أحد زملائي كان من العاملين في هذا المجال، وبالتحديد كان مبرمج الشبكة في لعبة Star Sonata:
 
http://www.starsonata.com/
 
وقد حدثني قليلاً عن التقنيات المستخدمة ومستوى الأداء. ففي حينها استخدمت اللعبة قاعدة بيانات MySql لحفظ ومتابعة تحركات اللاعبين عبر العالم، وقد كان الأداء جيداً جداً لتحديثات مستمرة بسرعة 30 تحديث في الثانية.
 
إذن الجواب هو أنك قد تحتاج لنظام قاعدة بيانات أو قد لا تحتاج بحسب لعبتك. طبعاً قرار إدراج نظام قاعدة بيانات في لعبة ليس بالعبث، لذلك عندما يتخذ فريق التطوير هذا القرار فإنه لا يكون لإدخال "كماليات" وإنما لضرورة ملحة بالتأكيد.

وسام البهنسي
مبرمج في إنفيديا وإنفريمز

محترف  انس مشاركة 3

شكرا جزيلا استاذ وسام على التوضيح.


وفي 05 سبتمبر 2009 12:43 ص، قال وسام البهنسي متحمساً:

لم أحاول ذلك من قبل. لكن الواجهة البرمجية موجودة طبعاً:http://sourceforge.net/projects/mysqlcppapi/
نعم هذا ما استعمله الان لكنني اواجه مشكلة و هي عدم الوصول الى قاعدة البيانات التي احتفض بها في حاسوبي و ليس على خادم في الانترنت.
هل لديكم فكرة عن كيفية التواصل مع قاعدة البيانات المتواجدة على مستوى الحاسوب الشخصي ؟

شكرا.
سلام.

خبير  algeria مشاركة 4

وهل طريقة التعامل مع mysql , في c++
هي نفسها كما في php
أظن نفسها لأني شاهدت طريقة الاستعلام من قاعدة البيانات هي نفسها في c++/php

select * from : لاستخراج البيانات من الحقول من جدول معين
update : لتحديث بيانات خانة أو حقل في جدول معين
delete : لحذف بيانات خانة أو حقل من جدول معين
.. إلخ

مثال :

لدينا جدول (alger)
فيه 3 حقول
(id,name,age)
+----------------------+
|  id  | name  | age  |
+----------------------+
|  01 | msila  |   60  |

+----------------------+
|  02 | batna  |   45  |

+----------------------+
a
لاستخراج الإسم msila من الجدول
نكتب :
select name from alger where id=1
النتيجة : msila

شرح الكود :
اختر ما في الحقل (name) من الجدول (alger) أين يساوي الحقل (id) رقم (1)
الطريقة نفسها في c++

الجزائر قلبي وغزة نبضه

محترف  انس مشاركة 5

ما قصدته ي مواطني العزيز هو انني اواجه مشكلة في الواجهة التي تسمح لي بالتعامل مع اوامر قاعدة البيانات، هل لك خبرة في هكذا تجارب ؟

خبير  algeria مشاركة 6

كيف أخي لم أفهم قصدك
بالنسبة لي أتقن mysql جيدا ,, وطريقة التعامل معها في c++
هي نفسها في php وهذا ما أجيده
لكني لم أجرب لحد الآن ذلك مع c++

وأظن هذا ما تبحث عنه أنت

1
 http://pokemon-o.pastebin.com/Tsb64AUs
2
http://pokemon-o.pastebin.com/g2VacPfT

+

أخي إذا عندك رابط Directx9 SDK
أتمنى تضعه لي أو ترسله لي وبارك الله فيك
لم أجده نهائيا

الجزائر قلبي وغزة نبضه

محترف  انس مشاركة 7

ارني كيف تتعامل مع الـ MySQL بـلغة الـ C++



اما عن الرابط فهل انت متاكد من انك بحثت في المصدر الاول ؟ اقصد موقع مايكروسوفت ؟ لانني انظر ماذا وجدت : http://www.microsoft.com/downloads/details.aspx?FamilyId=FD044A42-9912-42A3-9A9E-D857199F888E&displaylang=en

خبير  algeria مشاركة 8

بالنسبة للرابط أخي ,, فالذي وضعتهما لك ,, يبينان بعض طرق التعامل
مع mysql في c++

وبالنسبة للذي وضعته أنت ,, فهو يعطيني DX9 SDK التحديث فقط

أما بالنسبة للتعامل مع mysql ,, فحاليا أحاول دراسة ذلك , وإن شاء الله أعود ونتناقش في ذلك

أيضا إن كنت تجيد الإنجليزية جيدا ,, يمكنك أن تجد أفضل الكتب لأفضل المبرمجين في (Google Books)
http://books.google.com
فقط ضع إسم الكتاب أو كلمات مفتاحية ,, مثلا
C++/Directx/Programming Game/3Ds Max .. إلخ

الجزائر قلبي وغزة نبضه

محترف  انس مشاركة 9

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


اما عن المكتبة، فلا اظن ان ما قدمته لك هو التحديث فقط، بل هي كامل العتاد اللزم لبدا البرمجة اقرء التفاصيل الموجودة في الرابط.

خبير  algeria مشاركة 10

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

بالنسبة للمكتبة , فقد حملتها سابقا ,, وسأجرب مجددا معها

الجزائر قلبي وغزة نبضه