位置: 编程技术 - 正文

OpenGL二十面体及多次细分成球体(正二十面体怎么建模)

编辑:rootadmin

推荐整理分享OpenGL二十面体及多次细分成球体(正二十面体怎么建模),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:二十面体画法,二十面体平面展开图,二十面体平面图,正二十面体建模,二十面体展开图粘贴面,二十面体展开图,二十面体展开图,二十面体展开图粘贴面,内容如对您有帮助,希望把文章链接给更多的朋友!

绘制一个规则的二十面体,通过多边形近&#;模拟法来构建表面。

在绘制前,我们需要初始化一些数据:

然后再进行绘制:

但是光光是这样,是看不出它是个什么&#;。

但是可以通过调用glPolygonMode函数,来设置多边形的显示模式。现在把它设置为GL_LINE模式:

然后我们看下效果:

现在能看出点什么了把?

现在,我想让这货看起来更加有立体感,我要给它添加一个光照(先取消GL_LINE模式)。在添加光照前,需要计算一下它的一些法线向量。计算方法,我参照了OpenGL编程指南上的代码:

法线弄好了,那么就来添加一下光照,首先,需要一些初始化数据:

参数可以根据自己需求设定,上面是白光。

然后进行光源的设置:

OpenGL二十面体及多次细分成球体(正二十面体怎么建模)

OK,这些设置好后,把上面绘制那部分修改一下就可以看到一个比较不错的二十面体了。修改如下:

看下效果:

有时候,我们需要绘制一个球体,那么就可以通过这个二十面体进行绘制,只不过需要做一些额外的事情。

我们可以想象,这个二十面体,我可以在一个球体上进行切割得到,同样,如果我切的多一点,细一点,那是不是很接近球体,那么,也就是说,我们可以通过这个二十面体进行多次细分,这样,就可以得到一个球体。

下面是细分的代码:

在上面代码中,看到了drawtriangle的函数,其代码如下:

然后,再修改绘制那一部分代码即可。修改如下:

OK,我们现在来看一下1次细分,2次细分。。。的一些效果:

可以看到,细分的次数越多,则越趋向于一个球体。

最后,我贴一下整个程序的源代码:

To be continued~

opengl光照 Blinn-Phone模型与实现 这里介绍的方法,考察从光源发出的光线,这些光线与物体表面相互作用进行建模,这个方法和光线追踪类似,但是只考虑光源与表面之间的一次相互

深入理解OpenGL拾取模式(OpenGL Picking) 深入理解OpenGL拾取模式(OpenGLPicking)转自

如何使用Android中的OpenGL ES媒体效果 Android的媒体效果框架允许开发者可以很容易的应用多种令人印象深刻的视觉效果到照片或视频之上。作为这个媒体效果的框架,它使用GPU来处理图片处

标签: 正二十面体怎么建模

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

上一篇:5.2光源

下一篇:opengl光照 Blinn-Phone模型与实现(opengl光照效果)

  • 已抵扣的进项税额怎么转出
  • 一般纳税人购买二手车可以抵扣嘛
  • 公司户和个人户卖车的时候价格差多少
  • 印花税可以申报以前年度吗
  • 附加税已扣款还要季度申报吗
  • 电子税务局在哪里看财务报表
  • 房地产公司将自建自用房产出售 土地增值税
  • 股权变更印花税申报表怎么填写
  • 公司亏损多久可以申请解散
  • 企业零申报怎么申报
  • 收到外商投入资金
  • 贸易公司代采购怎么做账
  • 建筑业开票金额与审定金额之间的关系
  • 固定资产抵扣多少年
  • 所有的进项税都在借方吗
  • 增值税专用发票验票
  • 物流企业的大宗商品仓储用地是什么意思
  • 全资子公司合并抵消
  • 外贸企业免征增值税
  • 投资决策中常用的指标有
  • 上个月开的发票退回怎么处理?
  • 客户退货发到付怎么办
  • 食堂伙食费需要开票吗
  • 工会经费怎么使用
  • uefi启动u盘安装win10系统的详细流程
  • 苹果电脑mac设备在哪里
  • mac os常用快捷键
  • 公司收到的应收股利需要分配利润吗
  • 佣金代扣代缴增值税还有附加税吗
  • 更新kb4584229
  • incredicle
  • 工业企业会计核算的特点
  • thinkphp钩子场景
  • 苏必利尔湖位置地图
  • 会计核算的实训目的
  • zendframework3中文手册
  • 预计负债和预收账款
  • 以旧换新的税务处理会计
  • 深入理解php内核pdf
  • 在筹建期间发生的开办费
  • dl.php怎么打开
  • css样式修改
  • 为什么会有不同的人种
  • ps橡皮擦不是圆圈了
  • 用pullout造句
  • 未达到起征点的增值税怎么填写
  • 侵权赔偿补偿金如何计算
  • 长期待摊费用的最新账务处理
  • 企业之间支付的管理费指什么
  • 印花税申报时间填错造成逾期怎么办
  • 小企业资本公积的来源有
  • 保险公司作为奖金怎么算
  • sql server 内存管理
  • 行政单位要不要税号?
  • 企业代扣代缴个税
  • 车船费代交是什么意思
  • 外购商品用于促销能抵扣吗
  • 经营性租赁账务处理方法
  • 工厂不开票怎么办
  • 无需缴纳的税费是什么
  • xp系统可以双屏吗
  • win7 64位系统插入磁盘提示“将磁盘插入驱动器”的解决方法
  • 输入法是全角在哪里设置
  • Linux环境下MySQL服务器优化的方法详解
  • xp系统怎么打开开机启动项
  • XP系统怎么设置屏幕常亮
  • macbook怎样充电
  • linux jre
  • win10系统怎么回滚
  • 禅道界面
  • android opengles2.0教程
  • qt pro load
  • [置顶]游戏名:chivalry2
  • js发送ajax请求
  • java对象怎么比较
  • 一些常用的网络命令
  • 两种方法解决问题三年级下册
  • 个人所得税父母双方专项扣除
  • 税务局冬季作息时间
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设