محرك الألعاب Box2d لدلفي وقردالنار Firemonkey
#1
السلام عليكم

ربما تعرفون لعبة الطيور الغاضبة AngryBirds
وبما لا تعرفون أن اللعبة تستخدم محرك محرك فيزيائي ثنائي الايعاد يسمى Box2d
موقعه الرسمي box2d.org وهو مبرمج بلغة السي++

من سنتين قام احد الصينيين بتحويل المحرك الى لغة دلفي
كود :
https://code.google.com/p/box2d-delphi/
ومن يومين قام اخر يتحويل الاخير والتعديل عليه ليعمل مع قرد النار Firemonkey
كود :
https://github.com/FMXExpress/box2d-firemonkey


الملفات المرفقة
.rar   box2D Delphi Package 2.3.0.rar (الحجم : 154.03 KB / التحميلات : 89)
.rar   box2d-firemonkey.rar (الحجم : 303.21 KB / التحميلات : 106)
[-] كل من 1 user says قال شكرا ل B.M.AbdelAziZ على المشاركة المفيدة
  • ELARAPY
الرد
#2
لكن من ناحية الاداء . النسخة الاصلية (cpp) افضل . كما ان هذه المكتبة في فري باسكال افضل اداء من دلفي .
حاليا اعمل على مشروع بسيط بستخدام هذه المكتبة + فري باسكال . المشروع عبارة عن محرر ثنائي الابعاد . يمكن رسم اشكال ثابتة و اشكال غير ثابتة . اضافة الى الروابط . عند الانتهاء يمكن تشغيل المحرر في وضع real time . لرؤية المحاكاة .
الرد
#3
إقتباس :من ناحية الاداء . النسخة الاصلية (cpp) افضل . كما ان هذه المكتبة في فري باسكال افضل اداء من دلفي .
ان قلت لي الاصلية احسن اقول ممكن لكن freepascal الأمر بحاجة لبرهان Big Grin ارفق لنا أمثلة للمقارنة
ايا كان... يمكن تحويل الاصلية الى dll واستخدامها من دلفي
الرد
#4
على سبيل المثال جرب الديمو pyramid في كلا من التطبيقين .
كود :
https://app.box.com/s/xn8uqodikjkvwn685omq
الرد
#5
ارفق الملفات المصدرية واذكر الاصدارات المستعملة
مثلا قمت بCompile للمثال TestBed بدلفي 7 الملف هنا mir.cr/1Q2D68KN
كان الناتج اصغر حجما واسرع من Delphi_TestBed من الرابط فوق لكن يبقى FPC_TestBed اسرع

الرد
#6
بالنسبة لـ Dephi_TestBed حملته من الموقع
كود :
https://box2d-delphi.googlecode.com/files/box2D%20Delphi%20Package%202.3.0.zip

FPC_TestBed : المكتبة box2d موجودة كحزمة في codetyphon اسمها pl_Box2D . فقط قمت بتحويلها الى لازارس
الحزمة بها الملفات المصدرية مع الامثلة . لكن هذا المثال TestBed غير كامل . لا تستطيع عمل zoom او تحريك الاشكال .
اضن ان الذي حول المشروع استخدم فقط المحول المدمج مع لازارس .
الرد
#7
إقتباس : فقط قمت بتحويلها الى لازارس
الحزمة بها الملفات المصدرية مع الامثلة . لكن هذا المثال testbed غير كامل
قد يكون هذا سبب الفرق في السرعة.
الرد


التنقل السريع :


مستخدمين يتصفحوا هذا الموضوع: 1 ضيف