Matter

एक node graph जो procedurally PBR मटेरियल बनाता है, resolution-independent, दोबारा-ट्यून की जा सकने वाली, और एक पूरे map set के रूप में एक्सपोर्ट होने लायक।

एक लाइन में#

procedural nodes को आपस में जोड़ें और दूसरे छोर पर एक पूरा PBR मटेरियल पाएँ: base colour, roughness, metallic, normal, height, AO और emissive, जिस भी रिज़ॉल्यूशन पर आप माँगें।

ले-आउट#

Matter: node library, graph, 2D चैनल प्रीव्यू और 3D प्रीव्यू

Menu barFile · Edit · Graph · View · Help · Plugins
Graph tabsहर टैब पर एक मटेरियल, और एक और के लिए +
Toolbarselect, pan, zoom, fit, add node, connect, frame, undo/redo, grid
Leftnode library, सर्च की जा सकने वाली
Centregraph
Rightचुने गए node के लिए properties
Bottom left2D preview, हर PBR चैनल के लिए एक टैब
Bottom right3D preview

आप यहाँ क्या करते हैं#

Graph बनाएँ#

base-colour आउटपुट में जुड़े तीन नोड, हर एक ख़ुद को प्रीव्यू करते हुए

library से कोई node खींच लाएँ, या उसे toolbar से जोड़ें, और Output → Input कनेक्ट करें। हर node अपने ही शरीर पर ख़ुद को प्रीव्यू करता है, इसलिए graph एक contact sheet भी है: बिना किसी node को चुने आप देख सकते हैं कि हर चरण ने क्या किया।

Library को इस तरह बाँटा गया है:

ColorColor · Gradient · Bitmap (एक PNG/JPEG लोड करें) · Uniform Color · SVG
NoiseNoise (Perlin / fractal) · Clouds (fractal sum abs) · Anisotropic Noise · Grunge Map · White Noise · Blue Noise
PatternsCheckerboard · Wood Rings · Shape · …
Filters, adjustments and utilitieslevels, blends, blurs, normal-from-height और बाक़ी
Outputहर PBR चैनल के लिए एक

Recent आपके आख़िरी इस्तेमाल किए गए को ऊपर रखता है, जो अक्सर वही होता है जिसे आप ढूँढ रहे होते हैं।

चैनलों तक पहुँचाना#

कोई Output node एक PBR चैनल का लक्ष्य होता है: उसका Channel baseColor, roughness, metallic, normal, height, ao या emissive पर सेट करें। कोई मटेरियल तब पूरा होता है जब हर वह चैनल जो आपको चाहिए, किसी आउटपुट से भरा जा रहा हो।

किसी node को ट्यून करें#

Properties पैनल हर node को उसके basic parameters, उसकी function bindings (ऐसे पैरामीटर जो किसी स्थिर मान की बजाय किसी expression से चलते हैं), और उसका resolution mode देता है: डिफ़ॉल्ट रूप से Inherit, ताकि graph लेवल पर किया गया एक बदलाव पूरे मटेरियल को एक नए साइज़ पर दोबारा रेंडर कर दे। यह node का last evaluation time भी बताता है, जिससे किसी धीमे graph में महँगा चरण ढूँढा जा सकता है।

Save to library किसी node को, या आपके बनाए किसी subgraph को, दोबारा इस्तेमाल होने लायक चीज़ में बदल देता है।

नतीजा देखें#

बन रहे मटेरियल का 2D और 3D प्रीव्यू

2D preview एक बार में एक चैनल दिखाता है, एक ज़ूम और एक हिस्टोग्राम के साथ। 3D preview मटेरियल को किसी mesh पर रेंडर करता है: sphere, cube, cylinder, torus, plane, या आपका अपना mesh। कोई environment चुनें (HDRI Studio, Soft, Warm, Sky, या Studio / Outdoor / Sunset प्रीसेट), tessellation और edge सेट करें, और यह जाँचने के लिए कि मटेरियल बिना सीम के वाक़ई दोहराता है, UV को 1×, 2× या 4× टाइल करें।

दायाँ पैनल, पाँच टैब#

Tab
Propertiesचुने गए node के पैरामीटर
Parametersgraph के exposed parameters: वे नॉब जो कोई मटेरियल इस्तेमाल करने वाले को देता है, उसे बनाने वाले को नहीं
Graphgraph-लेवल सेटिंग्स
Variantsएक ही graph से किसी मटेरियल के कई वर्ज़न
Librarynode और प्रीसेट लाइब्रेरी

Node इंस्पेक्टर

जब कोई scan सेशन खुला हो तो एक छठा टैब, Material Scan, दिखाई देता है।

Exposed parameters#

exposed parameters वाला मटेरियल एक तयशुदा टेक्सचर होना छोड़कर एक कंट्रोल पैनल बन जाता है: rust की मात्रा, plank की चौड़ाई, घिसावट। यही वजह है कि एक ही graph एक पूरे सेट का काम कर सकता है, और यही Matter में बनाने की असली वजह है, बजाय इसके कि आप नतीजे को एक बार पेंट कर दें।

Material Scan#

किसी असली सतह की एक फ़ोटो यहाँ एक मटेरियल बन जाती है, और चूँकि इस capture को फिर से पब्लिश किया जा सकता है, इसका अपना एक अलग हिस्सा है

Node library, आँकड़ों में#

दो सौ तीन nodes, तेईस categories में। इस सूची का आकार ही बता देता है कि Matter क्या है:

Node library: एक सर्च फ़ील्ड, हाल में इस्तेमाल किए nodes, फिर categories, हर node ख़ुद को प्रीव्यू करते हुए

कैटेगरीकैटेगरी
filters44blur6
generators34transform6
utility22graph6
adjustments18colour5
pattern16bake5
effects9normal4
noise6analysis4

साथ ही flood fill (4), channels (3), material (3), scatter (2), blending (2), और script, dynamics, output और library में से एक-एक।

Filters, generators से ज़्यादा हैं, और यही मुद्दा है: कोई procedural मटेरियल ज़्यादातर processing होता है, noise आसान हिस्सा है, और जो चीज़ इसे लकड़ी या ज़ंग लगे स्टील जैसा दिखाती है वह हैं वे चवालीस तरीक़े जिनसे इसे बाद में इधर-उधर धकेला जाता है।

script node उस स्थिति के लिए बचाव का रास्ता है जिसे बाक़ी दो सौ नहीं संभालते, और bake nodes वे हैं जो किसी महँगी शाखा को एक स्टोर की गई इमेज में बदल देते हैं ताकि बाक़ी graph इंटरैक्टिव बना रहे।

Material Scan, और जब फ़ोटो फिर से पब्लिश होती है तो क्या होता है#

Inkwell में तैयार किया गया कोई Surface Capture यहाँ एक graph के रूप में पहुँचता है, किसी सपाट इमेज के रूप में नहीं: scan nodes बनाता है, और Material Scan guide आपको बताती है कि उसने क्या बनाया, चरण दर चरण, हर चरण के nodes की ओर इशारा करते हुए और हर आउटपुट को manual या derived के तौर पर चिह्नित करते हुए।

दिलचस्प स्थिति दूसरी बार में आती है। जब वही capture Inkwell से दोबारा पब्लिश होता है, तो Matter को पता चल जाता है, यह जानता है कि इसके पास कौन सा वर्ज़न है और कौन सा नया आया है, और यह पूछता है:

विकल्प
Update the sourceनई फ़ोटो को मौजूदा graph में ले लें
Create a variantदोनों रखें
Ignoregraph को जैसा है वैसा रहने दें

Update करने से सिर्फ़ source node बदलता है। आपके जोड़े गए हर downstream node, और आपके बदले गए हर सेटिंग, को छुआ नहीं जाता। यही गारंटी है जो किसी सतह को दोबारा शूट करना सुरक्षित बनाती है: scan के ऊपर आपने जो काम किया, वही चीज़ नहीं बदली जा रही।

अगर capture के बारे में असल में कुछ भी नहीं बदला, तो डायलॉग यह भी बता देता है, आपको ख़ुद तुलना करने के लिए नहीं छोड़ता। और अगर capture में कुछ ज़रूरी चीज़ की कमी है, तो यह आधा-अधूरा graph बनाने के बजाय उन फ़ील्ड के नाम बता देता है।

किसी मटेरियल को एक्सपोर्ट करना#

Matter से तीन अलग-अलग चीज़ें निकलती हैं, और वे आपस में बदली नहीं जा सकतीं:

PBR mapsहर चैनल के लिए एक इमेज, baseColor, roughness, metallic, normal, height, AO, emissive, PNG, JPEG, HDR, TGA या TIFF में
एक .matter bundlegraph और उसके टेक्सचर, ताकि मटेरियल एडिटेबल बना रहे
glTF / GLB, और MaterialXमटेरियल उस रूप में जैसे बाक़ी सॉफ़्टवेयर उम्मीद करते हैं

सिर्फ़ connected outputs एक्सपोर्ट होते हैं; पैनल ख़ाली फ़ाइलें लिखने के बजाय "no connected outputs" कहता है, और गिनती के साथ बताता है कि क्या सफल हुआ और क्या नाकाम।

यह क्या पढ़ता और लिखता है#

Native format.matter (graph, या उसके टेक्सचर के साथ एक bundle)
Imports.png, .jpg (Bitmap node), SVG (SVG node), Inkwell से एक Surface Capture
ExportsPBR maps, PNG · JPEG · HDR · TGA · TIFF के रूप में; glTF / GLB; MaterialX

दूसरे स्टूडियो को काम भेजना#

बनाता है एक PBR मटेरियल सेट, और एक सपाट इमेज। स्वीकार करता है इमेज, पिक्सेल आर्ट, और Inkwell से एक surface capture।

मटेरियल सेट को Pigment, Sculpt और Engine सीधे समझते हैं: चैनल सही स्लॉट पर मैप होकर पहुँचते हैं, न कि सात अलग PNG के रूप में जिन्हें आपको दोबारा जोड़ना पड़े।

किसी और के साथ काम करना#

Matter पूरा दस्तावेज़ सिंक करता है, debounce करके, node दर node नहीं। कोई मटेरियल graph एक छोटा ऑब्जेक्ट है और स्टोर कोई operation log नहीं रखता, इसलिए एक पूरी sync इस बारे में ईमानदार है कि वह असल में क्या है: आख़िरी लिखने वाला जीतता है। दो लोगों को अलग-अलग graph टैब पर काम करना चाहिए, एक ही पर नहीं।

सीमाएँ और आम अड़चनें#

  • किसी धीमे graph में एक धीमा node होता है। Properties पैनल हर node का last evaluation time बताता है; सब कुछ का रिज़ॉल्यूशन घटाने से पहले वहाँ देख लें।
  • Resolution इनहेरिट होता है। अगर कोई node किसी साइज़ पर पिन किया गया है तो वह graph-लेवल बदलाव को फ़ॉलो नहीं करेगा, उसका resolution mode जाँच लें।
  • Tiling की समस्याएँ 3D preview में दिखती हैं, 2D में नहीं। किसी मटेरियल को पूरा मानने से पहले tile factor को 2× या 4× पर सेट करें।
  • कोई Bitmap node procedural नहीं है। आप graph को चाहे जिस रिज़ॉल्यूशन पर रेंडर करें, यह उतना ही तेज़ रहेगा जितनी वह फ़ाइल थी जो आपने दी थी।