I search for solutions in this order: Past Code, Unreal Source, Wiki, BUF, groups.yahoo, google, screaming at monitor. – RegularX

Difference between revisions of "Legacy:PolyFlags"

From Unreal Wiki, The Unreal Engine Documentation Site
Jump to: navigation, search
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
|'''Bit'''
+
!Value (dec)
|'''Value'''
+
!Value (hex)
|'''Name'''
+
!Name
|'''Description'''
+
!Description
|-
+
|- style="background-color: lightgray"
 +
|
 +
|style="text-align: right"|0
 +
|style="text-align: right"|0x0
 
|
 
|
|style="text-align: right" |0
 
|Default
 
 
|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
|Invisible
+
|style="text-align: right"|0x1
|All surfaces of the brush are invisible
+
|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" |1
+
|style="text-align: right"|2
|style="text-align: right" |2
+
|style="text-align: right"|4
|Masked
+
|style="text-align: right"|0x4
|Use for palettized textures to make the first color in the palette (in Paint Shop Pro at least) invisible, see [[Legacy:Color Blending|Color Blending]]
+
|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" |2
+
|style="text-align: right"|4
|style="text-align: right" |4
+
|style="text-align: right"|16
|Translucent
+
|style="text-align: right"|0x10
|Darker parts of the texture become transparent, see [[Legacy:Color Blending|Color Blending]]
+
|PF_Environment
 +
|Polygon should be drawn environment mapped.
 
|-
 
|-
|style="text-align: right" |3
+
|style="text-align: right"|4
|style="text-align: right" |8
+
|style="text-align: right"|16
|Non-solid brush
+
|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" |4
+
|style="text-align: right"|6
|style="text-align: right" |16
+
|style="text-align: right"|64
|Force View Zone
+
|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" |5
+
|style="text-align: right"|8
|style="text-align: right" |32
+
|style="text-align: right"|256
|Semi-solid brush
+
|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" |6
+
|style="text-align: right"|10
|style="text-align: right" |64
+
|style="text-align: right"|1024
|Modulated
+
|style="text-align: right"|0x400
|Greyer parts of the texture become transparent, see [[Legacy:Color Blending|Color Blending]]
+
|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" |7
+
|style="text-align: right"|12
|style="text-align: right" |128
+
|style="text-align: right"|4096
|Fake Backdrop
+
|style="text-align: right"|0x1000
|Parallax [[Legacy:SkyBox|SkyBox]] visible through surface
+
|PF_BigWavy
 +
|Poly has a big wavy pattern in it.
 
|-
 
|-
|style="text-align: right" |8
+
|style="text-align: right"|12
|style="text-align: right" |256
+
|style="text-align: right"|4096
|Two Sided
+
|style="text-align: right"|0x1000
|Surfaces display their texture from both sides
+
|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" |9
+
|style="text-align: right"|14
|style="text-align: right" |512
+
|style="text-align: right"|16384
|U-Pan
+
|style="text-align: right"|0x4000
|Texture moves in U direction, change speed in [[Legacy:ZoneInfo|ZoneInfo]] or [[Legacy:LevelInfo|LevelInfo]] -> ZoneLight
+
|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" |10
+
|style="text-align: right"|16
|style="text-align: right" |1024
+
|style="text-align: right"|65536
|V-Pan
+
|style="text-align: right"|0x10000
|Texture moves in V direction, change speed in [[Legacy:ZoneInfo|ZoneInfo]] or [[Legacy:LevelInfo|LevelInfo]] -> ZoneLight
+
|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" |11
+
|style="text-align: right"|18
|style="text-align: right" |2048
+
|style="text-align: right"|262144
|No Smooth
+
|style="text-align: right"|0x40000
|Square pixels
+
|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" |12
+
|style="text-align: right"|20
|style="text-align: right" |4096
+
|style="text-align: right"|1048576
|Special Poly
+
|style="text-align: right"|0x100000
|Doesn't do a lot
+
|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" |13
+
|style="text-align: right"|22
|style="text-align: right" |8192
+
|style="text-align: right"|4194304
|Small Wavy
+
|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" |14
+
|style="text-align: right"|24
|style="text-align: right" |16384
+
|style="text-align: right"|16777216
|
+
|style="text-align: right"|0x1000000
|
+
|PF_Memorized
 +
|Editor: Poly is remembered.
 
|-
 
|-
|style="text-align: right" |15
+
|style="text-align: right"|24
|style="text-align: right" |32768
+
|style="text-align: right"|16777216
|Low Shadow Detail
+
|style="text-align: right"|0x1000000
|Reduces shadow detail; in conjunction with ''High Shadow Detail'' (below), makes extra low shadow detail
+
|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" |16
+
|style="text-align: right"|26
|style="text-align: right" |65536
+
|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" |17
+
|style="text-align: right"|28
|style="text-align: right" |131072
+
|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" |18
+
|style="text-align: right"|30
|style="text-align: right" |262144
+
|style="text-align: right"|1073741824
|Dirty Shadows
+
|style="text-align: right"|0x40000000
|
+
|PF_FlatShaded
 +
|FPoly has been split by SplitPolyWithPlane. 
 
|-
 
|-
|style="text-align: right" |19
+
|style="text-align: right"|30
|style="text-align: right" |524288
+
|style="text-align: right"|1073741824
|Bright Corners
+
|style="text-align: right"|0x40000000
|No dark  shadows at the edges of the surface
+
|PF_EdProcessed
 +
|Internal: FPoly was already processed in editorBuildFPolys.
 
|-
 
|-
|style="text-align: right" |20
+
|style="text-align: right"|30
|style="text-align: right" |1048576
+
|style="text-align: right"|1073741824
|Special Lit
+
|style="text-align: right"|0x40000000
|Surface only gets light from [[Legacy:Special Lit|Special Lit]] lights
+
|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 ==
 +
{|
 
|-
 
|-
|style="text-align: right" |21
+
| PF_NoOcclude = || PF_Masked {{!}} PF_Translucent {{!}} PF_Invisible {{!}} PF_Modulated
|style="text-align: right" |2097152
+
|-
|No Bounds Reject
+
| 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
 
|-
 
|-
|style="text-align: right" |22
+
| PF_AddLast = || PF_Semisolid {{!}} PF_NotSolid
|style="text-align: right" |4194304
+
|Unlit
+
|Surface ignores lighting and is full bright
+
 
|-
 
|-
|style="text-align: right" |23
+
| PF_NoAddToBSP = || PF_EdCut {{!}} PF_EdProcessed {{!}} PF_Selected {{!}} PF_Memorized
|style="text-align: right" |8388608
+
|-
|High Shadow Detail
+
| PF_NoShadows = || PF_Unlit {{!}} PF_Invisible {{!}} PF_Environment {{!}} PF_FakeBackdrop
|Enhances shadow detail
+
|-
 +
| PF_Transient = || PF_Highlighted
 
|}
 
|}
 +
  
 
[[Category:Legacy Mapping|{{PAGENAME}}]]
 
[[Category:Legacy Mapping|{{PAGENAME}}]]

Latest revision as of 17: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