আরডুইনো এবং ইউনিটি দিয়ে কীভাবে একটি কাস্টম গেম কন্ট্রোলার তৈরি করবেন

আরডুইনো এবং ইউনিটি দিয়ে কীভাবে একটি কাস্টম গেম কন্ট্রোলার তৈরি করবেন

আপনি কি কখনও নিজের গেম কন্ট্রোলার ডিজাইন করতে চেয়েছিলেন? এটা আপনার ভাবার চেয়ে সহজ!





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





এই প্রকল্পের জন্য আপনার প্রয়োজন হবে

  • Arduino বা অনুরূপ মাইক্রোকন্ট্রোলার
  • 1 x 10k ওহম প্রতিরোধক
  • 1 এক্স মোমেন্টারি সুইচ
  • 1 এক্স পটেন্টিওমিটার
  • হুক আপ তারের
  • একটি ব্রেডবোর্ড
  • ইউনিটি গেম ইঞ্জিন
  • ইউনিটি অ্যাসেট স্টোর থেকে ইউনিডুইনো প্লাগইন ($ 30)
  • সম্পূর্ণ প্রকল্প কোড, যদি আপনি এটি লিখতে না চান (Uniduino প্লাগইন অন্তর্ভুক্ত নয়)

এই জিনিসগুলির বেশিরভাগই একটি Arduino স্টার্টার কিটে পাওয়া যায়। যদি স্টার্টার কিট না পান তবে আপনার জন্য সেরাটি বেছে নেওয়ার জন্য আমাদের গাইডটি দেখুন।





আপনি আপনার নিয়ামককে আপনার ইচ্ছামতো জটিল করে তুলতে পারেন, যদিও এই উদাহরণের জন্য আমরা একটি পোটেন্টিওমিটার এবং একটি বোতাম সেট করব - একটি সাধারণ আর্কেড গেম নিয়ন্ত্রণের জন্য নিখুঁত।

আপনার কন্ট্রোলার একত্রিত করা

নীচের ছবিতে দেখানো হিসাবে আপনার রুটিবোর্ড এবং Arduino সেট আপ করুন। এটি আমরা আমাদের গেম কন্ট্রোলার হিসাবে ব্যবহার করব, যদিও আপনি প্রায় একই একই সেটআপ ব্যবহার করতে পারেন a DIY মিডি কন্ট্রোলার খুব!



আপনার Arduino প্রস্তুত করা হচ্ছে

একবার আপনার সবকিছু তারযুক্ত হয়ে গেলে, USB এর মাধ্যমে আপনার Arduino সংযোগ করুন। Arduino সফটওয়্যার IDE- এ যান সরঞ্জাম> বোর্ড এবং সরঞ্জাম> পোর্ট আপনি কোন মাইক্রোকন্ট্রোলার এবং পোর্টটি ব্যবহার করছেন তা নির্বাচন করতে। Arduino IDE আমাদের প্রয়োজনীয় স্কেচের সাথে একত্রিত হয়, এবং আপনি এটি নীচে খুঁজে পেতে পারেন ফাইল> উদাহরণ> ফার্মাটা> স্ট্যান্ডার্ড ফার্মমাটা । আপলোড ক্লিক করুন এবং আপনি যেতে প্রস্তুত হবেন।

আপনি যদি আরডুইনোতে নতুন হন এবং আপনার মাথা সামান্য গলে যাচ্ছে, আমাদের দেখুন শিক্ষানবিস গাইড আপনার কম্পিউটারের সাথে সুন্দরভাবে কথা বলতে আপনাকে সাহায্য করতে।





আপনার ityক্য প্রকল্প স্থাপন

Ityক্যে, খোলা জানালা> সম্পদের দোকান ইউনিটি এডিটরের মধ্যে থেকে ইউনিটির অ্যাসেট স্টোর অ্যাক্সেস করতে। Uniduino প্লাগইন এর জন্য সম্পদ দোকান খুঁজুন। এই প্লাগইনটি আপনাকে ইউনিটির ভিতরে আপনার আরডুইনো পিন থেকে এবং তার থেকে ডেটা গ্রহণ এবং প্রেরণের অনুমতি দেবে। লেখার সময় প্লাগইনটির দাম $ 30। এটা সম্ভব প্লাগইন না কিনে এই প্রকল্পটি করা

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





আমরা আমাদের নিয়ামক পরীক্ষা করতে এই একই পরীক্ষা প্যানেল ব্যবহার করতে পারেন। Pin D2 কে INPUT এবং Digital এ সেট করুন। আরও নিচে, পিন A5 কে ANALOG এ সেট করুন। আপনার potentiometer এবং বোতামটি এখন তাদের পিন নম্বরের পাশে স্ক্রিনে মান প্রদর্শন করা উচিত। অগ্রগতি!

এখন আমরা কিছু নিয়ন্ত্রণ করতে পারি

সুতরাং আমাদের একটি নিয়ামক আছে, কিন্তু আমরা কি নিয়ন্ত্রণ করব? ঠিক আছে, সম্ভাবনাগুলি অফুরন্ত, তবে আজকের জন্য আমরা আমাদের নতুন নিয়ন্ত্রণ ব্যবস্থা পরীক্ষা করার জন্য একটি খুব সহজ ডোডিং গেম তৈরি করব। আমরা খুব দ্রুত গেম সেটআপের দিকে অগ্রসর হব, সুতরাং আপনি যদি ইউনিটি ইঞ্জিনে সম্পূর্ণ নতুন হন তবে আপনি আমাদের খুঁজে পেতে পারেন ইউনিটি গেম প্রোগ্রামিং শিক্ষানবিস গাইড আপনার bearings পেতে দরকারী।

আমরা একটি খুব মৌলিক গেম তৈরি করবো যেখানে আপনার লক্ষ্য হল আপনার গোলকটি বাম এবং ডানদিকে ডুবে যাওয়া যাতে কিউব না পড়ে, যা আপনার নতুন তৈরি কাস্টম কন্ট্রোলার ব্যবহার করবে।

একটি নতুন দৃশ্য তৈরি করুন এবং থেকে Uniduino prefab টেনে আনুন সম্পদ> ইউনিডুইনো> প্রিফ্যাবস আপনার অনুক্রমের মধ্যে এবং Uniduino prefab অনুক্রমের মধ্যে টেনে আনুন। আমাদের গেম এবং কন্ট্রোলারের মধ্যে কথা বলার জন্য আমাদের এটি দরকার।

ইউনিটি শ্রেণিবিন্যাসে ক্লিক করুন তৈরি করুন> গোলক এবং পরিদর্শকের মধ্যে ট্রান্সফর্ম ট্যাব ব্যবহার করে এটিকে গেম স্ক্রিনের নীচে নিয়ে যান।

কোডিং পাওয়ার সময় হয়েছে

এখন এই পার্টিতে কিছু কোড যোগ করতে। হায়ারার্কিতে নির্বাচিত গোলকের সাথে, ক্লিক করুন উপাদান যোগ করুন> নতুন স্ক্রিপ্ট ইন্সপেক্টর উইন্ডোর নীচে। নাম গোলক মুভার এবং নির্বাচন করুন সি শার্প ড্রপ ডাউন মেনু থেকে। ক্লিক তৈরি করুন এবং যোগ করুন এবং স্ক্রিপ্টটি GameObject এ যোগ করা হবে। স্ক্রিপ্টটি খুলতে এটিতে ডাবল ক্লিক করুন এবং এই কোডটি প্রবেশ করুন:

using UnityEngine;
using System.Collections;
using Uniduino;
public class sphereMover : MonoBehaviour
{
//Headers aren't scrictly neccesary, but they make life easier back in the Inspector.
[Header('Arduino Variables')]
//we need to declare the Arduino as a variable
public Arduino arduino;
//we need to declare an integer for the pin number of our potentiometer,
//making these variables public means we can change them in the editor later
//if we change the layout of our arduino
public int potPinNumber;
//a float variable to hold the potentiometer value (0 - 1023)
public float potValue;
//we will later remap that potValue to the y position of our capsule and hold it in this variable
public float mappedPot;
//public int for our button pin
public int buttonPinNumber;
[Header('Sphere Variables')]
//variables to hold the values we noted earlier for the sides of our screen
public float leftEdge;
public float rightEdge;
// Use this for initialization
void Start ()
{//and initialize we shall, starting with the Arduino Variable.
//we are only using one arduino, so we can use Arduino.global to grab it.
arduino = Arduino.global;
arduino.Setup(ConfigurePins);
}
void ConfigurePins()
{
//configure the Arduino pin to be analog for our potentiometer
arduino.pinMode(potPinNumber, PinMode.ANALOG);
//Tell the Arduino to report any changes in the value of our potentiometer
arduino.reportAnalog(5, 1);
//configure our Button pin
arduino.pinMode(buttonPinNumber, PinMode.INPUT);
arduino.reportDigital((byte)(buttonPinNumber / 8), 1);
}
}

কোড মন্তব্যগুলি পড়ার জন্য একটু সময় নিন। এখন পর্যন্ত, আমরা আমাদের Arduino, এর পিন এবং আমাদের গোলকের জন্য কিছু পরিবর্তনশীল ঘোষণা করেছি। আমরাও ব্যবহার করেছি

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

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

জীবনের প্রথম লক্ষণ

এটি আসলে ইউনিটি এডিটরের ভিতরে আমাদের আরডুইনো থেকে মানগুলি দেখার সময়। আপাতত, আমরা আমাদের গোলক মুভার স্ক্রিপ্টের আপডেট ফাংশনে কোডের একটি লাইন যোগ করতে পারি এবং স্ক্রিপ্টটি আবার সংরক্ষণ করতে পারি।

void Update ()
{
//We assign the value the arduino is reading from our potentionmeter to our potValue variable
potValue = arduino.analogRead(potPinNumber);
}

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

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

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

লেটস মুভ দিস স্ফিয়ার

এখন যেহেতু আমাদের পটভ্যালু ভেরিয়েবল আপডেট হচ্ছে, আমরা এই মানটি আমাদের গোলককে সরানোর জন্য ব্যবহার করতে চাই। যখন potentiometer বাম দিকে সব পথ আমরা গোলক পর্দার বাম দিকে হতে চান, এবং বিপরীত। একতার বস্তুগুলি ভেক্টর স্পেসের একটি বিন্দুতে অবস্থিত, এটির মান দ্বারা নির্ধারিত হয় অবস্থান । নিচের ছবিতে, যেখানে গোলকটি বামদিকের সবচেয়ে দূরবর্তী বিন্দুতে আছে আমরা এটি চাই, আপনি দেখতে পারেন যে এর অবস্থান ভেক্টর 9.5, -4, 0।

আমরা গোলকের X অবস্থানকে প্রভাবিত করতে চাই। দুর্ভাগ্যবশত আমাদের potentiometer থেকে মান ব্যবহার করে সরাসরি কাজ করবে না, যখন potentiometer বাম দিকে সব পথ এটি 0 এর মান দেয় - যা আমাদের গোলকটি পর্দার ঠিক মাঝখানে রাখবে। অন্য চরম, potentiometer এর সর্বোচ্চ মান, 1023, আমাদের পর্দার ডানদিকে ঘন পথ বন্ধ করবে। দরকারী নয়। আমাদের এখানে যা দরকার তা হল কিছু গণিত।

কেন গণিত করবেন যখন ityক্য আপনার জন্য এটি করবে?

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

একটি এক্সটেনশন পদ্ধতি হল একটি স্ক্রিপ্ট যা আমাদের জন্য একটি নির্দিষ্ট কাজ করে। এই ক্ষেত্রে, আমরা এটিকে আমাদের কাছে মান প্রদান করি, এবং এটি তাদের একে অপরের কাছে ম্যাপ করা, আমাদের ব্যবহারের জন্য প্রস্তুত গোলক মুভার লিপি. প্রকল্প প্যানেলের শীর্ষে, ক্লিক করুন তৈরি করুন> C# স্ক্রিপ্ট এবং এর নাম দিন ExtensionMethods। নীচের কোডটি স্ক্রিপ্টে লিখুন:

using UnityEngine;
using System.Collections;
public static class ExtensionMethods {

//our handy dandy Remapper function
public static float Remap (this float value, float from1, float to1, float from2, float to2)
{
return (value - from1) / (to1 - from1) * (to2 - from2) + from2;
}
}

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

প্রম্পট আমাদের দেখায় যে আমাদের রিম্যাপ থেকে এবং মানগুলির দুটি সেট নেয় এবং তাদের একসঙ্গে মানচিত্র করে। আমরা এর মধ্যে আমাদের মূল্য প্রবেশ করতে পারি।

mappedPot = potValue.Remap(0, 1023, leftEdge, rightEdge);

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

দ্রষ্টব্য: যদি আপনি লক্ষ্য করেন যে আপনার মানগুলি উল্টে গেছে, তাই যখন আপনার পটেন্টিওমিটারটি ডানদিকে থাকে তখন আপনি আপনার ম্যাপড পট ভেরিয়েবলের জন্য একটি নেতিবাচক মান পাচ্ছেন, আপনি আপনার পটেন্টিওমিটারটিকে ভুল পথে সেট করতে পারেন। ভাগ্যক্রমে, আপনি কোনও পুনর্নির্মাণ না করে এটি ঠিক করতে পারেন। আপনি যখন মানগুলি পুনpনির্মাণ করবেন তখন আপনি কেবল স্যুইচ করতে পারেন:

এখন আমরা অবশেষে ব্যবহারযোগ্য মান আছে। এখন যা করার বাকি আছে তা হল আমাদের গোলকের X অবস্থানে সেই মানগুলি বরাদ্দ করা:

বিনামূল্যে সিনেমা কোন সাইন আপ বা ডাউনলোড
//Assign the mapped pot value to the sphere's x position
transform.position = new Vector3(mappedPot, transform.position.y, transform.position.z);

আপনার স্ক্রিপ্টটি সংরক্ষণ করুন, ইউনিটি এডিটরের দিকে ফিরে যান এবং প্লে টিপুন। আপনি এখন আপনার পটেন্টিওমিটার ব্যবহার করে আপনার গোলকটি বাম এবং ডানদিকে সরাতে সক্ষম হবেন!

বোতামটি কাজে লাগানো

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

//if Unity detects the button is being pressed, the time scale slows down
if (arduino.digitalRead(buttonPinNumber) == 1){
Time.timeScale = 0.4f;
}
else Time.timeScale = 1.0f;

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

কিউবে একটি স্ক্রিপ্ট তৈরি করুন এবং এটি কল করুন collideWithSphere , স্ক্রিপ্টটি খুলুন এবং স্টার্ট এবং আপডেট ফাংশনগুলি মুছে দিন কারণ আমাদের এই সময় তাদের প্রয়োজন হবে না। এই কোডটি লিখুন:

using UnityEngine;
using System.Collections;
public class collideWithSphere : MonoBehaviour
{
void OnTriggerEnter(Collider other)
{
Destroy(other.gameObject);
}
}

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

আমাদের এখন যা দরকার তা হল কিউব তৈরির জন্য একটি স্ক্রিপ্ট। অনুক্রমের মধ্যে ক্লিক করুন তৈরি করুন> খালি তৈরি করুন , এবং ইন্সপেক্টরের গেম ম্যানেজারে এটির নাম পরিবর্তন করুন এবং এতে একটি স্ক্রিপ্ট যুক্ত করুন যার নাম গেমম্যানেজার। স্ক্রিপ্টটি খুলুন এবং এই কোডটি যোগ করুন:

using UnityEngine;
using System.Collections;
public class gameManager : MonoBehaviour {
//a variable to hold the prefab we want to spawn
public GameObject cube;
//we want some variables to decide how any cubes to spawn
//and how high above us we want them to spawn
public int numberToSpwan;
public float lowestSpawnheight;
public float highestSpawnheight;
// Use this for initialization
void Start ()
{
for (int i = 0; i {
Instantiate(cube, new Vector3(Random.Range(-9, 9), Random.Range(lowestSpawnheight, highestSpawnheight), 0), Quaternion.identity);
}
}

// Update is called once per frame
void Update ()
{

}
}

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

সমাপ্ত প্রকল্প

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

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

আরডুইনো এবং ইউনিটির মাধ্যমে আপনি প্রায় যেকোনো কিছু থেকে একটি কাস্টম কন্ট্রোলার তৈরি করতে পারেন। আপনি কি একটি হাই-ফাই তৈরি করেছেন যা একটি মহাকাশযান নিয়ন্ত্রণ করে? একটি টোস্টার যা একটি প্ল্যাটফর্ম খেলা নিয়ন্ত্রণ করে?

আপনি যদি এইরকম একটি প্রকল্প তৈরি করেন তবে আমি এটি দেখতে চাই! নীচের মন্তব্যগুলিতে এটি পোস্ট করুন!

শেয়ার করুন শেয়ার করুন টুইট ইমেইল 6 শ্রবণযোগ্য বিকল্প: সেরা বিনামূল্যে বা সস্তা অডিওবুক অ্যাপস

আপনি যদি অডিওবুকের জন্য অর্থ প্রদান করতে পছন্দ করেন না, এখানে কিছু দুর্দান্ত অ্যাপ রয়েছে যা আপনাকে সেগুলি বিনামূল্যে এবং আইনত শুনতে দেয়।

পরবর্তী পড়ুন
সম্পর্কিত বিষয়
  • DIY
  • প্রোগ্রামিং
  • আরডুইনো
  • গেম কন্ট্রোলার
  • খেলার প্রোগ্রাম উন্নত করা
লেখক সম্পর্কে ইয়ান বাকলি(216 নিবন্ধ প্রকাশিত)

ইয়ান বাকলি জার্মানির বার্লিনে বসবাসরত একজন ফ্রিল্যান্স সাংবাদিক, সঙ্গীতশিল্পী, অভিনয়শিল্পী এবং ভিডিও প্রযোজক। যখন তিনি লিখছেন না বা মঞ্চে আসছেন না, তখন তিনি পাগল বিজ্ঞানী হওয়ার আশায় DIY ইলেকট্রনিক্স বা কোড নিয়ে ছটফট করছেন।

ইয়ান বাকলি থেকে আরো

আমাদের নিউজলেটার সদস্যতা

প্রযুক্তি টিপস, রিভিউ, ফ্রি ইবুক এবং এক্সক্লুসিভ ডিলের জন্য আমাদের নিউজলেটারে যোগ দিন!

সাবস্ক্রাইব করতে এখানে ক্লিক করুন
বিভাগ Diy