1 पॉइंट द्वारा GN⁺ 2023-07-07 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • Godot 4.1, 4.0 के 4 महीने बाद आया एक incremental release है, जो स्थिरता, प्रदर्शन और परिष्कार को बेहतर बनाते हुए AI navigation avoidance और detachable code editor जैसी सुविधाएँ जोड़ता है
  • इस संस्करण में Godot 4 के उपयोग के दौरान रिपोर्ट किए गए या 4.1 pre-release में पाए गए 900 से अधिक issues ठीक किए गए हैं, और यह 300 से ज्यादा contributors के submissions से बना है
  • प्रदर्शन सुधारों में child nodes को जोड़ने-हटाने की प्रक्रिया को तेज hash map आधारित तरीके में बदलना खास है, जिससे जटिल projects में गति बढ़ती है, हालांकि कुछ दुर्लभ operations और Node memory usage की कीमत पर
  • GDScript static variables, C# [GlobalClass], GDExtension enhancements, और detachable script editor जैसी सुविधाओं से scripting और editor workflow का दायरा बढ़ा है
  • 4.0 projects को 4.1 में migrate करना आमतौर पर सुरक्षित है, लेकिन C# और GDExtension उपयोगकर्ताओं को पहले incompatibility की संभावना और porting/recompilation की जांच करनी चाहिए

Godot 4.1 रिलीज़ का अवलोकन

  • Godot 4.1, Godot 4.0 के बाद 4 महीने के काम से आया अपडेट है, और 4.0 को नियमित incremental releases के जरिए बेहतर बनाने की दिशा को आगे बढ़ाता है
  • इस रिलीज़ का मुख्य फोकस स्थिरता, प्रदर्शन और finishing quality है, साथ ही नए features भी शामिल हैं
    • बेहतर AI navigation avoidance
    • code editor को अलग करके दूसरे display पर रखने की सुविधा
  • उपयोगकर्ताओं ने Godot 4 इस्तेमाल करते समय रिपोर्ट किए गए या 4.1 pre-release testing में मिले 900 से अधिक issues को ठीक किया गया है
  • 4.0 से बने अधिकांश games और apps को 4.1 में अपेक्षाकृत सुरक्षित तरीके से migrate किया जा सकता है
    • C# और GDExtension उपयोगकर्ताओं को कुछ incompatibilities की उम्मीद रखनी चाहिए
    • migration से पहले backup ज़रूरी है, और Git जैसे version control system में project state को commit करना recommended है
    • migration guide तैयार की जा रही है
  • Godot 4.1 को download page से प्राप्त किया जा सकता है

कम्युनिटी योगदान और विकास फंडिंग

  • Godot एक community-driven project है, जिसमें individual contributors engine सुधार में भाग लेते हैं
  • पिछले कुछ वर्षों में users और कंपनियों के donations की वजह से कुछ core contributors को full-time hire किया गया, जिससे तेज release cycle संभव हुई
  • फिलहाल monthly expenses, monthly donations से अधिक हैं, इसलिए development funding अब भी बड़े one-time corporate donations पर निर्भर है
  • Godot 4 की अपडेट गति बनाए रखने और अधिक contributions की समीक्षा करने के लिए maintainers को hire करने हेतु monthly donations की और ज़रूरत है
  • आर्थिक मदद के अलावा भी project में कई तरीकों से योगदान दिया जा सकता है
    • विस्तृत bug reports लिखना
    • codebase में योगदान
    • documentation लिखना
    • official docs या व्यक्तिगत websites पर guides लिखना
    • community platforms पर सवालों के जवाब देना और tips साझा करना
  • यह रिलीज़ 300 से अधिक contributors के submissions से बनी है, और सभी bug fixes व improvements की पूरी सूची interactive changelog में देखी जा सकती है

प्रदर्शन सुधार

  • Godot games, game entities के बुनियादी building blocks यानी node tree से बनते हैं, और nodes को जोड़ना व हटाना engine में बहुत बार होने वाला काम है
  • 4.1 में child nodes को जोड़ने-हटाने के algorithm को तेज hash map आधारित तरीके में बदला गया है, जिससे यह काम कई गुना तेज हो गया है
    • कुछ दुर्लभ node operations थोड़ा धीमे हो गए हैं
    • base Node class की memory usage 10% बढ़ी है
    • node manipulation वाले जटिल projects में इसका विशेष लाभ है
  • scenes के लिए experimental multithreading जोड़ी गई है
    • नए node property से node processing को sequential या parallel नियंत्रित किया जा सकता है
    • यह अभी experimental feature है, इसलिए edge cases खोजने के लिए व्यापक testing की ज़रूरत है
    • production उपयोग की सिफारिश नहीं की जाती
  • multithreaded loading में भी कई समस्याएँ और सीमाएँ ठीक की गई हैं
  • Vulkan renderer में pipeline cache जोड़ा गया है
    • पहले shader cache, shader compilation stutter को कम करता था, लेकिन pipeline compilation अब भी stutter और धीमे load times पैदा कर सकता था
    • pipeline compilation stutter पूरी तरह खत्म नहीं हुआ है, लेकिन RenderingDevice आधारित rendering backend में load time थोड़ा कम हो सकता है
    • इस cache को project settings में बंद किया जा सकता है और Godot 4.1 में यह default रूप से enabled है
    • यह सभी freeze के कारणों को हल नहीं करता, इसलिए आगे की releases में इस पर काम जारी रहेगा

कोर इंजन बदलाव

  • Godot में models import करते समय model के पीछे की ओर मुड़ जाने की समस्या अक्सर होती थी
  • 4.1 में इस समस्या को कम करने के लिए कई बदलाव लागू किए गए हैं
    • editor में front/back camera directions को swap किया गया है
    • look_at() function में camera के -Z axis की बजाय model space को forward reference के रूप में इस्तेमाल करने वाला argument जोड़ा गया है
    • यह बदलाव पुराने path-following bug को ठीक करने में भी मदद करता है
  • Godot 4 में frame delta smoothing जोड़ा गया है
    • इससे movement की fluidity काफी बेहतर हो सकती है और gameplay अधिक smooth बन सकता है
    • यह default रूप से enabled है
    • यह केवल VSync enabled होने पर काम करता है

scripting सुधार

  • GDScript

    • पहले एक ही script की कई instances के बीच data share करने के लिए resources या autoload का उपयोग करना पड़ता था
    • Godot 4.1 से static variables बनाए और उपयोग किए जा सकते हैं
    • static variables, हर instance की बजाय class में data store करते हैं, और उसी class की सभी instances उसी value को share करती हैं
    • script के शीर्ष पर variable definition के आगे static keyword लगाकर इसका उपयोग किया जाता है
    • Godot 4 में जोड़ी गई named class documentation auto-generation सुविधा में भी सुधार हुआ है
    • enums को type की तरह treat करने से generated docs अधिक सटीक हो गई हैं
    • variables या function definitions के ऊपर लिखे जाने वाले docstrings के अलावा अब inline docstrings भी इस्तेमाल किए जा सकते हैं
  • C#/.NET

    • इस रिलीज़ में C# का फोकस GDScript के साथ feature parity बढ़ाने पर है
    • GDScript में scripts में global class name जोड़कर editor में उपयोग के लिए नया node type define किया जा सकता था
    • Godot 4.1 से C# में भी file पर [GlobalClass] attribute जोड़कर वही काम किया जा सकता है
    • [Icon] attribute से global class के लिए अलग icon भी सेट किया जा सकता है
    • लेकिन 4.1 के अनुसार C# से बने projects को अभी mobile और web platforms पर export नहीं किया जा सकता
    • इस support पर काम जारी है
    • यह सीमा 2023 के अंत में आने वाली .NET 8 release पर निर्भर हो सकती है
    • mobile और web platform support पर वास्तविक काम 2023 के बाद के हिस्से में ही तेज़ी से शुरू हो सकता है
  • GDExtension

    • Godot ऐसी तकनीक देता है जिससे engine को दोबारा compile किए बिना C++ जैसी low-level languages को game scripting language की तरह इस्तेमाल किया जा सकता है
    • GDExtension इस रिलीज़ में भी अभी beta में है
    • 4.1 में GDExtension की scripting क्षमता GDScript और C# के और करीब आई है
    • नए visual shader nodes implement किए जा सकते हैं
    • GDExtension से editor plugins बनाए जा सकते हैं
    • एक backward compatibility system लागू किया गया है, ताकि भविष्य के API changes के बाद भी Godot 4.1 के लिए लिखा code काम करता रहे
    • हालांकि GDExtension की core समस्याओं को ठीक करने के लिए 4.1 में एक बड़ा compatibility break ज़रूरी था
    • पुराने Godot 4.0 extensions को 4.1 के लिए port करके फिर से compile करना होगा
    • भविष्य में GDExtension API को अधिक विस्तार योग्य बनाने के लिए architecture पर भी काफी काम दोबारा किया गया है

editor workflow

  • Godot 4 पहले से project settings, editor settings और कई pop-ups में multi-window support देता रहा है
  • 4.1 से documents को floating windows के रूप में अलग किया जा सकता है, और shader editor सहित script editor को भी अलग करके दूसरे monitor पर रखा जा सकता है
  • editor window layouts को track कर सकता है, ताकि बंद करके फिर खोलने पर पिछली working position बनी रहे
  • Godot 4.0 typed arrays की definition/export और individual nodes के inspector export को support करता था, लेकिन दोनों को एक साथ जोड़ नहीं सकता था
  • Godot 4.1 से node arrays को inspector में export किया जा सकता है, जिससे game objects को आपस में जोड़ना आसान हो जाता है
  • project manager में individual projects के लिए tags सेट करने और tags से filter करने की सुविधा जोड़ी गई है
    • इससे दर्जनों या सैकड़ों Godot projects में खोज आसान होती है

rendering बदलाव

  • artist feedback के आधार पर particle turbulence को दोबारा तैयार किया गया है, जिससे creative control बढ़ती है
  • turbulence का उपयोग आधुनिक games में दिखने वाले समृद्ध और फैलावदार effects बनाने में बहुत होता है
  • नई 3D noise textures से volumetric fog की density को आसानी से नियंत्रित किया जा सकता है
    • कुछ खास क्षेत्रों में fog को और पतला बनाया जा सकता है
  • NoiseTexture3D का उपयोग particle attractor vector fields बनाने में भी किया जा सकता है
    • यह particles को प्रभावित करने वाली हवा simulate करने में उपयोगी है
  • Godot renderer में अभी भी कई planned improvements बाकी हैं, जिनमें से अधिकांश future releases में आएँगे
  • rendering team और contributors नए features की बजाय bug fixes और stability को प्राथमिकता दे रहे हैं
  • 3D GLES3 renderer अभी पूरा नहीं हुआ है, और आने वाले महीनों में इस पर काफी काम होना है

navigation सुधार

  • Godot 4.0 ने AI navigation के लिए real-time avoidance पेश किया था, लेकिन यह single plane तक सीमित था
  • Godot 4.1 में पूरी तरह rewritten avoidance algorithm शामिल है
    • यह बेहतर behavior और ज्यादा control देता है
    • avoidance अब 2D या 3D में काम कर सकता है
    • flying agents अब ground-walking agents के ऊपर से जा सकते हैं
  • layers का उपयोग करके नियंत्रित किया जा सकता है कि कौन-से agents किन agents से बचें
  • priorities सेट करके कुछ agents को दूसरे agents को धकेलने की क्षमता दी जा सकती है
  • बेहतर navigation behavior को updated documentation में देखा जा सकता है

platform support और web सीमाएँ

  • Godot 4.1 का platform support दायरा Godot 4.0 जैसा ही है
  • standard engine और .NET version दोनों से सभी desktop platforms पर export किया जा सकता है
  • यदि project में C# का उपयोग नहीं है, तो mobile और web पर export किया जा सकता है
  • 4.1 के अनुसार web export में कुछ आधुनिक features के लिए vendor support की कमी के कारण सीमाएँ हैं
    • macOS पर Chrome जैसे browsers में, जहाँ WebGL 2 support अच्छा नहीं है, समस्याएँ हो सकती हैं
    • Google fixes या dedicated WebGL 1 / GLES2 renderer support पर भारी मेहनत के बिना इसे ठीक करना मुश्किल है
  • जिन hosting platforms पर SharedArrayBuffer support के लिए ज़रूरी CORS headers सेट नहीं किए जा सकते, वहाँ web games को configure करना जटिल है
    • यह समस्या मुख्य रूप से Safari में coep:credentialless header support के implementation पर निर्भर है
    • Chromium-based browsers और Firefox पहले से अच्छी तरह काम करते हैं
    • itch.io पर deploy करने के मामले में यह खास तौर पर अच्छा काम करता है
    • संभावित workarounds की जाँच की जा रही है

ज्ञात समस्याएँ और अगला रिलीज़

  • Godot 4.1 में कुछ ऐसी समस्याएँ अभी बाकी हैं जिन्हें release से पहले हल नहीं किया जा सका
  • bug tracker को Godot GitHub issues पर देखा जा सकता है
  • पुष्टि की गई प्रमुख समस्याओं में से एक यह है कि export presets की custom configuration properties define करने वाला नया API user configuration को बनाए नहीं रख पाता
    • editor restart करने पर configuration options reset होकर गायब हो जाते हैं
    • इसका fix 4.1.1 में दिया जाएगा
    • संबंधित PR है GH-79025
  • Godot 4.2 पर काम पहले ही शुरू हो चुका है, और यह 4 महीने बाद आने वाला है
  • Godot स्थिर release cycle बनाए रखने की दिशा पर कायम है, ताकि अगली improvements और नए features के लिए लंबा इंतज़ार न करना पड़े

1 टिप्पणियां

 
GN⁺ 2023-07-07
Hacker News की राय
  • मैं हाल ही में Unity से लगभग पूरी तरह Godot 4.0 पर आ गया हूँ, और भले ही मैं पेशेवर गेम डेवलपर नहीं हूँ, छोटे इंडी/itch.io तरह के गेम बनाने वाले के रूप में इससे सच में बहुत संतुष्ट हूँ
    यह हल्का, तेज़ और सीखने में आसान है, और solo/indie डेवलपर को जिन चीज़ों की ज़रूरत होती है उनमें से 90% यह कर सकता है
    लेकिन macOS यूज़र जब itch.io पर गेम खोलते हैं तो loading में इतना समय लगता है कि वे उसे टूटा हुआ समझकर टैब बंद कर देते हैं, इस bug की वजह से मैं अभी Unity को पूरी तरह छोड़ नहीं पाया हूँ
    मेरे गेम अक्सर शैक्षिक होते हैं या iPad/MacBook इस्तेमाल करने वाले बच्चों के लिए होते हैं, इसलिए local install सिखाने और डिवाइस मालिकों को मनाने की बजाय itch.io लिंक देना कहीं आसान होता है
    Godot की तरफ से कहा गया है कि वे इसे ठीक कर रहे हैं, लेकिन तब तक कुछ projects में मुझे Unity का इस्तेमाल जारी रखना होगा. अगर यह समस्या हल हो जाए, तो लगता है Godot itch.io/गेमजैम क्षेत्र में बहुत बड़ा हो सकता है

    As of 4.1 web exports still have some limitations due to poor vendor support of certain modern features. Browsers with bad WebGL 2 support, such as Chrome on macOS, unfortunately suffer from issues which we cannot address without a fix from Google or a significant amount of effort put into supporting a dedicated WebGL 1 / GLES2 renderer.
    We are also aware of the complexity setting up web games on hosting platforms which don’t let you set the required CORS headers for SharedArrayBuffer support. This mostly depends on Safari implementing the coep:credentialless header support, while Chromium-based browsers and Firefox already work fine (especially if you publish on itch.io). There is a possible workaround that we are investigating.

    • मैं भी लगभग ऐसी ही स्थिति में था, लेकिन आखिरकार समझ में आया कि Godot 3.5.2 अभी भी long-term support version है और web export भी बहुत अच्छा काम करता है. बदलाव का फैसला कराने वाला उदाहरण यह था: https://yet-another-lucas.github.io/plumbing-adventure/
      उसके बाद मैं Godot 4.0 C# से Godot 3.5.2 + GDScript पर आ गया, और इससे संतुष्ट हूँ
      master पर हर commit के साथ Github Pages में अपने-आप build/deploy होने वाली CI/CD pipeline भी बनाई, और ऐसी pipeline काफ़ी अच्छी है
      https://www.reddit.com/r/godot/comments/q25riu/hosting_on_gi...
    • इस साल मैंने Godot 3.5 से browser-based छोटे game jam शैली के 5 गेम बनाए[1], और कुल मिलाकर अनुभव अच्छा रहा. जब तक Godot 4 का web export ठीक से काम नहीं करता, तब तक Godot 3.5 इस्तेमाल करके भी पूरी तरह संतुष्ट रहा जा सकता है
      Godot 4 में बेहतर type support और magic string का कम इस्तेमाल कराने वाले सुधार हैं, जैसे signal को नाम से refer करने की सुविधा, जिन language improvements का इंतज़ार है
      लेकिन अगर वही बड़ा अवरोध है, तो शायद इंतज़ार करना बेहतर हो सकता है
      कभी-कभी Godot 4 टीम का macOS समस्या को Godot regression नहीं बल्कि Chrome bug के रूप में देखना थोड़ा निराशाजनक लगता है[2]
      यह semantics और priority का मसला ज़्यादा है, लेकिन अगर Godot 3 में जिस feature पर निर्भर थे वह Godot 4 में टूट गया, तो उसे regression न मानना मुश्किल है
      फिर भी Godot 4 और पुराने versions में किए गए सारे काम के लिए मैं बहुत आभारी हूँ, और उस दिन का इंतज़ार है जब मैं Godot 4 इस्तेमाल करूँगा
      [1] अगर दिलचस्पी हो तो सब https://eieio.games/ पर हैं
      [2] https://github.com/godotengine/godot/issues/70691
    • “macOS पर Chrome जैसे ऐसे ब्राउज़र जिनमें WebGL 2 support खराब है” यह हिस्सा ध्यान खींचता है
      अब तक मुझे Chrome/macOS में WebGL2 की समस्या नहीं मिली, इसलिए जानना चाहता हूँ कि यह किस तरह की समस्या है
      हालांकि मैं भी WebGL2/GLES3 features में उन चीज़ों से बचता हूँ जो समस्या पैदा करने के लिए जानी जाती हैं. मुख्यतः uniform buffer, या buffer update patterns जो native पर तो अच्छे से काम करते हैं लेकिन WebGL पर नहीं, जैसे “buffer orphaning”
    • मैं जानना चाहता हूँ कि Godot का VR support किस स्थिति में है. UE4 को 9 साल इस्तेमाल किया है और Unity मुझे ज़्यादा पसंद नहीं, लेकिन Godot को एक बार आज़माना चाहूँगा
    • मैं macOS पर Godot से गेम बनाकर itch.io पर deploy करता हूँ, लेकिन मुझे यह समस्या कभी नहीं हुई. क्या आप कोई उदाहरण दे सकते हैं जहाँ यह समस्या होती है, और build export settings की जानकारी भी?
  • Godot वाकई एक प्रभावशाली टूल है. जब भी नया गेम प्रोजेक्ट शुरू करने की वजह मिलेगी, मैं इसे और गंभीरता से सीखना चाहूँगा, और इतने छोटे team ने जो हासिल किया है उसे देखकर Unity को शर्म आनी चाहिए
    यह भी प्रभावशाली है कि “Godot 4 इस्तेमाल करते समय रिपोर्ट की गई समस्याओं और 4.1 pre-release testing के दौरान रिपोर्ट की गई समस्याओं में से 900 से अधिक को ठीक किया गया”
    performance और stability को और बेहतर बनाते हुए इतनी सारी समस्याएँ ठीक करना अपने-आप में सराहनीय है

    • 900 issues fix होना निश्चित रूप से प्रभावशाली है, लेकिन संभव है कि Godot GitHub पर सबसे ज़्यादा open issues वाले repositories में से एक हो. अभी भी 5,000 से अधिक खुले हुए हैं
      बेशक, open issues की संख्या software quality का आकलन करने का अच्छा metric नहीं है
  • मुझे Godot पसंद है, लेकिन कुछ कमियाँ खटकती हैं। GDScript Python नहीं है, और उसमें वे छोटी-छोटी सुविधाएँ नहीं हैं जो Python को शानदार बनाती हैं, जैसे list/dictionary comprehensions, .items(), sets आदि
    फिर भी गेम डेवलपमेंट के लिए यह पूरी तरह पर्याप्त है, और native types जैसी चीज़ों के कारण यह अपने environment के साथ अच्छी तरह फिट बैठती है, इसलिए यह काफ़ी अच्छी भाषा है
    मैंने GDNative इस्तेमाल किया है और GDExtension को भी और ज़्यादा आज़माना चाहिए, लेकिन अब तक Godot के लिए C++ लिखना काफ़ी rough लगा है। प्रोग्रामर को हर जगह Godot types और new() का इस्तेमाल करना पड़ता है, इसलिए इसे संभालना आसान नहीं है
    इसलिए Godot किसी असली C++ engine से ज़्यादा ऐसा लगता है जहाँ ज़्यादातर समय script language का इस्तेमाल किया जाता है, और केवल तब C++ से optimization की जाती है जब script काफ़ी तेज़ न हो
    मैं यह भी और देखना चाहूँगा कि GDScript दूसरी भाषाओं के मुकाबले वास्तव में कितनी तेज़ है, और यह भी नहीं पता कि Mono/.NET ज़्यादा तेज़ है या नहीं। यह अच्छा है कि भाषा environment design के साथ पूरी तरह integrated है, लेकिन जानना चाहता हूँ कि इसके सुधार की कोई योजना है या नहीं
    मैं multiplayer FPS बनाने की योजना कर रहा हूँ, लेकिन लगता है Godot network prediction नहीं देता, और काश यह देता
    आगे चलकर OpenGL support को लेकर भी चिंता है। यह अभी पूरी तरह खत्म नहीं हुआ है, और डर है कि यह Vulkan या DX12 जैसे नए API से इतना अलग है कि इसे ठीक से implement करना मुश्किल हो सकता है
    कुल मिलाकर, Godot open source और game development में हुई सबसे बेहतरीन चीज़ों में से एक है। गेम डेवलपमेंट ऐसा क्षेत्र रहा है जहाँ open source को जगह बनाना कठिन था, और Godot का हल्का डिज़ाइन Unreal या Unity जैसे विशाल tools की तुलना में बहुत राहत देता है

    • Godot में सबसे बड़ी समस्या भी वही है। लेकिन समस्या यह नहीं कि GDScript Python नहीं है, बल्कि यह है कि यह general-purpose language नहीं है। Unity की जो चीज़ मुझे लगभग अकेले सबसे ज़्यादा याद आती है, वह यही है
      बेशक मैं सीधे Python नहीं चुनूँगा; मुझे वह भाषा पसंद है, लेकिन शायद मैं ऐसी भाषा चुनूँगा जिसका फ़ोकस performance पर ज़्यादा हो। Go भी एक अच्छा विकल्प हो सकता है
      GDScript अपने आप में खराब नहीं है, और दूसरी भाषाओं से तुलना न करें तो यह काफ़ी शानदार है। लेकिन general-purpose language से तुलना करें तो इसमें बहुत कुछ छूट जाता है
      मुझे पता है bindings मौजूद हैं, लेकिन Raylib में ऐसा ही अनुभव होने के कारण लगा कि unofficial language support व्यवहार में लगभग न के बराबर थी। official binding Mono भी काफ़ी खराब है
    • .NET ज़्यादा तेज़ है
      लेकिन AAA games भी game logic के लिए अक्सर धीमी script languages का इस्तेमाल करते हैं। कई games में game logic CPU का बहुत बड़ा हिस्सा नहीं खाती, इसलिए कई बार यह इतना महत्वपूर्ण नहीं होता
    • गेम framework में जिस network prediction की बात होती है, वह वास्तव में कैसी दिखती है, यह जानने की जिज्ञासा है। क्या यह ऐसा होता है कि आप बताते हैं किन object properties को interpolate करना है, और engine बाकी काम अपने आप कर देता है?
  • क्या Electron जैसी चीज़ों की जगह cross-platform app development के लिए Godot का कोई उपयोग हो सकता है?

    • हाँ, हो सकता है। लेकिन अभी यह उस चरण में है जहाँ पहली पीढ़ी के apps बस निकलने शुरू हुए हैं। GitHub पर कुछ काफ़ी polished projects ये हैं
      pixel art editor: https://github.com/Orama-Interactive/Pixelorama
      infinite canvas drawing tool: https://github.com/mbrlabs/Lorien
      Trello-style kanban board: https://github.com/alfredbaudisch/Godello
      games के लिए narrative designer: https://github.com/mhgolkar/Arrow
    • Material Maker: https://www.materialmaker.org
      मैंने इसे तब इस्तेमाल किया था जब Substance का Adobe द्वारा अधिग्रहण हुआ था, और हैरानी की बात यह थी कि इसे इस्तेमाल करना कहीं ज़्यादा आसान और मज़ेदार लगा। Substance Designer काफ़ी सुस्त महसूस होता है
      हाँ, Substance Designer का अपना खास फ़ायदा है कि उसका Substance Painter के साथ integration है। Material Maker में भी कुछ manual painting features हैं, लेकिन यह पूरी तरह painting app नहीं है
    • क्या Godot IDE खुद भी Godot से बना है?
    • हाँ, संभव है
      OpenSCAD Graph Editor Godot के पुराने version से बनाया गया था, और यह Mac OS, Windows, Linux पर चलता है:
      https://github.com/derkork/openscad-graph-editor
    • कुछ लोग Godot को GUI framework की तरह इस्तेमाल करते हैं
  • Godot के प्रमुख contributors/developers में से एक ने एक सुविधाजनक छोटा tool भी जारी किया था, जिससे Godot से बनी चीज़ों को पूरी तरह decompile किया जा सकता है
    https://github.com/bruvzg/gdsdecomp

    • बढ़िया tool है, लेकिन Godot के main/lead/original developer reduz हैं, यानी Juan Linietsky
  • Godot वाकई शानदार है। टीम की प्रगति और प्रोजेक्ट की कुल दिशा से मैं गहराई से प्रभावित हूँ
    मुझे मूल रूप से हमेशा गेम डेवलपमेंट में दिलचस्पी रही है, और गेम बनाना चाहता था, इसलिए मैंने computer science पढ़ी और software engineer भी बना। मैं खुद छोटे गेम बनाना चाहता था, लेकिन वास्तव में इसमें बहुत अच्छा नहीं था
    full-time software engineer बनने के बाद, शौक में छोटे गेम बनाने के लिए न तो समय मिला और न ही सही tools
    हाल ही में मैंने Bevy खोजा और उसे आज़माया; ECS एक अच्छा concept है, लेकिन Bevy ज़्यादा library जैसा है, और SDL जैसी किसी चीज़ का इस्तेमाल करने की तरह, उससे polished game बनाना काफ़ी मुश्किल है
    जब मैंने Godot खोजा और इस्तेमाल किया, तो मैं सचमुच प्रभावित हुआ। यह beginners के लिए friendly है, फिर भी काफ़ी तेज़ है, और community भी शानदार है। मैं जिस चीज़ की तलाश कर रहा था, यह वही है, इसलिए इसका होना ही बहुत खुशी की बात है, और आगे इसकी प्रगति को लेकर भी उत्साहित हूँ
    एक बात जो थोड़ी खलती है, वह है native और “official” language का चुनाव। GDScript ठीक है और beginners तथा तेज़ prototyping के लिए काफ़ी अच्छी Python-जैसी language है, और C# भी Unity से आने वालों के लिए अच्छा हो सकता है
    व्यक्तिगत रूप से, बेहतर C++ support, या कुछ और होता, तो शायद मैं ज़्यादा खुश होता। मुझे पता है कि GDNative interface है, और 4.0 में उसमें सुधार भी हुआ है
    C# एक अच्छी language है, लेकिन गेम डेवलपमेंट में इसकी बड़ी मौजूदगी का कारण Unity है, ऐसा लगता है। यह बहुत verbose है, और पूरे Visual Studio के बाहर tooling support भी उतना अच्छा नहीं है
    फिर भी हो सकता है कि गेम डेवलपमेंट में “असल programming” वाला हिस्सा उतना महत्वपूर्ण न हो, और शायद मुझे बस इसे स्वीकार करके GDScript इस्तेमाल करना चाहिए

  • Godot के लिए Unreal का मुकाबला करना मुश्किल हो सकता है, लेकिन Unity का विकल्प बनने की दिशा में मैं ज़रूर उसका समर्थन करता हूँ
    यह एक शानदार engine है, और ज़्यादा से ज़्यादा developers अब इसकी क्षमता को सही तरह से पहचान रहे हैं

    • Unity, Unreal से अलग तरह का एक अपना ecosystem है। Unity एक platform के रूप में mobile monetization को उस तरह support करता है जैसा दूसरे platforms नहीं कर पाते, इसलिए Godot के लिए उस ecosystem को तुरंत छीन लेना मुश्किल है
      लेकिन अगर बात indie development की है, तो मैं पूरी तरह सहमत हूँ। Godot वही framework है जिसकी लोगों को Unity से उम्मीद थी: हल्का, बिना रास्ते में आए, और सीधे बनाने देने वाला। उस इस्तेमाल में Godot कहीं बेहतर है
    • Unreal, दशकों पुराना AAA गेम-केंद्रित engine है जिसके पीछे बड़ी full-time workforce है। उससे प्रतिस्पर्धा करने की कोशिश करना लापरवाही होगी। किसी open source project के लिए ऐसे moving target का पीछा करना कठिन है
      अच्छी बात यह है कि Unreal Engine कई तरह के गेम्स के लिए अच्छा विकल्प नहीं है, और Godot 2D गेम्स तथा सरल 3D गेम्स में अपनी जगह अच्छी तरह बना रहा है
      2D गेम बाज़ार अब भी बड़ा है, और हैरानी की बात है कि 2D को सचमुच अच्छा support देने वाले engines बहुत नहीं हैं। Godot आसानी से top tier में आता है
    • अगर marketplace की नकल की जा सके, तो शायद यह Unity से भी मुकाबला कर सके
  • Godot वाकई शानदार है, और ऐसे software तथा Blender जैसे tools को बेहतरीन बनाने में समय लगाने वाले सभी लोगों के प्रति मेरे मन में बहुत सम्मान है

  • हर release के साथ Godot सचमुच बेहतर होता जा रहा है। कुछ features हैं जिन्हें मैं भविष्य में Godot में देखना चाहूँगा
    FSR2, बढ़िया Wayland support, और LLM integration। LLM शायद NPCs को ज़्यादा वास्तविक बना सके

    • LLM integration को लेकर मैं आश्वस्त नहीं हूँ। यह game engine से जुड़ी चीज़ कम और game-specific feature ज़्यादा लगती है। LLM integration शायद गेम के अंदर scripting से संभाला जा सकता है
      AI integration के संदर्भ में AI-assisted design ज़्यादा रोचक लगता है। जैसे आप terrain, character, scenario का वर्णन करें, AI कुछ generate करे, और फिर user उसे customize और tweak करे
      लेकिन संभव है कि वह भी core game engine के बाहर करना बेहतर हो
    • hardware-accelerated ray tracing का क्या?
  • क्या कोई Godot tutorial है जिसकी आप सिफारिश करेंगे?
    मेरे पास एक छोटा RPG prototype है जो console में चलता है, और मैं उस पर असली GUI या sprite graphics जोड़कर देखना चाहता हूँ

    • Godot 4 के लिए एक free tutorial है, और आप शुरुआत से लगभग दो घंटे में एक पूरा game बना सकते हैं: https://quiver.dev/tutorials/create-your-first-godot-4-game/
      बता दूँ कि मैं उस कंपनी का founder हूँ जिसने यह course बनाया है। फिर भी tutorial free है, और इसमें इस्तेमाल किए गए custom assets भी उदार license के तहत दिए गए हैं
    • GD Quest को अभी मानक जैसा माना जाता है। Godot के लिए यह कुछ-कुछ W3Schools जैसी जगह रखता है
      हालांकि, Unity से Godot में आने वाले व्यक्ति के नज़रिए से मुझे लगता है कि Godot का tutorial ecosystem अभी भी काफ़ी पीछे है
    • मैंने Heartbeast के courses में से एक किया है और मैं उसे recommend कर सकता हूँ
      उसने हाल ही में Godot 4 के लिए एक dedicated course भी जारी किया है
      https://www.youtube.com/watch?v=M8-JVjtJlIQ
    • YouTube पर मेरी programming tutorials की एक सूची है, और उसमें कुछ Godot tutorials भी हैं
      https://www.youtube.com/playlist?list=PLwYfcDZR0fFcROLjkiyBW...
      आपको मिलने वाले कई tutorials Godot 3 के लिए होंगे, इसलिए filters में Godot 4 स्पष्ट करके खोजना बेहतर रहेगा
      नहीं तो आपको tutorial code को अपनी Godot version पर चलाने लायक खुद ढालना पड़ेगा, और वह अपने-आप में एक सीखने वाला अनुभव भी हो सकता है
    • official docs[0] निश्चित रूप से सबसे सही शुरुआत है
      [0] https://docs.godotengine.org/en/stable/getting_started/intro...