精灵图
< Zh
		
		
		
		Jump to navigation
		Jump to search
		
在 金源和
 金源和 起源引擎中,精灵图是通过特殊几何处理技术渲染的世界对象。其本质是(静态或动态的)2D图像,但在"法线"视角(即垂直于其表面)观看时会呈现3D效果。关键技术在于确保玩家始终以"法线"视角观察精灵图,通常需要通过旋转精灵图使其始终朝向玩家。显然在多人游戏中这种世界空间旋转不适用,因此仅在玩家视图中进行旋转。
 起源引擎中,精灵图是通过特殊几何处理技术渲染的世界对象。其本质是(静态或动态的)2D图像,但在"法线"视角(即垂直于其表面)观看时会呈现3D效果。关键技术在于确保玩家始终以"法线"视角观察精灵图,通常需要通过旋转精灵图使其始终朝向玩家。显然在多人游戏中这种世界空间旋转不适用,因此仅在玩家视图中进行旋转。
尽管应用受限,但精灵图的渲染开销远低于模型或笔刷结构,并能实现某些3D建模难以完成的效果:
- 光照: 精灵图不能投射或接收任何阴影,也不支持Cubemap反射
- 物理: 精灵图不与任何物体产生碰撞 注意:在GoldSrc中,cycler_sprite实体可以设置碰撞(简单包围盒),但该实体存在缺陷,不建议在正式版本中使用。应改用CLIP笔刷或模型 注意:在GoldSrc中,cycler_sprite实体可以设置碰撞(简单包围盒),但该实体存在缺陷,不建议在正式版本中使用。应改用CLIP笔刷或模型
 错误:在
错误:在 起源引擎中,重载游戏材质不会影响已加载的精灵图纹理。若需应用修改后的精灵图材质,必须重启游戏。
 起源引擎中,重载游戏材质不会影响已加载的精灵图纹理。若需应用修改后的精灵图材质,必须重启游戏。精灵图实体
| GoldSrc | Source | 
放置规范
待完善: ...通用使用指南...在Hammer中配置精灵图实体的方法
创建指南
待完善: 精灵图设计与实现规范清单
- 设计原则:
- 图像本身已呈现三维物体特征
- 动画持续变化或表现旋转效果
- 物体从多视角观察外观相似(如球形物体)
- 观察者可接受物体仅呈现单一视角(如小型植物或树叶)
- 精灵图存在时间短暂,设为无碰撞,玩家无法近距离观察
 
- SPR文件格式...
- 使用透明纹理时,必须重启Hammer后再编译。Hammer对新精灵图纹理的加载不完整,可能导致透明显示异常
- 精灵图纹理中任何灰度值(RGB相同)都可能被识别为透明通道。虽未全面测试,但已在light_glow01等案例中验证
- VTF:编译参数"clamps", "clampt"。注:env_sprite_oriented实体的#angles参数...
- VMT:精灵图着色器
$spriteorientation着色器参数
 重要:当材质未使用Sprite着色器却需
重要:当材质未使用Sprite着色器却需$spriteorientation参数时,必须使用数字代号(如1)而非文本描述(如"facing_upright")- parallel_upright (0)
- 类平行模式,但绕Z轴不旋转
- 应用案例:fire1, fire2等火焰系列纹理
 
- facing_upright (1)
- 类平行模式,但基于世界原点而非相机旋转
- 未使用[证实]
 
- vp_parallel(2)
- 始终朝向相机旋转
- 最常用模式 待完善: 补充实际案例
 
- 最常用模式 
- oriented (3)
- 在地图编辑器中指定固定方向
- 应用案例:flatframe等平面框架纹理
 
vp_parallel_oriented (4)
- 平行与定向模式的结合
- 应用案例:plasma, smoke等粒子效果
 
示例:
sprites/glow_test02.vmt(来自Half-Life 2)
"Sprite"
{
	"$spriteorientation" "vp_parallel"
	"$spriteorigin" "[ 0.50 0.50 ]"
	"$basetexture" "sprites/glow_test02"
	"Proxies" { "lampbeam" {} }
}自定义精灵图示例
"Sprite"
{
	"$basetexture" "sprites/turret_rebel"
	"$spriteorientation" "vp_parallel"
	"$spriteorigin" "[ 0.50 0.50 ]"
	"$translucent" "1"
	"$nocull" "1"
	"$vertexcolor" "1"
	"$vertexalpha" "1"   
} 
   半衰期2:死亡竞赛夺旗模式中的自定义阵营精灵图
 半衰期2:死亡竞赛夺旗模式中的自定义阵营精灵图

























 分裂
 分裂
