Smoothing groups: Difference between revisions
Jump to navigation
Jump to search
Note:Edges must have contiguous texture UVs for smooth shading to have a noticeable effect.
Bug:In
Source 2013 and possibly other engine branches, smoothing groups are not properly written for func_detail brush faces. This is fixed in the
Slammin' Source Map Tools and
Mapbase versions of VBSP, and code for this fix can be found in pull request 391 on GitHub. [todo tested in ?]
Important:Hammer's smoothing groups only affect brushes, not displacements! Displacements which are sewn together are always shaded smooth; this can be worked around by making the texture UVs non-contiguous (such as by adjusting the texture alignment or scale by a minuscule amount).
SirYodaJedi (talk | contribs) m (→Auto Smoothing) |
SirYodaJedi (talk | contribs) (Note about displacement smoothing and the importance of proper UVs) |
||
Line 5: | Line 5: | ||
When a number of adjacent surfaces are assigned to the same [[Smoothing group]], the ''Rendering Engine'' will "soften" the light and shadow across each vertex or edge shared by the group. This makes the geometry seem smoother when viewed from most angles. It does not soften the profile or silhouette of the object. | When a number of adjacent surfaces are assigned to the same [[Smoothing group]], the ''Rendering Engine'' will "soften" the light and shadow across each vertex or edge shared by the group. This makes the geometry seem smoother when viewed from most angles. It does not soften the profile or silhouette of the object. | ||
{{note|Edges must have contiguous texture [[UV]]s for smooth shading to have a noticeable effect.}} | |||
{{bug|In {{src13|4}} and possibly other engine branches, [[smoothing groups]] are not properly written for {{ent|func_detail}} brush faces. This is fixed in the {{slammin|2}} and {{mapbase|2}} versions of VBSP, and code for this fix can be found in [https://github.com/ValveSoftware/source-sdk-2013/pull/391 pull request 391 on GitHub].}} | {{bug|In {{src13|4}} and possibly other engine branches, [[smoothing groups]] are not properly written for {{ent|func_detail}} brush faces. This is fixed in the {{slammin|2}} and {{mapbase|2}} versions of VBSP, and code for this fix can be found in [https://github.com/ValveSoftware/source-sdk-2013/pull/391 pull request 391 on GitHub].}} | ||
{{modernImportant|Hammer's smoothing groups only affect [[brush]]es, not [[displacement]]s! Displacements which are sewn together are always shaded smooth; this can be worked around by making the texture UVs non-contiguous (such as by adjusting the texture alignment or scale by a minuscule amount).}} | |||
==Guidelines== | ==Guidelines== |
Revision as of 08:12, 2 February 2024

The cylinder on the left is not smoothed.
The cylinder in the middle is smoothed with the default lightmap scale of 16.
The cylinder on the right is smoothed with a lightmap scale of 8.
The cylinder in the middle is smoothed with the default lightmap scale of 16.
The cylinder on the right is smoothed with a lightmap scale of 8.
Vertex Smoothing simply uses Vertex normals (vectors) as if they were Surface normals to generate a kind of pseudo-subdivision surface for the Lighting shader to work with. This is generally considered a form of phong shading, not to be confused phong speculars.
When a number of adjacent surfaces are assigned to the same Smoothing group, the Rendering Engine will "soften" the light and shadow across each vertex or edge shared by the group. This makes the geometry seem smoother when viewed from most angles. It does not soften the profile or silhouette of the object.






Guidelines
- Brush geometry must be manually assigned to a Smoothing Group in Hammer. Model geometry smoothing data is configured in the model editor before SMD export.
Auto Smoothing
- In at least some games, VRAD will auto smooth angles (between faces without smoothing groups) which are less than or equal to the -smooth parameter (default 45).
Confirm:Any games other than CSGO?