Mostly Harmless
Difference between revisions of "Legacy:PolyFlags"
From Unreal Wiki, The Unreal Engine Documentation Site
m (+column "Bit", +wikitable, +PolyFlags 8 and 32) |
m (enhanced) |
||
| Line 1: | Line 1: | ||
In the properties of a [[Legacy:Brush|Brush]], under ''Brush -> PolyFlags'' you can give all surfaces of the brush default properties that override the [[Legacy:Surface Flags (UT)|Surface Flags (UT)]] in the [[Legacy:Surface Properties Window|Surface Properties window]]. | In the properties of a [[Legacy:Brush|Brush]], under ''Brush -> PolyFlags'' you can give all surfaces of the brush default properties that override the [[Legacy:Surface Flags (UT)|Surface Flags (UT)]] in the [[Legacy:Surface Properties Window|Surface Properties window]]. | ||
| − | In PolyFlags you have to enter a number, what follows is a list of the meaning of all the numbers. | + | In ''PolyFlags'' you have to enter a decimal number, what follows is a list of the meaning of all the numbers. |
To give a brush two or more properties at the same time, you need to make the sum of the numbers of both properties. For example if you want a Translucent + TwoSided brush, you have to use the number 4 + 256 = 260. | To give a brush two or more properties at the same time, you need to make the sum of the numbers of both properties. For example if you want a Translucent + TwoSided brush, you have to use the number 4 + 256 = 260. | ||
| Line 7: | Line 7: | ||
After you entered the number you need to rebuild to see the change. | After you entered the number you need to rebuild to see the change. | ||
| − | Here's the list: | + | Here's the list, mostly taken from ''Enum-Polyflags.h'': |
{|class="wikitable" | {|class="wikitable" | ||
| − | + | !Bit | |
| − | + | !Value (dec) | |
| − | + | !Value (hex) | |
| − | + | !Name | |
| − | + | !Description | |
| − | |- | + | |- style="background-color: lightgray" |
| + | | | ||
| + | |style="text-align: right"|0 | ||
| + | |style="text-align: right"|0x0 | ||
| | | | ||
| − | |||
| − | |||
|Use settings from Surface Properties for each individual surface of the brush. | |Use settings from Surface Properties for each individual surface of the brush. | ||
|- | |- | ||
| − | |style="text-align: right" |0 | + | |style="text-align: right"|0 |
| − | |style="text-align: right" |1 | + | |style="text-align: right"|1 |
| − | | | + | |style="text-align: right"|0x1 |
| − | | | + | |PF_Invisible |
| + | |Polygon is invisible. | ||
| + | |- style="background-color: lightgray" | ||
| + | |style="text-align: right"|1 | ||
| + | |style="text-align: right"|2 | ||
| + | |style="text-align: right"|0x2 | ||
| + | |PF_Masked | ||
| + | |Polygon should be drawn masked. Use for palettized textures to make the first color in the palette (in Paint Shop Pro at least) invisible, see [[Legacy:Color Blending#masked|Color Blending]]. | ||
|- | |- | ||
| − | |style="text-align: right" | | + | |style="text-align: right"|2 |
| − | |style="text-align: right" | | + | |style="text-align: right"|4 |
| − | | | + | |style="text-align: right"|0x4 |
| − | | | + | |PF_Translucent |
| + | |Darker parts of the texture become transparent, see [[Legacy:Color Blending#translucent|Color Blending]]. | ||
| + | |- style="background-color: lightgray" | ||
| + | |style="text-align: right"|3 | ||
| + | |style="text-align: right"|8 | ||
| + | |style="text-align: right"|0x8 | ||
| + | |PF_NotSolid | ||
| + | |Polygon is not solid doesn't block. | ||
|- | |- | ||
| − | |style="text-align: right" | | + | |style="text-align: right"|4 |
| − | |style="text-align: right" | | + | |style="text-align: right"|16 |
| − | | | + | |style="text-align: right"|0x10 |
| − | | | + | |PF_Environment |
| + | |Polygon should be drawn environment mapped. | ||
|- | |- | ||
| − | |style="text-align: right" | | + | |style="text-align: right"|4 |
| − | |style="text-align: right" | | + | |style="text-align: right"|16 |
| − | | | + | |style="text-align: right"|0x10 |
| − | | | + | |PF_ForceViewZone |
| + | |Force current iViewZone in OccludeBSP (reuse Environment flag). | ||
| + | |- style="background-color: lightgray" | ||
| + | |style="text-align: right"|5 | ||
| + | |style="text-align: right"|32 | ||
| + | |style="text-align: right"|0x20 | ||
| + | |PF_Semisolid | ||
| + | |Polygon is semi-solid, collision solid CSG nonsolid. | ||
|- | |- | ||
| − | |style="text-align: right" | | + | |style="text-align: right"|6 |
| − | |style="text-align: right" | | + | |style="text-align: right"|64 |
| − | | | + | |style="text-align: right"|0x40 |
| − | | | + | |PF_Modulated |
| + | |Greyer parts of the texture become transparent, see [[Legacy:Color Blending#modulated|Color Blending]]. | ||
| + | |- style="background-color: lightgray" | ||
| + | |style="text-align: right"|7 | ||
| + | |style="text-align: right"|128 | ||
| + | |style="text-align: right"|0x80 | ||
| + | |PF_FakeBackdrop | ||
| + | |Poly looks exactly like backdrop (parallax SkyBox visible through surface). | ||
|- | |- | ||
| − | |style="text-align: right" | | + | |style="text-align: right"|8 |
| − | |style="text-align: right" | | + | |style="text-align: right"|256 |
| − | | | + | |style="text-align: right"|0x100 |
| − | | | + | |PF_TwoSided |
| + | |Poly is visible from both sides. | ||
| + | |- style="background-color: lightgray" | ||
| + | |style="text-align: right"|9 | ||
| + | |style="text-align: right"|512 | ||
| + | |style="text-align: right"|0x200 | ||
| + | |PF_AutoUPan | ||
| + | |Automatically pans in U direction; change speed in [[Legacy:ZoneInfo|ZoneInfo]] or [[Legacy:LevelInfo|LevelInfo]] -> ZoneLight. | ||
|- | |- | ||
| − | |style="text-align: right" | | + | |style="text-align: right"|10 |
| − | |style="text-align: right" | | + | |style="text-align: right"|1024 |
| − | | | + | |style="text-align: right"|0x400 |
| − | | | + | |PF_AutoVPan |
| + | |Automatically pans in V direction; change speed in [[Legacy:ZoneInfo|ZoneInfo]] or [[Legacy:LevelInfo|LevelInfo]] -> ZoneLight. | ||
| + | |- style="background-color: lightgray" | ||
| + | |style="text-align: right"|11 | ||
| + | |style="text-align: right"|2048 | ||
| + | |style="text-align: right"|0x800 | ||
| + | |PF_NoSmooth | ||
| + | |Don't smooth textures. | ||
|- | |- | ||
| − | |style="text-align: right" | | + | |style="text-align: right"|12 |
| − | |style="text-align: right" | | + | |style="text-align: right"|4096 |
| − | | | + | |style="text-align: right"|0x1000 |
| − | | | + | |PF_BigWavy |
| + | |Poly has a big wavy pattern in it. | ||
|- | |- | ||
| − | |style="text-align: right" | | + | |style="text-align: right"|12 |
| − | |style="text-align: right" | | + | |style="text-align: right"|4096 |
| − | | | + | |style="text-align: right"|0x1000 |
| − | | | + | |PF_SpecialPoly |
| + | |Game-specific poly-level render control (reuse BigWavy flag). | ||
| + | |- style="background-color: lightgray" | ||
| + | |style="text-align: right"|13 | ||
| + | |style="text-align: right"|8192 | ||
| + | |style="text-align: right"|0x2000 | ||
| + | |PF_SmallWavy | ||
| + | |Small wavy pattern (for water/enviro reflection). | ||
|- | |- | ||
| − | |style="text-align: right" | | + | |style="text-align: right"|14 |
| − | |style="text-align: right" | | + | |style="text-align: right"|16384 |
| − | | | + | |style="text-align: right"|0x4000 |
| − | | | + | |PF_Flat |
| + | |Flat surface. | ||
| + | |- style="background-color: lightgray" | ||
| + | |style="text-align: right"|15 | ||
| + | |style="text-align: right"|32768 | ||
| + | |style="text-align: right"|0x8000 | ||
| + | |PF_LowShadowDetail | ||
| + | |Reduces shadow detail; in conjunction with High Shadow Detail (below), makes extra low shadow detail | ||
|- | |- | ||
| − | |style="text-align: right" | | + | |style="text-align: right"|16 |
| − | |style="text-align: right" | | + | |style="text-align: right"|65536 |
| − | | | + | |style="text-align: right"|0x10000 |
| − | | | + | |PF_NoMerge |
| + | |Don't merge poly's nodes before lighting when rendering. | ||
| + | |- style="background-color: lightgray" | ||
| + | |style="text-align: right"|17 | ||
| + | |style="text-align: right"|131072 | ||
| + | |style="text-align: right"|0x20000 | ||
| + | |PF_CloudWavy | ||
| + | |Polygon appears wavy like clouds. | ||
|- | |- | ||
| − | |style="text-align: right" | | + | |style="text-align: right"|18 |
| − | |style="text-align: right" | | + | |style="text-align: right"|262144 |
| − | | | + | |style="text-align: right"|0x40000 |
| − | | | + | |PF_DirtyShadows |
| + | |Dirty shadows. | ||
| + | |- style="background-color: lightgray" | ||
| + | |style="text-align: right"|19 | ||
| + | |style="text-align: right"|524288 | ||
| + | |style="text-align: right"|0x80000 | ||
| + | |PF_BrightCorners | ||
| + | |Brighten convex corners; no dark shadows at the edges of the surface. | ||
|- | |- | ||
| − | |style="text-align: right" | | + | |style="text-align: right"|20 |
| − | |style="text-align: right" | | + | |style="text-align: right"|1048576 |
| − | |Special | + | |style="text-align: right"|0x100000 |
| − | | | + | |PF_SpecialLit |
| + | |Surface only gets light from [[Legacy:Special Lit|Special Lit]] lights. | ||
| + | |- style="background-color: lightgray" | ||
| + | |style="text-align: right"|21 | ||
| + | |style="text-align: right"|2097152 | ||
| + | |style="text-align: right"|0x200000 | ||
| + | |PF_Gouraud | ||
| + | |Gouraud shaded. | ||
| + | |- style="background-color: lightgray" | ||
| + | |style="text-align: right"|21 | ||
| + | |style="text-align: right"|2097152 | ||
| + | |style="text-align: right"|0x200000 | ||
| + | |PF_NoBoundRejection | ||
| + | |Disable bound rejection in OccludeBSP (reuse Gourard flag). | ||
|- | |- | ||
| − | |style="text-align: right" | | + | |style="text-align: right"|22 |
| − | |style="text-align: right" | | + | |style="text-align: right"|4194304 |
| − | | | + | |style="text-align: right"|0x400000 |
| − | | | + | |PF_Unlit |
| + | |Surface ignores lighting and is full bright. | ||
| + | |- style="background-color: lightgray" | ||
| + | |style="text-align: right"|23 | ||
| + | |style="text-align: right"|8388608 | ||
| + | |style="text-align: right"|0x800000 | ||
| + | |PF_HighShadowDetail | ||
| + | |Enhances shadow detail. | ||
|- | |- | ||
| − | |style="text-align: right" | | + | |style="text-align: right"|24 |
| − | |style="text-align: right" | | + | |style="text-align: right"|16777216 |
| − | | | + | |style="text-align: right"|0x1000000 |
| − | | | + | |PF_Memorized |
| + | |Editor: Poly is remembered. | ||
|- | |- | ||
| − | |style="text-align: right" | | + | |style="text-align: right"|24 |
| − | |style="text-align: right" | | + | |style="text-align: right"|16777216 |
| − | | | + | |style="text-align: right"|0x1000000 |
| − | | | + | |PF_RenderHint |
| + | |Internal: Rendering optimization hint. | ||
| + | |- style="background-color: lightgray" | ||
| + | |style="text-align: right"|25 | ||
| + | |style="text-align: right"|33554432 | ||
| + | |style="text-align: right"|0x2000000 | ||
| + | |PF_Selected | ||
| + | |Editor: Poly is selected. | ||
|- | |- | ||
| − | |style="text-align: right" | | + | |style="text-align: right"|26 |
| − | |style="text-align: right" | | + | |style="text-align: right"|67108864 |
| − | | | + | |style="text-align: right"|0x4000000 |
| − | | | + | |PF_Portal |
| + | |Portal between iZones. | ||
| + | |- style="background-color: lightgray" | ||
| + | |style="text-align: right"|27 | ||
| + | |style="text-align: right"|134217728 | ||
| + | |style="text-align: right"|0x8000000 | ||
| + | |PF_Mirrored | ||
| + | |Reflective surface. | ||
|- | |- | ||
| − | |style="text-align: right" | | + | |style="text-align: right"|28 |
| − | |style="text-align: right" | | + | |style="text-align: right"|268435456 |
| − | | | + | |style="text-align: right"|0x10000000 |
| + | |PF_Highlighted | ||
| + | |Editor: Poly is highlighted. | ||
| + | |- style="background-color: lightgray" | ||
| + | |style="text-align: right"|29 | ||
| + | |style="text-align: right"|536870912 | ||
| + | |style="text-align: right"|0x20000000 | ||
| | | | ||
| + | |(unused?) | ||
|- | |- | ||
| − | |style="text-align: right" | | + | |style="text-align: right"|30 |
| − | |style="text-align: right" | | + | |style="text-align: right"|1073741824 |
| − | | | + | |style="text-align: right"|0x40000000 |
| − | | | + | |PF_FlatShaded |
| + | |FPoly has been split by SplitPolyWithPlane. | ||
|- | |- | ||
| − | |style="text-align: right" | | + | |style="text-align: right"|30 |
| − | |style="text-align: right" | | + | |style="text-align: right"|1073741824 |
| − | | | + | |style="text-align: right"|0x40000000 |
| − | | | + | |PF_EdProcessed |
| + | |Internal: FPoly was already processed in editorBuildFPolys. | ||
|- | |- | ||
| − | |style="text-align: right" | | + | |style="text-align: right"|30 |
| − | |style="text-align: right" | | + | |style="text-align: right"|1073741824 |
| − | | | + | |style="text-align: right"|0x40000000 |
| − | | | + | |PF_RenderFog |
| + | |Internal: Render with fogmapping. | ||
| + | |- style="background-color: lightgray" | ||
| + | |style="text-align: right"|31 | ||
| + | |style="text-align: right"|2147483648 | ||
| + | |style="text-align: right"|0x80000000 | ||
| + | |PF_EdCut | ||
| + | |Internal: FPoly has been split by SplitPolyWithPlane. | ||
| + | |- style="background-color: lightgray" | ||
| + | |style="text-align: right"|31 | ||
| + | |style="text-align: right"|2147483648 | ||
| + | |style="text-align: right"|0x80000000 | ||
| + | |PF_Occlude | ||
| + | |Internal: Occludes even if PF_NoOcclude. | ||
| + | |} | ||
| + | |||
| + | == Named combinations of flags == | ||
| + | {| | ||
|- | |- | ||
| − | | | + | | PF_NoOcclude = || PF_Masked {{!}} PF_Translucent {{!}} PF_Invisible {{!}} PF_Modulated |
| − | | | + | |- |
| − | | | + | | PF_NoEdit = || PF_Memorized {{!}} PF_Selected {{!}} PF_EdProcessed {{!}} PF_NoMerge {{!}} PF_EdCut |
| − | | | + | |- |
| + | | PF_NoImport = || PF_NoEdit {{!}} PF_NoMerge {{!}} PF_Memorized {{!}} PF_Selected {{!}} PF_EdProcessed {{!}} PF_EdCut | ||
|- | |- | ||
| − | | | + | | PF_AddLast = || PF_Semisolid {{!}} PF_NotSolid |
| − | | | + | |
| − | + | ||
| − | + | ||
|- | |- | ||
| − | | | + | | PF_NoAddToBSP = || PF_EdCut {{!}} PF_EdProcessed {{!}} PF_Selected {{!}} PF_Memorized |
| − | | | + | |- |
| − | | | + | | PF_NoShadows = || PF_Unlit {{!}} PF_Invisible {{!}} PF_Environment {{!}} PF_FakeBackdrop |
| − | | | + | |- |
| + | | PF_Transient = || PF_Highlighted | ||
|} | |} | ||
| + | |||
[[Category:Legacy Mapping|{{PAGENAME}}]] | [[Category:Legacy Mapping|{{PAGENAME}}]] | ||
Latest revision as of 18:07, 12 August 2016
In the properties of a Brush, under Brush -> PolyFlags you can give all surfaces of the brush default properties that override the Surface Flags (UT) in the Surface Properties window.
In PolyFlags you have to enter a decimal number, what follows is a list of the meaning of all the numbers.
To give a brush two or more properties at the same time, you need to make the sum of the numbers of both properties. For example if you want a Translucent + TwoSided brush, you have to use the number 4 + 256 = 260.
After you entered the number you need to rebuild to see the change.
Here's the list, mostly taken from Enum-Polyflags.h:
| Bit | Value (dec) | Value (hex) | Name | Description |
|---|---|---|---|---|
| 0 | 0x0 | Use settings from Surface Properties for each individual surface of the brush. | ||
| 0 | 1 | 0x1 | PF_Invisible | Polygon is invisible. |
| 1 | 2 | 0x2 | PF_Masked | Polygon should be drawn masked. Use for palettized textures to make the first color in the palette (in Paint Shop Pro at least) invisible, see Color Blending. |
| 2 | 4 | 0x4 | PF_Translucent | Darker parts of the texture become transparent, see Color Blending. |
| 3 | 8 | 0x8 | PF_NotSolid | Polygon is not solid doesn't block. |
| 4 | 16 | 0x10 | PF_Environment | Polygon should be drawn environment mapped. |
| 4 | 16 | 0x10 | PF_ForceViewZone | Force current iViewZone in OccludeBSP (reuse Environment flag). |
| 5 | 32 | 0x20 | PF_Semisolid | Polygon is semi-solid, collision solid CSG nonsolid. |
| 6 | 64 | 0x40 | PF_Modulated | Greyer parts of the texture become transparent, see Color Blending. |
| 7 | 128 | 0x80 | PF_FakeBackdrop | Poly looks exactly like backdrop (parallax SkyBox visible through surface). |
| 8 | 256 | 0x100 | PF_TwoSided | Poly is visible from both sides. |
| 9 | 512 | 0x200 | PF_AutoUPan | Automatically pans in U direction; change speed in ZoneInfo or LevelInfo -> ZoneLight. |
| 10 | 1024 | 0x400 | PF_AutoVPan | Automatically pans in V direction; change speed in ZoneInfo or LevelInfo -> ZoneLight. |
| 11 | 2048 | 0x800 | PF_NoSmooth | Don't smooth textures. |
| 12 | 4096 | 0x1000 | PF_BigWavy | Poly has a big wavy pattern in it. |
| 12 | 4096 | 0x1000 | PF_SpecialPoly | Game-specific poly-level render control (reuse BigWavy flag). |
| 13 | 8192 | 0x2000 | PF_SmallWavy | Small wavy pattern (for water/enviro reflection). |
| 14 | 16384 | 0x4000 | PF_Flat | Flat surface. |
| 15 | 32768 | 0x8000 | PF_LowShadowDetail | Reduces shadow detail; in conjunction with High Shadow Detail (below), makes extra low shadow detail |
| 16 | 65536 | 0x10000 | PF_NoMerge | Don't merge poly's nodes before lighting when rendering. |
| 17 | 131072 | 0x20000 | PF_CloudWavy | Polygon appears wavy like clouds. |
| 18 | 262144 | 0x40000 | PF_DirtyShadows | Dirty shadows. |
| 19 | 524288 | 0x80000 | PF_BrightCorners | Brighten convex corners; no dark shadows at the edges of the surface. |
| 20 | 1048576 | 0x100000 | PF_SpecialLit | Surface only gets light from Special Lit lights. |
| 21 | 2097152 | 0x200000 | PF_Gouraud | Gouraud shaded. |
| 21 | 2097152 | 0x200000 | PF_NoBoundRejection | Disable bound rejection in OccludeBSP (reuse Gourard flag). |
| 22 | 4194304 | 0x400000 | PF_Unlit | Surface ignores lighting and is full bright. |
| 23 | 8388608 | 0x800000 | PF_HighShadowDetail | Enhances shadow detail. |
| 24 | 16777216 | 0x1000000 | PF_Memorized | Editor: Poly is remembered. |
| 24 | 16777216 | 0x1000000 | PF_RenderHint | Internal: Rendering optimization hint. |
| 25 | 33554432 | 0x2000000 | PF_Selected | Editor: Poly is selected. |
| 26 | 67108864 | 0x4000000 | PF_Portal | Portal between iZones. |
| 27 | 134217728 | 0x8000000 | PF_Mirrored | Reflective surface. |
| 28 | 268435456 | 0x10000000 | PF_Highlighted | Editor: Poly is highlighted. |
| 29 | 536870912 | 0x20000000 | (unused?) | |
| 30 | 1073741824 | 0x40000000 | PF_FlatShaded | FPoly has been split by SplitPolyWithPlane. |
| 30 | 1073741824 | 0x40000000 | PF_EdProcessed | Internal: FPoly was already processed in editorBuildFPolys. |
| 30 | 1073741824 | 0x40000000 | PF_RenderFog | Internal: Render with fogmapping. |
| 31 | 2147483648 | 0x80000000 | PF_EdCut | Internal: FPoly has been split by SplitPolyWithPlane. |
| 31 | 2147483648 | 0x80000000 | PF_Occlude | Internal: Occludes even if PF_NoOcclude. |
Named combinations of flags[edit]
| PF_NoOcclude = | PF_Translucent | PF_Invisible | PF_Modulated |
| PF_NoEdit = | PF_Selected | PF_EdProcessed | PF_NoMerge | PF_EdCut |
| PF_NoImport = | PF_NoMerge | PF_Memorized | PF_Selected | PF_EdProcessed | PF_EdCut |
| PF_AddLast = | PF_NotSolid |
| PF_NoAddToBSP = | PF_EdProcessed | PF_Selected | PF_Memorized |
| PF_NoShadows = | PF_Invisible | PF_Environment | PF_FakeBackdrop |
| PF_Transient = | PF_Highlighted |