[SceneKit专题]11-Reference-Nodes引用节点

1,508 阅读1分钟

说明

本系列文章是对<3D Apple Games by Tutorials>一书的学习记录和体会

此书对应的代码地址

SceneKit系列文章目录

本文将完成一个完整的node节点,带有完整贴图,并将其导入其他场景中,成为其中的一个引用节点.这样可以更方便的组织场景,并能复用场景中的节点,正类似于面向对象编程的思想.

新建节点,删除其中自带的相机

QQ20170414-140143.png
QQ20170414-140119.png

拖动一个球体进去,处理各项属性

QQ20170414-140156.png
QQ20170414-140209.png
QQ20170414-140220.png

diffuse颜色贴图,漫反射贴图

QQ20170414-140255.png

normal法线贴图

QQ20170414-140311.png

specular高光贴图,镜面贴图

QQ20170414-140323.png

reflective反射贴图

QQ20170414-140335.png

emission发光贴图

QQ20170414-140350.png

贴图过程

QQ20170409-143922@2x.png

导入引用节点

QQ20170414-140421.png

QQ20170414-140436.png

mip map渐变纹理图像

Scene Kit默认启用了mip map技术,来加速远距离物体的纹理渲染.

QQ20170414-140407.png

  • None:不使用mip map.图中地平线处出现了明显的摩尔纹.
  • Nearest:从近处的mip map图像取样来生成下一幅mip map图像
  • Linear:这是默认选项,从最近的两幅mip map图像中取样生成中间的mip map图像,线性插值. 需要注意的是,当原始素材分辨率不够需要放大时,采用的选项也是这里的设置.即mip map类型对放大和缩小都生效

wrapS,wrapT

设定素材图像贴图时是否重复

QQ20170414-140512.png

QQ20170414-140522.png