3D
文章平均质量分 72
撬动未来的支点
空谈误国,实干兴邦
展开
-
【三维】关于万向节锁的直白解释
但是如果用机械部件去真正的控制物体的姿态,一般就是用万向节这种机械部件,它本身有bug。为啥,因为万向节的旋转方向之间是有连接的,连接就是限制。在万向节的限制下,想要旋转物体到一定姿态,如果还按照先转a,再转b,最后转c,最后可能在某个位置卡住了,无法旋转。这种状态就是“万向节”锁住了。卡住的位置是在两个或者多个旋转平面重合的时候,就会消失一个旋转自由度。现实世界中,我们想把一个物体摆一个姿态,其实就是先转a,再转b,最后转c。用大脑去想象的话,很简单,完全不会有问题。这是简单问题复杂化的典型代表。原创 2024-03-31 13:23:17 · 351 阅读 · 0 评论 -
【3ds max笔记】理解三维场景的浏览方式与操作方法
初学3ds max,很容易会被它的浏览方式搞晕,或者想移动物体,切换观察角度,而不知道怎么操作。其实只要梳理一下,就会变得简单。玩这个软件,容易被各种按钮,菜单搞晕。我们学习的时候必须要按模块去学习,其中浏览与操作是基本功,需要梳理明白,不然会学得一头雾水。原创 2024-03-23 10:01:36 · 496 阅读 · 0 评论 -
【OSG】OSG运行模型
关于运行模型OSG中的类很多,只看OSG代码,很难把各个类串联起来。我们知道面向对象程序的运行模型是:对象+对象间协作。单纯看代码,多数情形下,只能了解程序中有哪些对象,而不知道它们是如何协作的,这是目前IT行业中,源码阅读最大的痛点。说直白一点,就是拿到源码也看不懂,或者说很难看懂。开发者在开发程序时,首先要设计程序的运行模型,然后根据运行模型编写代码。所以,阅读源码和编写代码是一个相反的过程。至此,看不懂源码的原因就比较明显了:源码是静态的,而运行时的程序是动态的,想通过静态的代码信息掌握原创 2022-05-17 16:39:32 · 712 阅读 · 1 评论 -
OpenGL基本运行模型
OpenGL是一种三维技术规范。我们知道三维渲染场景需要实时计算大量数据。这里我根据自己的经验总结出一句话:计算机中,对性能要求高的功能模块,其运行原理必然是简单易行的!有理由断言:OpenGL没那么难。OpenGL工作原理示意图如下图(不断改进中)简要概括OpenGL工作原理OpenGL绘制某个场景:第一步:程序放数据进缓存,数据必须是可快速独立访问的;第二步:配置数据结构,解释内存,比如VAO,VBO;第三步:并行计算(并行执行着色器shader);第四步:输出前处理(深原创 2022-05-16 23:10:05 · 302 阅读 · 0 评论 -
【OSG】Examples
1. Examples osgbillboard这个项目很简单,就几个函数,而且很有意思。osg::Billboard类是一个控制器,不管你怎么旋转漫游场景,它始终都会朝向摄像机。看里面代码时,就会接触到osg的核心类了,比如- osg::Geometry- osg::Vec3Array- osg::StateSet- osg::Group- osgViewer::Viewer- 等等这里面的类又会引用到其他类,慢慢展开,但是大体上都是属于 OSG Core/osg 项目中的内容,也就原创 2022-05-12 18:57:51 · 4033 阅读 · 0 评论 -
【OSG学习】学习方法
1. 环境准备运行调试环境的准备参考我的另外一篇博客:【OSG学习】准备开发调试环境运行调试环境准备比较麻烦,但是不复杂,需要耐心。但是可能很多人会被卡在这一步,后面我会专门提供直接可以使用的完整项目,方便大家学习使用。2. 学习过程2.1 看书这里推荐一些书:《最长的一帧.pdf》《OpenSceneGraph快速入门指南.pdf》,原版 《OpenSceneGraph Quick Start Guide.pdf》《OpenSceneGraph程序设计.pdf》《OpenSceneGr原创 2022-05-12 16:46:01 · 1120 阅读 · 0 评论 -
【OSG学习】准备开发调试环境
OSG编译安装下载编译OSG源码不要克隆github上的源码,而是下载稳定版本的OSG源码进行编译。因为github上的源码处于开发阶段,我们应该优先选择稳定版本。...原创 2019-08-24 12:51:45 · 747 阅读 · 0 评论 -
三维GIS开发学习资源
OpenGL学习网站:https://learnopengl-cn.github.ioOSG学习网站:https://osg3.readthedocs.io/en/latest/原创 2020-10-26 13:31:44 · 487 阅读 · 0 评论