导航:首页 > APP软件 > 模型安卓

模型安卓

发布时间:2023-07-04 11:12:43

Ⅰ Android OpenGLES2.0(十六)——3D模型贴图及光照处理(obj+mtl)

在Android OpenGLES2.0(十四)——Obj格式3D模型加载中实现了Obj格式的3D模型的加载,加载的是一个没有贴图,没有光照处理的帽子,为了呈现出立体效果,“手动”加了光照,拥有贴图的纹理及光照又该怎么加载呢?

本篇博客例子中加载的是一个卡通形象皮卡丘,资源是在网上随便找的一个。加载出来如图所示:

obj内容格式如下:

mtl文件内容格式如下:

关于Obj的内容格式,在上篇博客中已经做了总结,本篇博客中使用的obj,可以看到f后面的不再跟的是4个数字,而是 f 2/58/58 3/59/59 17/60/60 这种样子的三组数,每一组都表示为顶点坐标索引/贴图坐标点索引/顶点法线索引,三个顶点组成一个三角形。而头部的 mtllib pikachu.mtl 则指明使用的材质库。
而mtl格式文件中,主要数据类型为:

模型加载和之前的模型加载大同小异,不同的是,这次我们需要将模型的贴图坐标、顶点法线也一起加载,并传入到shader中。其他参数,有的自然也要取到。
模型加载以obj文件为入口,解析obj文件,从中获取到mtl文件相对路径,然后解析mtl文件。将材质库拆分为诸多的单一材质。obj对象的 加载,根据具使用材质不同来分解为多个3D模型。具体加载过程如下:

顶点着色器

片元着色器

完成了以上准备工作,就可以调用 readMultiObj 方法,将obj文件读成一个或多个带有各项参数的3D模型类,然后将每一个3D模型的参数传入shader中,进而进行渲染:

安卓手机有没有能做3d模型的软件

手机端实现的建模技术已经支持3D扫描、数字雕刻、3D打印等高端技术,指尖触摸和拖动创很精确,对用户来说,触摸界面更加友好,适合随时随地发挥创意。以下是手机上的3D建模软件总结:

PhotoSynthforiPhone

一款微软开发的全景拍摄应用老烂,该应用会判断出照片和照片之间的共同点,快速建构将各种不同角度和来源照片的360度平面全景照片。

QloneMat

一个黑科技感满点的AR3D扫描建模工具,可以超级方便快速地把现实物品扫描成3D模型文件。目前仅支持英明高文语言。

Sculpt建模app

一款数字雕刻和绘画应用程序,用户在线可以简单的绘制3D图形。

Putty3d

一款超好用的手机在线3D素描簿,支持3D建模、3D打印等高激含尺端操作,实现简单触摸和拖动雕刻。

如果想偷懒的话,可以利用ThingJS3D模型库,有十万个3D模型、场景供选择,不用重复建模,直接拖动到3D场景中。效果还不错滴

工具类

植物类

建筑类

Ⅲ 一、Android 虚拟机内存模型

jvm运行时数据区域解析
刘望舒的BLOG
虚拟机的内存模型

1.程序计数器: 确定程序指令执行顺序的,是唯一一块不会发生内存溢出的区域

2. Java虚拟机栈

**它也是线程私有的,负责存储方法内的局部变量,方法出口等。每执行一个方法都相当于压如一个栈帧,方法执行完比后这个栈帧从Java虚拟机栈中弹出。

3.本地方法区
负责管理虚拟机用到的 C 的方法。

4.堆内存区域
Java堆是一块被所有线程共享的区域,用来存放对象的实例。它不需要物理上连续,只需要逻辑上连续就可以。

5.方法区
方法区是被所有线程共享的的内存区域,用来存放已经被Java虚拟机加载的类的结构信息:运行时常量池,字段,方法信息,静态变量等数据。

class文件的内容

阅读全文

与模型安卓相关的资料

热点内容
工具英语单词 浏览:965
app用什么语言写 浏览:239
环球网校在哪个文件夹 浏览:501
Word文件怎么改成网页格式 浏览:883
西游之路升级 浏览:854
atv和app分别是代表什么 浏览:370
苹果六s为什么充不进电 浏览:386
qq阅读hjava 浏览:896
给力传奇版本会员 浏览:668
app服务器数据库开发 浏览:855
怎么用映像文件装系统 浏览:113
ascii格式文件 浏览:886
kali需要学什么编程语言 浏览:603
中国志愿app如何修改电话号码 浏览:438
项目经理数据分析师哪个好 浏览:547
abinit教程 浏览:12
4gb优盘能放多少文件 浏览:389
ug编程到底是什么 浏览:466
win10重置怎么选择删除c盘文件 浏览:332
燃尽图用什么工具 浏览:338

友情链接