জ্যামিতি ওয়ার্স অভিকর্ষটি কীভাবে করবেন well


11

আমি এখানে ব্যাকগ্রাউন্ড গ্রিডের কথা বলছি না, আমি গ্র্যাভিটি ওয়েলসের চারপাশে ঘুরতে ঘুরতে ঘুরতে ঘুরতে থাকা কণার কথা বলছি! আমি এর প্রভাবটি সর্বদা পছন্দ করেছি এবং সিদ্ধান্ত নিয়েছি এটি একটি মজাদার পরীক্ষা হবে, আমি জানি জিডাব্লু হুকের আইনটি সমস্ত জায়গাতে ব্যবহার করে, তবে আমি মনে করি না যে কণা থেকে ভাল প্রভাব ঝর্ণা ব্যবহার করে করা হয়েছে, এটি দূরত্ব-স্কোয়ার ফাংশনের মতো দেখাচ্ছে।

এখানে একটি ভিডিও এফেক্টটি প্রকাশ করছে: http://www.youtube.com/watch?v=YgJe0YI18Fg

আমি কিছু সূক্ষ্ম কণায় বসন্ত বা মাধ্যাকর্ষণ প্রভাব কার্যকর করতে পারি, এটি সহজ। তবে আমি জিডাব্লুএস এফেক্টের সাথে একই রকমের মতো প্রভাবটি পেয়েছি বলে মনে হচ্ছে না। আমি যখন গেমটিতে প্রভাবটি দেখি তখন মনে হয় কণাগুলি ওয়েল থেকে নিজে থেকেই গুচ্ছগুলিতে নির্গত হয়, তারা কূপের কেন্দ্রের চারপাশে বাহ্যিকভাবে সর্পিল করে এবং অবশেষে বাহিরের দিকে প্রবাহিত হয়, কূপের দিকে ফিরে পড়ে এবং পুনরাবৃত্তি করে।

কমে গেলে আমি কণাগুলি কীভাবে বাহ্যিকভাবে বাহ্যিকভাবে তৈরি করব? কূপের গোছাগুলি কীভাবে ওয়েলের নিকটে থাকি কিন্তু যখন বাহিরে প্রবাহিত হয় তখন একে অপরের থেকে দূরে ছড়িয়ে থাকি? কণাগুলি কীভাবে ওয়েলের সাথে এত দৃ strongly়ভাবে সংযুক্ত রাখব?

সম্পাদনা:
http://www.youtube.com/watch?v=1eEllkkXX8 <- ভিডিও
https://dl.rodbox.com/u/49283213/gw.gif <- কণা পথের জিআইএফ

কণা প্রভাব দেখতে সহজ করে তুলতে আমি জিডব্লিউয়ের মধ্যে র‌্যান্ডমাইজেশনটি অক্ষম করে রেখেছি, এখানে একটি মিনিটের ভিডিও রয়েছে যেখানে আপনি দেখতে পাচ্ছেন নীল-সবুজ ড্রেনটি তার কণার গুচ্ছটি প্রেরণ করছে। লাল কণাগুলি বিস্ফোরণগুলি থেকে ঘটে যা সাধারণত সমস্ত জায়গা জুড়ে দেখা দেয়। ভিডিও থেকে আমি কিছু পর্যবেক্ষণ করেছি:

  • কণাগুলি ড্রেনের কেন্দ্র (বা কাছের কেন্দ্র) থেকে নির্গত হয়
  • সমস্ত কণা কেন্দ্রের চারদিকে ঘড়ির কাঁটার গতিতে বাধ্য করা হচ্ছে যাতে এক ধরণের স্পর্শকাতর গতি প্রয়োগ করা হচ্ছে, যখন লাল বিস্ফোরণ কণাগুলি ড্রেনের কাছাকাছি চলে আসে তখন আপনি সহজেই এটি দেখতে পারবেন।

উত্তর:


7

ভিডিওটি থেকে এটি আমার কাছে সহজ গুরুতর বলে মনে হয়েছে। বেশিরভাগ লোকেরা মনে করেন মাধ্যাকর্ষণ জিনিসগুলি নীচের দিকে উড়ে যায়, তবে এটি অনেক দূরের দৃষ্টিকোণ থেকে দেখে এটি কেন্দ্রকে ঘিরে একটি উপবৃত্তাকার বা সর্পিল ধরণের গতিতে জিনিসগুলিকে উড়ে যায়। কণাগুলি সর্বদা কেন্দ্রের দিকে ত্বরান্বিত হয়, তবে মহাকর্ষ এটিকে বারবার ফিরে আসতে বাধ্য না করা পর্যন্ত এর বাইরে উড়ে যান। কিছু কণা এতদূর উড়ে যায় যে মাধ্যাকর্ষণ তাদের এত বেশি প্রভাবিত করে না এবং দিক পরিবর্তন করার আগে জ্বলতে শেষ করে।

প্রতিটি কণার একটি এক্স এবং ওয়াই গতিবেগ থাকে, যার মধ্যবর্তী কোণ এবং দূরত্বের উপর নির্ভর করে প্রতিটি ফ্রেমে মাধ্যাকর্ষণ যোগ করা হয়। মাধ্যাকর্ষণ সর্বদা কেন্দ্রের দিক (কোণ) -এর গতিবেগ যুক্ত করে।

সুতরাং আপনার জন্য কণা রয়েছে: অবস্থান, বেগ
মহাকর্ষের জন্য আপনার কাছে ভাল: অবস্থান, শক্তি

অবস্থানগুলি থেকে আপনি কণা এবং মহাকর্ষের মধ্যবর্তী কোণটি গণনা করতে পারেন। কোণটি গণনা করতে আপনার দুটি স্থানাঙ্কের মধ্যে ডেল্টা লাগবে।

dx = particle.x - gravity.x; dy = particle.y - gravity.y
angle = atan2(dy, dx)

এই কোণটি বেগ ভেক্টরের কোণ যা যুক্ত করা প্রয়োজন।

যে পরিমাণ বল প্রয়োগ করা হয় তা দূরত্বের উপর নির্ভর করে। ঠিক বলতে গেলে এটি দূরত্বের বর্গাকার দ্বারা হ্রাস পায়। সুতরাং যদি কোনও জিনিস দ্বিগুণ দূরে থাকে তবে কেবলমাত্র চতুর্থাংশ বল প্রয়োগ করা হয়। দূরত্বের জন্য ডেল্টাগুলিও প্রয়োজনীয়।

distance = sqrt(dx*dx + dy*dy)
force = gravity.strength / distance*distance

এখন আপনার এগুলি প্রয়োগ করার জন্য আপনার কাছে বল এবং কোণ রয়েছে:

particle.velocity.x += force * sin(angle)
particle.velocity.y += force * cos(angle)

আপনার সমাধানটি আমার সাথে বেশ সমান, তবে এটি আতান, পাপ, কোস, স্কয়ার্ট, ... ব্যবহার করে তাই এটি খুব ধীর হতে পারে। এটিান / পাপ / কোস অংশটি এড়ানো ভাল, আমার পোস্টটি দেখুন এটির জন্য দ্রুত (সম্ভবত সেরা নয়) দেখুন।
গেমএলচেমিস্ট

এটি অনুকূলিত নয় তাই এটি আরও ভাল বোধগম্য।
এপিআই-বিস্ট

আপনি এটি করতে ঠিকই বলেছেন, তবে আমার ধারণা অনুমান করা যায় যে উত্তরটি আরও বেশি ব্যবহারযোগ্য, বিশেষত কোস / পাপ বিষয়গুলিতে দৃ strong় নয় তাদের জন্য, যদি আপনি তাত্ত্বিক ব্যাখ্যার পরে 'অনুকূলিত' সিউডো-কোড রাখেন।
গেমএলকেমিস্ট

আমি বুঝতে পারি যে এখানে কোডটি অনুকূলিত নয়, তবে মনে হচ্ছে আপনি দূরত্বের স্কয়ার্ট () কল এড়াতে পারবেন, যেহেতু আপনি তাৎক্ষণিকভাবে এটিকে স্কোয়ার করে কিছুক্ষণ পরে ব্যবহার করেন।
কাইল বারান

2

আমার কাছে মনে হয় যা টানা হয় সেগুলি বিন্দু নয় gments সুতরাং আমি অনুমান করি ওয়েলটি বৃত্তের একটি বিন্দুটি বের করে, একটি উচ্চ গতি এবং একটি গতি ভেক্টরের স্পর্শটি বৃত্তের সাথে। এবং অন্য একটি বিন্দু ঠিক পরে নিক্ষেপ করা হয়, যা প্রথম অংশের সাথে একটি বিভাগ আঁকার সাথে যুক্ত হয়। তারপরে আমি মনে করি পদার্থবিজ্ঞানের আইনগুলি (নিউটন) একটি শক্তিশালী মাধ্যাকর্ষণ দিয়ে প্রয়োগ করা হয়, যা গতি হ্রাসকে ব্যাখ্যা করে। সুতরাং আমি অনুমান করি এটি করার জন্য আপনাকে সময়মতো সংহত করতে হবে।

সাথে: সি কূপের কেন্দ্র, এর ব্যাসার্ধ।
পি 1 আমরা যে বিন্দুটির দিকে তাকিয়ে
রয়েছি সেটি হ'ল 'বড়' ধ্রুবক যা আপনি কয়েকটি পরীক্ষার (ভালোর ভর) দিয়ে বেছে নিয়েছেন।
vel0 হল প্রাথমিক বেগের ভেক্টর, বৃত্তের স্পর্শকাতর।
ভেল0 অবশ্যই উচ্চতর হওয়া উচিত (ট্রায়ালগুলিও খুব বেশি করুন)
সময়0 টি সময়ে বৃত্তে প্রাথমিক অবস্থানটি পোস্ট করুন।
: ডি এবং সি 1 এর মধ্যবর্তী দূরত্ব
: Vn আদর্শ ভেক্টর সি P1

accx= - Vnx * K * 1 / square(d)   ; accy = - Vny * K * 1/square (d)  
velx = accx*(t-t0) + vel0x   ;   vely = accy(t-t0) + vel0y  
posx= (1/2)*accx*square(t-t0) + vel0x*(t-t0) + pos0x   ;   
posy= (1/2)*accx*square(t-t0) + vel0y*(t-t0) + pos0y   

উদ্যোগ: একটি নতুন পয়েন্ট স্পেন করতে যাওয়ার সবচেয়ে সহজ উপায় হ'ল একটি কোণ নির্বাচন করা, তারপরে:

  pos0x= Cx +R *cos(A)  ; pos0y = Cy + R*sin(A)  
  vel0x = v0*sin(A)   vel0y =  - v0*cos(A)     v0= float constant.

আপডেট: প্রতিটি পুনরাবৃত্তির জন্য আপনাকে গণনা করতে হবে:

d= square root( square(P1x-Cx)+square(P1y-Cy) )  
Vnx= (P1x-Cx)/d   ;   Vny=(P1y-Cy)/d  
acc (accx,accy) and finally pos (posx, posy)  as described above.     

গতি গণনা করার দরকার নেই।
সম্ভবত গেমটি একধরণের ঘর্ষণ ব্যবহার করে, তবে সমীকরণটি আলাদা হবে।
লক্ষ্য করুন যে আপনি বেশ কয়েকবার কোস (এ) এবং পাপ (এ) ব্যবহার করেছেন, তাই এগুলি সংরক্ষণ করুন।

সুতরাং আপনি যদি দুটি পয়েন্ট দুটি দ্বারা সংযুক্ত প্রচুর পয়েন্টগুলি স্পেন করেন এবং একই সময়ে আপনি খণ্ডের উত্সটি ভালর চারদিকে ঘোরানোর জন্য প্রাথমিক কোণ এ পরিবর্তন করেন তবে আমার ধারণা অনুসারে সমাধানটি থেকে আপনি বেশ কাছাকাছি চলে আসবেন।

সম্পাদনা: আমার মনে হয় আপনার প্রথমে ঘর্ষণ ছাড়াই এই চেষ্টা করা উচিত, এটি ঠিক আছে। ঘর্ষণ একটি শক্তি যা গতির সমানুপাতিক, তবে ভেক্টরের দিককে বিপরীত করে। সুতরাং সমীকরণটি হয়ে যায়:

    Acc = Gravity force + Friction Force.

ঘর্ষণ ফোর্স সহ = - ধ্রুব * Vel। এটি আমি কীভাবে সংহত করতে জানি না, তাই আমি ধাপে ধাপে একীকরণের জন্য যাব:

   Vel(t+dt) = vel(t) + acc(t)*dt,   
   pos(t+dt)= pos(t)+ vel(t)*dt.  

সেখানে সংখ্যার স্থায়িত্বের সমস্যা থাকবে, তবে যেহেতু পার্টিকুলসগুলির জীবনকাল সংক্ষিপ্ত, এটি কোনও সমস্যা হওয়া উচিত নয়।


ঘর্ষণ প্রভাব অধীনে সমীকরণ সম্পর্কে কি পরিবর্তন করতে হবে? আমার এই সমস্যার কয়েকটি সমাধান আছে তবে আমি আপনার কথা শুনতে আগ্রহী।
মাইকেল স্টোন

0

আমি অবশেষে এটি করেছি, কণা আচরণের একটি সন্তোষজনক প্রতিলিপি।

http://www.openprocessing.org/sketch/73624

প্রভাবটি একটি মোড় সহ একটি মানক মাধ্যাকর্ষণ প্রভাব, যখন কণাগুলি একটি নির্দিষ্ট পরিসরের মধ্যে পান স্পর্শকাতর স্বাভাবিকের উপর একটি বল প্রয়োগ করা হয়। এর ফলে কণাগুলি বরং অস্থিতিশীল ফ্যাশনে "কক্ষপথে" যায় প্রসেসিং স্কেচের কণাগুলি জ্বলবে না, তবে তাদের কক্ষপথের শীর্ষে এটি যখন আগুন জ্বলবে এবং অন্য একটি গুচ্ছ প্রকাশিত হবে। আপনার সহায়তার জন্য সকলকে ধন্যবাদ, এমনকি যদি তা সত্যিই আমাকে কোনও নতুন তথ্য সরবরাহ না করে, আপনি আপনার উত্তরগুলির মধ্যে সময় এবং প্রচেষ্টা নিবেদন করার জন্য এটি অত্যন্ত প্রশংসিত হয়। আবার ধন্যবাদ!

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.