Skip to Content
Swift游戏开发经典实例
book

Swift游戏开发经典实例

by Jonathon Manning, Paris Buttfield-Addison
January 2020
Intermediate to advanced
356 pages
6h 4m
Chinese
China Electric Power Press Ltd.
Content preview from Swift游戏开发经典实例
人工智能和行为
283
要算出猎物是否处于捕猎者的视界之内,还需要进行更多的计算。我们首先需要算
出这两个方向之间的夹角:捕猎者面对的方向和捕猎者直接面对猎物之后的方向。
这需要我们创建两个向量。第一个向量用于表示捕猎者当前面对的方向:
let facingDirection = CGPoint(x:0, y:1).rotatedBy(radians:self.zRotation)
第二个向量表示从捕猎者到猎物的方向,通过将猎物的位置减去捕猎者的位置,在
进行单位化即可算出:
let vectorToTarget = (target.position - self.position).normalized
有了这两个向量之后,就可以算出两者间的夹角。将两个向量进行点乘,再求出反
余弦值:
let angleToTarget = acos(facingDirection.dot(other: vectorToTarget))
知道了捕猎者和猎物之间的夹角后,如果这个角度小于捕猎者视角的一半,则表明
捕猎者能够看见猎物;否则猎物处于捕猎者视角之外,不可见。
9.13
NSLinguisticTagger
作词性标注
问题
你想识别出一句话中重要的构词要素。
解决方案
NSLinguisticTagger
类可以识别语句中的构成:
//
定义要分析的句子
let input = "You'll need to destroy the Ring, Mr Frodo"
//
指定词法分析选项
let options: ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

精通機器學習

精通機器學習

Aurélien Géron
FreeBSD® Unleashed

FreeBSD® Unleashed

Brian Tiemann, Michael C. Urban
深入淺出代數

深入淺出代數

Tracey Pilone, Dan Pilone
Swift学习手册

Swift学习手册

Jon Manning, Paris Buttfield-Addison, Tim Nugent

Publisher Resources

ISBN: 9787519840129