কীভাবে আমি কোনও অবজেক্টকে একটি "অনন্ত" বা "চিত্র 8" ট্র্যাজেক্টোরিতে স্থানান্তর করতে পারি?


28

যখন আমি বস্তুটি পয়েন্টের আশেপাশে সরাতে চাই তখন করি:

    point.x *= cosf(timer.timeElapsed);
    point.y *= sinf(timer.timeElapsed);

আট বা ইনফিনিটি সাইন ট্রাজেক্টোরিতে কীভাবে পয়েন্ট মুভ করবেন?

উত্তর:


24

2
উত্তরগুলি স্বয়ংসম্পূর্ণ হওয়া উচিত, বাহ্যিক লিঙ্কগুলি কোনও দিন মারা যায় এবং এই উত্তরটি অকেজো করে দেয়। আপনার সরবরাহিত লিঙ্কগুলি থেকে আপনার গুরুত্বপূর্ণ বিটগুলি উদ্ধৃত করা উচিত।
ব্রায়ান এইচ।

61

মার্টনের নোট হিসাবে, বেশ কয়েকটি "আটজনের ফিগার" বক্ররেখা রয়েছে যা আপনার প্রয়োজনের সাথে খাপ খায়। সম্ভবত সবচেয়ে সহজ হ'ল জেরোনোর ​​লেমনিস্কিট , যার প্যারামিট্রাইজেশন রয়েছে:

x = cos(t);
y = sin(2*t) / 2;

এবং এর মতো দেখাচ্ছে:

জেরোনো অ্যানিমেশনের লেমনিসিকেট

যাইহোক, বার্নোলির লেমিসিসিট দৃশ্যত আরও আনন্দদায়ক হতে পারে; এর প্যারোমেট্রাইজেশন রয়েছে গেরোনোর ​​লেমনিসিকেটের সাথে খুব সমান, উভয় অক্ষকে একটি ফ্যাক্টর দ্বারা স্কেল করা ছাড়া 1/(sin(t)^2 + 1) = 2/(3 - cos(2*t)):

scale = 2 / (3 - cos(2*t));
x = scale * cos(t);
y = scale * sin(2*t) / 2;

দেখে মনে হচ্ছে:

বার্নোল্লি অ্যানিমেশন লেমনসিকেট

(জিএফসিকল দিয়ে সংকুচিত ম্যাপেল 13 দিয়ে তৈরি অ্যানিমেশনগুলি))


আপনাকে ধন্যবাদ, প্রত্যেকে, আপনার সমর্থনের জন্য, যা আমাকে গেমদেভে আমার প্রথম সোনার ব্যাজ উপার্জন করেছে ! :-)
ইলমারি করোনেন

1
কেবল লিঙ্কগুলি পোস্ট করার জন্যই নয়, তবে সূত্র এবং গ্রাফিকগুলি (উত্স সহ)।
রুটলোকস

2
যেমনটি, এটি গ্রহণযোগ্য উত্তর হওয়া উচিত।
ব্রায়ান এইচ।

-1

আমি এই সূত্রটি ব্যবহার করে এলোমেলোভাবে অন্য একটিকে পেয়েছি:

এক্স2=Y2+ +0.1এক্স2.8

ওল্ফ্রাম আলফা দ্বারা পরিকল্পনা করা হিসাবে :

একটি অনন্ত প্রতীক অর্ধেক


অন্যান্য উত্তরগুলির মতো নয়, বর্তমানে এটি প্যারাম্যাট্রিক আকারে উপস্থাপন করা হয়নি যা আমাদের সময়ের সাথে সাথে সহজেই অবস্থানকে এগিয়ে নিতে দেয় t। আপনি কীভাবে সময়ের সাথে একটি চলমান অবজেক্টের অবস্থান নির্ধারণের জন্য এই সূত্রটি ব্যবহার করবেন তার একটি বর্ণনা সহ আমি সুপারিশ করব recommend
ডিএমগ্রিগরি

-4

((এক্স+ +1)2+ +Y2)((এক্স-1)2+ +Y2)=1

একটি অনন্ত প্রতীক অর্ধেক

সেই বক্ররেখার যে কোনও বিন্দু থেকে (-1, 0) এবং (1,0) থেকে দূরত্বের পণ্য স্থির এবং 1 এর সমান।


4
এই উত্তরটি এমন একটি বক্ররেখার মডেলিংয়ের সূত্র সরবরাহ করে, তবে "অবজেক্টকে সরানো" এমন পদ্ধতিতে নয় যে এটি সেই বক্ররেখাকে অনুসরণ করে। আপনি কীভাবে কোনও গেমটিতে কোনও বস্তু স্থানান্তর করতে এই গণিতটি ব্যবহার করবেন তা নির্দেশ করার জন্য দয়া করে উত্তরের বিশদটি বিবেচনা করুন।
DMGregory
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.