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





صفحه اول انجمنها -> بررسی سوالات و اشکالات کاربران -> یه مشکل ریاضی
 

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

یه مشکل ریاضی
نويسنده
پيغام
MahanGM
پیر بازی سازی
پیر بازی سازی


تاريخ عضويت: 3 شنبه 20 شهريور 1386
تعداد ارسالها: 1846
محل سكونت: USS Terra Nova


5 شنبه 24 آذر 1390 - 20:32
پاسخ بصورت نقل قول
سلام. آقا من یه فرمول دارم برای محسابه برخورد دایره ای:

dX = x2 - x1; dY = y2 - y1
Radi1 = 50; Radi2 = 75; Radi = Radi1 + Radi2;
if(sqrt((dx * dx) + (dy * dy)) < (Radi * Radi)){ // Collision }

خیلی ساده است. زمانی که شعاع دو تا دایره فاصله اشون از هم کوچکتر از 0 بشه برخورد روی میده. این خیلی خوب کار میکنه ولی فقط برای دایره هایی که شعاع هاشون برابره! الآن اینجا یکی 50 و یکی 75ه من نمی دونم چیکار کنم. من ریاضم هم زیاد خوب نیست Rolling Eyes .

_________________
I have a dream that little children will one day live in a nation where they will not be judged by the color of their skin but by the content of their character. I have a dream today
هیچ راه فراری نیست!
http://www.dreamfactory.ir
ارسال  بازگشت به بالا
ديدن مشخصات كاربر ارسال پيغام خصوصي
 

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


تاريخ عضويت: 5 شنبه 8 تير 1385
تعداد ارسالها: 326
محل سكونت: ايران


5 شنبه 24 آذر 1390 - 22:05
پاسخ بصورت نقل قول
درود براهورامزدا
ماهان جان برنامت درسته.احتمالا موقعيت هاي x,y هر داریه برات مشکل پیش آورده ببین مقادیر x,y که میشه مرکط دایره و شعاع آونها درست هستش یا خیر.دستی رو کاغذ یا با ماشین حساب خودت هماهنگ با برنامت جلو برو ببین اگه برنامه اشتباه میکنه خودت چی بدست میاری.
این سایتا هم هستن یه نگاهی بکن.
http://www.mvps.org/directx/articles/using_bounding_spheres.htm
http://www.toymaker.info/Games/html/3d_collisions.html

_________________
اهورا مزدا اين سرزمين مقدس را از هر گونه دشمن و خشكسالي به دور نگه دارد.
همانا از اسب افتاده ايم نه از اصل(مهدي اخوان ثالث)
www.sina-kian.com
ارسال  بازگشت به بالا
ديدن مشخصات كاربر ارسال پيغام خصوصي ارسال ايميل
 

نويسنده
پيغام
MahanGM
پیر بازی سازی
پیر بازی سازی


تاريخ عضويت: 3 شنبه 20 شهريور 1386
تعداد ارسالها: 1846
محل سكونت: USS Terra Nova


5 شنبه 24 آذر 1390 - 23:22
پاسخ بصورت نقل قول
razielsina, آقا دستت درست رفته بودم تو StackOverflow پرسیدم و همونموقع گفتن. حق با شمائه من سر x و y مورد داشتم که باید اونها رو از وسط دایره حساب میکردم. ممنون که زحمت کشیدی. Surprised

_________________
I have a dream that little children will one day live in a nation where they will not be judged by the color of their skin but by the content of their character. I have a dream today
هیچ راه فراری نیست!
http://www.dreamfactory.ir
ارسال  بازگشت به بالا
ديدن مشخصات كاربر ارسال پيغام خصوصي
 

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


تاريخ عضويت: 2 شنبه 23 آذر 1388
تعداد ارسالها: 1034


جمعه 25 آذر 1390 - 00:38
پاسخ بصورت نقل قول
MahanGM,

سلام

ماهان جان راستش هنوز فکر میکنم خط آخر مشکل داره ... چرا مقدار radi رو به توان دو رسوندی ؟ (radi * radi ) ... مگه مقدار radi مجموع شعاع 2 تا دابره نیست ؟
ارسال  بازگشت به بالا
ديدن مشخصات كاربر ارسال پيغام خصوصي ارسال ايميل
 

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


تاريخ عضويت: 5 شنبه 8 تير 1385
تعداد ارسالها: 326
محل سكونت: ايران


جمعه 25 آذر 1390 - 01:53
پاسخ بصورت نقل قول
Unity3D نوشته:
MahanGM,

سلام

ماهان جان راستش هنوز فکر میکنم خط آخر مشکل داره ... چرا مقدار radi رو به توان دو رسوندی ؟ (radi * radi ) ... مگه مقدار radi مجموع شعاع 2 تا دابره نیست ؟

درسته بايد در تابع بالا مجموعه دو شعاع بود و يا از تابع sqr برای مربع کردن طول بردار استفاده میشد که نشده و من هم توجه نکردم.
اما باید همیشه مقادیر x,y مربوط به مرکز دایره رو هم همیشه در نظر گرفت.

_________________
اهورا مزدا اين سرزمين مقدس را از هر گونه دشمن و خشكسالي به دور نگه دارد.
همانا از اسب افتاده ايم نه از اصل(مهدي اخوان ثالث)
www.sina-kian.com
ارسال  بازگشت به بالا
ديدن مشخصات كاربر ارسال پيغام خصوصي ارسال ايميل
 

نويسنده
پيغام
MahanGM
پیر بازی سازی
پیر بازی سازی


تاريخ عضويت: 3 شنبه 20 شهريور 1386
تعداد ارسالها: 1846
محل سكونت: USS Terra Nova


جمعه 25 آذر 1390 - 12:53
پاسخ بصورت نقل قول
Unity3D, razielsina, بچه ها اینکار من همون مربع رو انجام میده. توان دو یعنی یه عدد رو دوبار با هم ضربشون کنی. مشکلی نداره اگه فکر می کنید قانع نشدید من سورسش هم میدم. Surprised

_________________
I have a dream that little children will one day live in a nation where they will not be judged by the color of their skin but by the content of their character. I have a dream today
هیچ راه فراری نیست!
http://www.dreamfactory.ir
ارسال  بازگشت به بالا
ديدن مشخصات كاربر ارسال پيغام خصوصي
 

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


تاريخ عضويت: 2 شنبه 23 آذر 1388
تعداد ارسالها: 1034


جمعه 25 آذر 1390 - 13:44
پاسخ بصورت نقل قول
ماهان جان منظورم مربع کردن نبود اصلا ، کد شما کاملا درسته فقط اون خط آخر داخل if اون آخر مقدار radi نباید به توان 2 برسه ... عکس زیر رو ببین :



منظورم اینه که فاصله 2 نقطه مرکز رو که بدست آوردی باید با خود مقدار radi چک کنی ...
ارسال  بازگشت به بالا
ديدن مشخصات كاربر ارسال پيغام خصوصي ارسال ايميل
 

نويسنده
پيغام
m_basij
پیر بازی سازی
پیر بازی سازی


تاريخ عضويت: 5 شنبه 19 شهريور 1388
تعداد ارسالها: 523
محل سكونت: داخل کد


جمعه 25 آذر 1390 - 15:41
پاسخ بصورت نقل قول
کاملا درسته نباید به توان دو برسه radi یک نکته دیگه اینکه کوچک تر مساوی بگذار وقتی مساوی هست هم برخورد کرده دیگه.

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

نويسنده
پيغام
MahanGM
پیر بازی سازی
پیر بازی سازی


تاريخ عضويت: 3 شنبه 20 شهريور 1386
تعداد ارسالها: 1846
محل سكونت: USS Terra Nova


جمعه 25 آذر 1390 - 16:14
پاسخ بصورت نقل قول
من فرمول رو از اینجا دیدم مشکلی هم نداره نمی دونم واقعا کدوم درسته:

http://cgp.wikidot.com/circle-to-circle-collision-detection

اینجا میگه برای بهنیه شدن بیایم مجموع radius ها رو مربع کنیم و دست راست رو sqrt نکنیم اینطوری برای برخورد ها در تعداد بالا هم جواب میده. من باید sqrt رو وردارم. البته این کد قدیمی شده نسخه بهترش رو دیشب نوشتم.

_________________
I have a dream that little children will one day live in a nation where they will not be judged by the color of their skin but by the content of their character. I have a dream today
هیچ راه فراری نیست!
http://www.dreamfactory.ir
ارسال  بازگشت به بالا
ديدن مشخصات كاربر ارسال پيغام خصوصي
 

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


تاريخ عضويت: 2 شنبه 23 آذر 1388
تعداد ارسالها: 1034


جمعه 25 آذر 1390 - 17:20
پاسخ بصورت نقل قول
MahanGM, شیطون داری Physic Engine مینویسی ؟ PDT_002
ارسال  بازگشت به بالا
ديدن مشخصات كاربر ارسال پيغام خصوصي ارسال ايميل
 

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


 
پرش به:  


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


unity3d

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