2019独角兽企业重金招聘Python工程师标准>>>

准备工作

从Apple TV 4开始,我们可以给tvOS开发应用和游戏了。苹果公司从Xcode 7开始也增加了tvOS SDK,顺带添加了电视机和遥控的模拟器,因此并不需要Apple TV的真机就可以开发许多程序了。不过如果要使用遥控器上带的加速度计、3D陀螺仪等传感器就只能真机了。

在开始写代码之前我们先得了解一下Apple TV的操纵方式。作为一个智能机顶盒,显然不能像iOS设备一样直接通过触摸屏幕进行交互,甚至不能像Mac一样配备有键盘和鼠标这样的快速输入设备,而只能使用已经精简到只有六个按钮和一个触控板的遥控器了。这样的交互直观性很差,用户学习成本较高。

  • 不能像iOS设备一样直接触摸点击
  • 不能像Mac一样使用鼠标直接选取

如果使用真机的话,需要一个支持HDMI的显示设备(电视机、显示器或投影仪等),并且保证遥控器充满电了。Apple TV遥控器通过红外通信,因此需要注意不能被挡住。

遥控器的使用

Apple TV的遥控器分为两个部分:触控板和按键。其中触控板支持触摸、按压、滑动手势等操作。

  • 触摸:轻触触控板,引发触摸事件,一些继承自UIResponder的类的对象能过接收到touchesBegantouchesEnded等消息。需要注意的是,每次触摸的起点都是屏幕的正中央,而与触控板上的位置无关
  • 按压:按压触控板,触发按键事件(Select, 选择),一般用于选中或者开始一件事。
  • 滑动手势(Swipe):一般用于切换界面上的焦点位置。

遥控器菜单按钮的六个键分别有不同的功能,其中编程时常用的只有三个:

  • Menu:系统将Menu作为返回键,我们在应用中一般也应该统一这种操作模式。
  • 休眠:点击后会到主屏幕,如果长按会弹出休眠菜单。
  • Play/Pause:播放暂停按钮。
  • Siri:语言控制。
  • 音量:调节音量大小。

模拟器遥控器

毕竟每次都用真机进行调试不是很方便,因此苹果给我们提供了模拟器(包括遥控器)。但是模拟器上的一些操作并不方便,它又提供了一些键盘快捷方式。

  • Option键:触摸事件,按住Option键触发触摸事件,直接用鼠标点击遥控器触控板触发按压事件。
  • ESC:返回键。

在开发之前最好是先用系统的一些应用或者直接在真机上熟悉一下遥控器操作这种交互模式。在刚开始使用的时候,由于没有手机这么直观,会非常不方便。

转载于:https://my.oschina.net/kgdugyiy/blog/533608

tvOS游戏开发系列(SpriteKit)之准备工作(一)相关推荐

  1. tvOS游戏开发系列(SpriteKit)之新建tvOS游戏项目(二)

    2019独角兽企业重金招聘Python工程师标准>>> 新建tvOS游戏项目 tvOS开发与之前iOS.Mac开发没有太多的区别,毕竟苹果已经很明确的说的tvOS只是iOS系统的一个 ...

  2. 炸弹人游戏开发系列(8):放炸弹

    前言 上文中我们加入了1个敌人,使用A*算法寻路.本文会给我们的炸弹人增加放炸弹的能力. 说明 名词解释 xx类族 是指以xx为基类的继承树上的所有类. 本文目的 实现"放炸弹"功 ...

  3. 炸弹人游戏开发系列(2):初步设计

    前言 有了上文的初步需求分析后,就可以进入初步设计阶段了. 本文目的 得到初步的领域模型,对层和模块进行初步的划分. 本文主要内容 技术选择 开发环境 外部依赖 代码结构 开发方法 初步领域模型 高层 ...

  4. Cocos2dx游戏开发系列笔记6:怎样让《萝莉快跑》的例子运行在vs和手机上

    2019独角兽企业重金招聘Python工程师标准>>> 感谢听D同学赞助的Demo. 那怎样让它运行在vs中呢: 1 使用cocos2d-x-2.2\tools\project-cr ...

  5. 炸弹人游戏开发系列(6):实现碰撞检测,设置移动步长

    前言 上文中我们实现了"玩家控制炸弹人"的功能,本文将实现碰撞检测,让炸弹人不能穿过墙.在实现的过程中会发现炸弹人移动的问题,然后会通过设置移动步长来解决. 说明 名词解释 具体状 ...

  6. HTML5游戏开发系列教程5(译)

    原文地址:http://www.script-tutorials.com/html5-game-development-lesson-5/ 最终我决定准备下一篇游戏开发系列的文章,我们将继续使用can ...

  7. Cocos2dx游戏开发系列笔记3:牛刀小试-忍者飞镖射幽灵的Demo

    2019独角兽企业重金招聘Python工程师标准>>> 就是这个例子,应该很简单,主要用到的有:精灵的移动,触摸,碰撞检测. 赶紧搞定,待会还要陪哲哲来几局爱消除. 首先在Scene ...

  8. Cocos2dx游戏开发系列笔记8:开搞一个射击游戏《战神传说》//就个打飞机的

    2019独角兽企业重金招聘Python工程师标准>>> 又是一个愉快的夜晚 还是那张长长的工作桌 哲哲在左边做一个香云纱手包 骨头在这里噼里啪啦的解刨 pad里放着<赢在中国& ...

  9. Cocos2dx游戏开发系列笔记5:继续润色《忍者飞镖射幽灵》

    2019独角兽企业重金招聘Python工程师标准>>> 周末了,哲哲在旁边看<爸爸去哪>,骨头继续玩cocos2dx, 首先,如果你新加了CPP和H文件,记得修改项目目录 ...

最新文章

  1. python语言的理念_python之禅--理念
  2. linux启动关闭脚本,Linux下自动启动关闭Oracle脚本
  3. python爬虫入门实例-终于领会python爬虫入门示例
  4. ubuntu下不同版本python安装pip及pip的使用
  5. [No0000F4]C# 枚举(Enum)
  6. 栅格像元做地理坐标映射后的坐标值是像元中心点还是其他位置?
  7. php查询mysql返回大量数据结果集导致内存溢出的解决方法
  8. 【186天】黑马程序员27天视频学习笔记【Day15-上】
  9. Linux常见的发行版SUSE、Ubuntu、RedHat、CentOS、Fedora的联系和区别
  10. c语言 静态链表插入排序,数据结构 - 表插入排序 具体解释 及 代码(C++)
  11. 让员工一再上当的5种社会工程骗局
  12. pxe启动虚拟机过程记录
  13. jenkins基础与gitlab代理自动构建
  14. 什么是pv和uv? pv、uv
  15. 面试最常问的设计模式
  16. php-fpm 启动失败,php-fpm自启动失败问题排查
  17. 经纬度---(所有、江苏)
  18. python中seaborn是什么_Python-Seaborn绘图(matplotlib补充)
  19. 2022 开源轮子学习笔记
  20. 名人投资加密货币:推动行业发展的重要力量(连载:四)

热门文章

  1. mybatis关系映射之一对多和多对一
  2. 微信链接跳转浏览器实现微信中直接下载棋牌游戏类APP功能
  3. 你应该知道的常见的http协议状态
  4. 从傅里叶变换到Laplace变换
  5. SRS4.0源码分析-RTMP入口
  6. python写入文件没反应_python写入文本 如何用python将变量及其值写入文本文件?...
  7. Mathorcup数学建模竞赛第六届-【妈妈杯】A题:淡水养殖池塘水华发生及池水自净化研究(附一等奖获奖论文、matlab和SAS代码)
  8. 微信零钱模拟器微信小程序源码下载查收充电器自动充钱
  9. 安全灵活,华为云桌面成为数字化办公最佳搭档
  10. 影视剪辑,超实用的视频剪辑素材网站