Zh/Env projectedtexture: Difference between revisions
< Zh
Jump to navigation
Jump to search
mNo edit summary |
mNo edit summary |
||
Line 1: | Line 1: | ||
{{lang|Env projectedtexture}} | {{lang|Env projectedtexture}} | ||
[[File:Env projectedtexture appearances.jpg|thumb|Env_projectedtexture有着不同的外观]] | [[File:Env projectedtexture appearances.jpg|thumb|Env_projectedtexture有着不同的外观]] | ||
[[File:Projected texture.jpg|thumb|在[[Garry's Mod|Gmod]]中投射一个彩色[[texture|纹理]]。]] | [[File:Projected texture.jpg|thumb|在[[Garry's Mod|Gmod]]中投射一个彩色[[texture|纹理]]。]] |
Revision as of 18:21, 24 December 2021

传送门2大量使用投射纹理作为地图光照
env_projectedtexture
是一个存在于所有的 起源 游戏自从 Template:Name=Half-Life 2: Episode One 以来的点实体。它投射一个纹理作为一个动态光源,可以影响地图内所有的物体。还可以选择使用阴影贴图。 投射纹理不像其他光照实体的光照一样是预先生成的,这种光是在游戏内实时计算的,地图本身不需要经过VRAD处理就可以使用。
待完善: 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
。
注意事项与Bug修复
- V社的游戏仅支持在同一时间内在PVS里渲染一个阴影贴图
- Template:Note:zh-cn
- Template:Warning:zh-cn
修复:可以遵循该教程修改/删除此限制。

env_projectedtexture
s。你还可以在启动参数中添加-numshadowtextures #
以提高上限。 # 是游戏应允许的阴影贴图数量。- 仅当玩家的阴影质量设置为“高”时才能显示投射纹理。如果您的阴影质量设置里不显示这一选项,你可以在游戏的启动参数里添加
-force_vendor_id 0x10DE -force_device_id 0x1180
来强制显示 - 在多人游戏里,
mat_supportflashlight
必须被设置为1才能让手电筒正常工作,在TF2中,这个指令默认被禁用,故没有特殊修改的话,该实体无法在TF2中使用 - 手臂模型不会接收来自投射纹理的任何光照和阴影,除了Gmod和传送门2。您可以按照该教程修复这个Bug。

env_projectedtexture
都不会渲染阴影。要解决此问题,请在启动参数添加-vulkan
,让游戏在Vulkan模式下运行。 [todo tested in ?]
代码修复:可以按照该教程修复此bugEnv_projectedtexture/fixes#Fixing Parenting.


实体属性(Flags)
- 1: Enabled(默认开启)
- 2: Always Update(始终更新,用于移动光源)Template:AS add:zh-cnTemplate:Mapbase also:zh-cn
键值
- Target (target) <目标名 >
- 跟着目标移动,确保勾选 Always update。
- FOV (lightfov) <浮点型 >
- 投射的fov范围

- NearZ (nearz) <浮点型 >
- 比此距离近的物体不接收投射。
- FarZ (farz) <浮点型 >
- 同上,但是比此距离远。
- Enable Shadows (enableshadows) <布尔值 >
- 投射出来的阴影是否开启。. 0 = no, 1 = yes.
- Shadow Quality (shadowquality) <Choices >
- 阴影质量
- 0: 低 (锐利的、像素化的阴影)
- 1: 高 (边缘平滑的阴影)
- Light Only Target (lightonlytarget) <布尔值 >
- 只有目标才行收到效果.
- Light World (lightworld) <布尔值 >
- 是否影响世界上的静态几何. 0 = no, 1 = yes.
- Camera Space (cameraspace) <整数 >
- 角度,对于摄像机.
- Brightness Scale (brightnessscale) <浮点型 > (存在于自 AS 以来) Template:Also:zh-cn
- 按该亮度缩放光照颜色。由于投射纹理的亮度值只能是0到255,所以使用Brightness Scale键值可以使投影纹理比255更亮。

- Color Transition Time (colortransitiontime) <浮点型 > (存在于自 AS 以来) Template:Also:zh-cn
- 改变颜色所需的时间。值越高速度越快。
- Appearance (style) <choices> (存在于自
以来)
- 各种自定义外观预设。Template:Note:zh-cn
- Custom Appearance (pattern) <字符串 > (存在于自
以来)
- 为该光照实体设置自定义的外观模式。图案格式是一串字符,其中a是全暗,z是全亮。即
aaggnnttzz
会是一个从黑暗到光明的阶梯式淡入淡出。
- Default Appearance (defaultstyle) <字符串 > (存在于自
以来)
- Enable Volumetrics
(volumetric)
<布尔值 > (仅存在于中)
- 是否为该投射纹理启用体积光
- Volumetric Intensity
(volumetricintensity)
<浮点型 > (仅存在于中)
- 定义体积光的强度,(默认值为1,可以使用更高的值,没有严格限制)
输入
- TurnOn
- 开启。
- TurnOff
- 关闭
- FOV <浮点型 >
- 设置 FOV.
- EnableShadows <布尔值 >
- 设置是否显示阴影 0 = no, 1 = yes.
- SpotlightTexture <字符串 >
- 设置射灯材质.
- Target <字符串 >
- 指定一个新的 目标实体 .
- CameraSpace <布尔值 >
- 设置 Camera Space.
- LightOnlyTarget <布尔值 >
- 设置 Light Only Target.
错误:无效输入 [todo tested in ?]
- LightWorld <整数 >
- 设置 Light World. 0 = no, 1 = yes.
- LightColor <color255 > (存在于自
以来)
- 设置光照颜色.
- SetLightStyle <整数 > (存在于自
以来)
- 为该实体设置一个外观。(详见上方键值章节的“Appearance”部分)
- SetPattern <字符串 > (存在于自
以来)
- 设置自定义外观。(详见上方键值章节的“Custom Appearance”部分)
- SetNearZ <浮点型 > (存在于自
以来)
- 设置 NearZ.
- SetFarZ <浮点型 > (存在于自
以来)
- 设置 FarZ.
- SetVolumetricIntensity <浮点型 > (仅存在于
之中)
- 设置体积光的强度。(默认值为1,可以使用更高的值,没有严格限制)
- SetBrightnessScale <浮点型 > (仅存在于
之中)
- 设置光照强度
Base:
- AddContext <字符串 >
- 添加到实体的 Response Contexts/响应上下文列表。格式是
<key>:<value>
。
语法:
- ClearContext
- 从此实体的列表中删除所有上下文。
- ClearParent
- 从移动层次结构中删除该实体,使其可以自由移动。
- FireUser1 to FireUser4
- 触发相应的
OnUser
输出;详见 User Inputs and Outputs。
- Kill
- 从这个世界中删除此实体。
- KillHierarchy
- 功能类似
Kill
,尽管此实体与其父实体都被删除了,但比Kill
快一点。
- RemoveContext
- 从实体列表删除一个上下文。名字应与现有上下文进行匹配。
- SetParent <字符串 >
- 跟随此实体移动,详见 实体层级(依赖关系)。
- SetParentAttachmentMaintainOffset <字符串 >
- 同上,但没有传送。在接收到输入时,实体保持其相对于附件的位置。
- DispatchResponse <字符串 > 不存在于FGD!
- 向实体发送一个上下文。 详见 Response
和 Concept
.
- DispatchEffect <字符串 > (被移除于
以来) 不存在于FGD!
- 在实体的原点坐标设置一个特定效果;参见 List of Client Effects
。自从
求生之路后由粒子系统取代。
- RunScriptCode <字符串 > (存在于自
以来)
- 在接收输入的实体范围内执行一串 VScript 源代码。通过控制台触发时可能需要字符串引用。
修复:使用文本编辑器手动删除带有字符串的参数。
- SetLocalOrigin <coordinates > (存在于自
以来) 不存在于FGD!
- 将此实体设置到地图中的某个位置。如果此实体是某实体父级,那么它的子级也会随着移动。
输出
Base/基础:
- OnUser1 to OnUser4
- 这些输出将分别响应于
FireUser1
到FireUser4
输入。 详见 User Inputs and Outputs。 - OnKilled (仅存在于
之中)
- 当实体被Kill输入时响应此输出。