基于SceneKit的汽车改色,需要修改模型文件可以去 3D Models for Professionals :: TurboSquid自行下载,免费资源还挺多的。

先上个效果图吧:

核心代码:

let path = Bundle.main.path(forResource: "ks_car", ofType: "dae")!

let source = SCNSceneSource.init(url: URL(fileURLWithPath: path), options: nil)

let scene = source?.scene(options: nil)

//添加灯光效果 omni:点光源、方向360度,可衰减

let lightNode = SCNNode.init()

lightNode.light = SCNLight()

lightNode.light?.type = SCNLight.LightType.omni

lightNode.position = SCNVector3Make(0, 0, 300)

scene?.rootNode.addChildNode(lightNode)

scnView = SCNView.init(frame: CGRect(x: 0, y: 0, width: kswidth, height: 500))

scnView.allowsCameraControl = true

scnView.showsStatistics = true

scnView.backgroundColor = UIColor.white

scnView.scene = scene

self.view.addSubview(scnView)

demo地址: GitHub - Turboks/3DCar

iOS基于SceneKit的3D汽车改色相关推荐

  1. iOS 10 SceneKit 新特性 – SceneKit 制作 3D 场景框架

    来源:scauos(@大朕东) 链接:http://www.jianshu.com/p/b30785bb6c97 开头语: 今天的主题是探索iOS10 SceneKit的新功能,你可以观看今年WWDC ...

  2. 基于VC++的3D地形绘制与纹理贴图

    前言 随着地理信息系统产业的发展,三维产品也在生活中处处吸引着我们的眼球.作为数字城市的核心内容,城市模型的构建成为了目前研究的热点.OpenGL是独立于操作系统和硬件环境的三维图形库,其为实现逼真的 ...

  3. 【lidar】基于YOLO的3D目标检测(激光雷达点云)课程设计

    基于YOLO的3D目标检测(激光雷达点云)课程设计 代码+数据集下载地址:下载地址

  4. 2D秒变3D!视角还能随意切!华为上交提出:CIPS-3D:基于GAN的3D感知生成器

    明敏 发自 凹非寺 来源:量子位(QbitAI) 如果让GAN生成的逼真人像变成3D版,会怎样? 仿佛有摄像机对着人像直拍,正面.侧面.仰视.俯视不同角度都能展现. 真的有种人要从画中走出来那味儿了. ...

  5. CaDDN:基于单目的3D目标检测新方法(CVPR2021)

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 作者丨元气满满的打工人 来源丨CV研习社 文章导读 导读:在自动驾驶的技术中,3D目标检测能够提更加丰 ...

  6. 【实验】配置CISCO IOS基于区域的防火墙

    欢迎关注微信公众号[厦门微思网络].www.xmws.cn专业IT认证培训19周年 主要课程:思科.华为.红帽.ORACLE.VMware.CISP.PMP等认证培训及考证 配置需求 配置CISCO ...

  7. three.js加载3d模型_基于WebGL的3D技术在网页中的运用 ThingJS 前端开发

    Three.js.ThingJS这些引擎库可以加载3D制作软件的模型,大幅度提高了制作效率,改变WebGL开发困难的局面,让Web开发者享受便捷的3D开发服务.三者的难度对比如下: ThingJS(框 ...

  8. iOS技术总结1——3D Touch技术

    简介 3D Touch是iPhone 6s+,iOS9之后新增的功能.是一种立体触控技术,被苹果称为新一代多点触控技术,在Apple Watch上体现为采用了Force Touch,屏幕可感知不同的感 ...

  9. VideoPose3D:基于视频的3D人体关键点检测

    1. 概述 Dario Pavllo等人于2019年提出了VideoPose3D模型,旨在把输入视频转换成人体各关键点相对于根关节的相对三维位置.为了实现这一目的,作者采取的是两步走的策略.首先要利用 ...

最新文章

  1. 1.磁盘的数据结构包括那些内容?
  2. c语言long long类型赋值
  3. Android Studio报Element XXXX must be declared的解决方法
  4. 开源 java CMS - FreeCMS2.3会员个人资料
  5. python带格式复制excel样式和内容_使用python的xlrd,xlwt和xlutils.copy保留样式
  6. Mybatis的jdbc参数设置
  7. 原生javascript之实战 轮播图
  8. asp.net core合并压缩资源文件引发的学习之旅
  9. 《走遍中国》珍藏版(三)
  10. P2280 [HNOI2003]激光炸弹
  11. java 8进制串转中文_为什么不能用中文进行编程?而英文就可以
  12. iOS视图控制器之间delegate传值教程
  13. ICPC程序设计题解书籍系列之六:吴永辉:《算法设计编程实验》
  14. 【原创】Mac 工作协同之文件共享问题
  15. 用计算机探索奥秘规律例题,计算器指法练习题.doc
  16. JavaSE基础——IO流详解(1)字节流和字符流
  17. Hadoop2.7.3伪分布式集群搭建
  18. Vue Cli 3代理配置
  19. 如何开启win10自带的五笔输入法,并把字库切换成五笔98版
  20. mysql 怎么加读锁_MYSQL—加写锁,加读锁,解锁

热门文章

  1. 树莓派4b和3b+功耗_从入手树莓派开始
  2. APISpace 日出日落API接口 免费好用
  3. Linux 硬链接数的理解和cd . cd ..的实质
  4. IPAD点菜通—电子菜谱
  5. 归并排序——排序算法
  6. Java回溯详解(组合、排列、装载问题)
  7. DSG-RealSync在保险行业的应用案例(太平洋保险)
  8. Excel操作:使用offset函数让数据透视表动态更新
  9. html怎么图片变模糊,html代码如何让照片变模糊
  10. 【练习笔记(第一次)】2020年数学建模国赛C题:数据处理、源代码