Zh/Env projectedtexture: Difference between revisions

From Valve Developer Community
< Zh
Jump to navigation Jump to search
(Created page with "{{lang|Env projectedtexture}} thumb|GMOD中一个投射一个多彩的[[texture|材质的效果。]] File:Global_shadow_mapping.jpg|thumb|[[Po...")
 
No edit summary
Line 31: Line 31:


==Flags==
==Flags==
*1: Enabled
*1: Enabled -启用
*2: Always Update (moving light) {{AS add}}
*2: Always Update (moving light) {{AS add}}



Revision as of 05:59, 16 October 2019

English (en)中文 (zh)Translate (Translate)
GMOD中一个投射一个多彩的材质的效果。
Portal 2 将其广泛运用于世界照明。

起源 env_projectedtexture是一个存在于所有的 起源 游戏自从 Template:Name=Half-Life 2: Episode One 以来的点实体。 它投射一个材质作为一个动态光源,可以影响这个世界上所有的对象。可选参见Shadow Mapping.


待完善: This template is currently using deprecated suf or {{Lang}}-based translations. Please use the main {{Code class}} instead, which uses {{Autolang}}.

在源代码中,它由 class CEnvProjectedTexture 代表,定义于 env_projectedtexture.cpp


注意事项

  • Valve's games only support one shadow map in the PVS at a time.
Note.png修复:It is possible to modify/remove this limit by following these instructions.
  • Textures used for projected textures require the flags Clamp S, Clamp T and Clamp All to avoid glitchy tiling. Also note, that VTFs are used directly and no VMT is needed.
Note.png注意:In Garry's Mod, there can be up to 9 active env_projectedtextures turned on with shadow mapping at a time. You can also increase this limit by putting -numshadowtextures # in the Steam launch parameters of Garry's Mod, where # is the number of shadow maps the game should allow.
  • Shadows are only rendered when the user is running with "High" shadow detail. If your options menu does not show the "High" shadow detail setting by default, you can add -force_vendor_id 0x10DE -force_device_id 0x1180 to the game's launch options for it to show up.
  • In multiplayer, mat_supportflashlight must be set to 1 for flashlights to work. By default these ConVars are disabled in Team Fortress 2, so this entity won't work there without special configuration.
  • Viewmodels won't receive light or shadows from projected textures. You can follow these instructions to fix this bug.
Icon-Bug.png错误:In Portal 2, some Nvidia graphics cards render white specks or squares on certain textures. To fix this, remove the bumpmap ($bumpmap or $ssbump) or $detail textures.  [todo tested in ?]
Video of said bug.
Icon-Bug.png错误:Parenting does not work with stock SDK code.  [todo tested in ?]
Cpp.png代码修复:This bug is fixable by following these instructions: Env_projectedtexture/fixes#Fixing Parenting.

Source 2007/2009 bugs

These have all been fixed in more recent engine builds.

Icon-Bug.png错误:The configurable texture value from Hammer is not accepted - will always default to the flashlight. You must use the SpotlightTexture input or you can also override the actual contents of the default VTF with a new one.  [todo tested in ?]
Cpp.png代码修复:You can fix this issue by following these instructions: Env_projectedtexture/fixes#Fix_configurable_texture_value_in_Hammer.
Note.png注意:The SpotlightTexture input has been disabled in the Portal 2 and CS:GO engines, and instead shows an error message: "SetSpotlightTexture is disabled. If you need this feature reimplemented, tell a programmer."
Icon-Bug.png错误:The entity cannot target another entity.  [todo tested in ?]
Cpp.png代码修复:This bug is fixable by following these instructions: env_projectedtexture/fixes#Fixing targeting.
Icon-Bug.png错误:Models will not receive their own shadows correctly unless using $bumpmap. Even a flat bump map is sufficient.  [todo tested in ?]
Icon-Bug.png错误:Causes issues if the entity overlaps a portal in Portal 1. Simply the projection overlapping a portal works fine.  [todo tested in ?]

Flags

Keyvalues

Target (target) ([todo internal name (i)]) <目标名(en)>
The entity will rotate to point at this target. Make sure you check the Always update flag if you set this.
FOV (lightfov) ([todo internal name (i)]) <浮点型(en)>
The field of view cone/pyramid at which the texture is projected.
证实:This keyvalue does not work in Alien Swarm.
NearZ (nearz) ([todo internal name (i)]) <浮点型(en)>
Objects closer than this will not receive the light from the projection.
FarZ (farz) ([todo internal name (i)]) <浮点型(en)>
Objects beyond this distance will not receive the light from the projection.
Enable Shadows (enableshadows) ([todo internal name (i)]) <布尔值(en)>
Enables/disables shadows from this projected texture. 0 = no, 1 = yes.
Shadow Quality (shadowquality) ([todo internal name (i)]) <Choices(en)>
Quality of shadows.
  • 0: Low (sharp, pixelized shadows)
  • 1: High (smooth edged shadows)
Light Only Target (lightonlytarget) ([todo internal name (i)]) <布尔值(en)>
Limit flashlight effect to only affect target entity.
Light World (lightworld) ([todo internal name (i)]) <布尔值(en)>
Control whether flashlight affects static world geometry. 0 = no, 1 = yes.
Light Color (lightcolor) ([todo internal name (i)]) <color255(en) + 整数(en)>
RGB light color and intensity
Camera Space (cameraspace) ([todo internal name (i)]) <整数(en)>
Angles are interpreted as being relative to camera.
Texture Name (texturename) ([todo internal name (i)]) <字符串(en)> 不存在于FGD!
The texture or material which this entity projects. Must be a VTF file (not VMT), relative to /materials.
Texture Frame (textureframe) ([todo internal name (i)]) <整数(en)> 不存在于FGD!
If the texture is animated, this is the frame it should begin on.
Simple Projection (simpleprojection) ([todo internal name (i)]) <布尔值(en)> (存在于自 异形丛生 以来) 不存在于FGD!
Indicates if this is a simple, non-light casting texture projection.
Simple Projection Size (projection_size) ([todo internal name (i)]) <浮点型(en)> (存在于自 异形丛生 以来) 不存在于FGD!
Simple Projection Rotation (projection_rotation) ([todo internal name (i)]) <浮点型(en)> (存在于自 异形丛生 以来) 不存在于FGD!
Brightness Scale (brightnessscale) ([todo internal name (i)]) <浮点型(en)> (存在于自 异形丛生 以来)
Scale the light color by this brightness.
Color Transition Time (colortransitiontime) ([todo internal name (i)]) <浮点型(en)> (存在于自 异形丛生 以来)
Amount of time it takes for a color change to occur. Higher numbers cause faster transitions.
Appearance (style) ([todo internal name (i)]) <choices> (存在于自 传送门2 以来)
Various Custom Appearance presets.
Note.png注意:Requires AlwaysUpdateOn to work.

Template:Light appearances

Custom Appearance (pattern) ([todo internal name (i)]) <字符串(en)> (存在于自 传送门2 以来)
Set a custom pattern of light brightness for this light. Pattern format is a string of characters, where a is total darkness, z fully bright. i.e. aaggnnttzz would be a steppy fade in from dark to light.
Default Appearance (defaultstyle) ([todo internal name (i)]) <字符串(en)> (存在于自 传送门2 以来)


Inputs

Note.png注意:In some FGDs, only TurnOn, TurnOff and FOV are present.
TurnOn
Turns on the texture.
TurnOff
Turns off the texture.
FOV <浮点型(en)>
Sets FOV.
EnableShadows <布尔值(en)>
Set the if shadows are enabled. 0 = no, 1 = yes.
SpotlightTexture <字符串(en)>
Sets the spotlight texture.
Target <字符串(en)>
Specify a new Target entity to point at.
CameraSpace <布尔值(en)>
Sets Camera Space.
LightOnlyTarget <布尔值(en)>
Sets Light Only Target.
Icon-Bug.png错误:Non-functional.  [todo tested in ?]
LightWorld <整数(en)>
Sets Light World. 0 = no, 1 = yes.
AlwaysUpdateOn  (存在于自 异形丛生 以来)
Turn on per frame updating (for moving lights).
AlwaysUpdateOff  (存在于自 异形丛生 以来)
Turn off per frame updating (for moving lights).
LightColor <color255(en)> (存在于自 异形丛生 以来)
Change the Light Color.
SetLightStyle <整数(en)> (存在于自 传送门2 以来)
Sets an Appearance. (see Appearance keyvalue above for possible values)
SetPattern <字符串(en)> (存在于自 传送门2 以来)
Sets Custom Appearance. (see Custom Appearance keyvalue above)
SetNearZ <浮点型(en)> (存在于自 传送门2 以来)
Sets NearZ.
SetFarZ <浮点型(en)> (存在于自 传送门2 以来)
Sets FarZ.


Outputs