1---2name: texturing3description: UV mapping, texture painting, PBR materials, and shader basics4---5
6# Texturing
7
8## UV Mapping Techniques
9
10### UV Basics
11- **UV Coordinates**: 2D coordinates mapping 3D geometry to 2D texture space
12- **UV Unwrapping**: Process of flattening 3D geometry into 2D space
13- **UV Seams**: Cuts in UV layout to enable flattening
14- **UV Islands**: Connected groups of UV faces
15- **UV Density**: Consistency of texel density across model
16- **UV Space**: 0-1 coordinate space for UV mapping
17
18### UV Unwrapping Methods
19- **Automatic Unwrapping**: Algorithmic UV generation
20- **Manual Unwrapping**: Manual seam placement and unfolding
21- **Projection Mapping**: Project UVs from different views
22- **Cylindrical Mapping**: Wrap UVs around cylinder
23- **Spherical Mapping**: Wrap UVs around sphere
24- **Box Mapping**: Project UVs from 6 directions
25
26### UV Best Practices
27- **Minimize Distortion**: Reduce stretching and compression
28- **Seam Placement**: Place seams in less visible areas
29- **UV Density**: Maintain consistent texel density
30- **UV Packing**: Pack UV islands efficiently
31- **Multiple UV Sets**: Create additional UV sets for lightmaps, baking
32- **UV Organization**: Organize UVs logically for texture painting
33
34## Texture Painting Workflows
35
36### Texture Painting Tools
37- **Brush Tools**: Paint, airbrush, smudge, blur
38- **Stencils**: Use stencils for precise painting
39- **Clone Tool**: Clone texture from one area to another
40- **Fill Tool**: Fill areas with color or pattern
41- **Masking**: Mask areas to protect from painting
42- **Layers**: Use layers for non-destructive painting
43
44### Texture Types
45- **Base Color**: Main color of the surface
46- **Normal Map**: Surface detail and depth
47- **Roughness Map**: Surface roughness for PBR
48- **Metallic Map**: Metallic vs non-metallic surfaces
49- **Ambient Occlusion (AO)**: Self-shadowing and contact shadows
50- **Emission Map**: Emissive/glowing areas
51- **Height/Displacement Map**: Actual geometric displacement
52
53### Texture Painting Techniques
54- **Hand Painting**: Paint textures by hand
55- **Photo Bashing**: Combine photos for textures
56- **Procedural Generation**: Generate textures procedurally
57- **Baking**: Bake high-poly detail to textures
58- **Texture Projection**: Project textures onto model
59- **Texture Synthesis**: Generate textures from samples
60
61## PBR (Physically Based Rendering) Materials
62
63### PBR Fundamentals
64- **Physically Based**: Based on real-world physics
65- **Energy Conservation**: Light energy is conserved
66- **Microsurface Theory**: Surfaces have microscopic roughness
67- **Fresnel Effect**: Reflectivity varies with viewing angle
68- **Metallic Workflow**: Metallic vs non-metallic surfaces
69- **Specular Workflow**: Separate specular map
70
71### PBR Texture Maps
72- **Albedo/Diffuse**: Base color without lighting
73- **Normal**: Surface normal for lighting calculation
74- **Roughness**: Surface roughness for specular reflection
75- **Metallic**: Metallic vs non-metallic surface
76- **Ambient Occlusion**: Self-shadowing and contact shadows
77- **Emission**: Emissive/glowing areas
78
79### PBR Material Properties
80- **Albedo**: Base color of the surface
81- **Roughness**: How rough or smooth the surface is
82- **Metallic**: Whether the surface is metallic
83- **Normal**: Surface detail and orientation
84- **Emission**: Whether the surface emits light
85- **Opacity**: Whether the surface is transparent
86
87## Substance Painter and Designer Workflows
88
89### Substance Painter
90- **Texture Painting**: Paint textures in 3D space
91- **Smart Materials**: Procedural materials with smart masks
92- **Layer Stack**: Non-destructive layer system
93- **Baking**: Bake high-poly detail to textures
94- **Atlas Generation**: Combine multiple textures into single atlas
95- **Export**: Export to various formats and engines
96
97### Substance Designer
98- **Node-Based**: Create materials with node graph
99- **Procedural**: Generate textures procedurally
100- **Filters**: Apply filters to textures
101- **Gradients**: Create gradients for materials
102- **Pattern Generators**: Generate patterns for textures
103- **Export**: Export to various formats and engines
104
105### Substance Best Practices
106- **Non-Destructive**: Use layers and masks for non-destructive workflow
107- **Smart Materials**: Use smart materials for efficiency
108- **Baking**: Bake high-poly detail for quality
109- **Organization**: Organize layers and materials logically
110- **Export Settings**: Configure export settings for target engine
111- **Performance**: Optimize textures for performance
112
113## Shader Basics and Node Graphs
114
115### Shader Fundamentals
116- **Shaders**: Programs that determine how surfaces are rendered
117- **Vertex Shaders**: Process vertices and pass data to fragment shaders
118- **Fragment Shaders**: Process fragments (pixels) and determine color
119- **Shader Properties**: Exposed parameters for artists
120- **Shader Inputs**: Textures, colors, values
121- **Shader Outputs**: Final color and other outputs
122
123### Node Graph Shaders
124- **Node-Based**: Create shaders visually with nodes
125- **Nodes**: Individual operations in shader graph
126- **Connections**: Connect nodes to create shader logic
127- **Inputs**: Inputs to nodes (textures, colors, values)
128- **Outputs**: Outputs from nodes (colors, values)
129- **Sub-Graphs**: Reusable shader logic
130
131### Common Shader Nodes
132- **Texture Sample**: Sample texture at UV coordinates
133- **Math Nodes**: Mathematical operations
134- **Color Nodes**: Color operations
135- **Vector Nodes**: Vector operations
136- **Lerp**: Linear interpolation between values
137- **Fresnel**: Fresnel effect based on viewing angle
138
139## Texture Atlasing and Optimization
140
141### Texture Atlasing
142- **Atlas Generation**: Combine multiple textures into single atlas
143- **UV Packing**: Pack UVs efficiently in atlas
144- **Texture Channels**: Pack multiple maps into single texture channels
145- **Mipmaps**: Generate mipmaps for distance rendering
146- **Texture Arrays**: Use texture arrays for multiple textures
147
148### Texture Optimization
149- **Resolution**: Reduce texture resolution where appropriate
150- **Format**: Use efficient texture formats (ASTC, ETC2, BC7)
151- **Compression**: Apply texture compression
152- **Mipmaps**: Generate mipmaps for distance rendering
153- **Texture Streaming**: Stream textures based on distance
154- **Texture Budget**: Manage texture memory budget
155
156### Platform-Specific Optimization
157- **Mobile**: Lower resolution, simpler formats
158- **Console**: Medium optimization, balance quality and performance
159- **PC**: Higher quality, more complex textures
160- **VR**: High frame rate priority, reduced complexity
161- **Web**: Efficient formats, progressive loading
162
163## Texture Export and Integration
164
165### Export Formats
166- **PNG**: Lossless compression, good for UI and transparency
167- **JPG**: Lossy compression, good for photos
168- **TGA**: Uncompressed, good for intermediate files
169- **PSD**: Photoshop format, good for editing
170- **EXR**: High dynamic range, good for baking
171
172### Export Settings
173- **Resolution**: Set appropriate resolution
174- **Color Space**: Set correct color space (sRGB, Linear)
175- **Alpha Channel**: Include or exclude alpha channel
176- **Mipmaps**: Generate or exclude mipmaps
177- **Compression**: Apply or exclude compression
178
179### Integration
180- **Unity**: Import textures, set import settings, assign to materials
181- **Unreal**: Import textures, set import settings, assign to materials
182- **Godot**: Import textures, set import settings, assign to materials
183- **Web**: Use Three.js or Babylon.js with textures
184- **Custom**: Parse texture data and apply to custom systems