Zh/Ambient generic: Difference between revisions

From Valve Developer Community
< Zh
Jump to navigation Jump to search
m (updated templates used.)
Line 1: Line 1:
{{lang|Ambient generic|title=ambient_generic}}
{{lang|Ambient generic}}
{{Entity also in GoldSrc:zh}}
{{finishtranslation:zh-cn}}
{{point_ent:zh|ambient_generic}}
{{Entity also in GoldSrc:zh-cn}}
{{point ent:zh-cn|ambient_generic}}


==实体描述==
==实体描述==
[[File:ambient_generic.png|left]]
[[File:ambient_generic.png|left]]
此实体用于播放声音,可以设置单次或循环。同样可以设置从某坐标点或者全局可听见。
此实体用于播放声音,可以设置单次或循环。同样可以设置从某坐标点或者全局可听见。
其可以播放和控制[[Soundscripts|声音脚本]]的声音,一段.wav实例或者[[scripted sentence]](实体)。不像贴图或者模型那样,你必须重启Hammer才能看到变化,声音不需要,只需要点browser即可。
其可以播放和控制[[Soundscripts|声音脚本]]{{en}}的声音,一段.wav实例或者{{ent:zh-cn|scripted sentence}}(实体)。不像贴图或者模型那样,你必须重启 Hammer 才能看到变化,声音不需要,只需要点 browser 即可。
{{提示|此实体可以手动添加"parentname"键值或者"SetParent"输入,则能够设置父实体,尽管未被fgd列出此键值或输入。}}
{{tip:zh-cn|此实体可以手动添加<code>parentname</code>键值或者<code>SetParent</code>输入,则能够设置父实体,尽管未被fgd列出此键值或输入。}}
 
{{bug:zh-cn|<code>ambient_generic</code>在 {{css|2|suf=:zh-cn}} 中播放循环声音,必须配合{{ent:zh-cn|logic_auto}},否则将在第一回合后停止播放。}}
:{{bug:zh-cn|ambient_generics在[[Counter-Strike Source]]中播放循环声音,必须配合[[logic_auto]],否则将在第一回合后停止播放。}}
{{bug:zh-cn|声音无法停止问题(如下详情),可以由[[Ambient generic: stop and toggle fix|用 C++ 修复您 Mod 声音无法停止问题]]{{en}}文章修复。}}
 
{{bug:zh-cn|当此实体正在播放声音的时候,删除(kill)此实体,会导致在地图持续时间内永远播放!}}
:{{bug:zh-cn|声音无法停止问题(如下详情),可以由 [[Ambient generic: stop and toggle fix|用C++修复您Mod声音无法停止问题]]文章修复。}}
{{bug:zh-cn|<code>ambient_generic</code>在播放声音时不会随着父级更新位置。}}
 
{{bug:zh-cn|过多<code>ambient_generic</code>在同一时间播放会导致其它<code>ambient_generic</code>表现奇怪或者失败,无视其播放距离。}}
:{{bug:zh-cn|当此实体正在播放声音的时候,删除(kill)此实体,会导致在地图持续时间内永远播放!}}
 
:{{bug:zh-cn|ambient_generic在播放声音时不会随着父级更新位置。}}
 
:{{bug:zh-cn|过多ambient_generics在同一时间播放会导致其它ambient_generics表现奇怪或者失败,无视其播放距离。}}


== 键值 ==
== 键值 ==
; Sound Name (message) <code><[[字符串]]></code>
{{KV:zh-cn|Sound Name|intn=message|string|[[soundscript|声音脚本]]{{en}}的名字,或者需要播放的声音的路径。对于<code>scripted_sentence</code>,需要在此实体名字前加上一个“!”。 (例如: ''!COMBINE_THROW_GRENADE4'') {{note:zh-cn|如果您需要将声音识别为音乐,以获取其对音乐的影响,你需要在music路径前面加入“#”。 (例如: music/song01 becomes #music/song01)}}}}
: [[soundscript|声音脚本]]的名字,或者需要播放的声音的路径。对于 [[scripted sentence]],需要在此实体名字前加上一个"!"。 (例如: ''!COMBINE_THROW_GRENADE4'') {{note|如果您需要将声音识别为音乐,以获取其对音乐的影响,你需要在music路径前面加入"#"。 (例如: music/song01 becomes #music/song01)}}
{{KV:zh-cn|Max Audible Distance|intn=radius|float|最大播放距离 [[unit]] {{en}}(hammer 单位)对于客户端来说。{{bug:zh-cn|声音仍会在距离之外播放?}}{{bug:zh-cn|由于 [[DSP]] {{en}},声音可能在很远的距离依旧清晰可听。}}{{note:zh-cn|玩家接近最大距离时,音量逐渐消失。这似乎使得声音过早停止播放了!}}}}
; Max Audible Distance <code><[[浮点型]]></code>
{{KV:zh-cn|SourceEntityName|实体名|intn=SourceEntityName|如果指定,声音将从此实体上播放而不是<code>ambient_generic</code>实体。如果目标是能够口型同步的 [[NPC]] {{en}},并且能找到因素信息。那么目标能与声音口型同步。{{bug:zh-cn|如果<code>ambient_generic</code>被删除,声音将在地图原点(坐标 0,0,0)处播放!}}{{bug:zh-cn|多个<code>ambient_generic</code>无法堆叠到同一实体上。}}}}
: 最大播放距离[[unit]](hammer单位)对于客户端来说。{{bug:zh-cn|声音仍会在距离之外播放?}} {{bug:zh-cn|由于[[DSP]],声音可能在很远的距离依旧清晰可听。}} {{注意|玩家接近最大距离时,音量逐渐消失。这似乎使得声音过早停止播放了!}}
{{KV:zh-cn|intn=health|Volume|整数型 0-10|声音的音量大小。0是静音,10是正常,默认为10。{{tip:zh-cn|键值并不允许小数,但是对其输入可以。}}{{bug:zh-cn|当设置为0,声音不会被播放。}}}}
; SourceEntityName <code><[[实体名]]></code>
{{KV:zh-cn|Start Volume/初始音量|intn=volstart|整数 0-10}}
: 如果指定,声音将从此实体上播放而不是ambient_generic实体。如果目标是能够口型同步的npc, 并且能找到因素信息。那么目标能与声音口型同步。 {{bug:zh-cn|如果ambient_generic被删除,声音将在地图原点(坐标 0,0,0)处播放!}} {{bug:zh-cn|多个ambient_generics无法堆叠到同一实体上。}}
{{KV:zh-cn|Fade in time in seconds/淡入时间/秒|intn=fadeinsecs|整数 0-100}}
; Volume <code><[[整数型]] 0-10></code>
{{KV:zh-cn|Fade out time in seconds/淡出时间/秒|intn=fadeoutsecs|整数 0-100|淡入淡出时间以及开始时的音量大小,默认不淡入淡出。}}
: 声音的音量大小。0是静音,10是正常,默认为10。
{{KV:zh-cn|Pitch|intn=pitch|整数 0-255|音高,1为低,100为正常,255为高。{{bug:zh-cn|太高值或者太低都会导致其他声音失真。}}}}
:{{提示|键值并不允许小数,但是对其输入可以。}}
{{KV:zh-cn|Start pitch/初始音高|intn=pitchstart|整数 0-255}}
:{{bug:zh-cn|当设置为0,声音不会被播放。}}
{{KV:zh-cn|Spin up time/升速时间|intn=spinup|整数 0-100}}
; Start Volume/初始音量 <code><整数 0-10></code>
{{KV:zh-cn|Spin down time/降速时间|intn=spindown|整数 0-100|播放开始/结束消耗多少时间升速或降低音高,以及从多少音高开始。默认不执行。}}
; Fade in time in seconds/淡入时间/秒 <code><整数 0-100></code>
{{KV:zh-cn|Dynamic Presets|intn=preset|choices|可以应用各种 DSP 效果。}}
; Fade out time in seconds/淡出时间/秒 <code><整数 0-100></code>
{{KV:zh-cn|LFO type|intn=lfotype|int|[[Low frequency oscillator|低频振荡]]{{en}}种类的采用。
: 淡入淡出时间以及开始时的音量大小,默认不淡入淡出。
; Pitch <整数 1-255>
: 音高,1为低,100为正常,255为高。
:{{bug:zh-cn|太高值或者太低都会导致其他声音失真。}}
; Start pitch/初始音高 <整数 1-255>
; Spin up time/升速时间 <code><整数 0-100></code>
; Spin down time/降速时间 <code><整数 0-100></code>
: 播放开始/结束消耗多少时间升速或降低音高,以及从多少音高开始。默认不执行。
; Dynamic Presets <code><choices></code>
: 可以应用各种[[DSP]]效果。
; LFO type <code><整数型></code>
: [[LFO|低频振荡]]种类的采用。
:* Off (default)/关(默认)
:* Off (default)/关(默认)
:* Square Wave (alternate between low and high)/矩形波(高低交替)
:* Square Wave (alternate between low and high)/矩形波(高低交替)
:* Triangle Wave (crossfade between high and low)/三角波(高低之间淡入淡出)
:* Triangle Wave (crossfade between high and low)/三角波(高低之间淡入淡出)
:* Random/随机
:* Random/随机}}
; LFO rate <code><整数 0-1000></code>
{{KV:zh-cn|LFO rate|intn=lforate|整数 0-1000|LFO 效果重复频率。}}
: LFO效果重复频率。
{{KV:zh-cn|LFO modulation - pitch|intn=lfomodpitch|整数 0-100|影响音高或者[[Wikipedia:zh:振音|颤音]]。更高的数字会改变更多音高—颤声歌手很少使用,警笛常用。}}
; LFO modulation - pitch <code><整数 0-100></code>
{{KV:zh-cn|LFO modulation - volume|intn=lfomodvol|整数 0-100|影响声音的音量大小,让其“跳动”。类似于[[Wikipedia:zh:震音|震声*和颤声很类似]]。非常高的频率,类似于对着旋转的风扇叶说话。}}
: 影响音高或者[[Wikipedia:vibrato|颤音]]。更高的数字会改变更多音高 - 颤声歌手很少使用,警笛常用。
{{KV:zh-cn|Incremental Spinup Count|intn=cspinup|int|似乎为了增加音高在指定时间内与<code>ToggleSound</code>的输入。 但是…{{bug:zh-cn|没用,无效!}}}}
; LFO modulation - volume <code><整数 0-100></code>
{{KV BaseEntity:zh-cn}}
: 影响声音的音量大小,让其"跳动"。类似于[[Wikipedia:tremolo|震声*和颤声很类似]]。非常高的频率,类似于对着旋转的风扇叶说话。
; Incremental Spinup Count <code><int></code>
: 似乎为了增加音高在指定时间内与<code>ToggleSound</code>的输入。 but: {{bug:zh-cn|没用,无效!}}
 
{{KV BaseEntity:zh}}
==Flags/标签==
==Flags/标签==
*1: Play everywhere
{{fl:zh-cn|1|Play everywhere|无论接受者与音源多远,都以恒定的音量播放。{{todo:zh-cn|如何 与实体{{ent:zh-cn|env_microphone}}的声音检测交互?}}{{bug:zh-cn|这个标签'''被在引擎运行 [[Soundscripts]] {{en}}的关卡破坏'''。只会在声音<code>.raw</code>以文件名播放时生效。}}}}
*:无论接受者与音源多远,都以恒定的音量播放。{{todo|如何 与实体{{ent|env_microphone}} 的声音检测交互?}}  
{{fl|16|Start Silent|此声音将不会播放。默认启用。{{bug:zh-cn|循环声音无法设置成这样并且无法控制!}}}}
:{{bug:zh-cn|这个标签'''被在引擎运行 [[Soundscripts]] 的关卡破坏'''。只会在声音.raw以文件名播放时生效。}}
{{fl|32|Is NOT Looped|改变<code>ambient_generic</code>如何处理停止和开始播放。它不会使一个在循环的声音停止循环,但是设置正确的值依然''十分重要''。如果不是,难以控制停止或者启用声音?{{bug:zh-cn|循环的声音请勿勾选,否则会丢失控制!}}}}
*16: Start Silent
== Inputs/输入 ==
:此声音将不会播放。默认启用 {{bug:zh-cn|循环声音无法设置成这样并且无法控制!}}
{{IO:zh-cn|Pitch|param=int|设置声音音高,范围从1~255,100是原始音高。{{bug:zh-cn|似乎会导致声音立刻播放,并且循环的声音将无法控制。}}}}
*32: Is NOT Looped
{{IO:zh-cn|PlaySound|开始播放声音。}}
:改变<code>ambient_generic</code>如何处理停止和开始播放。它不会使一个在循环的声音停止循环,但是设置正确的值依然''十分重要''' 。如果不是,难以控制停止或者启用声音?{{bug:zh-cn|循环的声音请勿勾选,否则会丢失控制!}}
{{IO:zh-cn|StopSound|停止播放循环声音。不会停止'''非'''循环声音! 这是故意的, 并且能够改变,修复文章:[[Ambient generic: stop and toggle fix|C++ 修复大法于您的 mod]] {{en}}。然而非循环声音可以通过 Volume 输入,设置值为0来实现。}}
 
{{IO:zh-cn|ToggleSound|开关循环声音的按钮功能。表现类似于<code>PlaySound</code>输入。}}
== 输入 ==
{{IO:zh-cn|Volume|param=float|以0~10的音量设置一个声音大小。10为最大声。{{bug:zh-cn|会自动播放声音。并导致声音循环播放且无法停止!本应该在输入时更改其音量。}}{{bug:zh-cn|设置0会导致声音停止而不是静音播放。}}}}
;Pitch <code><[[整数型]]></code>
{{IO:zh-cn|FadeIn|param=int|指定秒数内将声音调整为最大声。范围0~100/秒。{{bug:zh-cn|无功能,{{portal2|2|suf=:zh-cn}}除外。}}}}
:设置声音音高,范围从1~255,100是原始音高。{{bug:zh-cn|似乎会导致声音立刻播放,并且循环的声音将无法控制。}}
{{IO:zh-cn|FadeOut|param=int|指定秒数内将声音调整为最小声。范围0~100/秒。{{bug:zh-cn|在淡出前会将声音调整最大(即10)。}}}}
; <code>PlaySound</code>
{{I BaseEntity:zh-cn}}
: 开始播放声音。
== Outputs/输出 ==
; <code>StopSound</code>
{{O BaseEntity:zh-cn|l4d=1}}
: 停止播放循环声音。不会停止'''非'''循环声音! 这是故意的, 并且能够改变,修复文章:[[Ambient generic: stop and toggle fix|C++修复大法于您的mod]]。然而非循环声音可以通过Volume输入,设置值为0来实现。
; <code>ToggleSound</code>
:开关循环声音的按钮功能。表现类似于 <code>PlaySound</code>输入。
; <code>Volume <[[float]]></code>
: 以0~10的音量设置一个声音大小。10为最大声。{{bug:zh-cn|会自动播放声音。并导致声音循环播放且无法停止!本应该在输入时更改其音量。}} {{bug:zh-cn|设置0会导致声音停止而不是静音播放。}}
; <code>FadeIn <[[int]]></code>
:指定秒数内将声音调整为最大声。范围0~100/秒。 {{bug:zh-cn|无功能,portal2除外。}}
; <code>FadeOut <[[int]]></code>
:指定秒数内将声音调整为最小声。范围0~100/秒。{{bug:zh-cn|在淡出前会将声音调整最大(即 10)。}}
{{I BaseEntity:zh}}
== 输出 ==
{{O BaseEntity:zh|l4d=1}}
== 参见 ==
== 参见 ==
* [http://www.gamebanana.com/tuts/5141 超越实体极限,将声音调整至10以上。] (通用地图教程)
* [http://www.gamebanana.com/tuts/5141 超越实体极限,将声音调整至10以上。]{{en}}(通用地图教程)
* [[env_soundscape]] - 用单个实体播放多个声音[[soundscape|通过脚本]]
* {{ent:zh-cn|env_soundscape}}- 用单个实体播放多个声音[[soundscape|通过脚本]]{{en}}
* [[Looping a Sound]] - which requires modifying the actual .wav file
* [[Looping a Sound]] {{en}} - which requires modifying the actual WAV file
* [http://www.slackiller.com/New%20Tuts/sound.html 用logic_auto在css设置此实体。] - 创建env_soundscape的替代方案。
* [http://www.slackiller.com/New%20Tuts/sound.html 用<code>logic_auto</code>在css设置此实体。]{{en}} - 创建<code>env_soundscape</code>的替代方案。
 
[[Category:Sound System:zh-cn]]
[[Category:Sound System:zh-cn]]

Revision as of 01:14, 16 May 2022

English (en)Français (fr)Hrvatski (hr)Русский (ru)中文 (zh)Translate (Translate)

Template:Finishtranslation:zh-cn

起源 ambient_generic是一个存在于所有的 起源 游戏的点实体

实体描述

Ambient generic.png

此实体用于播放声音,可以设置单次或循环。同样可以设置从某坐标点或者全局可听见。 其可以播放和控制声音脚本English的声音,一段.wav实例或者scripted sentence(实体)。不像贴图或者模型那样,你必须重启 Hammer 才能看到变化,声音不需要,只需要点 browser 即可。 Template:Tip:zh-cn Template:Bug:zh-cn Template:Bug:zh-cn Template:Bug:zh-cn Template:Bug:zh-cn Template:Bug:zh-cn

键值

Sound Name (message) <字符串(en)>
声音脚本English的名字,或者需要播放的声音的路径。对于scripted_sentence,需要在此实体名字前加上一个“!”。 (例如: !COMBINE_THROW_GRENADE4) Template:Note:zh-cn
Max Audible Distance (radius) <浮点型(en)>
最大播放距离 unit English(hammer 单位)对于客户端来说。Template:Bug:zh-cnTemplate:Bug:zh-cnTemplate:Note:zh-cn
SourceEntityName (SourceEntityName) <目标名(en)>
如果指定,声音将从此实体上播放而不是ambient_generic实体。如果目标是能够口型同步的 NPC English,并且能找到因素信息。那么目标能与声音口型同步。Template:Bug:zh-cnTemplate:Bug:zh-cn
Volume (health) <整数 0-10 (en)>
声音的音量大小。0是静音,10是正常,默认为10。Template:Tip:zh-cnTemplate:Bug:zh-cn
Start Volume/初始音量 (volstart) <整数 0-10 (en)>
Fade in time in seconds/淡入时间/秒 (fadeinsecs) <整数 0-100 (en)>
Fade out time in seconds/淡出时间/秒 (fadeoutsecs) <整数 0-100 (en)>
淡入淡出时间以及开始时的音量大小,默认不淡入淡出。
Pitch (pitch) <整数 0-255 (en)>
音高,1为低,100为正常,255为高。Template:Bug:zh-cn
Start pitch/初始音高 (pitchstart) <整数 0-255 (en)>
Spin up time/升速时间 (spinup) <整数 0-100 (en)>
Spin down time/降速时间 (spindown) <整数 0-100 (en)>
播放开始/结束消耗多少时间升速或降低音高,以及从多少音高开始。默认不执行。
Dynamic Presets (preset) <choices>
可以应用各种 DSP 效果。
LFO type (lfotype) <整数(en)>
低频振荡English种类的采用。
  • Off (default)/关(默认)
  • Square Wave (alternate between low and high)/矩形波(高低交替)
  • Triangle Wave (crossfade between high and low)/三角波(高低之间淡入淡出)
  • Random/随机
LFO rate (lforate) <整数 0-1000 (en)>
LFO 效果重复频率。
LFO modulation - pitch (lfomodpitch) <整数 0-100 (en)>
影响音高或者颤音。更高的数字会改变更多音高—颤声歌手很少使用,警笛常用。
LFO modulation - volume (lfomodvol) <整数 0-100 (en)>
影响声音的音量大小,让其“跳动”。类似于震声*和颤声很类似。非常高的频率,类似于对着旋转的风扇叶说话。
Incremental Spinup Count (cspinup) <整数(en)>
似乎为了增加音高在指定时间内与ToggleSound的输入。 但是…Template:Bug:zh-cn

Template:KV BaseEntity:zh-cn

Flags/标签

Start Silent : [16]
此声音将不会播放。默认启用。Template:Bug:zh-cn
Is NOT Looped : [32]
改变ambient_generic如何处理停止和开始播放。它不会使一个在循环的声音停止循环,但是设置正确的值依然十分重要。如果不是,难以控制停止或者启用声音?Template:Bug:zh-cn

Inputs/输入

Pitch <整数(en)>
设置声音音高,范围从1~255,100是原始音高。Template:Bug:zh-cn
PlaySound
开始播放声音。
StopSound
停止播放循环声音。不会停止循环声音! 这是故意的, 并且能够改变,修复文章:C++ 修复大法于您的 mod English。然而非循环声音可以通过 Volume 输入,设置值为0来实现。
ToggleSound
开关循环声音的按钮功能。表现类似于PlaySound输入。
Volume <浮点型(en)>
以0~10的音量设置一个声音大小。10为最大声。Template:Bug:zh-cnTemplate:Bug:zh-cn
FadeIn <整数(en)>
指定秒数内将声音调整为最大声。范围0~100/秒。Template:Bug:zh-cn
FadeOut <整数(en)>
指定秒数内将声音调整为最小声。范围0~100/秒。Template:Bug:zh-cn
Base:
AddContext <字符串(en)>
添加到实体的 Response Contexts/响应上下文列表。格式是<key>:<value>
AddOutput <字符串(en)>
在此实体上分配新的键值/输出。对于键值,有些依赖于额外的必要代码来运行,如果它只是通过这个输入改变就行不通。必须遵循严格的格式:
语法:

ClearContext
从此实体的列表中删除所有上下文。
ClearParent
从移动层次结构中删除该实体,使其可以自由移动。
FireUser1 to FireUser4
触发相应的OnUser输出;详见 User Inputs and OutputsEnglish
Kill
从这个世界中删除此实体。
KillHierarchy
功能类似Kill,尽管此实体与其父实体都被删除了,但比Kill快一点。
RemoveContext
从实体列表删除一个上下文。名字应与现有上下文进行匹配。
SetParent <字符串(en)>
跟随此实体移动,详见 实体层级(依赖关系)
SetParentAttachment <字符串(en)>
更改此实体到其父级上的特定附属English点。实体将传送,以至于其骨骼方位English与附属匹配。在使用此输入前必须设置好实体的父实体。
SetParentAttachmentMaintainOffset <字符串(en)>
同上,但没有传送。在接收到输入时,实体保持其相对于附件的位置。
Use  不存在于FGD!
与调用 +use 的玩家相同[玩家按 +use(使用,默认E按钮)];大多数情况下没有影响。
DispatchResponse <字符串(en)> 不存在于FGD!
向实体发送一个上下文。 详见 ResponseEnglishConceptEnglish.
DispatchEffect <字符串(en)> (被移除求生之路 以来) 不存在于FGD!
在实体的原点坐标设置一个特定效果;参见 List of Client EffectsEnglish。自从求生之路 求生之路后由粒子系统取代。
RunScriptFile <脚本(en)> (存在于自 求生之路2 以来)
从硬盘执行一个 VScript 脚本文件,不带文件后缀名。会合并接收实体的脚本域。
RunScriptCode <字符串(en)> (存在于自 求生之路2 以来)
在接收输入的实体范围内执行一串 VScript 源代码。通过控制台触发时可能需要字符串引用。
Icon-Bug.png错误:在 Hammer 中,使用带有字符串的参数会破坏 VMFEnglish 文件的结构,使下一个 Hammer 会话无法查看该文件。  [todo tested in ?]
Note.png修复:使用文本编辑器手动删除带有字符串的参数。
CallScriptFunction <字符串(en)> (存在于自 求生之路2 以来) 不存在于FGD!
在接受实体脚本域上执行一段 VScript 函数。
SetLocalOrigin <coordinates(en)> (存在于自 异形丛生 以来) 不存在于FGD!
将此实体设置到地图中的某个位置。如果此实体是某实体父级,那么它的子级也会随着移动。
SetLocalAngles <angles(en)> (存在于自 异形丛生 以来) 不存在于FGD!
设置该实体的角度。

Outputs/输出

Base/基础:

OnUser1 to OnUser4
这些输出将分别响应于 FireUser1FireUser4 输入。 详见 User Inputs and Outputs
OnKilled  (存在于 求生之路系列求生之路系列 之中)
当实体被Kill输入时响应此输出。

参见