SceneKit-真机渲染效果和模拟器不一致

网友求助解决一个真机和模拟器运行不一致的问题

模拟器运行

IMG_2180.PNG

模型如下

F9662649-561B-4048-B1AA-C737B5CB9F34.png

部件很多

要给部件使用下面的图片填充为自身颜色

图片如下

15C0AC25-8118-4086-958D-2B8390EA3381.png

渲染部分的代码看了一下没什么问题

for (SCNMaterial *material in arr) {
    material.diffuse.intensity = 0.65;
    material.diffuse.wrapS = SCNWrapModeRepeat;
    material.diffuse.wrapT = SCNWrapModeRepeat;
    material.diffuse.contents = @"V10004.png";
    material.diffuse.contentsTransform = SCNMatrix4MakeScale(10, 10, 0);
   material.locksAmbientWithDiffuse = YES;
}

最终锁定出现问题的一句代码

 _scnView = [[SCNView alloc] initWithFrame:self.view.bounds ];

其实初始化方法 还有一个参数,这个参数是决定使用什么渲染方式,

#define SCNViewOptionPreferredRenderingAPI     SCNPreferredRenderingAPIKey
#define SCNViewOptionPreferredDevice       SCNPreferredDeviceKey
#define SCNViewOptionPreferLowPowerDevice  SCNPreferLowPowerDeviceKey

如果是模拟器默认使用 SCNViewOptionPreferredRenderingAPI ,如果是真机默认使用第二种,所以这是残生不同渲染效果的原因,我们修改一下初始化代码,如下

_scnView = [[SCNView alloc] initWithFrame:self.view.bounds options:@{SCNPreferredRenderingAPIKey:@true}];

真机运行

SceneKit 中文教程

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Android干货

Android项目实战(四十五):Zxing二维码切换横屏扫描

19150
来自专栏非著名程序员

拖拽,自由组合,让你的开发更加简单,用户更方便

今天给大家推荐一个自由拖拽,自由组合的控件,这个控件是我自定义写的。通过它,我们可以自由拖拽,自由组合实现一个界面,满足一个用户自由组合界面的需求。这里不是通过...

24460
来自专栏韩伟的专栏

Unity2D手册翻译(四)

Sprite Packer 在设计sprite图形时,每个角色一个单独的纹理文件比较方便。然而,通常认为,sprite纹理中图形元素间的空白空间,会浪费运行时显...

30950
来自专栏偏前端工程师的驿站

JS魔法堂之实战:纯前端的图片预览

一、前言                                   图片上传是一个普通不过的功能,而图片预览就是就是上传功能中必不可少的子功能了。在这...

29660
来自专栏程序员的知识天地

javascript对点击事件和拖动事件的区分

1.项目中,为了更好的服务用户,经常会设计一个便捷的通道,这个通道一般都是“悬浮”的。

69430
来自专栏coding

sublime text 3在win10下中文显示为方块的解决方式

59330
来自专栏Phoenix的Android之旅

如何加载一张超大高清图

"大图片加载容易做,可是这个需求要保证在不OOM的情况下能放大查看,还要能清晰展示,这得怎么呢?",愁眉苦脸的小呼说到。

9820
来自专栏维C果糖

设置 IntelliJ IDEA 主题和字体的方法

1 前言 在博文「IntelliJ IDEA 之 HelloWorld 项目创建及相关配置文件介绍」中,我们已经用 IntelliJ IDEA 创建了第一个 J...

1K100
来自专栏IMWeb前端团队

React-Native简介

React-Native 基于目前React来开发IOS原生应用,Android版本将在年底推出。 为什么需要React-Native 目前主流的应用大体分成三...

336100
来自专栏Jerry的SAP技术分享

微信小程序开发系列六:微信框架API的调用

通过前面五个章节的介绍,大家对微信小程序的视图和控制器,微信调试器,以及如何在微信控制器里编写JavaScript函数来响应微信小程序的用户事件已经有了一个最基...

41720

扫码关注云+社区

领取腾讯云代金券