গেমপ্লে ক্রিয়াগুলি নির্দিষ্ট অ্যানিমেশনের সময়গুলিতে সিঙ্ক করার জন্য ভাল কৌশল?


10

সুতরাং আমি যে গেমটি নিয়ে কাজ করছি তার একটি বিষয় জুড়ে এসেছি, তবে এটি সম্ভবত একটি বেশ কয়েকটি মৌলিক বিষয় যা সম্ভবত প্রচুর গেমগুলির মধ্যে আসে।

আমার গেমটির প্রয়োজন যে কোনও গেমপ্লে ফাংশন একটি অক্ষর অ্যানিমেশনের সময় সময়ে খুব নির্দিষ্ট সময়ে ঘটে point এবং তাই, শিরোনামটি যেমন বলেছে, আমি ভাবছি যে কোনও চরিত্রের অ্যানিমেশনটিতে নির্দিষ্ট পয়েন্টগুলিতে গেমপ্লে সম্পর্কিত ইভেন্ট / ফাংশন / ক্রিয়াগুলি সিঙ্ক করার জন্য কিছু ভাল কৌশল এবং মৌলিক কৌশলগুলি কী।

আমি বিভিন্ন ধরণের গেমগুলিতে কী সম্পর্কে কথা বলছি তার কয়েকটি সাধারণ উদাহরণ এখানে দেওয়া হয়েছে:

  • আপনার চরিত্রটি তাদের বন্দুকটিকে একটি শ্যুটারে পুনরায় লোড করে । আপনার চরিত্রটি তার / তার 'পুনরায় লোড' অ্যানিমেশনটি অভিনয় করে তবে এটি গুরুত্বপূর্ণ যে বর্তমান অ্যাম্মো ভেরিয়েবলটি নির্ধারণ করে সেই ফাংশনটি কেবল ম্যাগাজিনটি অদলবদল করার পরে এবং বন্দুকটি কুক্কুট হওয়ার পরে ঠিক সেই মুহুর্তে ডাকা হয় এটি পুনরায় লোড অ্যানিমেশনের মাঝামাঝি কিছু জায়গা হতে পারে।

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

  • একটি চৌর্য খেলা , আপনার অক্ষর ছিঁচকে চোর এবং কম্পিউটার এবং বিশ্বের বোতাম সঙ্গে ইন্টারঅ্যাক্ট করতে পারবেন। হতে পারে এমন একটি বোতাম আছে যা আপনি প্রবেশ করিয়ে দিচ্ছেন এমন ফাঁড়ির আলোতে বিদ্যুৎ সরবরাহ বন্ধ করে দেয়। অ্যাকশন বোতামটি চাপলে আপনার অক্ষরটি পৌঁছে যায় এবং বোতামটি ঠেলা দেয় এবং তারপরে অলস অবস্থানটিতে ফিরে আসে। আপনি বাটনটি চাপ দিলে 'পুশ_বাটন' অ্যানিমেশনের ঠিক পয়েন্টে বাতিগুলি বন্ধ করতে চান।

স্বীকার করা যায় যে, আমার বিশেষ ক্ষেত্রেটি দ্বিতীয় উদাহরণের মতো , যেখানে আমি একটি অ্যানিমেশন তৈরি করেছি যেখানে আমার টার্ন-ভিত্তিক চরিত্রটি আক্রমণের সময় এগিয়ে চলেছে এবং আমি ক্ষয়টি ঠিক সেই মুহুর্তে প্রয়োগ করতে চাই যাতে অ্যানিমেশনটি যোগাযোগ করছে বলে মনে হচ্ছে applied । কারণ আমার গেমটি টার্ন ভিত্তিক সিস্টেম ব্যবহার করে (ফাইনাল ফ্যান্টাসি বা ফায়ার প্রতীক জাতীয় কিছু কল্পনা করুন) আমি ক্ষতি / নিরাময় / যাদু / ইত্যাদি চাই want প্রতিটি অক্ষর অ্যানিমেশনের সময় সঠিক সময়ে প্রয়োগ করতে হবে যদিও আমি আসলে সংঘর্ষ / হিটবক্স ব্যবহার করছি না।

আমার উল্লেখ করা উচিত যে আমি একটি জনপ্রিয় গেম ইঞ্জিনে আমার গেমটি তৈরি করছি এবং এই মুহুর্তে আমি এনিমেশন ইভেন্টগুলি ব্যবহার করে বা কাঙ্ক্ষিত ফলাফলের কাছাকাছি কিছু অর্জনের জন্য এটি অবহিত করছি - আমার চরিত্রটি একটি নির্দিষ্ট কমান্ড সম্পাদন করে এবং একটি ট্রিগার চালু করে কমান্ড-নির্দিষ্ট অ্যানিমেশন (যেমন: 'আক্রমণ_কম্যান্ড') এবং আমার প্রতিটি কমান্ডের জন্য অ্যানিমেশন সম্পদে অবশ্যই একটি অ্যানিমেশন ইভেন্ট অন্তর্ভুক্ত করতে হবে / আমার অক্ষর এক্সিকিউটকম্যান্ড ফাংশনে 'কলব্যাক' অবহিত করতে হবে। অন্য কথায় - চরিত্রটি আক্রমণ অ্যানিমেশনটি খেলতে বলে এবং তারপরে অ্যানিমেশনটি অ্যানিমেশন চলাকালীন সঠিক মুহুর্তে একটি ইভেন্ট / ক্যালব্যাককে অবহিত করে যখন ক্ষতির মুখোমুখি হওয়া উচিত।

সত্যিই, এটি আপাতত কাজ করে তবে এটি কেবল ভুল অনুভব করে - যেমন আমি এখানে বড় ছবির কিছু অংশ মিস করছি! এই পদ্ধতিটি ভুল অনুভব করার কারণের একটি অংশ হ'ল এটি অ্যানিমেশন সম্পদের সাথে গেম যুক্তিকে যুক্ত করে; যদি আমার অ্যানিমেশন সম্পদটি এক্সিকিউটকম্যান্ড () ইভেন্ট / কলব্যাক অন্তর্ভুক্ত করতে ভুলে যায়, কমান্ডটি সঠিকভাবে সম্পাদন করবে না এবং কমান্ড কার্যকর না করে কোনও কমান্ড অ্যানিমেশন শেষ হয়েছে কিনা তা পরীক্ষা করার জন্য অতিরিক্ত কোডের প্রয়োজন হয়। এটি অগোছালো এবং এর অর্থ হল যে আমার গেমপ্লেটির সম্পদের উপর একটি অদ্ভুত নির্ভরতা রয়েছে। অবশ্যই আমি আক্রমণটি অ্যানিমেশন চলাকালীন একটি নির্দিষ্ট সময়ে ক্ষতি হতে চাই, তবে অ্যানিমেশন সম্পদের ভিতরে গেমপ্লে কোডটি কল করা সম্পর্কে আমি সত্যিই অদ্ভুত বোধ করি ..

তাহলে আমি এখানে কি উপেক্ষা করছি? এই জাতীয় পরিস্থিতিগুলি পরিচালনা করার জন্য কিছু ভাল সাধারণ কৌশল কী কী যেখানে আপনি চান যে অ্যানিমেশনগুলির সময় নির্দিষ্ট গুরুত্বপূর্ণ গেমপ্লে ক্রিয়াগুলি নির্দিষ্ট সময়ে ঘটতে পারে?

সম্পাদনা: পরিষ্কার করার জন্য, এটি কোনও ইঞ্জিন-নির্দিষ্ট প্রশ্ন নয় বা আমি ইঞ্জিন-নির্দিষ্ট নকশা / কৌশলগুলিও খুঁজছি। আমি সাধারণ অ্যানিমেশন / গেমপ্লে সিঙ্ক্রোনাইজেশন কৌশলগুলিতে আগ্রহী যা আপনার গেম প্রকল্পগুলিতে ব্যবহৃত প্রযুক্তিগুলি নির্বিশেষে ব্যবহার করতে পারে।


1
আমি বিভ্রান্ত আপনি বলছেন যে আপনি গেমপ্লেটি অ্যানিমেশন সময়গুলির উপর নির্ভর করতে চান তবে তারপরে বলবেন যে আপনি চান না যে আপনার গেমপ্লে আপনার সম্পদের উপর নির্ভর করবে এবং অ্যানিমেশনগুলি এক ধরণের সম্পদ। কীভাবে আপনি এই প্রত্যাশাগুলি সামঞ্জস্যপূর্ণ হতে আশা করেন?
আনকো

আমি চাই কিছু গেমপ্লে উপাদান অ্যানিমেশনের সাথে সিঙ্ক্রোনাইজ করা হোক। যাইহোক, দুটি জিনিসের মধ্যে সুসংগতকরণ সর্বদা নির্ভরতা বোঝায় না, তাই না? আমি এমন কিছু কৌশলতে আগ্রহী যা লোকেরা তাদের অ্যানিমেশনগুলিকে তাদের গেমপ্লেয়ের সাথে সিঙ্ক্রোনাইজ করতে ব্যবহার করে। আমি বলেছিলাম যে আমি কী চেষ্টা করেছি এবং এটি অর্জনের জন্য আমি বর্তমানে কী করছি - এবং তাই আমার প্রশ্নটি হ'ল কোনও আলাদা / ভাল / বিকল্প কৌশল আছে যা কেউ ব্যবহার করতে পারে বা এটি (অ্যানিমেশন ইভেন্টগুলি / বিজ্ঞপ্তি / কলব্যাকগুলি বেকডে সম্পদ) স্ট্যান্ডার্ড উপায়? আপনি কি আপনার প্রকল্পগুলিতে এটি ব্যবহার করেন?
মিঃ ক্যাটসওয়ার্ডফিশ

উত্তর:


5

সিঙ্ক্রোনাইজেশনের জন্য, আপনাকে সিদ্ধান্ত নিতে হবে যে (আপনার কোড, অ্যানিমেশন বা কোনও একটি) সময়সীমা কর্তৃক হ'ল "বিট" যার প্রত্যেকে "নাচেন"।

বিভিন্ন ব্যবস্থা বিভিন্ন গেম অনুসারে:

  • অ্যানিমেশনগুলি টাইমিং কর্তৃপক্ষ (আপনার বর্তমান সেটআপ)

    গেম কোড অ্যানিমেশনগুলি ট্রিগার করতে পারে। অ্যানিমেশনগুলি নির্দিষ্ট পয়েন্টগুলিতে পৌঁছালে তারা ইভেন্টগুলি উত্থাপন করে (যেমন পুনরায় লোডিং সম্পন্ন হয়) যা গেম কোডে প্রতিক্রিয়া জানাতে পারে (যেমন পুনরায় উপলব্ধ এমমো পুনরায় সেট করুন)।

    অ্যানিমেশনগুলির সঠিক সময়টি যদি (গেম স্টেটের স্বাধীনভাবে) আপনার গেমের একটি গুরুত্বপূর্ণ অংশ হয় বা আপনি বিশেষত আপনার অ্যানিমেটারদের সময় নির্ধারণ করতে চান তবে এই পদ্ধতির বিষয়টি বিবেচনা করুন।

    অ্যানিমেশন সরঞ্জামগুলি ব্লেন্ডার (3 ডি) এবং স্পাইন (2 ডি) অ্যানিমেটরগুলিকে গেম কোডটি সাবস্ক্রাইব করতে পারে এমন ইভেন্টগুলি সংজ্ঞায়িত করার অনুমতি দেয়।

  • কোড টাইমিং কর্তৃপক্ষ

    উপরের বিপরীতটি: গেমের বিশ্বে ঘটে যাওয়া ইভেন্টগুলি (যেমন প্লেয়ার তাদের অস্ত্র পুনরায় লোড করতে পছন্দ করে) অ্যানিমেশনগুলি চালিত করে এবং প্যারামিটারগুলি পাস করে (যেমন পুনরায় লোড শেষ না হওয়া পর্যন্ত সময়)। প্রতিটি অ্যানিমেশন সরবরাহিত প্যারামিটারগুলি কীভাবে দেখায় তা সংশোধন করতে ব্যবহার করে (উদাহরণস্বরূপ, উপযুক্ত গতিতে অ্যানিমেশনটি চালানো যেমন নির্দিষ্ট করা হলে "পুনরায় লোড অংশ" ঘটে)।

    অ্যানিমেশনগুলি গেম ইভেন্টগুলি (যেমন প্লেয়ার পুনরায় লোড করার সময় পুনরায় লোড বা প্লেয়ার ক্র্যাচগুলি বাতিল করে) শুনবে এবং সেই অনুসারে তাদের চেহারাটি সংশোধন করবে।

    যদি আপনার অ্যানিমেশনগুলি সময় নির্ধারণের ক্ষেত্রে নমনীয় হতে পারে তবে আপনার গেমটি প্রক্রিয়াগতভাবে উত্পন্ন সামগ্রীর উপর প্রচুর নির্ভর করে, বা আপনি বিশেষত আপনার প্রোগ্রামারদের সময় নিয়ন্ত্রণ করতে চান, এই পদ্ধতির বিষয়টি বিবেচনা করুন।

    ওভারগ্রোথের চরিত্রের অ্যানিমেশনগুলি মূলত এইভাবে কাঠামোগত করা হয়েছে: ডেভিড রোজেন তার জিডিসি 14 টকটিতে এটি ব্যাখ্যা করেছেন (বিশেষত আন্দোলন এবং আন্দোলনের ধারাবাহিক বিভাগগুলি দেখুন)।

  • অন্তর্নিহিত সময় (বাহ্যিক কর্তৃপক্ষ)

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

    যদি আপনার গেমের অবস্থা এবং অ্যানিমেশনগুলি বহুলাংশের একটি বাহ্যিক সময় কর্তৃত্বের উপর নির্ভর করে তবে এই পদ্ধতির বিষয়টি বিবেচনা করুন।

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


0

আমি কোথাও পড়েছি যে অতিরিক্ত সমস্ত বিমূর্ত স্তর দিয়ে প্রায় সমস্ত গণনার সমস্যাগুলি সমাধান করা যেতে পারে এবং আমি আপনার কেসটি আলাদা হতে দেখছি না।

এই প্রয়োজনের জন্য আমি সাধারণত চরিত্রের স্থিতি নিয়ন্ত্রণ করতে একটি স্তর দেখতে পাই। এইভাবে চরিত্রটির একটি বর্তমান অ্যানিমেশন এবং একটি বর্তমান অবস্থা থাকবে। প্রত্যেকে নিজের দায়িত্ব নিয়ে।

অ্যানিমেশনটি কেবলমাত্র চাক্ষুষের জন্য দায়বদ্ধ এবং রাষ্ট্র সেই ক্রিয়াটির জন্য গেমটি নির্দিষ্ট যুক্তিকে পরিচালনা করে।

আমার লড়াইয়ের খেলায়, রাজ্যটি এমন একটি বস্তু যা বেসস্টেট বর্গ থেকে উত্তরাধিকার সূত্রে প্রাপ্ত এবং একটি আপডেট () পদ্ধতি রয়েছে। প্রতিটি চরিত্রের রাজ্যের সংকলন রয়েছে, তবে একসাথে কেবলমাত্র একটি নির্দিষ্ট করা যেতে পারে। এবং বর্তমান রাষ্ট্রের আপডেট () পদ্ধতিটিকে একবার ফ্রেম হিসাবে ডাকা হয়।

এটি রাষ্ট্রের আপডেটের () অভ্যন্তরে যেখানে আমি সেই সমস্ত যুক্তিই করি: একটি নির্দিষ্ট ফ্রেমে অক্ষরের বেগ নির্ধারণ, বৃদ্ধি / হ্রাস স্বাস্থ্য ইত্যাদি

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.