ساخت چرخ ماشین

rainbmaya

Active Member
c# code:


Float $ax; float $ay;
float $bx;
float $by;
float $rotval ;
float $framea;
int $resetframe = ppipe1.resetframe;
if (frame == $resetframe) {
$ax= p.translatex;
$ay= p.translatez;
$bx= p.translatex;
$by= p.translatez;
$rotval = 0;
ppipe1.rotatey = 0;
$framea = 0;
}
if (frame != $resetframe) {
$bx= p.translatex;
$by= p.translatez;
$x = sqrt(($bx - $ax) * ($bx - $ax) + ($by - $ay) * ($by - $ay));
if (frame > $framea )
$rotval = $x + $rotval;
else
$rotval = $rotval - $x ;
$ax= $bx;
$ay= $by;
$framea = frame;
print $rotval ;
ppipe1.rotatey = -$rotval* ppipe1.k;
}



خوب در این کد فاصله ای که جسم طی می کنه در هر فریم محاسبه میشه a نقطه اول b نقطه دوم که از طریق فرمول جذر x2 + y2 در محاسبه میشه. (وتر مثلث قائم الزاویه )
سپس این وتر ها با هم در هر فریم با هم جمع میشن و مسافت طی شده به دست میاد.البته اگه چرخ دنده عقب بیاد با این فاصله طی شده در هر فریم از مسافت کل کم بشه.
واقعا سپاسگذارم بابت زحماتتون. میشه یه توضیح برای نحوه استفاده از این کدها هم بذارید. اسم آبجکت pPipe1 ؟
بازهم ممنون. این تیکه آخر هم بذارید. نحوه استفاده اشو میگم.
شاد و پیروز و سربلند باشید.
 
آخرین ویرایش:

davoodice

Well-Known Member
یه چرخ بسازید اسمش رو بذرید ppipe1
دو تا اتریب به ش اضافه کنید یکی به نام k و دیگری به نام resetframe
یه دایره curve هم بسازید اسمش رو p بذارید و ppipe رو بهش پرنت کنید.ppipe فرزند p
حالا اسکریپت رو در اکسپرشن ادیتور paste کنید و اجرا کنید

به طور کلی:
در این اسکریپت شما می تونید ppipe رو با اسم چرخ و p رو با ابجکتی که چرخ رو باهاش جابجا میکنید جایگرین کنید
 

rainbmaya

Active Member
یه چرخ بسازید اسمش رو بذرید ppipe1
دو تا اتریب به ش اضافه کنید یکی به نام k و دیگری به نام resetframe
یه دایره curve هم بسازید اسمش رو p بذارید و ppipe رو بهش پرنت کنید.ppipe فرزند p
حالا اسکریپت رو در اکسپرشن ادیتور paste کنید و اجرا کنید

به طور کلی:
در این اسکریپت شما می تونید ppipe رو با اسم چرخ و p رو با ابجکتی که چرخ رو باهاش جابجا میکنید جایگرین کنید
آقا مرسی بابت زحمتات. خیلی باحالی. فقط یه نکته. چرا من p رو جابجا میکنم چرخ نمیچرخه بصورت اتوماتیک و k رو باید حتما عدد بدم تا چرخ بچرخه.
 

rainbmaya

Active Member
k ضریب سرعت چرخیدن چرخه اگه 0 باشه یعنی سرعت میشه 0 و نمیچرخه

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

davoodice

Well-Known Member
مل وابسته ریاضیات است
لطف داری نسبت به من اما کتاب ها مالی نیستن باید تمرین کنی
از کارای ساده شروع کن
 
آخرین ویرایش:

rainbmaya

Active Member
معذرت دوست من ولی دنده عقب نداره؟! هرکاری کردم نتونستم براش درست کنم یه بزرگواری کن و دنده عقبشم بذار. الان که عقب میره بازم رو به جلو میچرخه! اگه میتونی کاریش کن که وقتی به عقب میبریمش برعکس بچرخه. میشه k رو منفی داد ولی خوب در نمیاد و زشت میشه چون تو اون فریم کلی جابجایی rotate پیدا میکنه.
 

rainbmaya

Active Member
roll V2

در این ورژن از فایل مشکل دنده عقب هم رفع شده
برای حرکت دستی مسیر رو حذف کنید
برای حرکت چرخ از کنترلر زیر آن استفاده کنید حتما
برای یاد گیری مل نیازی به یاد گیری کامل C++ نیست فقط در حدی که با انواع حلقه ها عبارات شرطی، سینتاکس یا قواعد نوشتاری، متغیر ها انواع آنها و روش تعریف آنها اشنا بشید.
نکته:
در این فیل حتما باید اول آبجکت خودتو انیمیت کنی بعد تایم اسلایدر رو حرکت بدی تا چرخش رو ببینی. اگه دیدی چرخ حالت سر حوردن داره ، خود چرخو انتخاب کن و اتریب k رو تنظیم کن
ولی باز هم دنده عقب همون مشکلو داره ، خودتونم یه نگاه بندازید. شاید اشتباه آپلود کردید!
 

rainbmaya

Active Member
سالم بود 2013
است

دوست من حق باشماست وقتی تایم اسلایدرو به جلو میبریم چرخ به جلو میچرخه و وقتی تایم اسلایدرو به منفی یعنی سمت صفر میبریم به عقب میچرخه ولی تو صحنه ای که داره رندر میشه هیچوقت فریم ها منفی نمیشن . اگه این اتفاق بیافته صحنه که متحرکسازیهای دیگه ای هم داره خراب میشه. منظور من اینه که اگه TZ+ به سمت مثبت رفت به جلو بچرخه و اگه TZ- به منفی رفت به عقب بچرخه. امیدوارم منظور منو متوجه شده باشید. لطفا خودتون برای P کلید تعیین کنید و از Motion Patch استفاده نکنید.
بازم تشکر خیلی خیلی.
 

پیوست ها

  • rol test rainbmaya.rar
    8.4 کیلوبایت · بازدیدها: 6
آخرین ویرایش:

davoodice

Well-Known Member
سلام
اول بگو چه جوری میشه فایل اینجا پیوست کنم از وقتی که مجید انلاین ارتقا دادن من ایکنشو نمیبینم
دوم:
برات درست کردم + چند تا تغییر
اول اینه اتریب های k و resetframe رو از تو ppipe برداشم و بجاش اتریب های spin speed و reset frame رو توی کنترولر گذاشتم
یه اتریب به نام revers move هم گذاشتم که اگه 0 یا 1 بشه حرکت چرخ برعکس میشه
باید تو 1 فریم درست زموانی که ماشینت دنده عقب میاد این اتریب رو انیمیت کنی

roll v3
 

rainbmaya

Active Member
سلام
اول بگو چه جوری میشه فایل اینجا پیوست کنم از وقتی که مجید انلاین ارتقا دادن من ایکنشو نمیبینم
تو این قسمت سمت چپ پایین کنار ارسال پاسخ به تنظیم های بیشتر برو و بعد اسلایدرتو ببر پایین یه دکمه هست بنام مدیریت پیوست از اونجا میشه آپ کنی
در ضمن دیدمش خیلی عالی بود مرسی. همون چیزیه که نیاز داشتم. واقعا که خیلی گلی.
 

پیوست ها

  • a1.jpg
    a1.jpg
    266.5 کیلوبایت · بازدیدها: 4

rainbmaya

Active Member
دوست خوب من davoodice واقعا نمیدونم چطور ازت تشکر کنم. خیلی کارمو راه انداختی و پروژه امو از بن بست بیرون آوردی. واقعا ازت ممنونم.
 

جدیدترین ارسال ها

بالا