2011-04-10 22 views
35

मैं मूल रूप से एक पूर्ण स्क्रीन विंडो बनाना चाहता हूं और विभिन्न रंगों और आकारों (और स्क्रीन को अपडेट भी) में टेक्स्ट खींचना चाहता हूं। मैंने पाइथन में इसके लिए pygame का उपयोग किया है और मैं एक समान पुस्तकालय की तलाश में हूं (उपयोग करने के लिए काफी आसान होना चाहिए)।2 डी ड्राइंग के लिए हास्केल लाइब्रेरी

+1 अगर यह इनपुट भी संभालती है ...

+0

सभी उत्तरों के लिए धन्यवाद: मैं हैकगेम और एसडीएल दोनों को आजमाने की कोशिश कर रहा हूं। – akosch

+0

http://github.com/snkkid/LazyFooHaskell, http://web.animal-machine.com:8080/blog/2010/04/getting-started-with-sdl-in-haskell –

+0

तो, लगभग 2 के बाद सालों, आपने lib के रूप में क्या चुना, क्या आपने कुछ भी उपयोगी किया, 2 डी हास्केल के साथ सामान्य अनुभव क्या था ...? – CoR

उत्तर

18

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

संपादित करें: थोड़ा और शोध के बाद, आप haskgame का उपयोग करके अच्छा प्रदर्शन कर सकते हैं। मैंने इसे कभी भी इस्तेमाल नहीं किया है, लेकिन ऐसा लगता है कि इसमें कुछ फ़ंक्शन here हैं जो ठीक वही करते हैं जो आप खोज रहे हैं।

16

मैं अच्छे परिणाम प्राप्त करने के लिए एक आसान तरीका के रूप में नए Gloss library की सिफारिश करता हूं।

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

hello world

enter image description here

और एक अच्छा उदाहरण वैकल्पिक रूप से flocking simulators

निर्माण, अगर यह वैक्टर और पाठ आप हेरफेर करना चाहते है:

वहाँ भी nice examples हैं, जैसे , कैरो के शीर्ष पर diagrams पैकेज बहुत अच्छे परिणाम प्राप्त कर सकता है।

+7

चमक आसान है, लेकिन यह शिक्षा के इरादे से परे किसी भी चीज़ के लिए अपूर्ण है। मैंने ग्लोस में एक साधारण ड्राइंग एप्लिकेशन बनाया और पाया कि इसकी कुछ बग्स (टूटी हुई टेक्स्ट लोकेशन ट्रांसलेशन, टूटी विंडो कम से कम एक्समोनाड में बदलती है, जीनोम पर्यावरण में प्रतिपादन करते समय 100% सीपीयू का उपयोग, कुछ नाम देने के लिए) इसके साथ विचलित छवियों को प्रदर्शित करने और अनुवाद करने में असमर्थता (उदा: पीएनजी, जेपीजी)। यह आखिरी व्यक्ति आंशिक रूप से संबोधित किया गया है, अब यह बिटमैप्स प्रदर्शित कर सकता है। संक्षेप में: मैंने ग्लोस को वास्तव में साफ और उपयोग करने में आसान पाया, लेकिन इसे लाइब्रेरी में कुछ दिनों के सुधार और सुधार की आवश्यकता है। –

+0

क्या यह वास्तव में कुछ आसान है? मैं इसे एक साधारण roguelike कल्पना करने के लिए उपयोग करना चाहता हूँ। सबसे महत्वपूर्ण बात यह है कि बेग्लस बिटमैप ड्राइंग (मैं टाइल्स का उपयोग करने जा रहा हूं)। – Nek

3

आप क्यूटी का उपयोग कर सकते हैं। क्रॉस प्लेटफार्म Nikki And The Robots का उपयोग कर रहा है। आप उनके स्रोत कोड देख सकते हैं और देख सकते हैं कि वे क्या कर रहे हैं।

64

व्यक्तिगत पुस्तकालयों को चुनने के बजाय, मुझे Graphics section on Hackage में सूचीबद्ध सभी के बारे में त्वरित अवलोकन पर जाना होगा।

बुनियादी व्यवस्थाएं:

ओपन हास्केल मंच

  • कई छोटे 2 और 3 डी खेल के लिए प्रयुक्त की

    जीटीके

    cabal install cairo 
    
    • उच्च गुणवत्ता दो-डी ग्राफिक्स/वेक्टर ग्राफिक्स के लिए प्रयुक्त।
    • On Hackage
    • उदाहरण: diagrams, 4blocks, gameclock

    QTHaskell

    • अपेक्षाकृत कम इस्तेमाल, लेकिन जब यह प्रयोग किया जाता है, यह विशेष रूप से प्रयोग किया जाता है।
    • हैकेज पर नहीं, here मिला, सी ++ मुद्दों
    • उल्लेखनीय उपयोगकर्ता: Nikki and the Robots, एक वाणिज्यिक गेम।

    एसडीएल

    cabal install sdl 
    
    • Hackage पर, काफी व्यापक रूप से खेल की तरह, 2 डी ग्राफिक्स के साथ सहभागी ऐप्स के लिए इस्तेमाल किया।
    • उदाहरण: haskgame, Eternal10Seconds, HTicTacToe, RainCat, starrover

    X11

    cabal install X11 
    

    आदरणीय लिनक्स यूजर इंटरफेस।

    उदाहरण: xmonad

    जी.डी.

    cabal install gd 
    

    जी.डी. ग्राफिक्स प्रणाली। Package on hackage

    उदाहरण: wordcloud, sparklines

    HOgre

    cabal install hogre 
    

    राक्षस खेल graphics system लिए बाइंडिंग।

    आरेख

    cabal install diagrams 
    

    2 डी वेक्टर चित्र (जैसे गणित के लिए), काहिरा पर बनाया गया:

    अब, इन खेल परतों के अलावा, वहाँ कई उच्च स्तर चौखटे और उपकरण हैं।

    चमक

    cabal install gloss 
    

    2 डी ग्राफिक्स, बहुत आसान इंटरफेस, अपेक्षाकृत नया। टॉमएमडी की टिप्पणी देखें।

    Cal3D Cal3D animation package करने के लिए

    cabal install cal3d 
    

    बाइंडिंग।

    चॉकबोर्ड पैदा छवियों, शिक्षण में प्रयोग किया जाता के लिए

    cabal install chalkboard 
    

    ओपन आधारित combinators।

    TeaHS

    cabal install TeaHS 
    

    उपयोग 2 डी खेल, Ruby library Tea से प्रेरित बनाने के लिए एक सरल पुस्तकालय।

  • +0

    मैं भूल रहा हूं कि चॉकबोर्ड को संकलित/चलाने के लिए अद्यतन किया गया है (यह थोड़ी देर के लिए टूट गया था)। अच्छा काम गिल एट अल।, और अनुस्मारक के लिए धन्यवाद। –

    +0

    ग्रेट लिस्ट! चमक और आरेख विशेष रूप से दिलचस्प और प्रासंगिक हैं जो मैं बनाना चाहता हूं। – Nek

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