Lua Academy · पाठ

आकृतियाँ और Images बनाना

Graphics को स्क्रीन पर रखें।

पाठ 2, कुल 4 में से13 चरण

आकृतियाँ और Images बनाना, CoddyKit पर Lua Academy का एक निःशुल्क पाठ है। यह 4 में से 2वाँ पाठ है। इस अध्ययन पथ के 3 तक कोई भी पाठ पूरा पढ़ना निःशुल्क है — इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ व्यावहारिक अभ्यास भी उपलब्ध कराता है। यह Lua Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Lua Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

love.graphics मॉड्यूल

LÖVE में सारा दृश्य-निर्माण love.graphics के माध्यम से होता है। आप इसके फ़ंक्शन love.draw के अंदर चलाते हैं और कॉलबैक लौटने पर इंजन फ़्रेम प्रदर्शित करता है।

यह मूल आकृतियाँ, चित्र, पाठ और रेखाएँ बना सकता है, साथ ही रंगों और रूपांतरणों का प्रबंधन कर सकता है। हर फ़्रेम में सब कुछ नए सिरे से बनाया जाता है।

आयत बनाना

love.graphics.rectangle पहले मोड, फिर स्थिति और आकार लेता है। मोड ठोस आकृति के लिए 'fill' या केवल बाहरी रेखा के लिए 'line' होता है।

निर्देशांक विंडो के ऊपरी-बाएँ कोने से शुरू होते हैं; x दाईं ओर बढ़ता है और y नीचे की ओर।

function love.draw()
  love.graphics.rectangle('fill', 50, 50, 120, 80)
  love.graphics.rectangle('line', 200, 50, 120, 80)
end

वृत्त और दीर्घवृत्त

love.graphics.circle(mode, x, y, radius) x, y पर केंद्रित वृत्त बनाता है। आयतों की तरह इसमें भी 'fill' या 'line' स्वीकार किया जाता है।

अंडाकार आकृतियों के लिए अलग-अलग क्षैतिज और ऊर्ध्वाधर त्रिज्याओं के साथ love.graphics.ellipse का उपयोग करें। चिकनाई नियंत्रित करने के लिए आप अतिरिक्त segments तर्क दे सकते हैं।

function love.draw()
  love.graphics.circle('fill', 150, 150, 40)
  love.graphics.ellipse('line', 300, 150, 60, 30)
end

रंग निर्धारित करना

love.graphics.setColor इसके बाद बनाई जाने वाली हर चीज़ की रंग-आभा निर्धारित करता है। आधुनिक LÖVE में घटकों का मान 0 से 1 तक होता है, इसलिए सफ़ेद रंग 1, 1, 1 है।

रंग स्थिति-आधारित होता है: एक बार निर्धारित होने पर, बदलने तक वह बाद के सभी चित्रणों पर लागू रहता है। जिन चित्रों पर रंग-आभा नहीं चाहिए, उन्हें बनाने से पहले सफ़ेद रंग पर लौटें।

function love.draw()
  love.graphics.setColor(1, 0, 0)   -- red
  love.graphics.rectangle('fill', 20, 20, 60, 60)
  love.graphics.setColor(1, 1, 1)   -- back to white
end

रेखाएँ और बिंदु

love.graphics.line x, y बिंदुओं की एक शृंखला को जोड़ता है। love.graphics.setLineWidth रेखाओं और बाहरी रेखा वाली आकृतियों की मोटाई नियंत्रित करता है।

जुड़ा हुआ पथ बनाने के लिए आप एक साथ कई बिंदु दे सकते हैं, जो पीछे छूटती रेखाओं, पथों या सरल वेक्टर कला के लिए उपयोगी है।

function love.draw()
  love.graphics.setLineWidth(3)
  love.graphics.line(10, 10, 80, 60, 150, 20)
end

चित्र लोड करना

love.load में love.graphics.newImage का उपयोग करके चित्रों को एक बार लोड करें। यह एक चित्र-वस्तु लौटाता है, जिसे आप दोबारा उपयोग के लिए किसी चर में रखते हैं।

चित्रों को कभी भी love.draw के अंदर लोड न करें, क्योंकि इससे हर फ़्रेम में फ़ाइल फिर से पढ़ी जाएगी और प्रदर्शन नष्ट हो जाएगा।

function love.load()
  sprite = love.graphics.newImage('player.png')
end

चित्र बनाना

love.graphics.draw(image, x, y) दिए गए स्थान पर चित्र बनाता है। डिफ़ॉल्ट रूप से चित्र का ऊपरी-बायाँ कोना x, y पर आता है।

अतिरिक्त तर्क घुमाव, माप और मूल-बिंदु का विस्थापन जोड़ते हैं, जिससे आपको हर स्प्राइट के दिखाई देने के तरीके पर पूरा नियंत्रण मिलता है।

function love.draw()
  love.graphics.draw(sprite, player.x, player.y)
end

घूर्णन और आकार-परिवर्तन

पूरा हस्ताक्षर draw(image, x, y, r, sx, sy, ox, oy) है। यहाँ r रेडियन में घूर्णन है, जबकि sx और sy स्केल गुणक हैं।

मूल-बिंदु का ऑफ़सेट ox, oy घूर्णन-केंद्र निर्धारित करता है। किसी चित्र के केंद्र के चारों ओर घुमाने के लिए, मूल-बिंदु को चित्र की आधी चौड़ाई और आधी ऊँचाई पर सेट करें।

local w, h = sprite:getWidth(), sprite:getHeight()
love.graphics.draw(sprite, x, y, angle, 1, 1, w/2, h/2)

पाठ आरेखन

love.graphics.print(text, x, y) वर्तमान फ़ॉन्ट का उपयोग करके एक स्ट्रिंग आरेखित करता है। love.graphics.setFont सक्रिय फ़ॉन्ट बदलता है।

love.load में love.graphics.newFont('font.ttf', 24) का उपयोग करके मनचाहे फ़ॉन्ट बनाएँ। याद रखें कि रंग आकृतियों की तरह पाठ को भी रंग देता है।

function love.draw()
  love.graphics.setColor(1, 1, 1)
  love.graphics.print('Score: ' .. score, 10, 10)
end

स्क्रीन साफ़ करना और पृष्ठभूमि

LÖVE हर फ़्रेम में स्क्रीन अपने-आप साफ़ करता है, लेकिन आप love.load में love.graphics.setBackgroundColor का उपयोग करके साफ़ करने वाला रंग निर्धारित कर सकते हैं।

मनचाहे आरेखन के भीतर स्वयं नियंत्रण करने के लिए, love.graphics.clear बफ़र को किसी रंग से भर देता है। अधिकांश गेम केवल एक बार पृष्ठभूमि निर्धारित करते हैं और साफ़ करने का काम इंजन पर छोड़ देते हैं।

function love.load()
  love.graphics.setBackgroundColor(0.1, 0.1, 0.2)
end

स्प्राइट शीट के लिए क्वाड

क्वाड किसी चित्र के आयताकार क्षेत्र का चयन करता है, जिससे एक ही स्प्राइट शीट में कई फ़्रेम रखे जा सकते हैं। इसे love.graphics.newQuad से बनाएँ।

केवल उस क्षेत्र को प्रदर्शित करने के लिए क्वाड को love.graphics.draw(image, quad, x, y) में दें। यही स्प्राइट ऐनिमेशन का आधार है।

local sheet = love.graphics.newImage('sheet.png')
local frame = love.graphics.newQuad(0, 0, 32, 32, sheet:getDimensions())
-- love.graphics.draw(sheet, frame, x, y)

त्वरित जाँच

LÖVE के आरेखन के बारे में अपने ज्ञान का परीक्षण करें।

पुनरावलोकन

आप love.draw के भीतर love.graphics का उपयोग करके आयत, वृत्त, रेखाएँ, चित्र और पाठ आरेखित करते हैं। setColor इसके बाद होने वाले आरेखनों को रंग देता है और अपनी स्थिति बनाए रखता है।

love.load में newImage का उपयोग करके चित्रों को एक बार लोड करें, फिर उन्हें draw से प्रदर्शित करें और स्प्राइट शीट के लिए घूर्णन, आकार-परिवर्तन और क्वाड जोड़ें।

शुरुआत निःशुल्क

एआई शिक्षक के साथ Lua सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
40
पाठ
159

अक्सर पूछे जाने वाले प्रश्न

क्या “आकृतियाँ और Images बनाना” पाठ निःशुल्क है?

हाँ — Lua Academy अध्ययन पथ के 3 तक कोई भी पाठ, जिसमें “आकृतियाँ और Images बनाना” भी शामिल है, यहाँ वेब पर पूरा पढ़ना निःशुल्क है। इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ इंटरैक्टिव अभ्यास भी उपलब्ध कराता है। Lua Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“आकृतियाँ और Images बनाना” में मैं क्या सीखूँगा?

Graphics को स्क्रीन पर रखें। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Lua Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या Lua Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Lua Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 2वाँ पाठ है।

“आकृतियाँ और Images बनाना” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस Lua Academy पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर Lua Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. LOVE Game Loop
  2. आकृतियाँ और Images बनाना
  3. Input संभालना
  4. गति और टकराव
← Lua Academy पर वापस जाएँ