आम्ही युद्धनौकांचे विश्व कसे करतो: निर्यात ऑटोमेशन आणि सामग्री सत्यापन. BigWorld Engine - गेम इंजिन - गेम डेव्हलपरसाठी फाइल्स - गेम निर्मिती बिग वर्ल्ड गेम इंजिन

या पोस्टमध्ये, आम्ही गेम विकसकांना प्रश्न विचारणे सुरू ठेवतो. यावेळी, प्रकल्प "", कंपनीचे तांत्रिक संचालक मिखाईल झिवेट्स यांनी मुलाखत दिली आहे Wargaming.net.

"NVIDIA वर्ल्ड": तुम्ही तुमच्या प्रोजेक्टमध्ये कोणते ग्राफिक्स इंजिन वापरत आहात? किमान आणि शिफारस काय आहेत यंत्रणेची आवश्यकता? ते काही विशिष्ट वैशिष्ट्यांमुळे आहेत किंवा तुम्ही 3D-नकाशेच्या विशिष्ट स्तरावर मार्गदर्शन करत आहात? तुम्ही ग्राफिक्स कार्ड्सच्या नवीनतम पिढीची प्रवेशयोग्यता वापरत आहात किंवा तुम्ही एक मानक लक्ष्य करत आहात?

वर्ल्ड ऑफ टँक्स प्रकल्प बिगवर्ल्ड ग्राफिक्स इंजिन स्वतःच्या बदलांसह वापरतो, जे प्रकल्पाच्या वैशिष्ट्यांमुळे बनवावे लागले. इंजिनचे वैशिष्ट्य म्हणजे नकाशाच्या गतिकरित्या लोड केलेल्या भागांसह खुल्या जगावर लक्ष केंद्रित करणे, उदाहरणार्थ, वर्ल्ड ऑफ वॉरक्राफ्टमध्ये केले जाते. आम्ही अशा तंत्रज्ञानाचा वापर करण्याचा प्रयत्न करतो जे आम्हाला आमच्या कलाकारांच्या स्केचेसच्या जवळ मॉनिटर स्क्रीनवर चित्र तयार करण्यास आणि त्यांना सिस्टम आवश्यकतांशी जुळवून घेण्यास अनुमती देतात.

"NVIDIA वर्ल्ड": NVIDIA आणि ATI मधील व्हिडिओ कार्ड प्रोग्रामिंगच्या बाबतीत लक्षणीय भिन्न आहेत का? डायरेक्टएक्स किंवा ओपनजीएल द्वारे फक्त लिहिणे आणि दोन्ही विक्रेत्यांसाठी कार्यक्षम कोड मिळवणे शक्य आहे का, किंवा तुम्हाला प्रत्येक विक्रेत्यासाठी फंक्शन्सच्या वेगवेगळ्या आवृत्त्या तयार करण्याची आवश्यकता आहे का? तुम्ही कोणता दृष्टिकोन वापरला?

M. Zh.:वेगवेगळ्या उत्पादकांचे व्हिडिओ कार्ड स्वतःचे आहेत विशिष्ट वैशिष्ट्ये... हे विशेष टेक्सचर फॉरमॅटसाठी समर्थन असू शकते किंवा व्हर्टेक्स शेडरमधून टेक्सचरमध्ये प्रवेश असू शकतो. त्याच वेळी, DirectX किंवा OpenGL API द्वारे प्रदान केलेली सामान्य कार्यक्षमता वापरताना, दोन विक्रेत्यांचे GPU मधील फरक कमी असतो आणि ATI आणि NVIDIA मधील व्हिडिओ कार्डमधील फरकाचा परिणाम म्हणून, त्यापेक्षा जास्त संधी आहेत. कोणत्याही मर्यादा. जोपर्यंत इंजिनद्वारे "विशेष उपचार" चा संबंध आहे, BigWorld कोणत्याही विक्रेत्यासाठी निर्णायक फायदा देत नाही.

"NVIDIA वर्ल्ड": NVIDIA आणि ATI कार्ड्सवरील गेमच्या गतीमध्ये काय फरक आहेत? हा गेम इंजिन अल्गोरिदमचा गुणधर्म आहे की गेम दृश्यांवर अधिक अवलंबून आहे? म्हणजेच, उदाहरणार्थ, एका गेममध्ये उच्च पॉलीगोनल सीन आहेत आणि दुसर्‍या गेममध्ये एक मोठा ओव्हरड्रॉ रेट आहे किंवा कॉम्प्लेक्स अँटी-अलायझिंगसह बरेच अर्धपारदर्शक पोत आहे आणि म्हणून उच्च फिलरेटसह व्हिडिओ कार्डे अधिक चांगल्या प्रकारे सामना करतात? (तुमच्या प्रोग्रामला कोणत्याही आर्किटेक्चरवर "प्रेम" होते का?).

M. Zh.:फरक मुख्यतः हार्डवेअर वैशिष्ट्यांमध्ये (मेमरी बसेसच्या रुंदीतील फरक, आरओपी युनिट्सची संख्या, शेडर युनिट्स इ.), तसेच ड्रायव्हर्सच्या अंमलबजावणीमध्ये येतात. CPU आणि GPU वरील भार जितका संतुलित असेल आणि स्टेज जितके चांगले व्यवस्थित केले जाईल तितके व्हिडिओ कार्डच्या वैशिष्ट्यांचा एकूण कार्यक्षमतेवर परिणाम होईल. यामध्ये टेक्सचरची संख्या आणि रिझोल्यूशन, कण आणि पारदर्शक वस्तूंपासून कमी ओव्हरड्रॉ, एलओडीचा वापर, वस्तूंचे बॅचमध्ये गटबद्ध करणे इत्यादींचा समावेश आहे - हे सर्व, समान प्रमाणात, इंजिन डेव्हलपरच्या खांद्यावर येते. आणि गेम डिझाइनर.

"NVIDIA वर्ल्ड": व्हिडिओ कार्डची चाचणी करताना, नियम म्हणून, गेमचे अंदाजे समान संच वापरले जातात. 3D शूटर्स, थर्ड पर्सन RPG आणि रणनीती यासारख्या भिन्न शैलींसाठी चाचणी परिणाम प्रदर्शित करताना हे सामान्यीकरण कितपत योग्य आहे. लोकप्रिय बेंचमार्क तुमच्या खेळाच्या कामगिरीचे सूचक आहेत का?

M. Zh.:मी अॅप्सना शैलीनुसार विभाजित करणार नाही. सर्व काही केवळ ते वापरत असलेल्या अल्गोरिदमच्या विकसकांच्या हातात आहे. कोणत्याही परिस्थितीत, विकसक वापरकर्त्याची प्रणाली शक्य तितक्या संतुलित लोड करण्याचा प्रयत्न करतात आणि त्याच वेळी, उत्पादनाची जास्तीत जास्त आकर्षकता प्राप्त करतात.

क्रायसिस किंवा नवीनतम नीड फॉर स्पीड सारख्या गेममधील FPS आकडे पाहता, तुम्ही इतर अनेक आधुनिक गेममधील कामगिरीची अंदाजे कल्पना करू शकता, म्हणून येथे आम्ही आत्मविश्वासाने म्हणू शकतो की या चाचण्या खूपच सूचक आहेत. या स्तराचे गेम व्हिडिओ कार्डसाठी बेंचमार्क म्हणून वापरले जाऊ शकतात, कारण उच्च गुणवत्तेच्या सेटिंग्जमध्ये ते ग्राफिक्स उपप्रणाली जास्तीत जास्त लोड करतात.

"NVIDIA वर्ल्ड": वाढत्या रिझोल्यूशनसह CPU वर लोड वाढण्याचे कारण काय आहे? हे खरे आहे की मॉडेलचे तपशील वाढवण्यासाठी त्यांची "कोणीयता" कमी करण्यासाठी अॅनिमेशन, अदृश्य आदिम क्लिप करणे, सावलीची मात्रा तयार करणे इत्यादीसाठी अधिक CPU पॉवर आवश्यक आहे? हा प्रभाव तुमच्या खेळावर होता का?

M. Zh.:रिझोल्यूशनमध्ये वाढ झाल्यामुळे सीपीयूवरील लोडवर थेट परिणाम होऊ नये, जोपर्यंत, अर्थातच, इंजिन मॉडेलच्या बहुभुजात स्वयंचलित वाढ, अतिरिक्त टेसेलेशन आणि मॉडेल्ससाठी मोठ्या संख्येने अॅनिमेशन फ्रेम प्रदान करत नाही. जर, रिझोल्यूशन वाढत असताना, CPU वरील भार विनाकारण वाढत गेला, तर समस्या गेम कोडमध्ये किंवा व्हिडिओ कार्ड ड्रायव्हरमध्ये आहे.

"NVIDIA वर्ल्ड": अॅनिसोट्रॉपिक फिल्टरिंग सक्षम केल्यावर CPU लोड वाढू शकतो का? फुल सीन अँटिलायझिंगसाठीही तेच आहे. जर यासाठी संपूर्ण दृश्य दुप्पट रेझोल्यूशनवर काढणे आवश्यक असेल, तर सैद्धांतिकदृष्ट्या त्रिकोणांची संख्या देखील वाढू शकते.

M. Zh.:दोन्ही प्रश्नांचे उत्तर नाही असे आहे. एनीसोट्रॉपिक फिल्टरिंग सक्षम असल्यास, टेक्सचर युनिट्सवरील भार वाढेल. FSAA सक्षम केल्यामुळे, पिक्सेल पाइपलाइनला अधिक काम मिळते. उच्च रिझोल्यूशनसाठी, पिक्सेलची संख्या दुप्पट केल्याने पिक्सेल शेडर, आरओपी युनिट्स आणि टीएमयूमधील ऑपरेशन्सची संख्या वाढेल.

"NVIDIA वर्ल्ड": GPU शेडर्समध्ये गणना हस्तांतरित करण्याची प्रक्रिया बर्याच काळापासून चालू आहे, सुरुवातीला ती T&L, क्लिपिंग होती. आजकाल GPU वरील मॉडेल्सचे अॅनिमेशन मानले जाते का? CPU वरील गणनेसाठी 3D इंजिनच्या बाबतीत सर्व प्रथम काय राहते? (तुम्ही T&L व्यतिरिक्त GPU वर काय मोजले?).

M. Zh.:आमच्या प्रकल्पात वापरलेले इंजिन GPU वर कोणतीही गणना करत नाही. सैद्धांतिकदृष्ट्या, म्हटल्यास, आम्हाला रिअल टाइममध्ये बर्‍याच वस्तूंच्या भौतिकशास्त्राची गणना करायची असेल, तर आम्ही समान PhysX घेऊ शकतो, जो NVIDIA GPU वर अचूकपणे गणना करतो, परंतु प्रकल्पाच्या वैशिष्ट्यांमुळे, आमच्याकडे पुरेशी CPU क्षमता आहे.

"NVIDIA वर्ल्ड": अलिकडच्या वर्षांत, व्हिडिओ प्रवेगक "स्मार्ट" बनले आहेत, ते स्वतः अदृश्य आदिम कापण्याच्या पद्धती वापरतात, जसे की: श्रेणीबद्ध झेड-बफर. ते किती प्रभावी आहेत? व्हिडिओ एक्सीलरेटरमध्ये फक्त सर्व त्रिकोण हलवणे आता शक्य आहे जेणेकरून ते सर्वकाही स्वतःच काढेल? पहिल्या 3D गेमच्या दिवसांमध्ये (कंप आणि अवास्तविक मालिका), प्रस्तुत त्रिकोण, बीएसपी ट्री इ. कमी करण्यासाठी अत्याधुनिक पद्धती वापरल्या जात होत्या. आता हे किती प्रासंगिक आहे?

M. Zh.:अर्थात, कोणते ऑब्जेक्ट काढायचे आणि कोणते दिसणार नाहीत हे स्वतंत्रपणे ठरवण्यासाठी तुम्ही व्हिडिओ एक्सीलरेटरवर अवलंबून राहू नये. अनावश्यक माहितीचे लवकर क्लिपिंग करण्याचे तंत्र आम्हाला अवलंबावे लागेल, कारण अनावश्यक माहिती GPU मध्ये हस्तांतरित केल्याने कार्यक्षमतेत घट होते. त्यामुळे, समस्या अजूनही संबंधित आहे, जरी खूप कमी प्रमाणात. विशेषत: अशा प्रकरणांमध्ये जिथे आपल्याला चित्र काढावे लागेल मोठी संख्याविविध वस्तू. वस्तुस्थिती अशी आहे की आधुनिक कार्डे केवळ अनावश्यक कार्डे कापण्यातच व्यस्त नाहीत, तर ते अधिक जटिल प्रकारच्या प्रकाशयोजना इत्यादींच्या गणनेने देखील भरलेले आहेत. त्यानुसार, व्हिडिओ कार्डला मदत करण्याची संधी आणि संसाधने असल्यास, हे केले पाहिजे.

उदाहरणार्थ, बिगवर्ल्ड इंजिनमध्ये, अंब्रा लायब्ररीचा वापर ड्रॉइंग स्टेजच्या आधी अदृश्य वस्तू कापण्यासाठी केला जातो. देखावा एक BSP वृक्ष आहे, जो तुम्हाला दृश्याचे तुकडे जलद आणि कार्यक्षमतेने टाकून देण्याची परवानगी देतो जे स्पष्टपणे व्याप्तीच्या बाहेर आहेत.

"NVIDIA वर्ल्ड": एकेकाळी अशी परिस्थिती होती, पी 4 संकटाच्या आसपास, सिस्टमची अडचण प्रोसेसर होती, जी व्हिडिओ प्रवेगक "लोड" करू शकत नाही आणि गेममध्ये एफपीएस वाढवण्यासाठी, सर्वप्रथम, ए. टॉप-एंड CPU मॉडेल आवश्यक होते. आता CPU आणि GPU मध्ये समान संबंध आहे का, किंवा प्रोसेसरने कामगिरीच्या एका विशिष्ट स्तरावर पाऊल टाकले आहे आणि आम्ही स्वस्त प्रोसेसर आणि शक्तिशाली व्हिडिओ कार्ड घेऊ शकतो का? हे क्वेक आणि डूम सारख्या शैलीतील ग्राफिक्सवर भर देणाऱ्या गेमचा संदर्भ देते.

M. Zh.:शक्तिशाली व्हिडिओ कार्ड असलेला कमकुवत प्रोसेसर ही प्रणालीची अडचण आहे, कारण बरीच ऑपरेशन्स, दोन्ही कमी (ड्रायव्हरद्वारे नियंत्रण आदेशांचा प्रवाह तयार करणे) आणि उच्च-स्तरीय (लागू तर्क - गेम लूप, अद्ययावत कण, वर्ण. अॅनिमेशन, भौतिकशास्त्र, ध्वनी इ.) थेट CPU च्या कार्यक्षमतेवर अवलंबून असतात. प्रोसेसर कॅशे मेमरीद्वारे महत्त्वपूर्ण भूमिका बजावली जाते, जी स्वस्त मॉडेल्सवर खूपच लहान असते.

व्हिडिओ कार्डच्या सर्वात कार्यक्षम ऑपरेशनसाठी, सिस्टम संसाधने, हाय-स्पीड सिस्टम बस आणि चांगल्या कार्यक्षमतेसह पुरेशी रॅम देखील आवश्यक आहे. बर्‍याचदा, व्हिडिओ उपप्रणाली ते काय सक्षम आहे हे दर्शवू शकत नाही, फक्त कारण CPU कडे आवश्यक डेटा हस्तांतरित करण्यासाठी वेळ नाही. म्हणून, संसाधनांवर बचत करताना, सरासरी प्रोसेसर, सरासरीपेक्षा किंचित जास्त मदरबोर्ड खरेदी करणे पुरेसे आहे, परंतु व्हिडिओ कार्डवर दुर्लक्ष करू नका आणि रॅम.

"NVIDIA वर्ल्ड": आवृत्ती ते आवृत्ती डायरेक्टएक्स अधिकाधिक ग्राफिक्स इंजिनसारखे होत आहे. हे खरे आहे का की आजकाल 3D प्रोग्राममध्ये प्रत्यक्ष 3D API कॉल्स असतात आणि बहुतेक गणना त्यात केल्या जातात? तुम्ही कसे रेट करता नवीनतम आवृत्तीडायरेक्टएक्स? ते जवळजवळ पूर्ण इंजिन बनले आहे आणि त्याला आणखी किती आवृत्त्या लागतील?

M. Zh.: Direct3D ला वेगळे ग्राफिक्स इंजिन म्हणून पाहिले जाऊ शकत नाही आणि नजीकच्या भविष्यात, मायक्रोसॉफ्ट स्वतःचे गेम इंजिन तयार करण्यासारखे पाऊल उचलेल अशी शक्यता नाही. वेगवेगळ्या गेम प्रोजेक्ट्ससाठी इंजिनच्या आवश्यकतांमधील अनेक फरकांसह अनेक कारणांमुळे हे अव्यवहार्य आहे. उदाहरणार्थ, कार सिम्युलेटर, रिअल-टाइम स्ट्रॅटेजी आणि 3D शूटर आहे वैशिष्ट्यपूर्ण प्रारूपजे तिन्ही प्रकरणांमध्ये समान इंजिन समान प्रभावीपणे वापरण्याची परवानगी देत ​​​​नाही.

Direct3D च्या दहाव्या आवृत्तीमध्ये, संसाधनांसह कार्य करताना नवीन स्तर आणि शेडर्स विकसित करण्यासाठी अतिरिक्त शक्यता दिसू लागल्या, स्ट्रीम आउटपुट सारख्या युक्त्या उपलब्ध झाल्या. त्याच वेळी, D3D ते जे होते तेच राहते - एक निम्न-स्तरीय API, ज्याचा वापर करून विकसक एखाद्या विशिष्ट कार्यासाठी गेम इंजिन डिझाइन करू शकतो.

"NVIDIA वर्ल्ड": साधारणपणे, अलीकडच्या काळातगेम आणि 3D इंजिनचे "जागतिकीकरण" आहे. असे बरेच लोकप्रिय प्लॅटफॉर्म आहेत ज्यावर बरेच गेम बनवले जातात. ही वस्तुनिष्ठ प्रक्रिया आहे का? विकसकाने आता स्वतःचे इंजिन लिहिणे अर्थपूर्ण आहे का, जेव्हा तुम्ही तयार पूर्ण-वैशिष्ट्यांसह परवाना देऊ शकता. उदाहरणार्थ, अवास्तविक इंजिनची दुसरी आवृत्ती अलीकडेच रिलीझ केली गेली आहे, जी आधीच हजारो वेळा डाउनलोड केली गेली आहे. सर्व गेम एक किंवा दोन 3D इंजिन वापरतील तोपर्यंत किती वेळ आहे?

M. Zh.:आम्ही BigWorld वापरतो आणि आतापर्यंत त्यात आनंदी आहोत. "जागतिकीकरण" च्या संदर्भात, एक चमत्कार घडण्याची शक्यता नाही आणि CryTek, Epic आणि इतर अनेकांनी एकमेकांना गेम इंजिन मार्केटचा एक भाग देण्याचा निर्णय घेतला. हे विसरू नका की, एक नियम म्हणून, समान इंजिनवर तयार केलेले गेम खूप समान आहेत, जे नेहमीच चांगली गोष्ट नसते. बहुधा, अधिकाधिक अरुंद स्पेशलायझेशनकडे निघून, इंजिनची संख्या फक्त वाढेल. कोणत्याही परिस्थितीत, नेहमीच अद्वितीय इंजिन असतील.

"NVIDIA वर्ल्ड": हे खरे आहे की नवीनतम व्हिडिओ कार्ड कच्च्या शक्तीच्या बाबतीत खूप शक्तिशाली बनले आहेत आणि प्रभावांच्या बाबतीत मागील मॉडेलपेक्षा वेगळे नसून, त्यांची क्षमता, सर्व प्रथम, मोठ्या मॉनिटर्ससह (1920x1200 पासून) मोडमध्ये असलेल्या सिस्टमवर प्रकट करू शकतात? antialiasing आणि पूर्ण anisotropic फिल्टरिंग? मॉनिटर असलेल्या व्यक्तीसाठी, उदाहरणार्थ, 1280x1024, फिल्टरिंग आणि AA चा चाहता नसणे, नवीन तांत्रिक प्रक्रियेवर GTX285 आणि Radeon सारखे नवीन व्हिडिओ कार्ड खरेदी करणे अर्थपूर्ण आहे का?

M. Zh.:मी सहमत आहे की ते आहे. परंतु, तरीही, पुरेशी रंग पुनरुत्पादन गुणवत्ता, उच्च रिझोल्यूशन, कॉन्ट्रास्टसह सभ्य मॉनिटर्सबद्दल विसरू नका. खेळातून तुम्हाला अधिक आनंद मिळेल. परंतु आपण आपला आवडता मॉनिटर न बदलण्याचा निर्णय घेतला तरीही, कार्ड बदलणे फायदेशीर आहे, कारण यामुळे निश्चितपणे आपल्या सिस्टमच्या कार्यक्षमतेत वाढ होईल, कारण नवीन कार्ड्सवरील काही जुन्या गणना अल्गोरिदम आधीपासूनच हार्डवेअरमध्ये लागू केल्या आहेत. .

"NVIDIA वर्ल्ड": पूर्वी, गेम डेव्हलपर नवीन व्हिडिओ कार्ड्सची क्षमता आणि प्रभाव वापरण्यात पुराणमतवादी होते, कारण त्यांनी या क्षणी सर्वात सामान्य कार्डांवर लक्ष केंद्रित केले होते. म्हणजेच, उदाहरणार्थ, सशर्त DirectX n बाहेर येतो, परंतु गेम अद्याप DirectX n-2 साठी लिहिलेले आहेत. अलीकडे परिस्थिती बदलली आहे का? अलीकडे रिलीझ केलेल्या व्हिडिओ प्रवेगकांसाठी नवीन प्रभाव क्षमतांचा लाभ घेणे गेममध्ये सोपे आहे का?

M. Zh.:जर Windows 7 काही वर्षांपूर्वी रिलीज झाला असेल किंवा मायक्रोसॉफ्टने डायरेक्टएक्स 10 ला Windows Vista ला जोडण्याची कल्पना सोडून दिली असेल, तर गेम डेव्हलपर्सने API च्या किमान आवृत्ती 10 वर खूप पूर्वी स्विच केले असते. तथापि, आता आमच्याकडे जे आहे ते आहे: सर्व हिट अलीकडील वर्षे DX9 वापरा, आणि DX10 सपोर्ट ही अनेकदा मार्केटिंगची योजना असते.

"NVIDIA वर्ल्ड": रिलीझच्या वेळी गेम सहसा नवीनतम व्हिडिओ प्रवेगकांची शक्ती किती तीव्रतेने वापरतात? उदाहरणार्थ, GT200 आर्किटेक्चरची सर्व वैशिष्ट्ये आता वापरली जात आहेत? रिलीझच्या वेळी, नवीन GPU फक्त विद्यमान गेमवर थोडे चांगले कार्य करते, परंतु कालांतराने, गेम नवीन आर्किटेक्चरसाठी ऑप्टिमाइझ केले जातात आणि नवीन वैशिष्ट्ये लागू केली जातात तेव्हा, त्याचे मूल्य वाढू शकते असे दिसते का? तुमचा गेम नवीन वैशिष्ट्ये किती वापरतो?

M. Zh.:नवीन आर्किटेक्चर आणि त्याच्या युनिफाइड शेडर मॉडेलच्या बाबतीत, जवळजवळ प्रत्येकजण जिंकला. GPU शिरोबिंदू आणि पिक्सेल पाइपलाइनचा वर्कलोड समतल झाला आहे जेथे एका दिशेने किंवा दुसर्या दिशेने मोठे स्क्यू होते. नवीन वैशिष्ट्यांबद्दल, एखाद्या विशिष्ट वैशिष्ट्यास समर्थन देणारी व्हिडिओ कार्डची टक्केवारी जितकी जास्त असेल तितकी अधिक स्वेच्छेने गेम डेव्हलपर त्यांच्या प्रकल्पांमध्ये त्यांचा वापर करतील. आम्ही वापरत असलेले BigWorld DirectX 9 आणि SM 3.0 च्या क्षमतांवर लक्ष केंद्रित करते.

"NVIDIA वर्ल्ड": आजकाल, ऑनलाइन गेम खूप लोकप्रिय झाले आहेत. याने व्हिडिओ प्रवेगक उद्योगावर आपली छाप सोडली आहे का? अशा गेमची इंजिने मोठ्या संख्येने वापरकर्त्यांकडे असलेल्या वैशिष्ट्यांच्या मूलभूत संचावर केंद्रित असल्याने आणि FPS दर अजूनही इंटरनेट कनेक्शनद्वारे मर्यादित असल्याने, ऑनलाइन गेमसाठी टॉप-एंड व्हिडिओ एक्सीलरेटर खरेदी करणे निरर्थक वाटते. हे गेम ग्राफिक्सच्या विकासावर ब्रेक नाही का? "पूर्ण 2D" मध्ये ब्राउझर गेमची वाढलेली लोकप्रियता, ज्यासाठी प्रवेगक आवश्यक नाही.

M. Zh.:जर तुम्ही वर्ल्ड ऑफ वॉरक्राफ्ट सदस्यांची संख्या पाहिली आणि त्याची तुलना आयन किंवा एज ऑफ कॉनन यांच्याशी केली, तर उत्तर स्पष्ट आहे: ऑनलाइन गेम, गेमप्ले, विस्तारासाठी खेळ जग, रोमांचक PvP-घटक आणि इतर क्षण थेट वेळापत्रकाशी संबंधित नाहीत. हे ग्राफिक्सच्या विकासावर ब्रेक नाही, कारण खेळाडू एका एमएमओआरपीजीमध्ये राहत नाहीत. नवीन नेमबाज, कार सिम्युलेटर आणि RPGs अपरिहार्यपणे 3D गेमिंगसाठी बार वाढवणे सुरू ठेवतील. मोठ्या गेमिंग प्रेक्षकांना आकर्षित करण्याच्या उद्देशाने MMO गेम हळूहळू पण निश्चितपणे त्याच मार्गाने जात आहेत. तसे, तेच हिमवादळ आता नवीन MMOG वर काम करत असल्याची अफवा आहे आणि ते त्यांच्या नवीन प्रकल्पात 8 वर्ष जुने इंजिन वापरण्याची शक्यता नाही.

"NVIDIA वर्ल्ड": SLI आणि Crossfire तंत्रज्ञानांना गेम डेव्हलपरकडून किती प्रमाणात समर्थन आवश्यक आहे? वेगवेगळ्या खेळांसाठी या तंत्रज्ञानाच्या विविध परिणामकारकतेचे कारण काय आहे? गेम इंजिनच्या वैशिष्ट्यांसह किंवा गेम दृश्यांसह? SLI आणि Crossfire वापरून तुमच्या गेमला किती फायदा होतो?

M. Zh.:दोन व्हिडिओ कार्डसाठी इंजिन ऑप्टिमाइझ करणे ही एक अतिशय कठीण प्रक्रिया आहे. GPU मध्ये कॉम्पॅक्ट डेटा ट्रान्सफरचे काळजीपूर्वक आयोजन करणे आणि GPU आणि CPU मधील लोडच्या बाबतीत इंजिन संतुलित करणे आवश्यक आहे. जर अनुप्रयोग, एका कार्डवर काम करत असताना, आधीच CPU किंवा बसद्वारे डेटा ट्रान्सफरच्या विरूद्ध टिकून असेल, तर तुम्हाला SLI किंवा Crossfire बद्दल विसरावे लागेल. हे, खरं तर, पेअर केलेल्या प्रवेगकांवर काम करताना काही गेममधील फरक आहे. आमचा गेम अजूनही SLI वर सुमारे 10% ची कामगिरी वाढ देतो, परंतु आता आम्ही अशा मोडमध्ये कार्यप्रदर्शन सुधारण्यासाठी अनेक मॉड्यूल्स ऑप्टिमाइझ करत आहोत.

"NVIDIA वर्ल्ड": बर्याच काळापासून, पीसी मार्केटमधील संकट आणि कन्सोलमध्ये गेमचे हळूहळू संक्रमण याबद्दल बरेच काही सांगितले गेले आहे. मात्र हे अद्याप झालेले नाही. भविष्यात आपण याची अपेक्षा करू शकतो का? हे खरे आहे की मानक हार्डवेअरमुळे, कन्सोलसाठी प्रोग्रामिंग ग्राफिक्स खूप सोपे आहे? किंवा "हार्डवेअर" च्या संदर्भात सेट-टॉप बॉक्सचे शाश्वत अंतर एकसारखेपणा कमी करते?

M. Zh.:गेम कन्सोलमध्ये विकसकासाठी अनेक फायदे आहेत (एक प्लॅटफॉर्म, क्षमतांचा एक संच आणि परिणामी, सर्व खेळाडूंसाठी समान कामगिरी), परंतु पीसी गेम आणि विशेषतः ऑनलाइन गेमसाठी बाजारपेठ सतत वाढत आहे, त्यामुळे आम्ही कन्सोलमध्ये मोठ्या संक्रमणाची अपेक्षा करू शकत नाही. खर्च. हे विसरू नका की अधिक शक्तिशाली हार्डवेअरसह गेम कन्सोलचे प्रकाशन स्वतः कन्सोल उत्पादकांनी प्रतिबंधित केले आहे, सध्याच्या गेमच्या विक्रीद्वारे मागील पिढीच्या कन्सोलच्या उत्पादनाच्या खर्चाची परतफेड करण्याचा प्रयत्न करीत आहेत. म्हणून, प्लेस्टेशन 4 किंवा Xbox 720 च्या रिलीझपूर्वी, यास बराच वेळ लागेल आणि कन्सोलच्या सध्याच्या पिढीवर केंद्रित अनेक प्रकल्प असतील. काही प्रकरणांमध्ये, जसे की Nintendo Wii, उत्कृष्ट परिणाम प्राप्त करण्यासाठी प्रगत हार्डवेअर पूर्णपणे अनावश्यक आहे.

"NVIDIA वर्ल्ड": हे खरे आहे का की आता गेममध्ये मॉडेल्समधून सावल्या तयार करण्यासाठी प्रक्षेपण पद्धती आणि हलत्या वस्तू, मॉडेल्स आणि शस्त्रे यांच्यावरील सावल्यांसाठी डायनॅमिक किंवा स्टॅटिकली गणना केलेल्या व्हॉल्यूमसह सावलीच्या व्हॉल्यूमची पद्धत आणि मॉडेल्सच्या स्वत: वर हलवलेल्या भागांपासून जवळजवळ एक संयोजन आहे? सर्वत्र वापरले?

M. Zh.:सावलीच्या व्हॉल्यूमऐवजी, समान प्रोजेक्शन तंत्र बहुतेकदा बदलांसह वापरले जाते (कॅस्केडिंग शॅडो नकाशे, स्वत: ची सावलीसाठी स्वतंत्र सावली नकाशा इ.). शॅडो व्हॉल्यूम एक स्पष्ट सावली सीमा प्रदान करतात, परंतु उच्च फिलरेट, अतिरिक्त CPU गणना आणि मऊ सावलीच्या कडांची जटिल अंमलबजावणी यांचा त्रास होतो.

"NVIDIA वर्ल्ड": संपूर्ण दृश्यासाठी डायनॅमिक लाइटिंग तयार करण्याच्या दृष्टीने शेडिंगच्या विद्यमान पद्धतींचा दृष्टीकोन आहे का? म्हणजेच, व्हिडिओ प्रवेगकांच्या शक्तीमध्ये हळूहळू वाढ करून, ते डायनॅमिक्समध्ये सर्व प्रकाशयोजनांची गणना करण्यासाठी वापरले जाऊ शकतात? किंवा काही नवीन पद्धती लागू करणे आवश्यक असेल?

M. Zh.:प्रॉजेक्टिव्ह शॅडोजने आधुनिक गेममध्ये खूप मोठा पल्ला गाठला आहे आणि त्यांचे काही बदल दीर्घकाळासाठी वापरले जातील, SSAO सारख्या अतिरिक्त प्रभावांसह एकत्रित केले जातील. अर्थात, जर मोफत GPU रे ट्रेसिंग असेल, तर प्रोजेक्टिव्ह किंवा व्हॉल्यूमेट्रिक शॅडोजची कोणतीही शक्यता नाही.

"NVIDIA वर्ल्ड": गेममधील ऍप्लिकेशनच्या दृष्टिकोनातून तुम्ही प्रीकॉम्प्युटेड रेडियन्स ट्रान्सफर तंत्रज्ञानाला कसे रेट करता? तुम्ही ते भविष्यात वापरणार आहात का?

M. Zh.: PRT ला वेळखाऊ गणनेची आवश्यकता असते, ती अॅनिमेटेड मॉडेल्ससह एकत्र केली जाऊ शकत नाही आणि तत्त्वतः, समान वातावरणीय अडथळ्याच्या तुलनेत व्हिज्युअल अटींमध्ये मोठे फायदे देत नाही. उदाहरण म्हणून, तुम्ही Halo 3 घेऊ शकता, जे PRT वापरते, परंतु समान Gears of War किंवा Crysis च्या तुलनेत प्रकाशाच्या गुणवत्तेसाठी वेगळे नाही.

"NVIDIA वर्ल्ड": डायरेक्टएक्स 11 आणि फर्मी आर्किटेक्चर, डायरेक्टएक्स 11 प्रवेगक आणि गेमसाठी प्रतीक्षा करणे योग्य आहे किंवा ते API ची पास-थ्रू आवृत्ती आहे? डायरेक्ट एक्स 11 प्रवेगक चे तरुण मॉडेल, परिपूर्ण शक्ती, फिल रेट, जुन्या मॉडेलपेक्षा चांगले, परंतु DirectX 10 च्या समर्थनासह अधिक शक्तिशाली मॉडेल असू शकते? फर्मी आर्किटेक्चरच्या रिलीझसह, गेम ग्राफिक्समध्ये एक प्रकारची गुणात्मक झेप अपेक्षित आहे किंवा ती व्यापक वाढ, अधिक त्रिकोण, उच्च रिझोल्यूशनवर अधिक गती इत्यादी असेल? जर फर्मी तुमच्या गेमच्या विकासाच्या वेळी उपलब्ध असेल, तर ग्राफिक्सच्या बाबतीत गेम किती वेगळा असेल?

M. Zh.: DirectX ची अकरावी आवृत्ती GPU वर संगणनासाठी अधिक शक्यता प्रदान करते, तर DX10 च्या तुलनेत, ते 3D ग्राफिक्ससाठी कोणत्याही मूलभूत सुधारणा आणत नाही. फर्मीच्या बाबतीत, माझ्या मते सर्वात मनोरंजक वैशिष्ट्य म्हणजे 3D मॉडेल्ससाठी पूर्णपणे मार्गदर्शित टेसेलेशन.

मिखाईल झिवेट्स, वर्ल्ड ऑफ टँक्स प्रकल्पाचे तांत्रिक संचालक, Wargaming.net

गेम्सकॉम आणि इग्रोमिर येथे वर्ल्ड ऑफ वॉरशिप्सचे प्रीमियर बंद शो झाल्यानंतर, गेमचे अधिकृत लॉन्च अधिक जवळ येत आहे. क्लोज्ड अल्फा चाचणी सध्या जोरात सुरू आहे आणि आम्ही, लेस्टा स्टुडिओ, वॉरगेमिंगच्या सेंट पीटर्सबर्ग विभागाच्या विकासकांकडे अजूनही अनेक प्रश्न सोडवायचे आहेत. त्याच वेळी, आम्ही अनेक अडथळे मागे सोडण्यात यशस्वी झालो. खाली आम्ही आमच्या इंजिनच्या निर्यातदाराला जहाजांच्या गरजेनुसार कसे अनुकूल केले आणि सामग्री पडताळणी प्रक्रिया कशी तयार केली याबद्दल एक कथा आहे.

इंजिनची मानक वितरण

कोणत्याही इंजिनमध्ये 3D एडिटरमधून 3D मॉडेल्स त्याच्या स्वतःच्या डेटा फॉरमॅटमध्ये एक्सपोर्ट करण्यासाठी टूलकिट समाविष्ट असते. आमचे बिगवर्ल्ड, ज्याच्या आधारावर वर्ल्ड ऑफ टँक्स बनवले जाते, तो अपवाद नाही. हे 3D मॅक्स आणि माया कडून निर्यातीला समर्थन देते. जवळजवळ कोणत्याही गेम प्रकल्पासाठी मानक निर्यातदारांचे प्रकल्पाच्या वैशिष्ट्यांशी जुळवून घेणे आवश्यक आहे. आमच्या प्रकल्पात, जहाज मॉडेल विशिष्ट आहेत.

मायाच्या रुपांतरित निर्यातदाराच्या पहिल्या आवृत्तीने जहाजाच्या दृश्याची अधिक जटिल रचना ओळखण्यासाठी "पुन्हा प्रशिक्षित" केले. सध्याच्या C++ कोडमध्ये थोडासा Python कंट्रोल कोड जोडला गेला आहे, तसेच wxWidget वर UI सह माया साठी प्लगइन जोडले आहे. हे असे काहीतरी दिसत होते:


सानुकूलित निर्यातदाराचा UI

परिणामी साधनामध्ये अनेक तोटे होते.

निर्यात केवळ वापरकर्त्याच्या सहभागानेच केली जाऊ शकते, ज्याने निर्यातदाराला सीनमध्ये काय आहे ते "सांगावे". विविध प्रक्रिया स्वयंचलित करण्यासाठी या साधनाचा वापर करणे, उदाहरणार्थ, वितरण किट तयार करण्याच्या टप्प्यावर सामग्रीची स्वयंचलित पडताळणी करणे प्रश्नाबाहेर होते.

निर्यातदाराने स्पष्ट पॅरामीटर्सपासून दूर असलेल्या वापरकर्त्याच्या ज्ञानाची मागणी केली, हळू हळू काम केले, व्यावहारिकदृष्ट्या दृश्य सत्यापनास समर्थन दिले नाही आणि समर्थनासाठी मोठ्या प्रमाणात संसाधने देखील आवश्यक आहेत.

भविष्यातील कार्यक्षमतेच्या विस्तारासाठी आर्किटेक्चर हे एक मोठे आव्हान होते. निर्यात हे खरेतर एक अणु ऑपरेशन (स्पॅगेटी फंक्शन्सचा एक संच) होते जे एका स्ट्रक्चरमधून डेटा (लोड केलेले माया सीन) दुसऱ्या स्ट्रक्चरमध्ये (बिगवर्ल्ड) थेट भौतिक फाइल्समध्ये अनुवादित करते. जेव्हा सीरियलायझर्स आणि बिझनेस लॉजिक "मोनोलिथमध्ये" लागू केले जातात आणि फक्त कोणतेही डेटा मॉडेल नसते, तेव्हा डेटा प्रोसेसिंग (प्री/पोस्ट-प्रोसेसिंग), तसेच इतर टूल्समध्ये पुन्हा वापर (कोड रियूज) सीरियलायझर्स आणि डेटा मॉडेल जोडणे अशक्य आहे. जे त्यांच्या स्वतःच्या व्यवसायाची अंमलबजावणी करतात - तर्क. अधिक जटिल सामग्री उत्पादन प्रक्रिया तयार करणे अशक्य होते.

कालांतराने, विद्यमान कोडमध्ये नवीन कार्यक्षमता जोडणे जवळजवळ अशक्य झाले आहे. निर्यातदाराला नवीन आर्किटेक्चरसह "स्क्रॅचमधून" पुन्हा लिहिण्याचा निर्णय घेण्यात आला.

कठोर दैनंदिन जीवन

आमच्या प्रकल्पाच्या पातळीने गुणवत्ता, जटिलता आणि सामग्रीची आवश्यकता वाढवली आहे. गेल्या काही वर्षांत आमचा स्टुडिओ खूप वाढला आहे. आम्हाला आता सामग्रीच्या उत्पादनाशी संबंधित कार्यांसाठी पुरेशा प्रमाणात संसाधने वाटप करण्याची संधी आहे. आर्किटेक्चरच्या विकासाची मोठी पार्श्वभूमी असलेले व्यावसायिक, C++ / C# मधील तंत्रज्ञान आमच्याकडे आले. त्याच वेळी, निर्यातदारांच्या विकसकांसाठी पायथन आणि माया API वापरण्याचा हा पहिला अनुभव होता. यामुळे अतिरिक्त धोके निर्माण झाले ज्यांचा विचार करणे आवश्यक आहे.

आम्ही दोन किंवा तीन मनुष्य-महिन्यांमध्ये निर्यातदाराच्या रिफॅक्टरिंगचा अंदाज लावला. गेम डेव्हलपमेंटमध्ये कोणीही आशावाद केल्याशिवाय करू शकत नाही.

आम्ही खालील धोके ओळखले:

औपचारिक आवश्यकतांची कमतरता;
Python मध्ये प्राविण्य पातळी;
माया API ची जटिलता;
प्रिमिटिव्सवर प्रक्रिया करण्यासाठी अल्गोरिदमचे रिफॅक्टरिंग.

वास्तविक वेळ बहुतेक अनौपचारिक स्त्रोतांकडून आवश्यकता गोळा करण्यात घालवला गेला जसे की विकसक व्यवस्थापक, जुने-टाइमर, टॉर्शन फील्ड आणि विद्यमान निर्यातक कोड. ज्ञानाच्या या गाळ्यांचे औपचारिकीकरण केले गेले आहे आणि कॉन्फ्ल्युअन्समधील आवश्यकता, तपशील आणि UML आकृत्यांच्या स्वरूपात लिहिले आहे.

पहिल्या प्रोटोटाइपने नेमस्पेसेस आणि पायथन मॉड्यूल्स (__init__.py) च्या संकल्पना वापरण्याची आवश्यकता दर्शविली. तसेच, एक यंत्रणा तयार केली गेली आहे जी तुम्हाला C++ लायब्ररी (.pyd) मधील कार्यक्षमता "पारदर्शकपणे" वापरण्याची परवानगी देते.

माया API ची गुंतागुंत आणि गोंधळ याबद्दल स्वतंत्र पुस्तक लिहिता येईल. प्रोटोटाइपिंग, 3D कलाकार आणि इंजिन डेव्हलपर्स (रेंडरिंग) यांच्याशी सल्लामसलत आवश्यक असलेल्या कोणत्याही कार्यक्षमतेसाठी.

मानक निर्यातदाराकडे मोठ्या संख्येने अल्गोरिदमची स्वतःची अंमलबजावणी होती, उदाहरणार्थ, बहुभुज त्रिकोण, नेस्टेड नोड्सच्या ट्रान्सफॉर्मेशन मॅट्रिक्सची गणना इ. आम्ही त्यांना माया API वापरण्याच्या बाजूने सोडले, ज्यामुळे निर्यातदाराच्या कामगिरीत मोठ्या प्रमाणात सुधारणा झाली.

मर्फीच्या कायद्यांमध्ये हा नियम जोडण्याची वेळ आली आहे की तुम्ही संकल्पित केलेला कोणताही प्रकल्प नियोजित प्रकल्पापासून "x3" पेक्षा जास्त वेळेत लागू केला जाईल, जर तुम्ही तो सोडला नाही तर.

आम्ही केलेल्या मेहनतीचा परिणाम होता. सरतेशेवटी, मॉडेल्सच्या निर्यातीचे प्रभारी आमचे मुख्य कलाकार, काही महिन्यांच्या ऑपरेशननंतर, आमचे निर्यातक "जवळजवळ परिपूर्ण" असल्याचे आढळले.

चला हुड अंतर्गत एक नजर टाकूया

आमच्या स्टुडिओमध्ये, पायथनमधील स्क्रिप्ट सक्रियपणे वापरल्या जातात. त्यावर संपूर्ण निर्यातदार अंमलबजावणी करण्याचा प्रयत्न केला. साहजिकच, पायथन मोठ्या बायनरी डेटावर प्रक्रिया करण्यासाठी योग्य नाही जसे की व्हर्टेक्स बफर, इंडेक्स बफर इ. अशा कंटेनरचे डेटा मॉडेल आणि सीरियलायझर्स C++ मध्ये लायब्ररी (.pyd) म्हणून लागू केले गेले होते, जे नैसर्गिकरित्या "फिट" होते. Python मध्ये डेटा मॉडेल. सर्व व्यावसायिक तर्क पायथनमध्ये लागू केले गेले.

निर्यातदार फ्रेमवर्क केवळ मायाकडून "मॅन्युअल" निर्यात करण्याच्या कार्यासाठीच नव्हे तर कोणत्याही कार्यासाठी देखील वापरण्याची योजना होती जिथे त्याची कार्यक्षमता पुन्हा वापरली जाऊ शकते, उदाहरणार्थ, सामग्री सत्यापन स्वयंचलित करण्यासाठी. आम्ही विकसित केलेल्या कोणत्याही टूलकिटसाठी, आम्हाला Python API, कमांड लाइन आणि UI टूल्स आवश्यक आहेत.

आर्किटेक्चर

निर्यातक फ्रेमवर्क आर्किटेक्चर मॉड्यूलर, स्तरित आहे. भौतिक आणि तार्किक स्तर तसेच डोमेन स्तर आहेत. प्रत्येक लेयरमध्ये स्वतंत्र मॉड्यूल असतात: डेटा मॉडेल, बिझनेस लॉजिक, सीरियलायझर्स, तसेच कन्व्हर्टर जे एका लेयरच्या डेटा मॉडेलला दुसऱ्या लेयरच्या डेटा मॉडेलमध्ये रूपांतरित करू शकतात. भौतिक आणि तार्किक स्तर प्रत्यक्षात ORM आर्किटेक्चरचे अॅनालॉग लागू करतात.

डोमेन लेयर आर्किटेक्चर हे व्यवसाय तर्कासह डेटा मॉडेलच्या सोयीस्कर प्रक्रियेसाठी डिझाइन केलेले आहे. हे पूर्णपणे विलग आहे आणि ते भौतिक संचयनात कसे अनुक्रमित केले जाईल याबद्दल कोणतीही गृहितक नाही.


निर्यातदाराचे स्तरित आर्किटेक्चर

निर्यात प्रक्रिया

स्तरित आर्किटेक्चर निर्यात प्रक्रियेच्या काही वैशिष्ट्यांचा परिचय देते. आम्ही प्रत्यक्षात वेगवेगळ्या स्त्रोतांकडून दोन (किंवा अधिक) मॉडेल्स (माया आणि बिगवर्ल्ड इंजिन) डीसीरियलाइज करत आहोत. त्यानंतर, हे मॉडेल एका नवीनमध्ये विलीन केले जातात. नवीन मॉडेल नंतर बिगवर्ल्ड-इंजिन फॉरमॅटमध्ये अनुक्रमित केले जाते.


निर्यात प्रक्रिया

सामग्री उत्पादन प्रक्रियेची लवचिकता

लागू केलेले आर्किटेक्चर जटिल सामग्री उत्पादन प्रक्रिया तयार करणे सोपे करते. उदाहरणार्थ, आमच्या प्राथमिक जहाज मॉडेलमध्ये तांत्रिकदृष्ट्या तीन वेगवेगळ्या माया दृश्यांचा समावेश आहे, ज्यापैकी प्रत्येक एकाच वेळी वेगवेगळ्या विभागांनी विकसित केला आहे:

पहिल्या दृश्यात व्हिज्युअल मॉडेल आणि टक्कर मॉडेल आहे.
दुसऱ्या दृश्यात बॅलिस्टिक मॉडेल आहे.
तिसऱ्यामध्ये इफेक्ट पोर्ट आहेत.

या व्यतिरिक्त, इंजिन टूलबॉक्स (संपादक) व्युत्पन्न इंजिन फॉरमॅट मॉडेलमध्ये (चौथा दृश्य) स्वतःचा डेटा जोडतो (संपादित करतो).

निर्यातदार सर्व चार दृश्यांना एकाच परिणामी जहाज मॉडेलमध्ये एकत्रित करण्याचे क्षुल्लक कार्य सहजपणे सोडवतो.

सामग्री सत्यापन

सामग्री सत्यापन प्रणाली आम्हाला प्रत्येक स्तर (स्रोत) मध्ये स्वतंत्रपणे आणि परिणामी सामग्रीमध्ये सामग्री त्रुटी शोधण्याची परवानगी देते. सत्यापनकर्त्यांची संख्या आता अनेक डझनपर्यंत पोहोचली आहे. स्वयंचलित सामग्री सत्यापन वितरण बिल्ड प्रक्रियेमध्ये अंतर्भूत आहे, जे आपल्याला शक्य तितके मानवी घटक दूर करण्यास आणि सामग्रीच्या अखंडतेची आणि तांत्रिक शुद्धतेची हमी देते.


मायामधील जहाजाचे मॉडेल सत्यापित करण्याचे उदाहरण

सामग्री बजेट आणि बाथरूममध्ये एक बदक

सामग्री सत्यापन प्रक्रियेचा एक महत्त्वाचा भाग म्हणजे बजेट तपासणे, उदाहरणार्थ, बहुभुज अंदाजपत्रक सत्यापित करणे. खालील आकृती, विशेषतः, प्रत्येक लोडसाठी व्हिज्युअल मॉडेलसाठी त्रिकोणांच्या संख्येबद्दल माहिती दर्शवते:


माया UI प्लगइन

अशा पडताळणीच्या गरजेचे स्पष्ट उदाहरण म्हणजे मला पूर्वीच्या एका प्रकल्पाबद्दल सहकाऱ्यांनी सांगितलेली गोष्ट. नकाशावर नाश न होणारी घरे बांधलेला भूखंड होता. कॅमेऱ्याची नजर या भागाकडे वळताच, FPS ताबडतोब जंगलात पडला. समस्येचा अभ्यास केल्यावर, असे दिसून आले की एका घराच्या आत एक बाथटब होता ज्यामध्ये एक लहान "प्लास्टिक" बदक पोहत होते. हे सर्व कलाकारांच्या मजेदार खोड्यासारखे दिसले असते, जर बदक मॉडेलमध्ये सुमारे दशलक्ष बहुभुज आहेत.

सराव मध्ये, अर्थसंकल्पीय मूल्याचे पालन करणे फार कठीण आहे. अनेक मॉडेल वस्तुनिष्ठपणे अपवाद आहेत. श्रेणीच्या स्वरूपात बजेट मूल्य सेट करणे देखील समस्या सोडवत नाही, कारण कालांतराने, बहुभुज मॉडेल्स श्रेणीच्या वरच्या मूल्याकडे झुकतात. आमच्या बाबतीत, आम्ही अशा मॉडेल्सचे वैयक्तिक बजेट बदलण्याची योजना आखत आहोत जे या प्रकारच्या मॉडेलच्या मानक बजेटशी सुसंगत नाहीत.

सामग्री प्रक्रिया

निर्यातीच्या प्रत्येक टप्प्यावर, प्रक्रिया (पूर्व / पोस्ट-प्रोसेसिंग) आवश्यक आहे. उदाहरणार्थ, माया लेयरच्या लॉजिकल डेटा मॉडेलला हवाई संरक्षण तोफांच्या डोमेन डेटा मॉडेलमध्ये रूपांतरित करण्यापूर्वी, तोफेच्या सांगाड्याचे Y-अक्षात 45 अंशांनी प्राथमिक फिरणे आणि सांगाडा काढणे आवश्यक आहे. आमच्या आर्किटेक्चरमुळे निर्यातीच्या कोणत्याही टप्प्यावर विविध प्रक्रिया पारदर्शकपणे एकत्रित करणे शक्य झाले.




पूर्व-प्रक्रिया करण्यापूर्वी आणि नंतर मॉडेलचे उदाहरण

X64 समर्थन

अगदी अलीकडे, आमच्या कलाकारांनी 32-बिट माया 2012 वरून 64-बिट माया 2014 वर मोठ्या प्रमाणावर स्विच केले आहे. निर्यातक जवळजवळ संपूर्णपणे पायथॉनमध्ये लिहिलेले असल्याने, आम्हाला x64 समर्थनासह व्यावहारिकदृष्ट्या कोणतीही समस्या नाही. फक्त लायब्ररी (.pyd), C++ मध्ये अंमलात आणली गेली, थोडा "shamanism" आवश्यक आहे.

आता एक्सपोर्टरचा वापर x32 आणि x64 या दोन्ही प्रक्रियांमध्ये सहज करता येतो, कारण तो स्वतः C++ लायब्ररी (.pyd) ची आवश्यक असेंब्ली परिभाषित करतो आणि लोड करतो.

कार्ड पडताळणी

निर्यातदाराचे आर्किटेक्चर विकसित करताना, इतर कोणती साधने आणि ऑटोमेशन्सचा पुनर्वापर करणे शक्य होईल याबद्दल आम्ही आधीच अंदाज लावू शकत नाही. कार्ड पडताळणी ऑटोमेशन हे "योग्य" निर्यातक आर्किटेक्चरने दुसर्‍या साधनामध्ये कसे मार्ग काढला याचे उदाहरण आहे.

नकाशांचे सत्यापन नकाशाच्या अवलंबनांचा आलेख तयार करते आणि त्यावर स्थित इतर वस्तूंवरून सत्यापित करते. विशेषतः, नकाशा लँडस्केप (दगड, हिमखंड), इमारती (घरे, हँगर्स, मरीना), उपकरणे (विमान, नौका) इ.चे व्हिज्युअल मॉडेल वापरते.

कार्ड व्हेरिफायरचे वैशिष्ठ्य म्हणजे ते एक्सपोर्टर फ्रेमवर्क वापरून केवळ या व्हिज्युअल मॉडेल्सच्या फायलींचीच नाही तर स्वतः मॉडेल्सचीही पडताळणी करू शकते. यामुळे मानवी घटक दूर झाला, जेव्हा नकाशा विकास विभाग (LA) ला 3D मॉडेल डेव्हलपमेंट विभागाचा (3D आर्ट) शब्द घ्यावा लागतो की तांत्रिकदृष्ट्या योग्य मॉडेल वापरले जात आहेत.

वितरण तयार करणे

निर्यातदार फ्रेमवर्कला वितरणासाठी सामग्री पॅक तयार करण्याच्या प्रक्रियेत त्याचा वापर आढळला. वितरणामध्ये असे मॉडेल समाविष्ट नसावेत:

आता वापरले नाही;
अद्याप विकासाधीन आहेत;
उत्पादनाच्या पुढील आवृत्त्यांसाठी हेतू.

गेम ऑब्जेक्ट्सच्या (रूट गेम ऑब्जेक्ट्स) मूलभूत सूचीच्या आधारावर, अवलंबित्व आलेख तयार करणे आवश्यक आहे, त्यानुसार पूर्ण यादीआवश्यक सामग्री. एक्स्पोर्टर फ्रेमवर्क वापरून मॉडेलचे डीसीरियलाइझ करणे आणि इतर मॉडेल्सची आवश्यकता आहे ते "शोधणे" (सामग्री संदर्भ) यापेक्षा काहीही सोपे नाही.

परिणाम

आमच्या निर्यातदाराच्या विकासाच्या इतिहासाने हे दाखवले आहे की ते एका साध्या अत्यंत विशेष साधनातून शक्तिशाली प्रणालीमध्ये कसे विकसित झाले आहे जी त्याची तात्काळ कार्ये सोडवते आणि इतर सामग्री उत्पादन प्रक्रियांमध्ये देखील त्याचा उपयोग आढळतो. त्याचा यशस्वी विकास आणि पुनर्वापर मॉड्यूलर आर्किटेक्चरवर आधारित आहे जे त्याचे वैयक्तिक "क्यूब्स" इतर सिस्टम तयार करण्यासाठी वापरण्याची परवानगी देते.

नजीकच्या भविष्यात, निर्यातदाराची BigWorld Engine फाइल स्वरूपातील बदलाशी संबंधित आणखी एक चाचणी असेल. आम्‍हाला खात्री आहे की अंतर्निहित आर्किटेक्चरला कोणतीही अडचण येणार नाही आणि विद्यमान आणि नवीन फाईल फॉरमॅटसह कार्यास समर्थन देऊ शकेल.

  • शैली अभिमुखता:कोणत्याही शैलीचे 3D MMO;
  • प्लॅटफॉर्म: PC, PS3, Xbox 360, iOS (iPad), वेब;
  • प्रोग्रामिंग भाषा:सी ++, पायथन;
  • परवाना:इंडी आणि व्यावसायिक;
  • उघडा स्रोत: वाढीव शुल्कासाठी प्रदान केलेले किंवा प्रदान केलेले नाही;
  • मल्टीप्लेअर:क्लायंट-सर्व्हर;
  • फायदे:शक्तिशाली, सर्वांसाठी समर्थन आधुनिक तंत्रज्ञान, ऑप्टिमाइझ केलेले, iOS समर्थन, अशा वैशिष्ट्यांसाठी स्वस्त;
  • तोटे:विनामूल्य प्रदान केले जात नाही;
  • इंजिन विकासक: BigWorld Tech, Inc.

    BigWorld Engine हे MMO गेम्स तयार करण्यासाठी सर्वात प्रगत 3D इंजिन आहे. Wargaming.net वरील "वर्ल्ड ऑफ टँक्स", "पीलम ऑफ द टायटन्स" आणि इतर जागतिक गेम डेव्हलपमेंट कंपन्यांचे इतर गेम त्यावर बनवले जातात. या इंजिनवर 15 हून अधिक MMO गेम्स बनवण्यात आले आहेत. हे बिगवर्ल्ड टेक्नॉलॉजीने विकसित केले आहे.

    ऑप्टिमाइझ केलेले इंजिन तुम्हाला आकर्षक ग्राफिक्ससह कमी मागणी असलेले गेम तयार करण्यास अनुमती देते. इंजिन तुम्हाला iOS वर गेम पोर्ट करण्याची परवानगी देते. हे C++ प्रोग्रामिंग भाषेत लिहिलेले आहे, त्यातील गेम लॉजिकची अंमलबजावणी पायथन या सोयीस्कर स्क्रिप्टिंग भाषेत केली आहे. शक्तिशाली साधने आणि क्लायंट-सर्व्हर इंजिन आहेत. ध्वनीसाठी, FMOD लायब्ररी समर्थित आहे आणि इतर कोणतीही लायब्ररी प्लग-इन प्रणालीद्वारे जोडलेली आहे. XML आणि MySQL डेटाबेससह कार्य करते. टूलबॉक्समध्ये शक्तिशाली वर्ल्ड एडिटर, मॉडेल एडिटर आणि पार्टिकल एडिटर समाविष्ट आहेत.

    ते किमतीत अतिशय परवडणारे आहे. बिल्ड बिगवर्ल्ड: इंडी एडिशनची किंमत फक्त $२९९; बिगवर्ल्ड: इंडी सोर्स एडिशन - $2,999; BigWorld: व्यावसायिक संस्करण - वैयक्तिकरित्या वाटाघाटी.

    हे प्रगत इंजिन त्याच्या प्रकारच्या इतर जागतिक इंजिनांच्या क्षमतेमध्ये कमी दर्जाचे नाही. इंजिन रशियन, कोरियन, अमेरिकन आणि जपानी भाषांमध्ये उपलब्ध आहे. दस्तऐवजीकरण आहे, ते ब्राउझरवर कार्य करू शकते. सर्वसाधारणपणे, तुमच्याकडे ज्ञान आणि परिश्रम असल्यास तुम्ही कामावर उतरू शकता.

    यापुढे तृतीय-पक्ष परवान्यासाठी उपलब्ध नाही वॉरगेमिंगने त्याचे इंजिन वितरण थांबविण्याचा निर्णय घेतला.

    अधिकृत साइट: http://www.bigworldtech.com





    BigWorld टेक्नॉलॉजी टूल चेन एक संपूर्ण, एंड-टू-एंड MMOG सामग्री निर्मिती प्रणाली प्रदान करते जी तुमच्या गेमची गुणवत्ता आणि समयसूचकता वाढवेल. सर्व साधने मोठ्या सांघिक वातावरणात खेळ मालमत्तेच्या सहकारी उत्पादनासाठी, संसाधनांचा प्रभावी वापर आणि गुळगुळीत सामग्री पाइपलाइन सुनिश्चित करण्यासाठी डिझाइन केलेली आहेत.

  • विशिष्ट व्हिडिओ शोधण्यात समस्या येत आहे? मग हे पृष्ठ तुम्हाला आवश्यक असलेला व्हिडिओ शोधण्यात मदत करेल. आम्ही तुमच्या विनंत्यांवर सहज प्रक्रिया करू आणि तुम्हाला सर्व परिणाम देऊ. तुम्हाला कशात स्वारस्य आहे आणि तुम्ही काय शोधत आहात हे महत्त्वाचे नाही, आम्ही आवश्यक व्हिडिओ सहजपणे शोधू शकतो, मग तो कोणत्या दिशेने असला तरीही.


    जर तुम्हाला अद्ययावत बातम्यांमध्ये स्वारस्य असेल, तर आम्ही तुम्हाला या क्षणी सर्वात संबंधित बातम्या देण्यासाठी तयार आहोत. फुटबॉल सामन्यांचे निकाल, राजकीय घटना किंवा जागतिक, जागतिक समस्या. जर तुम्ही आमचा अद्भूत शोध वापरलात तर तुम्हाला सर्व घटनांबद्दल नेहमीच माहिती असेल. आम्ही प्रदान करत असलेले व्हिडिओ आणि त्यांची गुणवत्ता याबद्दल जागरूकता आमच्यावर अवलंबून नाही, तर ज्यांनी ते इंटरनेटवर अपलोड केले त्यांच्यावर अवलंबून आहे. तुम्ही जे शोधत आहात आणि मागणी करत आहात ते आम्ही तुम्हाला पुरवतो. कोणत्याही परिस्थितीत, आमचा शोध वापरुन, तुम्हाला जगातील सर्व बातम्या कळतील.


    तथापि, जागतिक अर्थव्यवस्था हा देखील एक मनोरंजक विषय आहे जो बर्याच लोकांना काळजी करतो. विविध देशांच्या आर्थिक स्थितीवर बरेच काही अवलंबून असते. उदाहरणार्थ, कोणतीही खाद्य उत्पादने किंवा उपकरणे आयात आणि निर्यात. राहणीमानाचा समान दर्जा थेट देशाच्या स्थितीवर, तसेच पगार इत्यादींवर अवलंबून असतो. अशी माहिती कशी उपयोगी पडू शकते? हे तुम्हाला केवळ परिणामांशी जुळवून घेण्यास मदत करेल, परंतु एका किंवा दुसर्‍या देशात प्रवास करण्यापासून तुम्हाला चेतावणी देऊ शकेल. जर तुम्ही कुख्यात प्रवासी असाल तर आमचा शोध नक्की वापरा.


    आजकाल राजकीय कारस्थान समजणे आणि परिस्थिती समजून घेणे खूप कठीण आहे, आपल्याला बर्याच भिन्न माहिती शोधणे आणि त्यांची तुलना करणे आवश्यक आहे. म्हणून, आम्ही आपल्यासाठी राज्य ड्यूमा डेप्युटीजची विविध भाषणे आणि मागील सर्व वर्षांची त्यांची विधाने सहजपणे शोधू शकतो. राजकारण आणि राजकीय क्षेत्रातील परिस्थिती तुम्हाला सहज समजू शकते. वेगवेगळ्या देशांचे राजकारण तुमच्यासाठी स्पष्ट होईल आणि तुम्ही येणाऱ्या बदलांसाठी सहज तयार होऊ शकता किंवा आमच्या वास्तवाशी जुळवून घेऊ शकता.


    तथापि, आपण येथे केवळ जगभरातील विविध बातम्या शोधू शकत नाही. संध्याकाळी बिअर किंवा पॉपकॉर्नच्या बाटलीसह पाहणे आनंददायी ठरेल असा चित्रपट देखील तुम्ही सहजपणे शोधू शकता. आमच्या शोध डेटाबेसमध्ये प्रत्येक चव आणि रंगासाठी चित्रपट आहेत, आपण सहजपणे आपल्यासाठी एक मनोरंजक चित्र शोधू शकता. आम्‍ही तुमच्‍यासाठी अगदी जुनी आणि शोधण्‍यासाठी सर्वात कठीण कामे, तसेच सर्वांना ज्ञात असलेली अभिजात कलाकृती शोधू शकतो - उदाहरणार्थ, Star Wars: The Empire Strikes Back.


    जर तुम्हाला थोडा आराम करायचा असेल आणि मजेदार व्हिडिओंच्या शोधात असाल, तर आम्ही येथे तुमची तहान देखील शमवू शकतो. आम्‍ही तुमच्‍यासाठी संपूर्ण ग्रहातून लाखो भिन्न मनोरंजक व्हिडिओ शोधू. लहान विनोद तुम्हाला सहज आनंदित करतील आणि दिवसभर तुमचा मनोरंजन करतील. सोयीस्कर शोध प्रणाली वापरून, तुम्हाला नक्की काय हसायला येईल ते शोधू शकता.


    तुम्ही आधीच समजून घेतल्याप्रमाणे, आम्ही अथकपणे काम करतो जेणेकरून तुम्हाला नेहमी जे हवे आहे ते मिळेल. आम्ही विशेषत: तुमच्यासाठी हा अद्भुत शोध तयार केला आहे, जेणेकरून तुम्हाला आवश्यक माहिती व्हिडिओच्या स्वरूपात मिळेल आणि ती सोयीस्कर प्लेअरवर पाहता येईल.