Contacts
صفحه اصلی پورتال | صفحه اصلی تالار | ثبت نام | اعضاء | گروه ها | جستجو | پرسش و پاسخ | فروشگاه الکترونیکی | خرید پستی بازی های کامپیوتری





صفحه اول انجمنها -> اصول اولیه در طراحی بازیهای کامپیوتری -> برخورد در 2 بعدي / چند ضلعي ها + نمونه پروژه اجرايي !
 

ارسال يك موضوع جديد   پاسخ به يك موضوع ديدن موضوع قبلي :: ديدن موضوع بعدي
برو به صفحه 1, 2  بعدي

برخورد در 2 بعدي / چند ضلعي ها + نمو
نويسنده
پيغام
lord_akinak
متخصص ساخت بازی
متخصص ساخت بازی


تاريخ عضويت: شنبه 15 ارديبهشت 1386
تعداد ارسالها: 349
محل سكونت: Hell


جمعه 16 فروردين 1387 - 17:26
پاسخ بصورت نقل قول
سلام

خیلی وقته دیگه مقاله جدیدی تو سایت نمیاد ، شاید این مقاله باعث بشه بقیه هم چیزایی که بلدن رو ، روی pdf بیارن

مقاله : برخورد در 2 بعد ، برخورد بین چند ضلعی ها (polygon)
سطح : متوسط ، رو به پیشرفته
مناسب برای : کسانی که با ابزار های سطح پایین کد می زنن

مقاله :
http://ehsant.persiangig.com/document/2D_Collision.pdf

اینم یه نمونه که از همین روش نوشته شده ( برای اجرا به windows و dx 9 نیاز دارید )
شامل چند polygon که روی صفحه حرکت می کنن و با هم برخورد دارن ،
collision بین این polygon ها تست میشه + collision برای patricle system
البته برخورد الاستیک نیست و هنوز بردار نرمال رو 100% درست در نیاوردم !

http://ehsant.persiangig.com/document/collision.zip

شات :

_________________
And hell was so cold
All the vases are so broken
And the roses tear our hands all open
Mother mary miscarry
But we pray just like insects
The world is so ugly now
ارسال  بازگشت به بالا
ديدن مشخصات كاربر ارسال پيغام خصوصي ديدن وب سايت كاربر نام كاربري در پيغامگير Yahoo
 

نويسنده
پيغام
eta
مدیر سایت
مدیر سایت


تاريخ عضويت: 2 شنبه 27 تير 1384
تعداد ارسالها: 2153
محل سكونت: شاهين شهر


جمعه 16 فروردين 1387 - 19:05
پاسخ بصورت نقل قول
دستت در د نکنه آقا پیمان. مقاله رو خوندم. دمو رو هم دیدم.
پارتیکل ها هم با صخره ها برخورد دارند؟؟

کاشکی لینکها رو دائمی میذاشتی تا بتونم توی تاپیک مقالات بذارمش.
اگه وقت کردی این کار رو بکن. من خودم هر وقت تونستم آپلودشون می کنم.

_________________
تالار اصول ->صفحه ها، مقالات و تاپیکهای مفید

ارسال  بازگشت به بالا
ديدن مشخصات كاربر ارسال پيغام خصوصي ارسال ايميل
 

نويسنده
پيغام
lord_akinak
متخصص ساخت بازی
متخصص ساخت بازی


تاريخ عضويت: شنبه 15 ارديبهشت 1386
تعداد ارسالها: 349
محل سكونت: Hell


شنبه 17 فروردين 1387 - 09:08
پاسخ بصورت نقل قول
قربانت ..

نقل قول:

پارتیکل ها هم با صخره ها برخورد دارند؟؟

تك تك ذرات به عنوان يه نقطه در نظر گرفته ميشن و برخوردشون با چند ضلعي ها بررسي ميشه / توي اين دمو اون ذره نابود ميشه / اين طوري ميشه مثلا يه اصلحه با particle ساخت ...

نقل قول:

کاشکی لینکها رو دائمی میذاشتی تا بتونم توی تاپیک مقالات بذارمش.

چشم / در اولین فرصت ...

فقط فریم ریتت که افت نداشته ؟
لطفا اگه احساس کردید کنده ! بگید با چه قطعاتی تست شده ...

_________________
And hell was so cold
All the vases are so broken
And the roses tear our hands all open
Mother mary miscarry
But we pray just like insects
The world is so ugly now
ارسال  بازگشت به بالا
ديدن مشخصات كاربر ارسال پيغام خصوصي ديدن وب سايت كاربر نام كاربري در پيغامگير Yahoo
 

نويسنده
پيغام
iran_adventure
مدیر انجمن
مدیر انجمن


تاريخ عضويت: شنبه 4 آذر 1385
تعداد ارسالها: 2069
محل سكونت: تهران


شنبه 17 فروردين 1387 - 13:04
پاسخ بصورت نقل قول
عالي بود .
به نظرم تا روي كاغذ انجامش نديم متوجه نمي شيم ...
پيمان وقتي شي مي چرخه تو هر فريم خط عمود رو بدست مياري يا از تكنيك ديگه اي استفاده مي كني ؟
كاليژن layer , group رو چي كار كردي ؟
اگه خواستي من كدش رو نوشتم Surprised

_________________
Make something happen
ارسال  بازگشت به بالا
ديدن مشخصات كاربر ارسال پيغام خصوصي ارسال ايميل نام كاربري در پيغامگير Yahoo
 

نويسنده
پيغام
eta
مدیر سایت
مدیر سایت


تاريخ عضويت: 2 شنبه 27 تير 1384
تعداد ارسالها: 2153
محل سكونت: شاهين شهر


شنبه 17 فروردين 1387 - 14:03
پاسخ بصورت نقل قول
من بعضی وقتها حس کردم پرش داره.
کاش فریم ریت رو مینوشتی.
CPU:
AMD 2.2 Gig
graphic:
gefource 6200
ram : 768

_________________
تالار اصول ->صفحه ها، مقالات و تاپیکهای مفید

ارسال  بازگشت به بالا
ديدن مشخصات كاربر ارسال پيغام خصوصي ارسال ايميل
 

نويسنده
پيغام
iran_adventure
مدیر انجمن
مدیر انجمن


تاريخ عضويت: شنبه 4 آذر 1385
تعداد ارسالها: 2069
محل سكونت: تهران


شنبه 17 فروردين 1387 - 15:14
پاسخ بصورت نقل قول
از همين روش مي شه تو 3 بعدي هم استفاده كرد . اول دو شي 3 بعدي رو روي صفحه عمود بر هر مثلث تصوير مي كنيم و از همين روش براي تشخيص اون تصاوير كه الان 2 بعدي هستند استفاده مي كنيم ...

_________________
Make something happen
ارسال  بازگشت به بالا
ديدن مشخصات كاربر ارسال پيغام خصوصي ارسال ايميل نام كاربري در پيغامگير Yahoo
 

نويسنده
پيغام
lord_akinak
متخصص ساخت بازی
متخصص ساخت بازی


تاريخ عضويت: شنبه 15 ارديبهشت 1386
تعداد ارسالها: 349
محل سكونت: Hell


شنبه 17 فروردين 1387 - 17:19
پاسخ بصورت نقل قول
نقل قول:

به نظرم تا روي كاغذ انجامش نديم متوجه نمي شيم ...

اصلا یه طوری نوشتم که اگه کسی علاقه مند باشه مجبور شه فکر کنه
طی 4 روز این الگوریتم رو به 3 شکل نوشتم تا بلخره درست شد...

و یه راه هم برای optimize کردنش پیدا کردم که دیگه توی مقاله های خارجی نبود Laughing
با این optimize دیگه نیازی نیست تمام اضلاع چک بشن و فقط اضلاعی از هر دو polygon که امکان برخورد باهم رو دارن چک میشن ..

نقل قول:

شي مي چرخه تو هر فريم خط عمود رو بدست مياري يا از تكنيك ديگه اي استفاده مي كني ؟

توي اين دمو كوليژن نمي چرخه ولي در كل دوران رو هم نوشتم / همون طور كه گفتي توي هر حلقه نرمال ها محاسبه ميشن ، حتی اگه دورانی در کار نباشه ( کار زیاد پر هزینه ای نیست ... )
نوشتن دوران هم کار سختی نیست /
یه مکان رو به عنوان مرکز polygon در نظر میگیریم و همه vertex های polygon رو نسبت به اون مکان عدد میدیم / این طوری شکل polygon ( یا همون نرمال اضلاع ) از مکان مستقل میشه و برای دوران خود polygon هم به راحتی vertex ها رو حول نقطه مبدا دوران میدیم ...

مشکل دوران وقتی پیش میاد که قرار باشه توی یه بازه زمانی کولیژن رو حساب کنی ( یعنی وقتی یه جسم با سرعت زیاد حرکت می کنه و ممکنه طی زمانی کمتر از یه رندر از اشیاع دیگه رد بشه )
اگر فقط سرعت خطی داشته باشیم مشکلی نیست و اون محدوده min و max ای که برای polygon روی اون نرمال محاسبه کردیم ( پروجکشن polygon روی اون نرمال ) فقط تغییر مکان میده و برای محاسبش کافیشه یه اجتماع ازش توی بازه زمانی بگیریم ..
اما اگه polygon دوران هم داشته باشه ، محدوده min و Max برای اون نرمال طی زمان تغییر میکنه ( polygon طی زمان تغییر زاویه میده و خود نرمال هم تغییر میکنه ) و دیگه نمیشه اجتماع گرفت ...

هنوز راحی برای دخالت گشتاور چرخشی پیدا نکردم و برای کولیژن طی یه بازه زمانی فقط همون سرعت خطی لحاظ میشه PDT_001

نقل قول:

كاليژن layer , group رو چي كار كردي ؟

ردیفه / فقط layer رو دخالت ندادم ، هر polygon یه گروه داره و میتونه با تعدادی از گروه ها برخورد داشته باشه یا نداشته باشه ... send و recieve هم برقراره ولی با torque یکم فرق دارن

نقل قول:

من بعضی وقتها حس کردم پرش داره.

یه مشکلی توی برنامه نویسی این dx داشتم که بعضی وقتا پرش داشت و وقتی Medai player رو باز میکردی و يه چيزي play میکردی حل میشد !! امروز اتفاقی خداوند یاری رسوند و فهمیدم چیکار کنم و اونم حل شد ، شما هم یه تست بکن ، ببین اگه با media player اون مشکل حل شد که از همونه ، ولی اگه نشد یه دمو شلوغ تر میسازم ببینیم اون بدتر میشه یا نه /
در هر حال میخوام octree رو هم اضافه کنم و با اضافه کردن اون دیگه نباید به این راحتی ها تیک بزنه ..

نقل قول:

کاش فریم ریت رو مینوشتی.

فریم ریت با مونیتور تنظیم میشه ، معمولش 60 هست ، حالا شما اون تست media player رو بزن ، اگه لازم شد بازم دمو بزارم FPS و اطلاعات device رو هم میزارم

نقل قول:

از همين روش مي شه تو 3 بعدي هم استفاده كرد . اول دو شي 3 بعدي رو روي صفحه عمود بر هر مثلث تصوير مي كنيم و از همين روش براي تشخيص اون تصاوير كه الان 2 بعدي هستند استفاده مي كنيم ...

دقیقا ، برای نرمال عمود بر مثلث هم دو تا از بردار های اضلاع مثلث رو ضرب برداری می کنن

_________________
And hell was so cold
All the vases are so broken
And the roses tear our hands all open
Mother mary miscarry
But we pray just like insects
The world is so ugly now
ارسال  بازگشت به بالا
ديدن مشخصات كاربر ارسال پيغام خصوصي ديدن وب سايت كاربر نام كاربري در پيغامگير Yahoo
 

نويسنده
پيغام
eta
مدیر سایت
مدیر سایت


تاريخ عضويت: 2 شنبه 27 تير 1384
تعداد ارسالها: 2153
محل سكونت: شاهين شهر


1 شنبه 18 فروردين 1387 - 19:59
پاسخ بصورت نقل قول
تست مدیا پلیر:!
من دقیقا برعکس نتیجه می گیرم با مدیا پلیر(که یه چیزی پخش می کنه) پرشها به شدت بالا میرن

_________________
تالار اصول ->صفحه ها، مقالات و تاپیکهای مفید

ارسال  بازگشت به بالا
ديدن مشخصات كاربر ارسال پيغام خصوصي ارسال ايميل
 

نويسنده
پيغام
مصطفي سپهريان
پیر بازی سازی
پیر بازی سازی


تاريخ عضويت: جمعه 24 آذر 1385
تعداد ارسالها: 1147
محل سكونت: تو يه فلش مموري دو گيگ


2 شنبه 19 فروردين 1387 - 12:36
پاسخ بصورت نقل قول
خيلي خوب بود... كلي مطلب جديد (و نيمه جديد) يادگرفتم PDT_002
اما نميشه روي PersianGig آپلود كني كه هم سرعتش خوبه و هم ديگه پاك نميشه؟

_________________
«پشتکار»«پشتکار»«پشتکار»
ارسال  بازگشت به بالا
ديدن مشخصات كاربر ارسال پيغام خصوصي ارسال ايميل ديدن وب سايت كاربر نام كاربري در پيغامگير Yahoo
 

نويسنده
پيغام
lord_akinak
متخصص ساخت بازی
متخصص ساخت بازی


تاريخ عضويت: شنبه 15 ارديبهشت 1386
تعداد ارسالها: 349
محل سكونت: Hell


4 شنبه 21 فروردين 1387 - 22:31
پاسخ بصورت نقل قول
در حال كار كردن روي quadtree و بررسی مشکل media player هستم ...

-- توضیح :
برای گرفتن زمان از QueryPerformanceCounter استفاده کردم و کل حرکت ها براساس تاخیر زمانی هست که بین 2 رندر میوفته ،
گویا دو تا api هستن : timeBeginPeriod و timeEndPeriod که میتونن روی دقت این تایمر اثر بزارن و مدیا پلیر روی pc من دقت رو بالا میبرد و مشکل پرش حل میشد ( یعدا فهمیدم دقت پیش فرض 15 هست و خودم توی برنامه به 1 تغییرش دادم ، دیگه مدیاپلیر بی تاثیر میشد )
احتمالا مدیل پلیر شما دقت رو کم میکنه .....
مطمئن که شدم ردیفش می کنم

_________________
And hell was so cold
All the vases are so broken
And the roses tear our hands all open
Mother mary miscarry
But we pray just like insects
The world is so ugly now
ارسال  بازگشت به بالا
ديدن مشخصات كاربر ارسال پيغام خصوصي ديدن وب سايت كاربر نام كاربري در پيغامگير Yahoo
 

نمايش نامه هاي ارسال شده قبلي:   
ارسال يك موضوع جديد   پاسخ به يك موضوع    صفحه 1 از 2 تمام ساعات و تاريخها بر حسب 3.5+ ساعت گرينويچ مي باشد
برو به صفحه 1, 2  بعدي


 
پرش به:  


شما نمي توانيد در اين انجمن نامه ارسال كنيد.
شما نمي توانيد به موضوعات اين انجمن پاسخ دهيد
شما نمي توانيد نامه هاي ارسالي خود را در اين انجمن ويرايش كنيد
شما نمي توانيد نامه هاي ارسالي خود را در اين انجمن حذف كنيد
شما نمي توانيد در نظر سنجي هاي اين انجمن شركت كنيد


unity3d

بازگردانی به فارسی : علی کسایی @ توسعه مجازی کادوس 2004-2011
Powered by phpBB © 2001, 2011 phpBB Group
| Home | عضويت | ليست اعضا | گروه هاي كاربران | جستجو | راهنماي اين انجمن | Log In |