আনরিয়েল ইঞ্জিন ৪ — BLUEPRINT ইন্ট্রোডাকশন

আজকের পর্বে লিখবো BLUEPRINT কী, কাদের জন্য এই BLUEPRINT, কেন ব্যবহার করবেন এবং এটা ব্যবহারে সুবিধা অসুবিধা সমূহ। আমার গত পর্বের লিখা গুলো পড়তে পারবে এখান থেকে –

তাহলে কী এই BLUEPRINT?

BLUEPRINT হচ্ছে আনরিয়েল ইঞ্জিন ৪ এর নিজস্ব গেমপ্লে ভিজ্যুয়াল স্ক্রিপটিং ল্যাংগুয়েজ। এখন কথা হচ্ছে এই ভিজ্যুয়াল স্ক্রিপটিং কি? কিছু কিছু মানুষ আছে যারা নিজেদেরকে প্রোগ্রামার বলে পরিচয় দেয় অথবা সবাই চিনে। তাদের কাজ হচ্ছে ছোট ছোট অক্ষরে ইন্ডেন্টেড প্রোগ্রাম লিখে বড় বড় প্রব্লেম গুলোর সমাধান দেওয়া। অইগুলা দেখতে অনেকটা এরকম —

Photo by Henri L. on Unsplash

 

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

The Blueprints Visual Scripting system in Unreal Engine is a complete gameplay scripting system based on the concept of using a node-based interface to create gameplay elements from within Unreal Editor. As with many common scripting languages, it is used to define object-oriented (OO) classes or objects in the engine. As you use UE4, you’ll often find that objects defined using Blueprint are colloquially referred to as just “Blueprints.”

This system is extremely flexible and powerful as it provides the ability for designers to use virtually the full range of concepts and tools generally only available to programmers. In addition, Blueprint-specific markup available in Unreal Engine’s C++ implementation enables programmers to create baseline systems that can be extended by designers.

Photo by Unreal Engine 4

 

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

যারা আগে আনরিয়েল ইঞ্জিন ৩ অথবা UDK ব্যবহার করেছেন তারা পরিচিত থাকবেন KISMET এবং আনরিয়েল স্ক্রিপ্ট এর সাথে। যেখানে KISMET হচ্ছে BLUEPRINT এর ছোট ভাই এক কথায়। কিন্তু KISMET ছিলো শুধু নির্দিষ্ট একটি লেভেলের জন্য। ধরেন, আপনার গেমে ২০টা লেভেল আছে এবং অই ২০টা লেভেলেই একটা একটা করে স্পেশাল গাড়ি আছে এবং এদের স্পিড, ভিহ্যাভিয়ের অন্য গুলা থেকে ভিন্ন, তো আপনি একটা সেই লেভেলের, এক কথায় অসাম একটা স্ক্রিপ্ট ডিজাইন করলেন, কিন্তু প্রব্লেমটা হলো আপনি অই একটা স্ক্রিপ্ট একই সাথে ২০টা লেভেল ব্যবহার করতে পারবেন না, আপনাকে লেভেল অনুযায়ী অই স্ক্রিপ্টকে কপি পেস্ট করতে হবে। তাই অইটার আপডেটেড ভার্শন এই BLUEPRINT, যেটাতে আপনার স্ক্রিপ্ট ব্যবহারে পূর্ণ স্বাধীনতা আছে। আর আনরিয়েল স্ক্রিপ্ট হচ্ছে অনেকটা Microsoft Visual Studio এর মতোই এবং সি++ এর মতোন কোড লিখতে হয়।

BLUEPRINT এর ভিতরে ২টা সিস্টেম রয়েছে। এখন যদি আপনি KISMET এর মতো করে স্ক্রিপ্ট লিখতে চান, তাহলে ব্যবহার করতে পারবেন — LEVEL BLUEPRINTঅথবা যদি একই স্ক্রিপ্ট সবজায়গায় ব্যবহার করতে চান, তাহলে তার জন্য রয়েছে — BLUEPRINT CLASS — যেটা খুবই শক্তিশালী, শুধু ড্র্যাগ এবং ড্রপের মাধ্যমে অর্ধেক গেমের কাজ শেষ করে ফেলতে পারবেন। এটা নিয়ে আরো বিস্তারিত জানতে পারবেন এখান থেকে

যদিও আনরিয়েল ইঞ্জিন পুরোপুরি সি++ দিয়ে লিখা, তারপরেও আনরিয়েল ইঞ্জিন ৪ এর ভিতর BLUEPRINT ছড়ায় ছিটায় আছে, একদম অনেকটা ঘনবসতি জনসংখ্যার মতোন। সবচেয়ে মজার কথা হচ্ছে সি++ প্রোগ্রামিং ল্যাঙ্গুয়েজ এবং BLUEPRINT খুব চমৎকার ভাবে একসাথে হাতে হাত মিলিয়ে কাজ করে, অনেকটা কাপল দের মতোন।

Photo by Cody Black on Unsplash

 

অনেকেই প্রশ্ন করতে পারেন BLUEPRINT ব্যবহার করলে সি++ এর কি দরকার আবার? অথবা সি++ ব্যবহার করলে BLUEPRINT কেন লাগতেসে? বাস্তব কঠিন হলেও মেনে নিতে হয়, আনরিয়েল ইঞ্জিন ৪ দিয়ে কমপ্লেক্স গেম বানানোর জন্য আপনার সি++ এর কাজ একটু হলেও লাগবে। কারন সি++ BLUEPRINT থেকে অনেক ফাস্ট, সি++ এমনেই পৃথিবীর সবচেয়ে ফাস্ট ল্যাংগেয়জ গুলোর মধ্যে একটা। কারন, মাল্টিপ্লেয়ার এবং অনলাইন গেমের ক্ষেত্রে প্রতিটা এফপিএস ম্যাটার করে।

EVERY FPS MATTERS, WHEN IT COMES TO MULTIPLAYER GAMES.

তাই দ্রুত গেম দ্রুত করার জন্য সি++ টা ব্যবহার করা হয়। আবার একটা গেম দ্রুত শেষ করার জন্যও সি++ এর পাশাপাশি BLUEPRINT লিখতে হয়। যেসকল গেম কোম্পানি গুলো আনরিয়েল ইঞ্জিন ৪ ব্যবহার করে যেমন, Ubisoft, Activison, Square Enix, Sony, Epic Games এরা সবাই কাস্টম আনরিয়েল ইঞ্জিন ৪ ব্যবহার করে এবং BLUEPRINT এবং সি++ মিলিয়ে কাজ করে। প্রোগ্রামাররা বড় বড় ক্লাশ গুলো সি++ দিয়ে তৈরি করে যেটা BLUEPRINT ব্যবহার করে যায় এবং সেটা ইউজ করে লেভেল ডিজাইনাররা এবং আর্টিস্টরা গেমপ্লে ডিজাইন করে। সেক্ষেত্রে পুড়ো গেমটা অনেকটা স্যান্ডউইচ এর মতোন করে র‍্যাপ করা হয়। পুরো গেমের সিস্টেম ডিজাইন করা থাকে সি++ দিয়ে এবং এর ভিতরের গেমপ্লে ফাংশন গুলো কানেক্ট করা থাকে BLUEPRINT দিয়ে।

আশা করি, BLUEPRINT কি, কীভাবে কাজ করে তা নিয়ে আপনাদের ধারনা পরিষ্কার করতে পেরেছি। আজ এই পর্যন্তই, পরের পর্বে BLUEPRINT ভ্যারিয়েবলস নিয়ে লিখবো।

… ধন্যবাদ।

#হ্যাপি_প্রোগ্রামিং!

Posts created 18

মন্তব্য করুন

আপনার ই-মেইল এ্যাড্রেস প্রকাশিত হবে না। * চিহ্নিত বিষয়গুলো আবশ্যক।

Related Posts

Begin typing your search term above and press enter to search. Press ESC to cancel.

Back To Top
Scroll Up