Substance Material vs PBR Texture - تفاوت
یک PBR texture pack معمولی شامل چندین فایل PNG (Albedo، Normal، Roughness، Metallic، AO) با resolution ثابت است. اگر color را بخواهید عوض کنید، باید در Photoshop file را remap کنید.
یک Substance Material (.sbsar) یک فایل procedural است. parameters قابل تنظیم در real-time: color tint، tile scale، roughness amount، dirt amount، wear level. resolution dynamic - میتوانید همان material را به ۱K، ۲K، ۴K، حتی ۸K render کنید.
مزیت کلیدی: یک material میتواند به ۱۰۰ variation تبدیل شود. مثلاً یک "Wood Planks Material" میتواند oak، walnut، pine، weathered، painted variations داشته باشد. بدون .sbsar، شما باید ۱۰۰ texture جدا بخرید.
Substance Painter از .sbsar استفاده میکند برای smart materials. Unreal Engine 5 plugin Substance دارد که .sbsar را native در material editor بازی میکند با parameters قابل تنظیم.
Substance Plugin Unreal Engine 5
برای استفاده .sbsar در Unreal، باید Substance Plugin نصب کنید:
گام ۱: در Epic Games Launcher → Unreal Engine → Marketplace. جستجو "Substance".
گام ۲: Substance 3D for Unreal را پیدا کنید (Adobe رسمی). رایگان است.
گام ۳: Install کنید روی version Unreal مورد نظر (5.0، 5.1، 5.2، 5.3+).
گام ۴: در پروژه Unreal: Edit → Plugins → Substance. enable کنید.
گام ۵: Restart Unreal Engine. حالا Content Browser قبول میکند فایل .sbsar را.
Plugin ساده است اما حیاتی. بدون آن، .sbsar در Unreal کار نمیکند. اگر فقط plain PBR PNG دارید (Albedo، Normal و غیره)، plugin نیاز ندارید.
Substance Plugin همچنین برای Unity موجود است (Adobe Substance for Unity). workflow مشابه.
انتخاب Substance Material در ArtStation Marketplace
در ArtStation Marketplace فیلتر "Substance" یا "SBSAR" بزنید. معیارهای انتخاب:
۱. Format ارائه: حتماً .sbsar شامل باشد. برخی فروشندگان فقط .sbs (source file Substance Designer) میفروشند که کاربردیتر برای modification ولی برای استفاده مستقیم نیاز به Substance Designer دارد. .sbsar در Unreal مستقیم کار میکند.
۲. تعداد parameters: یک material خوب ۱۰-۲۵ parameter قابل تنظیم دارد. کمتر یعنی محدود. در صفحه product معمولاً preview parameters نشان داده میشود.
۳. preview videos: فروشنده باید ویدیو نشان دهد چگونه parameters change میشوند و variations مختلف. اگر فقط static image است، احتمالاً .sbsar ساده است.
۴. Quality tier: ArtStation rating ۴.۸+ معمولاً قابل اعتماد. material های "Featured" بیشتر کیفیت بالا.
۵. Compatibility: Unreal 5.x compatible باشد. material های قدیمی (saved در Substance Designer ۲۰۱۸-۲۰۲۰) ممکن است warning در Unreal 5 بدهند.
بهترین فروشندگان Substance ArtStation: Daniel Thiger، Vincent Derozier، Pavel Oliva. اینها workflow حرفهای صنعتی استفاده میکنند.
دستههای پرفروش Substance Materials
Wood materials: oak، walnut، pine، driftwood، weathered. ۲۰-۴۰ دلار هر pack ۵-۱۰ material.
Metal materials: steel، iron، copper، gold، rusted، painted. variations عظیم. ۲۵-۵۰ دلار.
Stone و rock: granite، marble، limestone، cobblestone، rough rock. مناسب environment. ۲۰-۴۰ دلار.
Concrete: smooth، rough، cracked، painted، graffiti. essential برای industrial و modern environment. ۱۵-۳۰ دلار.
Fabric: cotton، silk، denim، leather، velvet. مناسب character clothing و furniture. ۲۰-۴۰ دلار.
Vegetation: grass، moss، dirt، leaves layered. مناسب outdoor environment. ۲۵-۴۵ دلار.
Sci-Fi panels: spaceship paneling، futuristic surface، cyberpunk emissive. ۳۰-۶۰ دلار.
Damaged surfaces: rust، moss growth، water damage، fire damage. layered effects. ۲۵-۵۰ دلار.
یک پک حرفهای ۵-۱۰ material معمولاً $۳۰-۸۰ دارد. بهجای صدها texture جدا، چند پک well-curated میتواند نیاز کل یک پروژه را پوشش دهد.
Import در Unreal Engine 5
فرض میکنیم Substance Plugin نصب است. import .sbsar:
گام ۱: فایل .sbsar را در Unreal Content Browser drag-drop کنید. یک پنجره Import Settings باز میشود.
گام ۲: Settings:
- Resolution: ۲۰۴۸×۲۰۴۸ default برای game. ۴K برای cinematic. ۵۱۲ یا ۱K برای mobile.
- Format: BC compressed (default) برای game. RAW برای cinematic high quality.
- Generate Material: اگر چک شود، Unreal automatic یک Material بسازد. توصیه: چک کنید برای fast workflow.
گام ۳: Import شد. در Content Browser چندین asset ایجاد میشود:
- Substance Graph Instance (procedural source)
- Material (قابل apply به mesh)
- Textures generated (Albedo، Normal، etc.)
گام ۴: Double-click روی Substance Graph Instance. پنجره parameters باز میشود. میتوانید parameters را در real-time تغییر دهید (color، tile، roughness). هر تغییر textures را regenerate میکند.
گام ۵: Apply Material به Static Mesh. drag Material روی mesh. material نشان داده میشود.
این فرآیند کلیدی است: شما میتوانید دهها variation از یک material ایجاد کنید فقط با تغییر parameters. هر variation جداگانه save میشود.
workflow عملی پروژه
سناریو: گیم medieval RPG در Unreal Engine 5 میسازید. میخواهید castle با texture realistic.
۱. خرید material: از سازه پک "Medieval Stone Castle" ($۴۰) را بخرید. در ۳۰ دقیقه فایل .sbsar تحویل داده میشود.
۲. Import: در Unreal، .sbsar را drag-drop. parameters را امتحان کنید: tile scale، dirt amount، moss growth.
۳. Variations: ۳ variation بسازید: clean stone (برای towers اصلی)، moss-covered (برای walls قدیمی)، destroyed (برای ruins). هر variation یک Material Instance.
۴. Apply به meshes: castle mesh بزرگ را slice کنید (towers، walls، floors، roof). هر slice material مناسب.
۵. Lighting test: زیر sun light، moonlight، torch light. material باید در همه شرایط realistic.
۶. Performance: profiler check کنید. اگر heavy است، resolution را drop کنید (۲K → ۱K).
این workflow برای یک scene محیطی متوسط ۲-۴ ساعت میبرد. بهجای ساخت texture دستی هفتهها.
Optimization برای game
Substance materials قدرتمند ولی گاهی performance heavy. optimization tips:
۱. Bake to static textures: اگر material parameters را تغییر نمیدهید بعد از development، Substance Graph را به static textures bake کنید. در Unreal: right-click روی Substance Graph → Bake. این روی runtime سریعتر است چون procedural overhead حذف میشود.
۲. Resolution مناسب: ۴K همیشه نه. برای character ۲K، environment ۱K-۲K، background mesh ۵۱۲. بسته به فاصله از camera.
۳. Material Instances: یک Master Material، چندین Instance با parameters متفاوت. ارزانتر از multiple Materials چون Unreal آنها را batch میکند.
۴. Texture streaming: Unreal automatic texture را در فاصله دور پایین میآورد. اگر قبل از engine 5 پروژه میسازید، manually settings را check کنید.
۵. Compression: BC7 (LOSSY but small) بهجای BC3 برای textures. تفاوت visual ناچیز اما file size بسیار کمتر.
برای gaming professional، optimization میتواند تفاوت بین ۳۰FPS uncomfortable و ۶۰FPS smooth باشد.