zoukankan      html  css  js  c++  java
  • iOS --SKView类

    SKView类

    继承自 UIView:UIResponder:NSObject
    符合 NSCoding(UIView)
    UIAppearance(UIView)
    UIAppearanceContainer(UIView)
    UIDynamicItem(UIView)
    NSObject(NSObject)
    框架  /System/Library/Frameworks/SpriteKit.framework
    可用性 可用于iOS 7.0或者更晚的版本
    声明于 SKView.h
    参考指南 Sprite Kit Progamming Guide

    概览

    重要提示:这是一个初步的API或者开发技术文档。虽然已经审阅了本文档的技术准确性,但是它不是最终的版本。本机密信息仅适用于苹果开发者计划的注册会员。苹果提供这些机密信息来帮助你采用这些技术和编程接口。此信息如果有变更,根据本文档实现的软件应使用操作系统软件和最终文档测试。新版本的文档可能会拥有新的API或者技术。

    一个SKView实例是一个显示Sprite Kit内容的视图。这个内容是由场景所提供的。

    通过调用视图的presentScene:方法可以弹出一个场景。当一个场景被弹到视图上,它交替运行场景的模拟和场景的渲染。你可以通过将视图的pause属性设置为YES来暂停这个场景。

    方法

    弹出场景

    - presentScene:

    弹出一个场景

    - (void)presentScene:(SKScene *)scene

    参数 scene:待显示的场景
    返回值  

    论述

    如果新场景存在,将直接替换旧场景。

    - presentScene:transition:

    弹出一个场景并播放一个过场动画。

    - (void)presentScene:(SKScene *)scene transition:(SKTransition)transition

    参数 scene:待显示的场景
    transition:两个场景之间的过场动画
    返回值  

    论述

    如果视图当前有一个显示的场景,视图的场景属性将立即更新,然后执行过场动画来交换两个场景。否则,新场景将直接弹出,并且过场动画将被忽视。

    从场景内容中获取图片

    - textureFromNode:

    渲染并返回一个节点中的纹理。

    - (SKTexture *)textureFromNode:(SKNode *)node

    参数 node:你想要绘制的纹理的节点实例
    返回值 持有渲染图片的纹理

    论述

    节点不需要添加到场景中就可以被绘制。新纹理的大小是通过节点的calculateAccumulatedFrame方法计算得出的。如果这个节点不是一个场景,它将绘制一个背景色[SKColor clearColor]。

    转换视图和场景的坐标系

    - converPoint:fromScene:

    将场景坐标系转换为视图坐标系。

    - (CGPoint)convertPoint:(CGPoint)point fromScene:(SKScene *)scene

    参数 point:场景坐标系中的一个点
    scene:一个场景
    返回值 这个点在视图坐标系中的位置

    论述

    这个方法转换坐标系上的点,使他就好像在视图坐标系上一样。

    - converPoint:toScene:

    将视图坐标系转换为场景坐标系。

    - (CGPoint)convertPoint:(CGPoint)point toScene:(SKScene *)scene

    参数 point:视图坐标系中的一个点
    scene:一个场景
    返回值 这个点在场景坐标系中的位置

    论述

    这个方法转换坐标系上的点,使他就好像在场景坐标系上一样。

    属性

    当前场景

    scene

    视图当前弹出的场景。

    @property (nonatomic, readnoly) SKScene *scene

    论述

    默认值为nil。

    暂停场景

    paused

    一个布尔值,表示视图中场景的动画是否暂停。

    @property (nonatomic, getter=isPaused) BOOL paused

    论述

    如果该值为YES,那么场景的内容将固定在屏幕上。没有动作和物理模拟会被执行。

    异步渲染

    asychronous

    一个布尔值,表示内容是否异步渲染。

    @property(getter=isAsychronous) BOOL asychronous

    论述

    默认值为YES。如果该值为NO,那么视图内容和动画更新将是同步的。

    显示调试信息

    showsFPS

    是否显示FPS。

    @property(nonatomic) BOOL showsFPS

    论述

    帧率是表现场景的一个很好的指标。尽量避免创建的场景的帧率差别过大。

    showsDrawCount

    是否显示绘制次数。

    @property(nonatomic) BOOL showsDrawCount

    论述

    Sprite Kit中的一些操作可能会需要多次绘制。例如,一个特效节点必须先将其子节点单独绘制到一个缓冲区,要使用这个特效,还需要将这些结果混合输出的父节点。这些额外的绘制次数会消耗更多地绘制资源,减少游戏的帧率或者增加总消耗。使用绘制次数可以从另一方面分析你游戏的性能。

    showsNodeCount

    是否显示节点个数。

    @property(nonatomic) BOOL showsNodeCount

    定义帧率

    frameInterval

    场景更新之前必须经过的帧数。

    @property(nonatomic) NSInteger frameInterval

    论述

    默认值为1,表示场景每帧更新一次。如果是一个大于1的是,场景的更新率可能是一个分数。例如,如果值为2,表示场景每隔一帧更新一次。

    将值设为一个小于1的数是一个未定义的行为,是一个编程错误。

  • 相关阅读:
    Qt(python) + 百度语音合成 实现demo
    windows7 + Qt(MSVC2017) + VS2019安装配置
    ubuntu下openCV-Haar特征分类器训练
    坚果云+typora(个人十分喜欢的一个记笔记方式)
    文本编辑--程序员专属技能
    ftp、tftp、nfs--服务器搭建
    QT--动态人流量监测系统
    C++ --内存四区概述
    CTFHUB-技能树-Web-信息泄露
    网络教育行业频发奖金高薪挖人,在线教育行业将迎来快速发展
  • 原文地址:https://www.cnblogs.com/mafeng/p/7561786.html
Copyright © 2011-2022 走看看