ठीक है तो यह एक बहुत ही शुरुआती स्तर का प्रश्न है लेकिन मुझे यह जानने की आवश्यकता है कि खेल के विकास के संदर्भ में "टिक" शब्द का क्या अर्थ है? क्या यह एफपीएस जैसी ही चीज है? धन्यवाद!
ठीक है तो यह एक बहुत ही शुरुआती स्तर का प्रश्न है लेकिन मुझे यह जानने की आवश्यकता है कि खेल के विकास के संदर्भ में "टिक" शब्द का क्या अर्थ है? क्या यह एफपीएस जैसी ही चीज है? धन्यवाद!
जवाबों:
टिक समय के लिए माप की एक इकाई है, विशेष रूप से यह एक खेल में एक दोहराया कार्रवाई (आमतौर पर एक व्यापक कार्रवाई) के एक उदाहरण या उस समय की अवधि को संदर्भित करता है जो कार्रवाई का उपभोग करता है।
टिक्स दोहराया जाता है और (ज्यादातर) नियमित रूप से; यह शब्द उन ध्वनियों में से एक है जो एक घड़ी बनाती है ("टिक" और "टॉक")।
आमतौर पर एक टिक कुछ लूप का पुनरावृत्ति होता है, जैसे कि मुख्य गेम लॉजिक लूप। एक उदाहरण के लिए, कह सकते हैं कि खेल तर्क "टिक" एक बार एक फ्रेम, या कि "टिक के दौरान, चरित्र पदों को अपडेट किया जाता है।"
हालांकि यह अधिक दानेदार अवधि का भी उल्लेख कर सकता है; कोई यह कह सकता है कि "खेल में AI टिक 5ms प्रसंस्करण समय तक सीमित है।"
FPS एक माप है कि एक सेकंड में कितने फ्रेम (आमतौर पर फ्रेम को प्रस्तुत करना) एक गेम प्रक्रिया है। टिक्स और एफपीएस आवश्यक रूप से संबंधित नहीं हैं, हालांकि कभी-कभी लोग गेम लॉजिक लूप के एक एकल निष्पादन को "लॉजिक फ्रेम" कहेंगे, जिस स्थिति में तर्क (लॉजिक) एफपीएस दर प्रति सेकंड संसाधित टिक की संख्या होगी। यह विशेष रूप से उन खेलों के लिए आम है जो खेल तर्क या भौतिकी के लिए निश्चित फ्रेम दर लागू करते हैं जो भी कारण हो।
अधिकांश खेलों को एक लूप में लागू किया जाता है। कुछ इस तरह
def main
setup(a, bunch, of, stuff)
load(a, bunch, of, stuff)
while true do {
// <- A tick starts here
read(a, bunch, of, inputs)
call(a, bunch, of, stuff)
do(a, bunch, of, stuff)
update(a, bunch, of, stuff)
// <- A tick ends here
}
clean(a, bunch, of, stuff)
save(a, bunch, of, stuff)
end
यह चीजों को करने का एक सुंदर मानक तरीका है, और रेंडर करते समय और यूआई तत्वों को एक अलग थ्रेड में संभाला जा सकता है, वास्तविक गेम लॉजिक (प्रेस डब्ल्यू आपके जहाज को आगे बढ़ाता है), इस टिक के अंदर होता है।
इसे एक "फ़्रेम" भी कहा जाता है और आमतौर पर इसे फ्रेम दर के रूप में संदर्भित किया जाता है (ग्राफिक्स सामान के साथ भ्रमित नहीं होने के लिए)। टिक दो को अलग करने में मदद करने के लिए एक लोकप्रिय पर्याय बन गया है।
एक प्रोग्रामर के रूप में आपका लक्ष्य एक स्थिर, स्थिर फ्रेम (टिक) दर है, चाहे जो भी हो। यह आपके गेम की प्रतिक्रियाओं को सुचारू और तर्कसंगत बनाए रखता है, जबकि एक ही समय में एक मॉडल (प्रोग्रामिंग नहीं ग्राफिक्स) को कंप्यूटर के अनुकूल फैशन में चीजों को संसाधित करने की अनुमति देता है। टिक का समय पूरे खेल में स्थिर नहीं होता है और कोई जादू की संख्या नहीं होती है। कुछ खेल प्रति सेकंड 100 तख्ते हैं, अन्य हर 3 सेकंड में 1 टिक हैं।
एक "टिक" दो अलग-अलग चीजों को संदर्भित कर सकता है। यह एक फ्रेम टिक का उल्लेख कर सकता है जैसा कि आपने कहा था कि स्क्रीन पर सभी दृश्यमान ग्राफिक्स अपडेट हो जाते हैं। हालाँकि, "टिक" शब्द एक गेम लूप टिक का भी उल्लेख कर सकता है। उस प्रकार की टिक वह जगह है जहाँ आपके कोड को निष्पादित किया जाता है। आमतौर पर आपके टिक उसी दोहराव वाली टिक के लूप के संदर्भ में होते हैं जो खेल के रुकने तक जारी रहेंगे।
एक टिक आम तौर पर गेम लूप के एक पुनरावृत्ति को संदर्भित करता है जिसमें सभी तर्क की गणना की जाती है, इसलिए खेल में आमतौर पर प्रति सेकंड कई टिक होते हैं।
हालाँकि, कई गेम ग्राफिक्स और गेम लूप दोनों को एक ही थ्रेड पर चलाते हैं क्योंकि ग्राफिक्स आमतौर पर प्रदर्शित करने में इतना समय नहीं लेते हैं ताकि लॉजिक बाधित हो, या इसके विपरीत (हालांकि डेवलपर्स उस तरह की स्थितियों के लिए चेक लगाते हैं, जैसे अंतिम और वर्तमान फ्रेम के बीच समय में अंतर लेना और तदनुसार गति की दर को समायोजित करना)।
FPS का अर्थ F rames P er S econd है, इसलिए कई खेलों के लिए, हाँ, तकनीकी रूप से, प्रत्येक फ्रेम एक टिक है।
physics engine update frame
आकस्मिक खिलाड़ियों को याद रखने / समझने के लिए बहुत लंबा समय होता है।