আমি এমন একটি গেমটি বিকাশ করছি যাতে খেলোয়াড় দুলতে দড়ি ব্যবহার করতে পারে (স্পাইডারম্যান বা বায়োনিক কমান্ডো যা করেছিল ঠিক তেমন ) এবং এই আচরণটি বাস্তবায়নে আমার সমস্যা হচ্ছে। কীভাবে কেউ আমাকে এটি করতে সাহায্য করতে পারে, তার অর্থ আমি পদার্থবিজ্ঞানের সূত্র এবং ইত্যাদি now এখন পর্যন্ত আমি 3 টি ধারণা নিয়ে এসেছি। একটি বসন্ত ব্যবহার করছে, তবে এটি অনেক সময় ব্যয় করে এবং কখনও কখনও এটি ঝাপটায়। অন্য দুজন পরবর্তী পদক্ষেপ গণনা করার চেষ্টা করছেন (একটি সম্ভাব্য শক্তি গণনার মাধ্যমে এবং একটি টর্কের গণনার মাধ্যমে) এবং অভিনেতা যখন সুইং করার চেষ্টা করছেন তখন উভয়ই প্রায় ক্র্যাশ হয়ে যায়।
টর্ক গণনা করার জন্য আমি এখানে কোড লিখেছি:
float dx = Runner->getPosition().x - ancher.x;
float dy = Runner->getPosition().y - ancher.y;
float t0 = atan2(dy,dx); //my current angle
float k = ((dy) *vx - (dx) * vy) / (dx * dx+dy * dy); //previus angular velocity
k -= gravity * cos(t0) *dt; // new angular velocity (gravity is positive)
t0 += k * dt - acc * cos(t0) *dt * dt / 2; // rotate the rope
float dx1 = r0 * cos(t0); // new position (r0 is rope length)
float dy1 = r0 * sin(t0);
vx = (dx1 - dx) / dt; //calculate velocity
vy = (dy1 - dy) / dt;