Steam VR SDK学习笔记(一)

先分析各个脚本的功能,以便后面学习时使用。

SteamVR/Scripts/

  1. SteamVR.cs 单例管理类,管理SteamVR程序的运行和终止。
  2. SteamVR_Camera.cs 给场景添加一个最基本可运行的SteamVR组。
  3. SteamVR_CameraFlip.cs 使用Shader将屏幕图像反转得到最终图像。
  4. SteamVR_CameraMask.cs 将头盔中看不到的屏幕像素遮盖。
  5. SteamVR_Controller.cs 管理类,管理所有设备的输入控制
  6. SteamVR_ControllerManager.cs 管理类,管理场景中的设备活动
  7. SteamVR_Ears.cs 控制Audio Listener的方向
  8. SteamVR_ExternalCamera.cs 用于渲染外部摄像机
  9. SteamVR_Fade.cs 屏幕渐变功能
  10. SteamVR_Frustum.cs 生成用于渲染的面片
  11. SteamVR_GameView.cs 处理除眼图像之外的渲染
  12. SteamVR_IK.cs 手柄IK的控制
  13. SteamVR_LoadLevel.cs 用于场景之间的平滑切换
  14. SteamVR_Menu.cs 给出一个范例菜单
  15. SteamVR_Overlay.cs 提供和控制2D图像的绘制
  16. SteamVR_PlayArea.cs 对移动空间的设置
  17. SteamVR_Render.cs 控制眼图像的渲染
  18. SteamVR_RenderModel.cs 渲染手柄模型
  19. SteamVR_Skybox.cs 设置天空盒
  20. SteamVR_SphericalProjection.cs 应该是应用畸变投影矩阵
  21. SteamVR_Stats.cs 通过GUI Text显示头盔状态
  22. SteamVR_Status.cs 由事件控制的渐变效果的基类
  23. SteamVR_StatusText.cs 继承22的文字渐变
  24. SteamVR_TestController.cs 测试手柄每个按钮的输入
  25. SteamVR_TrackedCamera.cs 提供记录相机的位置的功能
  26. SteamVR_TrackedObject.cs 使场景中的物体和控制器的Pose保持一致
  27. SteamVR_UpdatePose.cs 当使用OpenVR接口时用此更新Pose
  28. SteamVR_Utils.cs 一些公共方法和数据结构

SteamVR/Extras/

  1. SteamVR_GazeTracker.cs 提供凝视时的事件
  2. SteamVR_LaserPointer.cs 应该是镭射光线
  3. SteamVR_Teleporter.cs 传送功能
  4. SteamVR_TestThrow.cs 投掷东西
  5. SteamVR_TestTrackedCamera.cs 跟踪相机测试
  6. SteamVR_TrackedController.cs 手柄按钮事件的接口

将会使用到的功能:
关于头盔:
得到头部Pose:直接得到头部GameObject的tran和rot
凝视事件:设置SteamVR_GazeTracker并注册事件

关于手柄
方式一:继承SteamVR_TrackedController或注册该类的事件
方式二:

var device = SteamVR_Controller.Input((int)trackedObj.index);
bool down=device.GetTouchDown(SteamVR_Controller.ButtonMask.Trigger);

传送:通过SteamVR_Teleporter设置传送

你可能感兴趣的:(c#,Unity)