iOS基于SceneKit的3D汽车改色

turboksiOS81

基于SceneKit的汽车改色,需要修改模型文件可以去 https://www.turbosquid.com/ 自行下载,免费资源还挺多的。

先上个效果图吧:





核心代码:

    

        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)


相关文章

Runtime动态创建类

Runtime动态创建类

- (void)viewDidLoad {    [super viewDidLoad];    Class KSObj = objc_allocateClas...

iOS音视频之屏幕录制

iOS音视频之屏幕录制

苹果提供了一个自带的录屏功能、但是每次录屏的上边那个小红条的录制状态栏能忍?当然、平时的一些简单的录制就可以了、但是我们开发的程序要求就不一样了、要求高清和全屏。关于这个功能苹果也是提供了对应的类库供...

百度地图自定义marker

百度地图自定义marker

#import "HomeViewController.h"#import "PaopaoView.h"@interface HomeViewControlle...

iOS的KVO、KVC

iOS的KVO、KVC

一:KVO  在实际的开发过程中,我们可能会遇到这种需求,就是需要根据一个对象某个属性值的改变,来作出不同的处理。但是实现起来比较麻烦,需要在很多地方进行判断处理,为了方便我们的开...

iOS短视频开发之---AVPlayer

iOS短视频开发之---AVPlayer

基于原生的AVPlayer + ScrollView实现,包含视频播放、暂停、点赞动画实现。视频是采用的本地视频、需要网络视频请自行添加添加测试。添加方式:  //本地视频 &n...

Runtime详解

Runtime详解

The Objective-C language defers as many decisions as it can from compile time and link time to runti...