Blender软件导出的obj数据格式文件内容解读
【cube.obj】
# Blender v2.78 (sub 0) OBJ File: ''
# www.blender.org
mtllib cube.mtl #这里是引用了一个外部材质文件cube.mtl
o Cube #指定了模型名称
v 1.000000 -1.000000 -1.000000 #开始按照如下格式定义顶点坐标,v x y z [w], 共计定义了立方体的八个顶点坐标
v 1.000000 -1.000000 1.000000
v -1.000000 -1.000000 1.000000
v -1.000000 -1.000000 -1.000000
v 1.000000 1.000000 -0.999999
v 0.999999 1.000000 1.000001
v -1.000000 1.000000 1.000000
v -1.000000 1.000000 -1.000000
vn -0.0000 -0.0000 1.0000
vn 0.0000 0.0000 -1.0000
vn 0.0000 -1.0000 0.0000
vn -1.0000 -0.0000 -0.0000
vn 0.0000 1.0000 0.0000
vn 1.0000 0.0000 0.0000
usemtl 材质.001 #指定使用外部材质文件中某一个材质, 格式为usemtl 材质名称
s off
f 2//1 6//1 7//1 3//1 #开始定义材质1的表面 f v1//vn1 v2//vn2 v3//vn3 v4//vn4, 这里是我之前定义的顶点索引值
f 5//2 1//2 4//2 8//2 #其中vn1, vn2, vn3, vn4是法线向量的索引值, 这个顶点索引和法线向量的索引值都是从1开始的哈
usemtl 材质.002 #定义了材质2的属性信息
f 1//3 2//3 3//3 4//3
usemtl 材质.003
f 3//4 7//4 8//4 4//4
usemtl 材质.005
f 5//5 8//5 7//5 6//5
usemtl 材质.006
f 1//6 5//6 6//6 2//6
【cube.mtl】
# Blender MTL File: 'None'
# Material Count: 5
newmtl 材质.001 #使用newmtl定义了一个新的材质,可以被cube.obj文件来引用我这里定义的材质纹理信息
Ns 96.078431 #使用Ns 来指定高光色的权重
Ka 1.000000 1.000000 1.000000 #|
Kd 0.007611 0.000000 0.640000 #|=====>>>ka,kd,ks分别定义了表面的环境色,漫射色和高光色,使用RGB格式, 每一个分量的值都是介于[0.0, 1.0]这个区间的
Ks 0.500000 0.500000 0.500000 #|
Ke 0.000000 0.000000 0.000000
Ni 1.000000 #Ni指定了表面光学密度
d 1.000000 #d 指定了透明度
illum 2 #illum 指定了光照模型
newmtl 材质.002 #开始定义第二种材质的属性信息
Ns 96.078431
Ka 1.000000 1.000000 1.000000
Kd 0.640000 0.053248 0.037551
Ks 0.500000 0.500000 0.500000
Ke 0.000000 0.000000 0.000000
Ni 1.000000
d 1.000000
illum 2
newmtl 材质.003
Ns 96.078431
Ka 1.000000 1.000000 1.000000
Kd 0.640000 0.000000 0.040583
Ks 0.500000 0.500000 0.500000
Ke 0.000000 0.000000 0.000000
Ni 1.000000
d 1.000000
illum 2
newmtl 材质.005
Ns 96.078431
Ka 1.000000 1.000000 1.000000
Kd 0.640000 0.000000 0.376896
Ks 0.500000 0.500000 0.500000
Ke 0.000000 0.000000 0.000000
Ni 1.000000
d 1.000000
illum 2
newmtl 材质.006
Ns 96.078431
Ka 1.000000 1.000000 1.000000
Kd 0.004758 0.640000 0.424802
Ks 0.500000 0.500000 0.500000
Ke 0.000000 0.000000 0.000000
Ni 1.000000
d 1.000000
illum 2
Blender软件导出的obj数据格式文件内容解读的更多相关文章
- 管理员技术(三): 配置静态网络地址、 使用yum软件源 、 升级Linux内核、查找并处理文件、查找并提取文件内容
一. 配置静态网络地址 目标: 本例要求为虚拟机 server 配置以下静态地址参数: 1> 主机名:server0.example.com 2> IP地址:172.25.0.11 ...
- JXL包大解析;Java程序生成excel文件和解析excel文件内容
最近需求变化,需要把excel导入 我以前没有做过,所以我查了一些资料 和参考别人的代码 以下是多种方式: import java.io.File; import java.io.FileInputS ...
- Java 操作jar包工具类以及如何快速修改Jar包里的文件内容
需求背景:写了一个实时读取日志文件以及监控的小程序,打包成了Jar包可执行文件,通过我们的web主系统上传到各个服务器,然后调用ssh命令执行.每次上传前都要通过解压缩软件修改或者替换里面的配置文件, ...
- Java如何快速修改Jar包里的文件内容
需求背景:写了一个实时读取日志文件以及监控的小程序,打包成了Jar包可执行文件,通过我们的web主系统上传到各个服务器,然后调用ssh命令执行.每次上传前都要通过解压缩软件修改或者替换里面的配置文件, ...
- 原生PHP网页导出和导入excel文件实例
原生PHP实现的网页导出和导入excel文件实例,包括上传也是用的原生.还可在exportExcel方法里设置字体等表格样式. 导出和导入表单代码: <p style="margin: ...
- pdf文件内容查看器 -- 采用wpf开发
前言 pdf是一种应用非常广的版式文档格式,已成为事实上的国际标准.关于pdf格式的文章汗牛充栋,本文也是关于pdf格式的文章,但是本文不是纸上谈兵:本人这几周一直研究pdf格式内容,不但对pfd格式 ...
- java swing文件内容检索工具
Java相关技术 - 文件内容检索工具 拿到一个几百M甚至上G的project让你去学习 有时候你会想知道某个关键词是在哪个文件里 比如:spring MVC配置的@RequestMapping,你从 ...
- FileSeek文件内容搜索工具下载
Windows 内建的搜索功能十分简单,往往不能满足用户的需要.很多的第三方搜索工具因此诞生,比如 Everything,Locate32等. 而FileSeek也是一款不错的搜索工具,其不同于其他搜 ...
- linux 里 /etc/passwd 、/etc/shadow和/etc/group 文件内容解释
•/etc/passwd文件用于存放用户账户信息,每行代表一个账户,每个账户的各项信息用冒号分割,例如: root:x:::root:/root:/bin/bash username:password ...
随机推荐
- SQL Server 通过备份文件初始化复制 – 听风吹雨
一.背景 MySQL在对有历史数据的数据库进行搭建复制(Master/Slave)的时候,可以通过在Master服务器备份历史数据,利用这个备份文件 在Slave进行还原:这样做的好处是可以更加快速的 ...
- innodb_max_purge_lag
mysql 现象: 线上数据库每个表分配一个ibdata,但是总的ibdata文件很大,超过10G,用相关工具查看,大部分空间都是undo_log 分析了db33的ibdata1的记过 Total ...
- PCA降维技术
PCA降维技术 PCA 降维 Fly Time: 2017-2-28 主成分分析(PCA) PCA Algorithm 实例 主成分分析(PCA) 主成分分析(Principal Component ...
- 開始搭建第一个zookeeper
首先须要下载zookeeper的tar包.地址为http://zookeeper.apache.org,然后再linux中解压并编译tar包. # tar-xvzf zookeeper-3.4.5.t ...
- Chrome改动浏览器User Agent
对浏览器快捷方式右键->改动目标项为 C:\Users\LJ\AppData\Local\Google\Chrome\Application\chrome.exe --user-agent=&q ...
- mfs使用指引
客户端工具集 mfsgetgoal #设定副本数 mfssetgoal #获取副本数 mfscopygoal # mfsgetsclass mfssetsclass mfscopysclass mfs ...
- 45.Qt openGL实现三维绘图
main.cpp #include <QApplication> #include <iostream> #include "tetraheadron.h" ...
- python-sqlite3事务
sqlite3事务总结: 在connect()中不传入 isolation_level 事务处理: 使用connection.commit() #!/usr/bin/env python # -*- ...
- Centos 6 搭建邮箱服务器教程
Centos 6 搭建邮箱服务器主要是是包括了Postfix, Dovecot和 MySQL了,下文我们详细的为各位介绍Centos 6 搭建邮箱服务器教程(Postfix, Dovecot和 MyS ...
- Android中使用GoogleMap的地理位置服务
写在前面:android中使用地理位置功能,可以借助Google给我们提供的框架,要是有地理位置功能,你需要引用Google Play Services,请在sdk manager中下载.如果你还要使 ...