HL2 MOD 开发笔记(Old)

 
HL2 MOD 开发笔记:
 
2006 923
 
Z 键效果,既望远镜效果相关函数:
所属类: CBasePlayer
函数名: SetFOV
参数:    CBaseEntity *pRequester, // 执行操作的对象
          int FOV,                 //视野变化值
          float zoomRate           //变化速度
返回类型:bool                    //作用未知,初步判断操作是否成功
物理文件:dlls/player.cpp
相关文件:[dlls]
         entity_tools_server.cpp
         env_projectedtexture.cpp
         env_zoom.cpp
         player.cpp
         player.h
         point_devshot_camera.cpp
     [dlls/hl2_dll]
         hl2_player.cpp
         player_control.cpp
         player_manhack.cpp
         player_missile.cpp
         script_intro.cpp
         script_intro.h
         weapon_crossbow.cpp
         weapon_sniperrifle.cpp
         [game_shared/hl2mp]
         weapon_crossbow.cpp
         [game_shared/sdk]
         weapon_mp5.cpp
 其他:
         在hl2_player.cpp文件中,通过 StartZooming(void)和StopZooming( void )函数,设定了变化速率
          并在StartZooming(void),将FOV的值设定为25
          实现望远镜效果的实体文件为: env_zoom.cpp
         外壳效果为:hud_zoom.cpp,其中有动态模糊效果部分
---------------------------------------------------------------------------------------------
 
按键绑定和[cl_dll]下的,in_main.cpp有关
in_buttons.h 头文件定义按键, in_main.cpp 绑定响应,hl2_player.cpp中实现响应。
------------------------------------------------------------------------------------------------------------
 
c_playerlocaldata.h 中定义了,绝大多数的本地数据,m_local,应该是其CPlayLocalData类的实例。
对于视野的变化实际上也就是对 m_local 中各项数据的修改。
------------------------------------------------------------------------------------------------------------
 
2006 925
 
按键绑定的基本过程:
1、在 in_buttons.h 中设定按键值
2、在 in_main.cpp 中绑定按键
3、在对应的对象文件中实现实际的操作[eg.HL2的的玩家的主类文件为 HL2_Player.cpp ]
------------------------------------------------------------------------------------------------------------
 
在半条命2中,如视野调节相关的主要函数[ 注:不涉及按键绑定过程,但其中有按键绑定的函数。]
1、StartZooming(void)、StopZooming(void)函数具体实现视野的放缩
2、在CheckSuitZoom(void)函数种判断。套件是否装配,按键是否按下,并根据这些参数来相应的调用StartZooming(void)、StopZooming(void)
3、在 PreThink(void)中两次调用CheckSuitZoom(void),实现实时的按键相应。
---------------------------------------

你可能感兴趣的:(c,dll,float,tools)