iOS基于SceneKit的3D汽车改色

turboksiOS381

基于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)


相关文章

iOS音视频之屏幕录制

iOS音视频之屏幕录制

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

OC的实例对象、类对象、元类对象的关系

OC的实例对象、类对象、元类对象的关系

Objective-C中的对象、简称OC对象,主要分为三种:instance对象(实例对象)、class对象(类对象)、meta-class对象(元类对象)。一:instance对象instance对...

Runtime详解

Runtime详解

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

iOS图片圆角设置

iOS图片圆角设置

    UIImageView * vv = [[UIImageView alloc] initWithFrame:CGRectMake(50, 500, 250, 25...

iOS一行代码搞定自定义AlertView

iOS一行代码搞定自定义AlertView

效果图走一走:使用方式: pod  'KSAlertView'举例使用,单按钮Alert: [[[KSAlertView alloc] initWithT...

isKindOfClass和isMemberOfClass的区别

isKindOfClass和isMemberOfClass的区别

+ (BOOL)isMemberOfClass:(Class)cls {//    类的元类 与 传入类 对比    return object_getClas...