আমি এই শেডারটি সত্যই একটি পুরানো আইডাভাইস, পাশাপাশি শেষ পর্যন্ত অ্যান্ড্রয়েডে চালিত করার চেষ্টা করছি ।
এমনকি আমি কোডটি খণ্ডের কম করে 2 টি সাইন ফাংশনে কমিয়ে আনলে শেডার প্রায় 20fps এ চলে runs
আমি পুরানো শেডিং কৌশলগুলির বইয়ের বাইরে একটি পাতা নেওয়ার এবং পূর্বনির্ধারিত ট্রিগার মানগুলির একগুচ্ছ ধারণ করে এমন একটি অ্যারে তৈরি করার বিষয়টি বিবেচনা করেছি এবং শেডারটিকে আনুমানিকরূপে ব্যবহার করে।
আমি উপরে সংযুক্ত শেডারে আমি ইতিমধ্যে অনুকরণ করছি যে ট্রিগ ফাংশনে প্রেরিত মানগুলি গোল করে আরও মাউস বামে (নিচে থাকায়) শেডারটির কম মানের দিকে যায়। এটি আসলে বেশ দুর্দান্ত কারণ বাম পাশের কাছে এটি দেখতে সম্পূর্ণ আলাদা এবং বেশ শীতল শেডারের মতো দেখাচ্ছে।
যাইহোক আমার দুটি দ্বিধা আছে:
- আমি জানি না এটিতে জিএলএসএল শেডার, ধ্রুবক বা ইউনিফর্মের মধ্যে 360 টির মতো মানের একটি অ্যারে রাখার সবচেয়ে কার্যকর উপায় কী?
আমি যদি 0 থেকে 360 এর মধ্যে একটি কোণ চাইতাম তবে হ্যাঁ আমি জিপিইউগুলি রেডিয়ান ব্যবহার করে জানি) আমি এটির মতো এটি করতে চাইলে আমি কীভাবে কোনও সংখ্যাটি কীভাবে রাখব তা বুঝতে পারি না।
func range(float angle) { float temp = angle while (temp > 360) {temp -= 360;} while (temp < 0) {temp += 360;} return temp; }
তবে লুপগুলি বা পুনরাবৃত্তির জন্য যখন জিএলএসএল অনুমতি দেয় না।
mod
ফাংশনটি আপনি চান তা is আপনি লিখতেন mod(angle, 360.0)
।