Zh/Source: Difference between revisions
< Zh
Jump to navigation
Jump to search
mNo edit summary |
|||
Line 4: | Line 4: | ||
[[File:Apex Legends - Screenshot 4.jpg|340px|thumb|{{apex|4.1|nt=1}}的宣传图,其运行于{{tfbranch|3.1}}]] | [[File:Apex Legends - Screenshot 4.jpg|340px|thumb|{{apex|4.1|nt=1}}的宣传图,其运行于{{tfbranch|3.1}}]] | ||
</div> | </div> | ||
{{src|4}}(Source)是 {{Valve|3.1}} 基于{{gldsrc|3.1}} | {{src|4}}(Source)是 {{Valve|3.1}} 基于{{gldsrc|3.1}}开发的一款3D游戏引擎,因其在图形、物理和AI方面的进步而闻名,这使得游戏在当时非常逼真,同时还可在性能较差的旧硬件上扩展。{{src|1}}被 {{Valve|1}}、[[#Third-Party|第三方公司]]与社区[[Modification|模组]]开发者们所使用,被用于开发了超过百款游戏。现在,第一方使用的{{src2|1}}已基本代替了{{src|1}},但模组作者与一些第三方公司仍在使用{{src|1}},且其仍获得定期维护与安全更新。 | ||
{{Clarify|并非所有{{src|1}}游戏都有{{VAC|4|nt=0}},比如{{Apex Legends|4}}}} | {{Clarify|并非所有{{src|1}}游戏都有{{VAC|4|nt=0}},比如{{Apex Legends|4}}}} | ||
Line 39: | Line 39: | ||
* 粒子、光束、体积烟雾、火花、血液、雾和雨等环境效果 | * 粒子、光束、体积烟雾、火花、血液、雾和雨等环境效果 | ||
* 扩展 | * 扩展 | ||
* [[Physically Based Rendering|基于物理的渲染]] {{strata|only|addtext={{tfbranch}}{{hl2rtx}}{{hdtf}}{{portalrtx}}}} | * [[Physically Based Rendering|基于物理的渲染]] {{strata|only|addtext={{tfbranch}}{{hl2rtx}}{{hdtf}}{{portalrtx}}{{p2d}}}} | ||
* [[Parallax_mapping|视差闭塞贴图]] {{xe|only|addtext={{strata}}}} | * [[Parallax_mapping|视差闭塞贴图]] {{xe|only|addtext={{strata}}}} | ||
* DirectX 支持 | * DirectX 支持 | ||
Line 49: | Line 49: | ||
在{{mac|3}} 与 {{Linux|3}} 版本里用 [[OpenGL]] {{src09|since}}替换了{{src|3}}的DirectX | 在{{mac|3}} 与 {{Linux|3}} 版本里用 [[OpenGL]] {{src09|since}}替换了{{src|3}}的DirectX | ||
{{note|起源引擎允许多达8个[[LOD Models|LOD模型]],虽然它不具备开箱即用的自动[[w:Level of detail (computer graphics)|多细节层次(Level of Details)]] | {{note|起源引擎允许多达8个[[LOD Models|LOD模型]],虽然它不具备开箱即用的自动[[w:Level of detail (computer graphics)|多细节层次(Level of Details)]]功能。但支持手动LoD。}} | ||
{{warning|{{csgo|4|nt=1}}不支持多细节层次。[[$lod]] 将被忽略,但模型仍可正常工作。尽量避免在{{csgo|4|nt=1}}中使用此命令。}} | {{warning|{{csgo|4|nt=1}}不支持多细节层次。[[$lod]] 将被忽略,但模型仍可正常工作。尽量避免在{{csgo|4|nt=1}}中使用此命令。}} | ||
Revision as of 06:32, 18 February 2024
起源(Source)是 Valve 基于金源开发的一款3D游戏引擎,因其在图形、物理和AI方面的进步而闻名,这使得游戏在当时非常逼真,同时还可在性能较差的旧硬件上扩展。起源被 Valve、第三方公司与社区模组开发者们所使用,被用于开发了超过百款游戏。现在,第一方使用的起源2已基本代替了起源,但模组作者与一些第三方公司仍在使用起源,且其仍获得定期维护与安全更新。
澄清: 并非所有起源游戏都有
Valve Anti-Cheat,比如
Apex Legends


澄清: 以下功能列表可能不适用于某些起源引擎分支
渲染
- 抗锯齿支持
- 起源引擎是 Valve 首个支持抗锯齿的引擎,而金源引擎在2013年才添加MSAA(4x)
- 大多数起源游戏均支持MSAA(除了
黑山(自XEN更新后)、
Apex Legends等),最高支持8倍MSAA(
则是6倍MSAA),老显卡(如 Maxwell 之前的 Nvidia 显卡)还支持CSAA
- CS:GO 引擎分支还支持FXAA,由于其是一种后处理效果,这使其可以被非官方地添加到旧起源游戏中(甚至是其他游戏、引擎、软件中)
- 只有少部分起源游戏(如
Apex Legends)支持TAA
- 模型和世界的凹凸贴图和法线贴图
- 用HLSL制作着色器
- 立方体与环境的映射
- 模型所用的 Phong 光照
- 动态光源、顶点照明和灯光贴图,包括闪烁、脉冲等多种灯光类型
- HDR (存在于自
以来) 与 SDR/LDR (不存在于
及之后) 照明
- 具有折射、实时世界反射和菲涅尔效果的水
- 支持流动贴图的水 (存在于自
以来)
- 支持流动贴图的水 (存在于自
- 可散发精灵或模型的高级粒子系统
- 渲染到纹理的阴影可在每个场景中生成大量角色 (存在于自
以来) (也存在于
之中)
- 用于能见度阻挡的遮罩实体
- 室内/室外环境
- 可实时变换的地形
- 3D天空盒可扩展地平线,并为远处的物体添加视差效果
- 动态渲染的植物 (草、树等)
- 细分表面、漫反射和镜面凹凸贴图
- 实时辐射度光照
- 来自天空盒的实时级联阴影贴图 (存在于自
以来) (也存在于
之中)
- 粒子、光束、体积烟雾、火花、血液、雾和雨等环境效果
- 扩展
- 基于物理的渲染 (仅存在于
之中)
- 视差闭塞贴图 (仅存在于
之中)
- DirectX 支持


求生之路 引擎分支及之后版本仅支持DX9材质
在macOS 与 Linux 版本里用 OpenGL (存在于自 以来)替换了起源的DirectX

材质系统
- 与传统的纹理不同,起源定义了多组材质,这些材质指定了物体的材质以及该物体所使用的纹理。材料指定了物体破碎时的断裂方式、物体破碎或拖过其他表面时的声音,以及物体的质量和浮力。该系统比其他纯纹理系统更加灵活
- 材料可以与物体或NPC互动,例如车辆在泥泞的道路或冰面上滑行或失去牵引力
多人网络代码
- 经过全球数百万玩家的时间和游戏测试
- 支持局域网与互联网联机游戏
- 插值碰撞/命中检测的预测分析
- 针对高延迟、高丢包的 56kpbs 连接进行优化
人物模型
- 细致真实的人物模型
- 逼真的眼睛
- 玩家/对象之焦点,而不仅仅是平行视图
- 适当的眼睛凸出度,实现逼真的眼睛反射
- 模拟肌肉组织,提供出色的情感、言语和肢体语言
- 各种语言自有演讲,角色可以自然地用多种语言说话
- 动画骨骼系统
- 分层动画系统可将多个片段合成复杂的动画
物理
- 使用 Havok 物理引擎
- 更灵敏的世界,更逼真的互动
- 声音和图形遵循物理原理
- AI角色可以与物理模拟对象交互
- 绳索/电缆、机器、约束系统,布娃娃
- 可由关卡设计控制
- 运动学动画骨骼跟随器
- 自定义程序物理控制器
- 车辆
- 具有打滑效果
- 每个车轮上都有弹簧悬架
- 加减速和转弯时的真实倾斜
- 单独可调参数,如马力、档位、最大速度、换档速度、轮胎材料、轮胎摩擦、弹簧张力/阻尼等
- 多人游戏中,一辆车上可承载多个玩家
- 气垫船支持快速移动的模拟
AI
- I/O系统允许关卡设计师调控AI
- 精密的导航系统,角色可以奔跑、跳跃、飞行、蹲下、上下楼梯、爬梯子甚至是钻入地下
- AI具有视觉、听觉和嗅觉
- AI关系可以让AI自行判断队友以及敌人或其它实体的状态
- 战斗AI允许AI小队成员协同作战,知道何时前进与后退,会相互配合、躲避等等
音效系统
- 7.1、5.1环绕声,4扬声器环绕声
- {{bug|当运行于 Windows Vista 及更新系统上时,由于游戏引擎使用 DirectSound 和旧版本的 Miles Sound System,尽管选择了7.1,但游戏可能只输出5.1环绕声,或者如果没有自定义的dsound.dll(如 Creative Alchemy、DSOAL 或 IndirectSound),7.1音频可能无法正常工作。(
Titanfall 2、
Apex Legends等部分第三方游戏不受影响)
警告:默认不支持 48 KHz 音频(DVD品质)
UI
- 服务器浏览器——显示所有在线的游戏服务器,玩家可以选择要参与的服务器。玩家还可对服务器列表进行过滤和排序,以加快服务器的显示和选择速度
- VGUI—— Valve 的自定义GUI界面仿造多数 Windows 控件,使用起源引擎渲染,可在游戏内和游戏外显示统一的UI。特点如下:
- 全景(存在于自
以来))——Valve 于2018年推出的全新自定义GUI,使用
.XML
和 JavaScript 文件,开发人员可以创建动态、简洁的用户界面和菜单,甚至是高质量的游戏内难以处理的面板。
编程
- 所有代码均使用 Visual Studio .NET 2003 及更高版本的 C/C++ 编写。轻松快速地从现有基类派生出新实体
- 内部上下文敏感性能监控系统
- 引擎内置图形性能测量工具
- 模块化代码设计(通过 DLL)允许更换核心组件,便于升级或更换代码
- VScript 脚本系统允许使用外部编码语言(如 Squirrel 和 Lua)在地图中创建更复杂的系统 (存在于自
以来) (也存在于
之中)
工具
HLFaceposer(面部姿态编辑器 )
- 用于制作语音和情绪的面部表情工具
Valve Hammer Editor(锤子地图编辑器 )
- 所见即所得的世界编辑器

- 创建地图的地形刷
- 地形编辑器
- 可放置精细的世界模型和AI NPC
- 为 NPC 设置导航点/路径
- 放置触发器、剪切画笔、逻辑实体等
- 允许开发者在实体之间连接I/O,以控制游戏中的AI
Half-Life Model Viewer(Half-Life 模型查看器 )
- 完整的模型预览
- 允许任意方向旋转模型
- 设置射击命中框(hit box)
- 查看物理约束体
- 查看法线
- 随时切换线框、着色和纹理三种视图模式
- Studiomdl(MDL工作站)
- 模型编译器
- VBSP, VRAD, VVIS, VMPI
- 地图编译工具(bsp、照明和可见度)
- VMPI——分布式编译工具,允许将各个级别的编译分散到多个电脑上,从而大大缩短编译时间
- Exporters(导出)
- XSI,可以在 3Ds Max 和 Maya 中导出.smd格式的模型
相关作品
由 Valve 制作
|
Third-Party
由第三方公司和mod团队制作的游戏、工具和mod
已发布
|
|
|
未发布
本部分为未发布的第三方游戏和工具,这些游戏和工具正在开发中,尚未公开发布,或处于 Beta/EA 阶段
|
参见
扩展
待完善: 这些指南的相关性和时效性如何?在适当的地方保留最新手册的链接,而不是全部。为此请使用Special:LinkSearch。
- 起源引擎教程 —— https://www.sourcemodding.com/tutorials/source
- 起源引擎教程 —— https://gamebanana.com/tuts/games/35
- 起源引擎教程 Mod DB https://www.moddb.com/engines/source/tutorials
- GitHub Issues page ——报告引擎错误