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游戏开发经典实例
Scene Kit
255
let noiseNormalMapTexture =
noiseTexture.generatingNormalMap(withSmoothness: 0.1,
contrast: 1.0)
一旦获得法向贴图纹理,我们就可以在几何体上通过
normal
属性来使用它:
greenMaterial.normal.contents = noiseNormalMapTexture
讨论
当计算某个受光物体的颜色时,
3D
渲染器会一个像素一个像素地计算其亮度,每
个像素的亮度取决于光线的方向以及光线到达物体表面的角度,这个角度就叫作法
向。在普通的场景中,物体任意位置的法向都垂直于物体表面;假设你将
iPhone
平放到桌面上,手机向上的那一面的法向就是正上方。
当你在一个物体上应用法向贴图时,我们改变了默认的法向值,并告诉
3D
渲染器
光线反射将发生轻微的波动。由于肉眼观察到了这些变化,物体的表面于是显得粗
糙不平了。当我们将单一纹理贴到材质上时,这会导致物体显示出更多的几何细节,
通常会显得更加自然。
8.11
约束对象
问题
我们想让物体的位置和旋转角度被其他物体约束。
解决方案
首先,创建一个被约束对象:
let pointer = SCNPyramid(width: 0.5, height: 0.9, length: 4.0)
let pointerNode = SCNNode(geometry: pointer)
pointerNode.position ...
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