আমি একজন উত্সাহী মার্শাল আর্ট ছাত্র, যদিও আমি নিজেকে একজন বিশেষজ্ঞ বলব না। আমি নিজেকে চিরন্তন সাদা-বেল্ট হিসাবে ভাবতে পছন্দ করি, ক্রমাগত জ্ঞানের সন্ধান করি।
বক্সিং, গ্রেকো-রোমান কুস্তি, জার্মান এবং ইতালীয় লংসওয়ার্ড, স্কটিশ ব্যাকহোল্ড, জিউজিৎসু (উভয় ঐতিহ্যবাহী এবং ব্রাজিলিয়ান), স্যাভেট এবং জুডো সহ বিভিন্ন মার্শাল আর্ট সম্পর্কে আমার প্রাথমিক ধারণা রয়েছে, আমার দক্ষতা বোর্ড জুড়ে সীমিত। যাইহোক, একটি ধারণা যা বিভিন্ন মার্শাল আর্টকে অতিক্রম করে তা হল কাতা।
এর সহজতম আকারে, একটি কাতা হল পৃথকভাবে অনুশীলন করা আন্দোলনের একটি পূর্বনির্ধারিত ক্রম। কাটাস কৌশল পরিমার্জন, ভারসাম্য বৃদ্ধি এবং মানসিক শৃঙ্খলা বৃদ্ধির জন্য ডিজাইন করা হয়েছে। তারা মুখস্থ করা এবং মৌলিক আন্দোলনের পুনরাবৃত্তি সহজতর করে।
19 শতক থেকে যখন বেশিরভাগ আধুনিক মার্শাল আর্ট সিস্টেমগুলিকে কোডিফাই করা হয়েছিল তখন শিক্ষাবিজ্ঞানের অগ্রগতি বিবেচনা করে শিক্ষার পদ্ধতি হিসাবে কাটাসের কার্যকারিতা নিয়ে একটি চলমান বিতর্ক রয়েছে।
যাইহোক, এই নিবন্ধের সুযোগ সেই বিতর্কের মধ্যে পড়ে না। পরিবর্তে, আমি কাতার ধারণাটি ব্যবহার করার লক্ষ্যে অনুশীলনের একটি সিরিজ প্রবর্তন করতে চাই যা ইউনিটি বা অন্য কোনও গেম ইঞ্জিনে সঞ্চালিত হতে পারে যাতে ইঞ্জিন সম্পর্কে আপনার বোধগম্যতা বাড়ানো যায় এবং আপনার গেম বিকাশের দক্ষতা তীক্ষ্ণ হয়।
কাটাসের মতই, আমি যে ব্যায়ামের পরামর্শ দিচ্ছি তা হল প্রশিক্ষণ এবং সিমুলাক্রামের জন্য, এবং এগুলি কখনই কাজের অভিজ্ঞতাকে প্রতিস্থাপন করতে পারে না এবং আপনার পছন্দের কাজের শৈলীর সাথে মানিয়ে নেওয়া উচিত এবং সেগুলিকে ঢালাই করা উচিত।
অন্যদিকে, এটা মনে রাখা অপরিহার্য যে গেম ডেভেলপমেন্ট হল নৈরাজ্যের একটি ক্ষেত্র যেখানে নিয়মের অভাব রয়েছে, সম্ভবত শুক্রবারে বা ছুটির আগে প্রজেক্ট রিলিজ করা থেকে বিরত থাকার মতো কিছু ব্যবহারিক নির্দেশিকা ছাড়া।
আর কোনো ঝামেলা ছাড়াই, আসুন নিজেরাই কাটাসের দিকে তাকাই:
ওয়ার্কশপটি প্রথম কাতা হিসাবে কাজ করে যা আমরা অন্বেষণ করব। মূলত, ওয়ার্কশপ হল একটি চিরন্তন ঐক্য প্রকল্প যেখানে আপনি পরীক্ষা করতে পারেন, নতুন ধারণা পরীক্ষা করতে পারেন এবং সম্প্রতি প্রকাশিত বৈশিষ্ট্যগুলি অন্বেষণ করতে পারেন৷
এটিকে আপনার প্রুফ-অফ-কনসেপ্ট স্টেজিং গ্রাউন্ড হিসাবে ব্যবহার করুন। যখন আপনার কাছে একটি নতুন গেমের ধারণা থাকে এবং মূল গেমপ্লে ছাড়াও (যেটি আপনার প্রাথমিক ফোকাস হওয়া উচিত) নাম, ডিজাইন বা অন্য কিছু নিয়ে চিন্তা না করে দ্রুত এটির প্রোটোটাইপ করতে চান, ওয়ার্কশপটি একটি আদর্শ পরিবেশ প্রদান করে৷
সাধারণত ব্যবহৃত কোডের জন্য এটি একটি সংগ্রহস্থল হিসাবে ব্যবহার করুন। কিছু কোডের টুকরো অনিবার্যভাবে পুনরায় ব্যবহার করা হবে, কিন্তু আপনি প্রতিবার ওয়েব অনুসন্ধানের উপর নির্ভর করতে নাও পারেন। উদাহরণস্বরূপ, আমার ওয়ার্কশপে, আমার কাছে বোতাম, গেম স্টেট, পজ মেনু এবং প্রতিটি গেমের জন্য প্রয়োজনীয় অন্যান্য প্রয়োজনীয় উপাদানগুলি পরিচালনা করার জন্য কাস্টম কোড স্নিপেট রয়েছে। এই স্নিপেটগুলি সময় এবং প্রচেষ্টা বাঁচায়, প্রতিটি নতুন গেমের জন্য কাস্টম কোড লেখার প্রয়োজনীয়তা দূর করে।
এই পদ্ধতির জন্য একটি সহায়ক টিপ যদি আপনি কখনও অনলাইন উত্স থেকে কোড অনুলিপি করেন তা হল আপনি অনুলিপি করা কোডটি বুঝতে পেরেছেন তা নিশ্চিত করা, আপনার প্রকল্পের শৈলী এবং মানগুলি মেনে চলার জন্য এটিকে পুনরায় লিখুন এবং এর উত্স নির্দেশ করে একটি মন্তব্য যুক্ত করুন৷ কোড লেখকরা তাদের বাস্তবায়ন আপডেট করতে পারেন, অথবা আপনি একটি নির্দিষ্ট সমাধান ব্যবহার করার প্রসঙ্গ ভুলে যেতে পারেন, কিন্তু একটি মন্তব্য প্রয়োজনীয় তথ্য প্রদান করতে পারে।
নতুন বৈশিষ্ট্যগুলি শিখতে, পরীক্ষা করতে এবং পরীক্ষা করতে এটি ব্যবহার করুন। ওয়ার্কশপ প্রোজেক্টকে সর্বশেষ সংস্করণে আপডেট করে (আপনি এলটিএস সংস্করণের জন্য একটি পৃথক শাখা বজায় রাখতে পারেন), আপনি সম্পূর্ণ নতুন প্রকল্প তৈরির বোঝা ছাড়াই নতুন বৈশিষ্ট্যগুলি অন্বেষণ করতে পারেন বা আরও খারাপ, আপনার চলমান প্রকল্পে সেগুলি ফিট করার চেষ্টা করতে পারেন৷
আপনি কি কখনও একটি খেলা খেলেছেন এবং বিস্মিত, "তারা কিভাবে তা সম্পন্ন করেছে?" এখন আপনার খুঁজে বের করার সুযোগ. যখন আপনার নিজের গেম ডেভেলপমেন্টের জন্য ধারণার অভাব থাকে বা প্রকল্পগুলির মধ্যে থাকে, তখন আপনি সম্প্রতি খেলেছেন এমন একটি গেম নির্বাচন করুন, সেই গেম থেকে একটি মেকানিক, প্রভাব বা বৈশিষ্ট্য চয়ন করুন এবং এটি ক্লোন করার চেষ্টা করুন।
যখন আমি ক্লোনিং উল্লেখ করি, আমি একটি সঠিক প্রতিরূপ উল্লেখ করছি না বরং নির্বাচিত উপাদানটির সারাংশ ক্যাপচার করছি।
উদাহরণস্বরূপ, আমি সম্প্রতি স্পাইডার-ম্যান: মাইলস মোরালেসের মুভমেন্ট সিস্টেম দ্বারা মুগ্ধ হয়েছি। যাইহোক, এই ধরনের একটি জটিল 3D অ্যাকশন গেমের পুরো মুভমেন্ট সিস্টেমকে ক্লোন করার চেষ্টা করা বেশ চ্যালেঞ্জিং হবে। পরিবর্তে, আমি সেই দিকটিকে ক্লোন করার দিকে মনোনিবেশ করব যা আমাকে সবচেয়ে বেশি মুগ্ধ করে, যেমন ওয়েব সুইংিং। এটি সম্পন্ন করার জন্য, আমার একটি সম্পূর্ণ স্পাইডার-ম্যান মডেল বা বিশদ বিল্ডিংয়ের প্রয়োজন নেই। প্লেয়ার বোতাম টিপে একটি সাধারণ কিউব সাড়া দেয় এবং একটি দড়ি তৈরি করে যেখান থেকে খেলোয়াড়ের চরিত্রটি দুলতে থাকে এবং সামনের দিকে চলে যায় যা আসল গেমটিতে অনুভব করা চলাফেরার স্বাধীনতার প্রতিলিপি করতে যথেষ্ট।
নিজের জন্য একটি কঠোর সময়সীমা সেট করুন। মনে রাখবেন, আপনি একটি সম্পূর্ণ গেম তৈরি করছেন না বরং বিদ্যমান একটি থেকে একটি একক উপাদান ক্লোন করছেন। প্রায় ছয় কার্যদিবস বরাদ্দ করুন, তিন সপ্তাহান্তের সমতুল্য, পূর্ণ-সময়ের ছাত্র এবং কর্মরত বিকাশকারীদের জন্য যথেষ্ট সময়।
ওয়ার্কশপটি ব্যবহার করার জন্য এটি উপযুক্ত সুযোগ। এটি আপনার ক্লোনিং প্রকল্পগুলি সংরক্ষণ করার জন্য একটি আদর্শ স্থান প্রদান করে। আপনি যদি একটি নির্দিষ্ট ধারণাকে আরও এগিয়ে নেওয়ার সিদ্ধান্ত নেন, তাহলে আপনি পরিত্যক্ত গিট প্রকল্পগুলির তালিকাগুলি না করে সহজেই এটির নিজস্ব প্রকল্পে অনুলিপি করতে পারেন।
যদি আপনার পোর্টফোলিও কিছুটা অভাব অনুভব করে, তবে এই অনুশীলনটি এটিকে উন্নত করার একটি দুর্দান্ত উপায়। ক্লোন করা উপাদানটি নিন এবং একটি মেনু, পজ ফাংশন, ব্যাকগ্রাউন্ড মিউজিক এবং আপনার লক্ষ্য ব্যাখ্যা করে একটি ভূমিকা যোগ করে এটিকে পালিশ করুন। এই ধরনের একটি সমাপ্ত পণ্য জমকালো কিন্তু অসমাপ্ত গেমের ধারণায় ভরা একটি নথির চেয়ে নিয়োগকারীদের অনেক বেশি প্রভাবিত করবে।
প্রতিটি ক্লোনিং অনুশীলনের পরে, একটি সংক্ষিপ্ত পোস্টমর্টেম বিশ্লেষণ পরিচালনা করুন। কী ভাল কাজ করেছে তা প্রতিফলিত করুন, দুর্বলতাগুলি চিহ্নিত করুন, ভবিষ্যতের উন্নতিগুলি বিবেচনা করুন এবং এগিয়ে নিয়ে যাওয়ার মতো মূল্যবান পাঠগুলি বের করুন।
মাঝে মাঝে, আমি ক্লাউনিং করতে লিপ্ত হই। আমি এমন একটি ধারণা নির্বাচন করি যা প্রযুক্তিগতভাবে আকর্ষণীয় বা আমি শিখতে বা পুনরায় দেখতে চাই এমন বেশ কয়েকটি প্রযুক্তিগত উপাদানকে একত্রিত করে, কিন্তু কোনো বাণিজ্যিক সম্ভাবনা বা ব্যবহারিক মূল্য নেই।
ক্লাউনিংয়ের উদ্দেশ্য হল পরিপূর্ণতার জন্য চাপ দূর করা। লাভ বা অন্যদের কাছে উপস্থাপনের উদ্দেশ্যে একটি প্রকল্পে কাজ করার সময়, ডিজাইনের সিদ্ধান্তগুলি আরও সচেতন হয়ে ওঠে। ক্লাউনিং আপনাকে শুধুমাত্র নির্দিষ্ট এলাকায় আপনার জ্ঞানকে গভীর করার উপর ফোকাস করতে দেয়।
উদাহরণস্বরূপ, কয়েক বছর আগে আমি "উইজার্ডি এক্সচেঞ্জ" নামে একটি প্রকল্প শুরু করেছিলাম। এটি এমন একটি অ্যাপ যা বাস্তব-বিশ্বের মূল্যবোধ (CAD, EUR, GBP, বা USD) থেকে হ্যারি পটারের মহাবিশ্বে ব্যবহৃত মুদ্রায় (নাট, সিকল এবং গ্যালিয়ন) মুদ্রা রূপান্তরিত করেছিল। এই প্রজেক্টে ফ্রন্ট-এন্ডের জন্য Unity3D WebGL, Go for backend, একটি কাস্টম ক্যাশিং সিস্টেম, এবং Docker ব্যবহার করে AWS-এ স্থাপনা জড়িত।
এটি একটি বাস্তব বা দরকারী প্রকল্প? একদমই না! ফ্রন্ট-এন্ডের জন্য ইউনিটির প্রয়োজন হয় না, কয়েকটি সাধারণ এন্ডপয়েন্টের জন্য গো ওভারকিল, এবং অ্যাপ্লিকেশানটি আলুতে চলতে পারে, AWS ছেড়ে দিন।
তাহলে, কেন ঝামেলার মধ্য দিয়ে যেতে হবে? Unity এর সাথে WebGL সম্বন্ধে জানতে, সার্ভার ডেভেলপমেন্টের জন্য Go নিয়োগ করুন এবং AWS- এ Docker ব্যবহার করে অ্যাপ্লিকেশন তৈরি ও স্থাপন করার অভিজ্ঞতা অর্জন করুন। শেষ ফলাফল জ্ঞান অর্জনের প্রক্রিয়ার মতো গুরুত্বপূর্ণ নয়।
এবং এটি তিনটি কাতা শেষ করে যা ইউনিটি বা যেকোনো গেম ইঞ্জিন সম্পর্কে আপনার বোঝার গভীরে সাহায্য করতে পারে।
আমি একটি নির্দিষ্ট বাক্যাংশের প্রতি মনোযোগ আকর্ষণ করতে চাই যা আমি আগে ব্যবহার করেছি: "প্রশিক্ষণ পদ্ধতি" ।
এই পদ্ধতিটি 15 বছরেরও বেশি সময় ধরে আমার প্রকৌশল অনুশীলনকে পরিচালিত করেছে। আমি আপনার ব্ল্যাক বেল্ট পাওয়ার মতো একটি বিশ্ববিদ্যালয় থেকে স্নাতক হওয়াকে বিবেচনা করি এবং জুডোর মতো (যেখান থেকে বেল্ট সিস্টেমের উদ্ভব হয়েছিল), একটি কালো বেল্ট দক্ষতার পরিবর্তে মৌলিক বিষয়গুলিকে বোঝায়।
এটা প্রত্যাশিত যে, একটি ব্ল্যাক বেল্ট অর্জন করার পরে, জুডো শিল্পে তাদের দক্ষতা আরও বিকাশের জন্য একজন স্বাধীন গবেষণা শুরু করে।
একইভাবে, স্নাতক হওয়ার পর, আপনার প্রযুক্তিগত দক্ষতা ক্রমাগত উন্নত করতে এবং জ্ঞান অর্জনের জন্য একটি প্রশিক্ষণের পদ্ধতি স্থাপন করা আপনার দায়িত্ব হয়ে যায়। যদিও আপনি কাজের মাধ্যমে জ্ঞান অর্জন করবেন, এতে দিকনির্দেশনা এবং ব্যক্তিগত বিকাশের অভাব থাকতে পারে।
এইভাবে, আপনার প্রকৌশল দক্ষতা তীক্ষ্ণ করার জন্য একটি প্রশিক্ষণ পদ্ধতি তৈরি করা অত্যন্ত গুরুত্বপূর্ণ। এইভাবে, যদি একটি সুযোগ আসে, যেমন আপনার কোম্পানিতে একটি নতুন অবস্থান খোলা, আপনার বর্তমান চাকরি থেকে অবসান, বা অন্য কোথাও একটি প্রলোভনসঙ্কুল ভূমিকার সম্মুখীন হওয়া, আপনি শুধু কাজের অভিজ্ঞতার চেয়ে বেশি কিছু দিয়ে সজ্জিত।
মনে রাখবেন যে, বিশ্ববিদ্যালয়ে ভিন্ন, আপনার চাকরি একটি নির্দিষ্ট বিন্দুর বাইরে আপনার প্রতিভাকে অগ্রসর করাকে অগ্রাধিকার দিতে পারে না। একটি ভাল কাজ করবে, কিন্তু দুটির মধ্যে পার্থক্য করা মাঝে মাঝে চ্যালেঞ্জিং হতে পারে। জায়গায় একটি প্রশিক্ষণ পদ্ধতি থাকা আপনার পেশাদার বৃদ্ধিকে রক্ষা করে।
আমি আশা করি যে আপনি এই কাতাগুলিকে খুব কম আকর্ষণীয় খুঁজে পেয়েছেন যদি কার্যকর না হয়, এবং তারা আপনার প্রযুক্তিগত দক্ষতার উন্নতির জন্য একটি নতুন উপায় আনলক করতে পারে।
এছাড়াও এখানে প্রকাশিত.