ওয়ার্মস গেম থেকে 2 ডি সাইড-অন ওয়েভ এফেক্টটি পুনরায় তৈরি করুন


11

আমি কীট থেকে তরঙ্গ / জলের প্রভাব পুনরুদ্ধার করার চেষ্টা করছি (এখানে দেখুন http://youtu.be/S6lrRqst9Z4?t=31s ) আমি যা বুঝতে পারি তা আসলে একটি স্প্রিট নয়, প্রক্রিয়াগতভাবে এটি পাপ তরঙ্গের মতো কিছু দ্বারা উত্পন্ন হয়েছিল।

এর আগে কেউ কি এরকম কিছু তৈরি করেছে? বা কোন ধারণা আমি এটি সম্পর্কে যেতে হবে?

উত্তর:


14

হ্যাঁ, আপনি ঠিক বলেছেন, এই 2 ডি জলের প্রভাবটি গণিত সাইন ফাংশন ব্যবহার করে সিমুলেটেড করা যায় :

wave = sin(phase + t * frequency) * amplitude

এখানে চিত্র বর্ণনা লিখুন

  • phase একটি ধ্রুবক, আপনি যা চান রাখুন।
  • tআপনি প্রক্রিয়াজাত পিক্সেল / ভার্টেক্সের অনুভূমিক অবস্থানে সেট করুন :t = x;
  • সময়ের সাথে সাথে পরিবর্তন করুন amplitude(এটি তরঙ্গগুলি উপরে এবং নীচে চলতে সক্ষম করবে):

    amplitude = sin(t * wave_speed) * wave_height

  • আরও আপেক্ষিক প্রভাব পেতে বিভিন্ন তরঙ্গ একত্রিত করুন:

    wave_final = wave0 + wave1 + ...

    প্রতিটি তরঙ্গের জন্য কিছু পরামিতি কিছুটা পরিবর্তন করুন (যেমন: পর্ব, ফ্রিকোয়েন্সি, ...)।

এখানে দুটি তরঙ্গ ব্যবহার করে আমি তৈরি করা একটি দ্রুত উদাহরণ রয়েছে:

http://glslsandbox.com/e#4988.0 (সাম্প্রতিক ব্রাউজার এবং ওয়েবজিএল সক্ষম হওয়া প্রয়োজন)

দ্রষ্টব্য: এটি একটি শেডার, তবে 2D আদিম ব্যবহার করে এটি করা একই পদ্ধতি।

সম্পাদনা: আপনি কোনও ফ্রেমওয়ার্ক বা 2 ডি রেন্ডারিং সিস্টেম নির্দিষ্ট করে তুলবেন না তবে এখানে বহুভুজ / ত্রিভুজ স্ট্রিপগুলি ব্যবহার করে কীভাবে রেন্ডার করা যায় তা এখানে:

এখানে চিত্র বর্ণনা লিখুন


বাহ, এটি একটি দুর্দান্ত উত্তর, খুব বিস্তৃত উত্তরের জন্য ধন্যবাদ। হ্যাঁ আমি রেন্ডারিংয়ের জন্য এইচটিএমএল 5 ক্যানভাস এপি ব্যবহার করছি। তার জন্য আবার ধন্যবাদ, চূড়ান্ত সহায়ক !!
Ciarán

ঠিক আছে, যদিও কৃমি তরঙ্গ পরিষ্কারভাবে হয় না নিছক Sines কিন্তু আরো জটিল; খুব সম্ভবত সাইনের সুপারপজিশনগুলি।
বাম দিকের বাইরে

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