SceneKit-你还不知道调试模式low

本节内容

讲解开发过程中精要要用到的调试方法

不说废话 直接上干活

  • 打开数据统计

    scnView.showsStatistics = YES;
    
SceneKit-你还不知道调试模式low_第1张图片
3C8B955C-BA7F-4D3B-84EE-D4035960D555.png
  • 查看节点的物理身体

    ship.physicsBody = [SCNPhysicsBody dynamicBody];
    scnView.debugOptions = SCNDebugOptionShowPhysicsShapes;
    
SceneKit-你还不知道调试模式low_第2张图片
D5A711A9-4392-42CB-9707-B9D2CEA6880C.png

这里注意一下

这个调试模式专门调试物理身体的,所以必须给节点设置physicsBody 属性

  • 查看场景中存在的灯光影响的区域

     scnView.debugOptions = SCNDebugOptionShowLightExtents ;
    
SceneKit-你还不知道调试模式low_第3张图片
这个点光源SCNLightTypeSpot
SceneKit-你还不知道调试模式low_第4张图片
环境光源SCNLightTypeAmbient

注意:

只有 omni 或者 spot 类型有区域影响

  • 查看光源的位置

    scnView.debugOptions = SCNDebugOptionShowLightInfluences  
    
SceneKit-你还不知道调试模式low_第5张图片
5F6B8808-B436-44B0-83CC-EA90A688BCCB.png

提醒一下:

有些光源是没有位置的,具体请查阅<第六节-灯光详解>

  • 查看网格

    scnView.debugOptions = SCNDebugOptionShowWireframe ;
    
SceneKit-你还不知道调试模式low_第6张图片
4D6DB29D-D3E6-42A5-8180-E79327B9DC02.png

网格复杂度影响内存占用,顶点的数量决定它的复杂度

  • 查看模型外围盒子边框
SceneKit-你还不知道调试模式low_第7张图片
82E79339-7926-458F-8AB3-72405237A83E.png
  • 查看那些区域受物理力的影响

     scnView.debugOptions = SCNDebugOptionShowPhysicsFields;
    
SceneKit-你还不知道调试模式low_第8张图片
0B8BEC35-E396-4315-AA5E-BB0187F233CF.png

以上就是全部内容,注意这些枚举值可以组合使用如下

scnView.debugOptions = SCNDebugOptionShowPhysicsShapes|SCNDebugOptionShowLightExtents |SCNDebugOptionShowLightInfluences|SCNDebugOptionShowWireframe|SCNDebugOptionShowPhysicsFields|SCNDebugOptionShowBoundingBoxes 

总结:

开发中使用各类调试,可以快速排除错误,请大家务必使用起来

你可能感兴趣的:(SceneKit-你还不知道调试模式low)