2009-03-02 10 views
16

मैं कुछ भौतिकी सिमुलेशन करना चाहता हूं और मुझे जावा में तेजी से प्रतिपादन की आवश्यकता है।Java2d के लिए कुछ तेज़ विकल्प क्या हैं?

मैंने अतीत में Java2d के साथ प्रदर्शन समस्याओं में भाग लिया है, तो तेज़ विकल्प क्या हैं? क्या JOGL Java2d से काफी तेज़ है?

+0

http://stackoverflow.com/questions/148478/java-2d-drawing-optimal-performance और http://stackoverflow.com/questions/196890/java2d-performance-issues सहायक हो सकते हैं। –

+0

वास्तव में, मुझे लगता है कि संपादन से पहले, यह प्रश्न एक डुप्लिकेट हो सकता है। मुझे नहीं लगता कि यह अब है, हालांकि। –

+0

क्या आपने जेडीके 6 के नवीनतम अपडेट की कोशिश की है? 2 डी के लिए JOGL का उपयोग करने के लिए – Eddie

उत्तर

11

जावा 2 डी के साथ मेरा अनुभव यह है कि यदि आप नियमों का पालन करते हैं तो यह बहुत तेज़ हो सकता है। मेरे पास एक ऐसा एप्लिकेशन था जो कुछ साधारण चीजों को बदलकर 90% सीपीयू से 5% से कम CPU तक चला गया था। उदाहरण के लिए, बड़े पारदर्शी पीएनजी का उपयोग करना कोई नहीं है।

जावा-Gaming.org मंचों का एक बहुत अच्छा संसाधन है: सूर्य 2 डी विशेषज्ञों सहित बहुत से लोग, वहां लटकते हैं और 2 डी ड्राइंग के लिए प्रदर्शन समस्याओं के लिए कई उदाहरण और समाधान प्रदान करते हैं।

देखें: http://www.javagaming.org/ और फिर विषय "प्रदर्शन ट्यूनिंग"।

4

मुझे नहीं पता - अतीत में मैंने हाँ कहा होगा - विशेष रूप से यदि आप प्रत्येक बार स्क्रीन प्रदर्शित होने पर एपीआई के माध्यम से बहुत सी कॉल करने के बजाय प्रदर्शन सूचियों का उपयोग करते हैं। लेकिन 1.6 जेवीएम में से 10 अपडेट किए गए त्वरित जावा 2 डी ग्राफिक्स को अपडेट करें, इसलिए अब इसका लाभ हो सकता है। वास्तव में सुनिश्चित करने का एकमात्र तरीका यह है कि दोनों में सामान्य दृश्य प्रस्तुत करने और इसे मापने का प्रयास करना है।

5

जॉयएल जावा 2 डी से बहुत तेज़ हो सकता है भले ही आप इसे 2 डी ग्राफिक्स करने के लिए उपयोग करते हैं: क्लेवर्थ ने उल्लेख किया है, यह आम तौर पर आपको क्या करने की आवश्यकता पर निर्भर करता है।

मेरा अनुमान है कि 2 डी भौतिक सिमुलेशन के लिए, जहां आपके पास (बनावट या गैर-बनावट) ऑब्जेक्ट्स घूर्णन और 2 डिग्री स्वतंत्रता के साथ अनुवाद कर रही हैं, JOGL को सर्वश्रेष्ठ प्रदर्शन प्रदान करना चाहिए और आपको आसानी से ज़ूम करने योग्य इंटरफ़ेस प्रदान करने की अनुमति भी देनी चाहिए। ओपनजीएल के लिए 2 डी ग्राफिक्स (सी, लेकिन आसानी से जॉगएल के लिए अनुकूलित) के लिए tutorial है।

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

+1

+1। मैं यह हर समय काम पर करता हूं और यह वास्तव में पानी से बाहर जावा 2 डी को उड़ाता है, खासकर घने डिस्प्ले और अल्फा ब्लेंडिंग के लिए। उन सभी के शीर्ष पर आपको जीएलएसएल शेडर्स मिलते हैं जो आश्चर्यजनक रूप से शक्तिशाली हैं। – basszero

2

Slick पर भी देखें, जो LWJGL पर आधारित है और जावा 2 डी के समान कुछ तरीकों से है। यह ओपनजीएल का उपयोग करता है और इस प्रकार यह बहुत तेज़ है।

संबंधित मुद्दे