delphi4arab منتديات دلفي للعرب

نسخة كاملة : محرك الألعاب Box2d لدلفي وقردالنار Firemonkey
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم

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

من سنتين قام احد الصينيين بتحويل المحرك الى لغة دلفي
كود :
https://code.google.com/p/box2d-delphi/
ومن يومين قام اخر يتحويل الاخير والتعديل عليه ليعمل مع قرد النار Firemonkey
كود :
https://github.com/FMXExpress/box2d-firemonkey
لكن من ناحية الاداء . النسخة الاصلية (cpp) افضل . كما ان هذه المكتبة في فري باسكال افضل اداء من دلفي .
حاليا اعمل على مشروع بسيط بستخدام هذه المكتبة + فري باسكال . المشروع عبارة عن محرر ثنائي الابعاد . يمكن رسم اشكال ثابتة و اشكال غير ثابتة . اضافة الى الروابط . عند الانتهاء يمكن تشغيل المحرر في وضع real time . لرؤية المحاكاة .
إقتباس :من ناحية الاداء . النسخة الاصلية (cpp) افضل . كما ان هذه المكتبة في فري باسكال افضل اداء من دلفي .
ان قلت لي الاصلية احسن اقول ممكن لكن freepascal الأمر بحاجة لبرهان Big Grin ارفق لنا أمثلة للمقارنة
ايا كان... يمكن تحويل الاصلية الى dll واستخدامها من دلفي
على سبيل المثال جرب الديمو pyramid في كلا من التطبيقين .
كود :
https://app.box.com/s/xn8uqodikjkvwn685omq
ارفق الملفات المصدرية واذكر الاصدارات المستعملة
مثلا قمت بCompile للمثال TestBed بدلفي 7 الملف هنا mir.cr/1Q2D68KN
كان الناتج اصغر حجما واسرع من Delphi_TestBed من الرابط فوق لكن يبقى FPC_TestBed اسرع

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

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