Unity4、Unity5移动平台多线程渲染在部分安卓手机上会造成闪退

你看到的crash堆栈可能是这样的:

SIGSEGV(SEGV_MAPERR)

  #00  pc 0001276c                          /system/lib/libc.so
         #01  pc 00013dcc                          /system/vendor/lib/egl/libGLESv2_mtk.so
         #02  pc 00013ea2                          /system/vendor/lib/egl/libGLESv2_mtk.so
         #03  pc 00014c9e                          /system/vendor/lib/egl/libGLESv2_mtk.so
         #04  pc 003a46e4                          /data/app/com.tencent.tmgp.sgamece-1/lib/arm/libunity.so
         #05  pc 003a6200                          /data/app/com.tencent.tmgp.sgamece-1/lib/arm/libunity.so
         #06  pc 001f7f50                          /data/app/com.tencent.tmgp.sgamece-1/lib/arm/libunity.so
         #07  pc 0038832c                          /data/app/com.tencent.tmgp.sgamece-1/lib/arm/libunity.so
         #08  pc 003864f4                          /data/app/com.tencent.tmgp.sgamece-1/lib/arm/libunity.so
         #09  pc 00319a60                          /data/app/com.tencent.tmgp.sgamece-1/lib/arm/libunity.so
         #10  pc 00015c5a                          /system/lib/libc.so
         #11  pc 00013cea                          /system/lib/libc.so
#00  pc 0000f22c  /system/lib/libMali.so
         #01  pc 0000fd24  /system/lib/libMali.so
         #02  pc 000530f0  /system/lib/libMali.so
         #03  pc 000523dc  /system/lib/libMali.so
         #04  pc 0005098c  /system/lib/libMali.so (shim_eglSwapBuffers +58)
         #05  pc 0000e374  /system/lib/libEGL.so (eglSwapBuffers +8f)
         #06  pc 003d0350  /data/app-lib/com.tencent.tmgp.sgamece-1/libunity.so
         #07  pc 003d5930  /data/app-lib/com.tencent.tmgp.sgamece-1/libunity.so
         #08  pc 0039ffb4  /data/app-lib/com.tencent.tmgp.sgamece-1/libunity.so
         #09  pc 0038bb68  /data/app-lib/com.tencent.tmgp.sgamece-1/libunity.so
         #10  pc 003864f4  /data/app-lib/com.tencent.tmgp.sgamece-1/libunity.so
         #11  pc 00319a60  /data/app-lib/com.tencent.tmgp.sgamece-1/libunity.so
         #12  pc 0000e504  /system/lib/libc.so (__thread_entry +48)
         #00  pc 0006a318  /system/lib/egl/libGLESv2_tegra_impl.so
         #01  pc 000207cc  /system/lib/egl/libGLESv2_tegra_impl.so
         #02  pc 00020be4  /system/lib/egl/libGLESv2_tegra_impl.so
         #03  pc 00012fa4  /system/lib/egl/libGLESv2_tegra_impl.so
         #04  pc 000246a4  /system/lib/egl/libGLESv2_tegra_impl.so
         #05  pc 00002498  /system/lib/egl/libGLESv2_tegra.so (glDrawElements +2c)
         #06  pc 003a7a70  /data/app-lib/com.tencent.tmgp.sgamece-1/libunity.so
         #07  pc 001f85c8  /data/app-lib/com.tencent.tmgp.sgamece-1/libunity.so
         #08  pc 00388524  /data/app-lib/com.tencent.tmgp.sgamece-1/libunity.so
         #09  pc 003864f4  /data/app-lib/com.tencent.tmgp.sgamece-1/libunity.so
         #10  pc 00319a60  /data/app-lib/com.tencent.tmgp.sgamece-1/libunity.so
         #11  pc 0000d1d0  /system/lib/libc.so (__thread_entry +48)
         #12  pc 0000d368  /system/lib/libc.so (pthread_create +f0)

所以后来人还是不要尝试使用多线程渲染了,毕竟前人已经帮你踩过坑了。

时间: 2024-10-09 20:22:16

Unity4、Unity5移动平台多线程渲染在部分安卓手机上会造成闪退的相关文章

KeyMob移动广告聚合平台专注于IOS、安卓手机广告

目前,应用开发者获得盈利的主要方式有付费下载.广告和应用内收费.由于国内的消费习惯和知识产品保护不力等情况,移动广告和应用内收费最为开发者看好.手机广告日益成为应用开发者的主要盈利方式. 移动互联网崛起时期,艾德思奇.有米.芒果.架势无线等广告平台开始圈地移动广告市场,纷纷搭建各具特色的广告平台 , 吸引到大量优质的应用加盟, 通过各大market多渠道推广开发者的应用. KeyMob移动广告聚合平台是一个针对众多广告平台的收入管理工具.目前KeyMob聚合支持了国内外多家广告平台,通过KeyM

Unity AR多线程渲染不支持导致问题

Unity MultiThreadRendering Error Android平台: VOIDAR以及TANGO AR  均不支持多线程渲染: 导致画面卡顿 黑屏蓝屏

windows平台多线程同步实现之Mutex对象的使用

windows平台多线程同步实现之MutexMutex对象的使用 前言 线程组成: 线程的内核对象,操作系统用来管理该线程的数据结构. 线程堆栈,它用于维护线程在执行代码时需要的所有参数和局部变量. ??操作系统为每一个运行线程安排一定的CPU时间 -- 时间片.系统通过一种循环的方式为线程提供时间片,线程在自己的时间内运行,多个线程不断地切换运行,因时间片相当短,因此,给用户的感觉,就好像线程是同时运行的一样. ??单cpu计算机一个时间只能运行一个线程,如果计算机拥有多个CPU,线程就能真正

[新]最近用unity5弄的一些渲染

Unity Separable Bokeh Depth-of-Field Hexagonal Blur 博主之前渲染:最近用unity5弄的一些渲染 ---- by wolf96  http://blog.csdn.net/wolf96

DirectX* 11 多线程渲染的性能、方法和实践

对于在 CPU 上运行的 PC 游戏,渲染通常是主要的性能瓶颈:多线程渲染是一种消除瓶颈的有效方法.本文研究了 DirectX* 11 多线程渲染的性能可扩展性,讨论了多线程渲染的两种基本方法,并介绍了传统多线程延迟着色管线在大型在线游戏<战意*>中的应用.了解更多 原文地址:https://www.cnblogs.com/IDZPRC/p/10912669.html

iOS平台下闪退原因汇总(一):&quot;Ran out of trampolines of type 0/1/2&quot; 运行时间错误

"Ran out of trampolines of type 0/1/2" 运行时间错误通常出现在使用大量递归泛型时.要看到这个错误需要连接着设备直接将项目build到设备里运行调试才能看到,您可以暗示 AOT 编译器分配更多type 0.type 1 或 type 2 trampolines.此外,AOT 编译器命令行选项可以在播放器设置 (Player Settings)的其他设置 (Other Setings) 部分指定.对于 type 1 trampolines,指定 nrg

多线程导致的iOS闪退分析

前段时间做了一个APP,在测试的时候遇到了很奇怪的闪退情况. 这个APP是有关声音处理的:设备一边录音,一边对声音进行处理.所以需要2个线程,一个线程将录音保存下来,另一个处理保存下来的声音.测试的时候,会在1~10min之内,不定时.无预兆的出现闪退的情况,报的错也各不一样,有的是 1)"NSGenericException 'Collection was mutated while being enumerated" 或者: 2)"pointer being freed

三维引擎设计-多线程渲染(平台API基础和封装大致框架)

第一部分: Linux线程API基础 一:线程创建与结束 (1)pthread_t //线程的标识符类型 (2)pthread_create //用来创建一个线程, 参数线程标识符, 线程属性, 线程运行函数地址 (3)pthread_join //用来等待一个线程的结束, 参数被等待线程标识符,用户自定义指针 (4)pthread_exit //线程非正常结束,参数线程返回代码 二:修改线程属性 (1)pthread_attr_t //线程属性结构类型 (2)pthread_attr_init

Unity5 GI与PBS渲染从用法到着色代码

本文主要介绍Untiy5以后的GI,PBS,以及光源探头,反射探头的用法以及在着色器代码中如何发挥作用,GI是如何影响渲染的,主要分成三个部分,最开始说明PBS需要的材质与相应概念,二是Unity 里相应GI的操作,三是对应着色器代码的理解.如果没有特殊声明,所有操作与代码都是针对Unity5.3. PBS材质与概念 简单来说,PBS的优点不同的照明下获得一致的外观,更容易实现,更直观的参数. PBS材质概念: 1.albedo 反照率 反照率贴图定义漫反射的基本颜色,与原来的漫反射贴图相比,不