आसान कार्य क्या हैं?


15

मुझे खेल के विकास के लिए यह अच्छी वेबसाइट मिली और इसमें आसान कार्यों की सूची है:

यहाँ छवि विवरण दर्ज करें

हालाँकि साइट में इस बात का विवरण है कि वे किस चीज़ के लिए हैं, यह मेरे सिर पर जाता है। क्या आसान कार्य हैं और वे किसके लिए उपयोग किए जाते हैं?

अपडेट करें

मुझे Phaser.io के स्रोत कोड से स्वयं फ़ंक्शंस का बेहतर उदाहरण मिला । ये कार्य यहां दिए गए उत्तरों की तुलना में बहुत सरल हैं। वे केवल, एक पैरामीटर ले k। उत्तर के भाग के रूप में, मैं जानना चाहता हूं कि इनका उपयोग कैसे किया जाए।


2
एक महत्वपूर्ण संबंधित शब्द है tweening। इस वीडियो को भी देखें youtube.com/watch?v=Fy0aCDmgnxg जहां आप देख सकते हैं कि फुलझड़ी और सुगम कार्यों का प्रभाव कितना बड़ा है!
रॉय टी।

जवाबों:


13

एनिमेशन / गतिज गति में आमतौर पर प्रक्षेप कार्यों के लिए आसान कार्यों का उपयोग किया जाता है। रैखिक प्रक्षेप (lerp) कुछ आप के बारे में सुना हो सकता है। मान लीजिए कि आप स्क्रीन के एक कोने से दूसरे तक (अपनी छवि के अनुसार) से एक स्माइली चेहरा गुनगुनाते हैं। इसका अर्थ है कि स्माइली बिंदु A से बिंदु B तक एक स्थिर वेग से चलेगी। यदि आप इसे किसी अंग की गति पर लागू करना चाहते हैं, तो यह बहुत ही रोबोटिक और अप्राकृतिक लगेगा - रोबोटों का उपयोग करने वाले एक्ट्यूएटर / सर्वो इस तरह से प्रदर्शन करते हैं। जाहिर है, मानव अंग बहुत अलग तरीके से चलते हैं। और सबसे अधिक गति जो आप प्रकृति में देखेंगे, रैखिक प्रक्षेप में देखे गए स्थिर, अपरिवर्तनीय वेग के बजाय दिलचस्प गति घटता होगा।

सहजता दर्ज करें। सहज गति का अर्थ है वेग स्थिर नहीं है। यह क्या हासिल करने के लिए और अधिक यथार्थवादी लग रहा है। लोगों को देखें, विभिन्न जानवरों को देखें, हवा में झुके हुए पौधों को देखें, या यहां तक ​​कि कैसे गिरती हुई बारिश एक गज़ब के दिन दिशा बदलती है। एक गेंद के वेग को देखें जैसा कि आप इसे हवा में फेंकते हैं और फिर से नीचे आते हैं। एक गिटार स्ट्रिंग की गति को देखें जैसा कि आपने इसे प्लक किया। इस प्रकार की प्रत्येक गति में वेग का वर्णन करने वाला एक अलग वक्र होता है।

मेरा सुझाव है कि आप ग्रीनस्कॉक के जीएसएपी के साथ ऑनलाइन खेलने के लिए महसूस करें कि गति के संदर्भ में विभिन्न प्रकार के सहजता वाले वक्र क्या पैदा करते हैं। यह उन चीजों में से एक है जहां आपको किसी विशेष नाम की वक्र को गति देने के लिए समय और अभ्यास करना पड़ता है, जिसे आप चाहते हैं कि कल्पना करें। लेकिन एक बार जब आप मूल बातें समझ लेते हैं, तो आपको बहुत मज़ा आएगा।

पीएस जैसा कि मैंने कहा, सहजता केवल एनीमेशन के लिए उपयोग नहीं की जाती है। इसका उपयोग साउंड पैनिंग के लिए किया जा सकता है, तार्किक / मॉडल स्तर पर कंकाल की गति को प्रभावित करने के लिए, या कुछ और जो आप सोच सकते हैं कि समय के साथ विशिष्ट चिकनी भिन्नता की आवश्यकता हो सकती है।


1
btw ईज़ींग ग्रीनस्कॉक लिंक में दूसरी स्लाइड है। विभिन्न सुगम कार्यों का परीक्षण करने के लिए स्लाइड पर ड्रॉपडाउन मेनू का उपयोग करें।
झॉकिंग

8

एक सहजता से काम करने से आप किसी दिए गए अंतराल पर एक मान से दूसरे मान को एक "सहजता से काम" कह सकते हैं। ये ऐसे कार्य हैं जो एक निश्चित समय पर मूल्य और किसी भी बिंदु पर लेने के लिए डिज़ाइन किए गए हैं, एक निश्चित समय पर मूल्य का उत्पादन करते हैं।

यह एक कोड स्निपेट पर एक नज़र डालकर सबसे अच्छा समझाया जा सकता है:

// simple linear tweening - no easing, no acceleration


Math.linearTween = function (t, b, c, d) {
    return c*t/d + b;
};

@ tween का वर्तमान समय (या स्थिति) है। यह सेकंड या फ़्रेम, चरण, सेकंड, एमएस, जो कुछ भी हो सकता है - जब तक यूनिट कुल समय के लिए उपयोग किया जाता है, तब तक

@ बी संपत्ति का शुरुआती मूल्य है।

@ सी संपत्ति की शुरुआत और गंतव्य मूल्य के बीच परिवर्तन है।

@d टवेनी का कुल समय है।

धन्यवाद, http://upshots.org/actionscript/jsas-understanding-easing

यह एक रैखिक सहजता फ़ंक्शन की परिभाषा है। 'T' के संदर्भ में समय के साथ यह रेखांकन करते हुए हमें एक मात्र रेखीय ग्राफ मिलता है।

ठीक है। हम उनके लिए क्या उपयोग कर सकते हैं?

किसी भी समय आपके पास एक शुरुआत और खत्म होने की संभावना है और उन्हें चेतन करना चाहते हैं, तो आप एक "ट्विन" या "ईवेंटिंग फ़ंक्शन" का उपयोग कर सकते हैं।

उदाहरण के लिए, यहाँ एक GIF है जिसे मैंने केवल एंग्री बर्ड के रूप में लिया है:

यहाँ छवि विवरण दर्ज करें

स्क्रीन में बिंदु पर फिसलने वाले मेनू को नोटिस करें, लेकिन यह धीरे-धीरे बंद हो जाता है? यह एक आसान कार्य के कारण है जो जगह में ढील देता है। आप उन सभी को वेब पर देख सकते हैं। यदि यह एक रेखीय सहजता थी, तो यह पूरे समय एक जैसी होगी।

संगीत?

ज़रूर! यदि हम अपने वर्तमान साउंडट्रैक मूल्य को लेते हैं और इसे उस 0 के बीच में कहते हैं, तो कुल 1 सेकंड के बाद, हमारा वॉल्यूम धीरे-धीरे एक सेकंड की अवधि में फीका हो जाएगा।

वस्तुओं को बाँधना

ऐसे कार्य भी हैं जो बाउंसिंग के लिए अनुमति देते हैं (देखें: http://easings.net/#easeOutBounce ) जो बिना किसी भौतिकी प्रणालियों के स्प्राइट पर इस तरह के प्रभाव पैदा कर सकते हैं:

यहाँ छवि विवरण दर्ज करें

आप वेब पर और अधिक जानकारी प्राप्त कर सकते हैं।


@tieTYT मैंने आपके लिए एक स्पष्टीकरण जोड़ा है। आप किस तरह के उपयोग उदाहरण की तलाश कर रहे हैं?
वॉन हिल्ट्स

मेरा अपडेट देखें यदि आप बता सकते हैं कि केवल kएक पैरामीटर के रूप में होने वाले कार्यों का उपयोग कैसे करें , तो मैं इस उत्तर को स्वीकार करूंगा। धन्यवाद
डैनियल कपलान

ये कार्य केवल k नहीं लेते हैं। शुरुआत के फ़ंक्शंस इनका उपयोग करते हैं जो बाद में अधिक जटिल लोगों को पारित कर दिए जाते हैं। क्या आप केवल चरण कार्यान्वयन में रुचि रखते हैं?
वॉन हिल्ट्स

ऐसा लग रहा है कि वे सब kमुझे अपने पास ले जाते हैं। आप अन्यथा कहां देख रहे हैं?
डैनियल कपलान

सभी सहज कार्य (शायद 'शेक' स्टाइल ट्वीन्स को छोड़कर) को न्यूनतम तीन मापदंडों की आवश्यकता होती है। समय (आमतौर पर 0 और 1 के बीच का अनुपात), एक शुरुआती मूल्य और एक अंतिम मूल्य। कभी-कभी समय को दो मापदंडों में विभाजित किया जाता है जैसे कि वर्तमान समय, और आसानी की अवधि। यदि प्रारंभ और अंत मान पहले से ही परिभाषित किए गए हैं (आपके ईज़ी सिस्टम / लाइब्रेरी के आधार पर), तो आपको केवल समय पास करने की आवश्यकता हो सकती है, लेकिन मैं खुद से परिचित नहीं हूं। उदाहरण के लिए, अगर मुझे 10 और 30 के बीच का मूल्य 75% रास्ते में चाहिए (3 सेकंड में 4 सेकंड की आसानी), तो मुझे 10 और 30 पास करने की आवश्यकता है, और 75% (समय / समय)।
डग। एमफर्लेन

2

प्रारंभिक कार्य एक समय संख्या के दौरान एक मूल्य को बदलने के लिए सेवा करते हैं, एक शुरुआती संख्या से अंत संख्या तक।

आप उस मूल्य का उपयोग अपने खेल में किसी वस्तु की संपत्ति को चेतन करने के लिए करते हैं, जैसे कि स्थिति, रोटेशन, स्केल, बदलते रंग और अन्य गुण जो इस मूल्य का उपयोग करते हैं।

अलग-अलग आसान कार्य एनीमेशन के "फील" को निर्धारित करते हैं, या समय के साथ मूल्य कैसे बदलते हैं।

आपके द्वारा पोस्ट की गई वेबसाइट पर, ग्राफ़ शुरू से अंत तक समय के साथ बदलते मूल्य को दर्शाता है, इसलिए इसका मतलब यह नहीं है कि आप जिस वस्तु को एनिमेट कर रहे हैं वह ग्राफ़ में गेंद के पथ का अनुसरण करेगा।


ओह, तो अब आपने अपना उत्तर बदल दिया है मेरा प्रतिबिंबित करने के लिए! आपको देखकर बहुत अच्छा लगा।
इंजीनियर

यह उत्तर एक ट्यूटोरियल की तुलना में संदर्भ की तरह अधिक लगता है। मुझे एक बेहतर समझ रखने के लिए उदाहरणों की आवश्यकता है
डैनियल कपलान

@ विकविकगिल नहीं, मैंने अब तक आपका जवाब नहीं देखा।
इनो
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.