位置: 编程技术 - 正文

glm使用说明(glimp使用方法)

编辑:rootadmin
OBJ文件: 这里的OBJ文件是Wavefront公司的一种3D模型文件,不是VC在连接过程中产生的OBJ文件。GLM实现了用C语言对OBJ文件的常用操作,用于简单的3D游戏编程应该足够了。3DS MAX,MAYA都可以把模型以OBJ文件&#;式导出。OBJ文件中包含模型的顶点,面,三角形,法向,纹理坐标等数据,但是其中不包含纹理和材质。材质可以放在OBJ文件中指定一个材质库文件中,使用时材质库文件一般和OBJ文件放在一起。纹理图形就要自己想办法了。//模型数据结构:struct GLMmodel{ char* pathname; //模型文件和材质库的路径 char* mtllibname; //材质库名 GLuint numvertices; //顶点数 GLfloat* vertices; //储存顶点的向量 GLuint numnormals; //模型法向数 GLfloat* normals; //储存法向的向量 GLuint numtexcoords; //纹理坐标数 GLfloat* texcoords; //储存纹理坐标的向量 GLuint numfacetnorms; //规则平面数 GLfloat* facetnorms; //储存规则平面的向量 GLuint numtriangles; //三角形数 GLMtriangle* triangles; //储存三角形的向量 GLuint nummaterials; //材质数 GLMmaterial* materials; //储存材质的向量 GLuint numgroups;//图元组数 GLMgroup* groups;//储存图元组的向量 GLfloat position[3];//模型的位置 了解这个模型数据结构主要用于自己扩充操作,以下是glm提供的相关操作://单位化模型model并返回缩放比例因子单位化就是把模型通过平移和缩放变换限制到3维坐标系中点为中心的一个单位正方体区域内GLfloat glmUnitize(GLMmodel* model); //计算模型的宽,高,深尺寸,结果保存在dimensions所指的3元素数组中GLvoid glmDimensions(GLMmodel* model, GLfloat* dimensions); //按比例参数缩放模型,参数大于1放大,大于0小于1缩小,小于0反射,等于0缩小到0GLvoid glmScale(GLMmodel* model, GLfloat scale); //反转模型的多边形顶点顺序,同时反转法向量,默认多边形顶点顺序是逆时针的。GLvoid glmReverseWinding(GLMmodel* model); //计算模型面的法向(假定多边形顶点顺序为逆时针)GLvoid glmFacetNormals(GLMmodel* model); //计算模型的平滑顶点法向,angle参数为平滑交叉的最大角度(角度制)GLvoid glmVertexNormals(GLMmodel* model, GLfloat angle); //按线性投影产生纹理坐标,它把顶点线性映射到矩形上GLvoid glmLinearTexture(GLMmodel* model); //按球形映射产生纹理坐标GLvoid glmSpheremapTexture(GLMmodel* model); //从内存中释放模型GLvoid glmDelete(GLMmodel* model); //从Wavefront公司标准的.OBJ文件中读取模型GLMmodel* glmReadOBJ(char* filename); //将模型按Wavefront .OBJ文件&#;式写入文件,文件名由filename参数指定//mode指定写入方式,此参数为取或(“|”)的位联合://GLM_NONE - 只按顶点处理//GLM_FLAT - 按面计算法向//GLM_SMOOTH - 按顶点计算法向//GLM_TEXTURE - 包含纹理座标//GLM_COLOR - 只包含颜色信息(纯色材质)//GLM_MATERIAL - 包含材质信息//其中GLM_FLAT和GLM_SMOOTH不能同时指定//GLM_COLOR和GLM_MATERIAL也不能同时指定GLvoid glmWriteOBJ(GLMmodel* model, char* filename, GLuint mode); //按mode指定模式使用当前的OPENGL绘制上下文(context)绘制模型//mode参数同glmReadOBJ中的mode参数GLvoid glmDraw(GLMmodel* model, GLuint mode); //由模型生成OPENGL显示列表并返回显示列表索引号//其中mode参数同glmWriteOBJ和glmDraw中的mode参数GLuint glmList(GLMmodel* model, GLuint mode); //合并模型中差别很小的顶点,epsilon参数指定要合并顶点间的最大差距//推荐epsilon参数0.为焊接模型的起点GLvoid glmWeld(GLMmodel* model, GLfloat epsilon); //读取PPM&#;式的图形文件//返回一个位色的图象指针(可用于OPENGL纹理映射和图象绘制函数)//同时图象尺寸存储在width,height指针参数指定的地址中glmReadPPM(char* filename, int* width, int* height);

推荐整理分享glm使用说明(glimp使用方法),希望有所帮助,仅作参考,欢迎阅读内容。

glm使用说明(glimp使用方法)

文章相关热门搜索词:glm0,glocalme使用说明书,glm25说明书中文,glm1,glm30说明书,glm25说明书中文,glm25说明书中文,glm02,内容如对您有帮助,希望把文章链接给更多的朋友!

在MAC平台上编译GLFW并配置到Xcode 由于MacOSX.已经不再鼓励使用GLUT库进行OpenGL开发,缘由是因为其实在太老了其项目组已经停止更新好多年,而且不怎么安全,现在可供OpenGL开发的窗

OpenGL ES常用API OPenGLES常用API:glClearColor(0.f,0.f,0.f,1.f);//设置模式窗口的背景颜色,颜色采用的是RGBAglViewport(0,0,iScreenWidth,iScreenHeight);//设置视口的大小以及位置,视口:

Android OpenGL ES 入门 原创:

标签: glimp使用方法

本文链接地址:https://www.jiuchutong.com/biancheng/369509.html 转载请保留说明!

上一篇:glColor3f影响纹理贴图 的思考

下一篇:在MAC平台上编译GLFW并配置到Xcode(macbook编译java)

  • 产权转移书据印花税计税依据
  • 小微企业所得税税率2.5% 10% 25%
  • 简易征收增值税怎么做账
  • 计税金额是含税还是不含税
  • 微商怎么收税
  • 企业外汇买卖业务流程图
  • 免税即征即退先征后退
  • 记账凭证的具体审计目标
  • 债务重组损益的计算公式
  • 财产损失税务备案
  • 增值税附征优惠政策
  • 收到款未开发票挂账入什么科目?
  • 转账支票需要哪些资料
  • 企业的期间费用包括什么
  • 购货方跨月进项税额转出分录
  • 业务招待费的进项可以抵扣吗
  • 房地产开发公司怎么做账
  • 建筑行业预收账款
  • 销售赠品怎么入账
  • 增值税附加税包含哪些税
  • 金融行业信托
  • 会计低值易耗品有哪些
  • dll缺失怎么修复
  • 汇算清缴租赁费包括物业管理吗
  • 报销货物运输费需要什么凭证
  • php面向对象的三大特征
  • 富士通FUJITSU笔记本电脑开机进入BIOS的方法(F2)
  • 固态硬盘什么牌子性价比高
  • zhp.exe是什么进程
  • 转让子公司产生的投资收益在合并层面是不是全部抵消
  • 辛华达瀑布,加拿大贾斯珀国家公园 (© Schroptschop/Getty Images)
  • 超分模型
  • 设备拆修痕迹影响大吗
  • 深红玫瑰鹦鹉多钱一个
  • 现金日记账期初余额怎么算
  • 什么叫股权溢价之谜?
  • 公允模式投资性房地产出售
  • php设计网页
  • 小程序从入门到精通
  • 固定资产的销售怎么做账
  • 狂神说css笔记
  • 发票勾选了还能冲红吗
  • 经营租赁出租方的会计处理
  • 外贸退税是算利率吗
  • 在vue项目如何引入异步组件?
  • phpcms文档
  • vue$router
  • sql server中数据文件的扩展名是
  • 预缴增值税款怎么入账
  • mysql获取字段值的长度
  • 信息采集是哪个部门负责
  • java怎么用mysql
  • 库存商品过期报废会计分录
  • 社会保险与商业人身保险的区别有
  • 公司拨款给个人分录
  • 同城票据交换原理
  • 预提费用为什么是负债
  • 银行账跨年一直没做怎么补
  • 退款扣除手续费
  • 货物赔偿款计入什么会计科目
  • 工程保险费属于二类费
  • 应付账款余额为0怎么写
  • 银行账户是不是卡号
  • 环境检测费属于什么费用
  • mysql的min函数
  • Win7如何取消电脑的屏幕保护
  • centos8 固态硬盘
  • 电脑死机是啥原因
  • linux抓包语句
  • WIN7系统如何设置表格默认保存位置
  • 虚拟机打不开linux
  • win7旗舰版安装教程u盘
  • win8启动后的初始界面
  • perl处理特殊符号
  • nodejs 请求
  • 如何给textarea赋值
  • 从零开始学什么技术
  • JavaScript toFixed() 方法
  • JavaScript中的数据类型
  • 安徽税务发票查询入口
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设