位置: 编程技术 - 正文

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)

  • 利润表里面的所得税
  • 税务机关和自然人属于平等主体吗
  • 报销费用可不可以开专票
  • 固定资产更换零部件的入账价值
  • 转让无形资产增值税
  • 固定资产的折旧方法一经选定,不得随意变更
  • 企业提供建筑服务,应向建筑服务发生地
  • 预收款未开票账务处理
  • 财产行为税计税依据
  • 低价股权转让是利空还是利好
  • 货车挂靠企业需要交增值税吗?
  • 辅导期一般纳税人预缴增值税
  • 水果 增值税专票
  • 活动费的税率
  • 单利和复利的计算区别
  • 电梯什么情况下可以换个新的
  • 筹建期员工社保分录
  • 税控机抵扣网上申报如何做?
  • 公司名下商品房交易开具发票
  • 代运营公司流程
  • 1697510840
  • 发生固定资产了怎么做账
  • 移动网速测试软件
  • 如何玩转win11
  • 工程用的东西有什么
  • 网络平台的收入怎么算
  • mac电脑command+s
  • 非居民个人所得税税率表最新
  • osx无法安装怎么办
  • 交际应酬性支出是什么
  • php destruct
  • 远期结汇会计分录
  • Linux系统怎么配置IP
  • 深入理解php内核
  • PHP:zip_read()的用法_Zip函数
  • 解决问题
  • wordpress是开源吗
  • 加计扣除符合的条件
  • 福利费需要缴税吗
  • thinkphp隐藏index.php
  • vue项目使用百度地图怎么长久使用
  • vue前进后退
  • 以下哪些企业需要填报
  • 代扣代缴的境外收入企业所得税可以抵减吗
  • 出口不退税需要备案吗
  • 帝国cms要授权吗知乎
  • dict在python中的作用
  • 软件和硬件如何分开
  • 小企业会计准则季度报表
  • 无发票的费用该谁承担
  • 稿费的个税是怎么算的
  • 离岸价的含义
  • 固定资产投资额在财务报表中怎么体现
  • 生产成本帐
  • 每月材料进出库明细表
  • 月末制造费用转入生产成本
  • 应收账款和预收账款都是企业的债权
  • 出租不动产如何缴纳增值税
  • 研发费用范围不包括
  • 个体工商户是否要交税
  • 商贸企业固定资产折旧可以一次性扣除吗?
  • 现金日记账和银行存款日记账必须逐日结出余额
  • 苹果电脑mac如何连接打印机
  • centos 拷贝
  • 微软推送win10更新 蓝牙
  • 在linux中,要解包bugzilla.tar.gz
  • QQExternal.exe是什么进程?QQExternal.exe进程为什么被运行?
  • winxp/win7/win2003 电脑开机密码设置图文方法
  • Win7登录密码
  • win7系统点击桌面图标闪退
  • 如何win10
  • css清除浮动方法有哪几种
  • 英语中our和my的区别
  • java获取两个日期间的所有月份
  • vue js 页面代码分离
  • js新开一个窗口
  • 获取路径下的文件名
  • js如何使用
  • 江西税务局官网登录
  • 公司0申报怎么申报视频
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设