इस प्रोजेक्ट के बारे में
# ImGui में नोड एडिटर
यह प्रोजेक्ट ImGui-जैसे API के साथ एक नोड एडिटर कार्यान्वयन प्रदान करता है, जिसे ब्लूप्रिंट एडिटर जैसे जटिल समाधानों के लिए आधार के रूप में डिज़ाइन किया गया है। मुख्य दर्शन है "अपनी सामग्री बनाएं, बाकी हम करते हैं": एडिटर इंटरैक्शन (नोड प्लेसमेंट, ड्रैगिंग, ज़ूम/स्क्रॉल, चयन, और निर्माण/विलोपन/चयन परिवर्तन जैसी विभिन्न क्वेरी योग्य घटनाएं) संभालता है, जबकि उपयोगकर्ता सामग्री रेंडरिंग संभालते हैं।
## मुख्य विशेषताएं
- **आंतरिक नोड प्रबंधन**: नोड मूवमेंट और चयन आंतरिक रूप से संभाले जाते हैं।
- **पूरी तरह अनुकूलन योग्य सामग्री**: नोड और पिन सामग्री पूरी तरह उपयोगकर्ता-परिभाषित होती हैं।
- **स्टाइलिंग**: UE4 ब्लूप्रिंट के मॉडल पर आधारित डिफ़ॉल्ट थीम के साथ पूरी तरह स्टाइल किया गया; विविध नोड रूप बनाने के लिए पर्याप्त लचीला।
- **अनुकूलन योग्य लिंक**: बेज़ियर वक्रों पर आधारित लिंक।
- **स्वचालित हाइलाइट्स**: नोड्स, पिन्स और लिंक्स के लिए हाइलाइट्स।
- **स्मूथ नेविगेशन**: स्मूथ नेविगेशन और चयन।
- **स्थिति दृढ़ता**: नोड स्थिति उपयोगकर्ता संदर्भ में सहेजी जा सकती है, लेआउट संरक्षित रहता है।
- **चयन और समूहीकरण**: चयन आयत और समूह ड्रैगिंग।
- **संदर्भ मेनू और शॉर्टकट**: संदर्भ मेनू समर्थन और बुनियादी शॉर्टकट (कट/कॉपी/पेस्ट/डिलीट)।
- **ImGui शैली API**: ImGui परंपराओं के अनुरूप।
## निर्भरताएं
- वेनिला ImGui 1.72+
- C++14
उदाहरणों और अतिरिक्त शॉर्टकट के लिए वैकल्पिक एक्सटेंशन README में सूचीबद्ध हैं।
## निर्माण / स्थापना
स्रोत रूट निर्देशिका में हैं; उन्हें ImGui की तरह अपने प्रोजेक्ट में कॉपी और पेस्ट करें। उदाहरण Windows, macOS और Linux पर CMake के साथ बनाए जा सकते हैं।
## त्वरित प्रारंभ
एक न्यूनतम उदाहरण एक एडिटर संदर्भ बनाता है, इनपुट/आउटपुट पिन के साथ एक नोड शुरू करता है, और इसे रेंडर करता है। मुख्य हेडर `imgui_node_editor.h` है। अधिक उदाहरण `examples` फ़ोल्डर में हैं, जिसमें एक ब्लूप्रिंट नमूना शामिल है।
## उपयोग संदर्भ
एडिटर का उपयोग Spark CE इंजन में एक ब्लूप्रिंट एडिटर लागू करने के लिए किया गया है, जो इसकी क्षमता साबित करता है। प्रोजेक्ट प्रोटोटाइप से स्थिर स्थिति में संक्रमण कर रहा है।
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.