首页 > 其他分享 >初识OSG

初识OSG

时间:2022-10-31 12:12:50浏览次数:44  
标签:三维 初识 引擎 C++ 图形 OSG 3D

  笔者目前刚接触三维方向,正在学习中,故所写的内容可能有错误,还请有缘看到的同志批评指正!     就目前了解到的,三维引擎是在三维底层图形技术的基础上,封装硬件操作与三维图形算法,形成普遍意义上的三维交互引擎,提供给开发者一个简单易用、功能丰富的三维图形环境,在此基础上进行虚拟现实、三维交互、可视化管理平台二次开发等,极大提高开发效率。   那么,图形引擎是借用机器工业的同名术语,表明在整个系统中的核心地位。也可以称之为“支持应用的底层函数库”或者说是对特定应用的一种抽象。图形引擎中比较出色的有OGRE、OpenGVS、Vtree、OSG等。而一个封装了硬件操作和图形算法、简单易用、功能丰富的三维图形开发环境,就可以称作三维图形引擎;游戏引擎是指一些已经已经编写好的可编辑游戏系统或者一些交互式实时图像应用程序的核心组件。游戏引擎实现的功能主要是游戏要素如地形、天空、建筑、任务、动画、声音、环境等,这些都是三维游戏所不能缺少的。比如UE、Unity。    简单介绍几个:

  OGRE:Object-Oriented Graphics Rendering Engine

  面向对象图形渲染引擎是一个用C++开发的面向场景、灵活的3D引擎。旨在让开发人员更容易、更直接地利用硬件加速的3D图形系统开发应用。隐藏了底层系统库(direct3D和Opengl)的所有细节,提供了基于世界对象和其他直观类的接口。

  OSG:Open Scence Graph

  使用Opengl技术开发,是一套基于C++平台的应用程序接口(API)。OSG开发意义在于将3D场景定义为空间中一系列连续的对象,以进行三维世界的管理。正是由于场景及其参数定义的特点,通过状态转化、绘图管道和自定制等操作,OSG还可以用于优化渲染性能。

  Irrlicht

  用 C++ 书写的高性能实时的3D引擎,可以应用于C++程序和C#语言中OpenGL 1.2或它自己软件着色程序,可以实现该引擎的完全跨平台。尽管是开源的,该Irrlicht库提供了可以在商业级3D引擎上具有的艺术特性,例如动态地阴影,粒子系统,角色动画,室内和室外技术以及碰撞检测等。
  Axiom

  开源3D游戏引擎,是著名的开源引擎OGRE的.NET版本。源代码完全用c#构造,主要为图形部分。
  RealmForge

  开源3d游戏引擎,图形部分采用Axiom、并组合并重写其他一些网络、人工智能等模块,完全由C#构造。

  其中,OSG(Open Scence Graph)及OSGEarth用于地质建模,基于C/C++环境;相比较之下,OGRE更受欢迎,Irrlicht 的API较少,OSG的社区支持不足;根据导师的要求,目前正在学习OSG(开源)、OpenFoam、Unity相关的内容。

  笔耕不辍,钟情翰墨,笔者也是刚开始写文章来记录自己的学习情况,之前大多是记笔记,希望能坚持下去。

标签:三维,初识,引擎,C++,图形,OSG,3D
From: https://www.cnblogs.com/malec0316/p/16843778.html

相关文章

  • 学习笔记之初识混沌工程
    概要定义:主动发现系统中脆弱点的一整套方法论。目的:如何让系统在不确定性中获益?接受“系统越复杂,越脆弱”的事实,让系统在每一次失败中获益,然后不断进化。在实践中,用一......
  • Hadoop之初识MapReduce
    (初识MapReduce)1.MapReduce计算模型介绍1.1.理解MapReduce思想MapReduce的思想核心是<fontcolor=red>“分而治之”</font>。所谓“分而治之”就是把一个复杂的问题按一......
  • 初识C语言
    1.C语言是一门计算机语言(人和计算机交流的语言C/C++/JAVA/python) 2.计算机语言的发展:二进制---汇编语言---B语言---C语言…(高级语言,有国际标准). 3、写C代码:创建项目(放好......
  • <五>掌握左值引用和初识右值引用
    1:C++的引用,引用和指针的区别?1:从汇编指令角度上看,引用和指针没有区别,引用也是通过地址指针的方式访问指向的内存int&b=a;是需要将a的内存地址取出并存下来,b=20;......
  • CMake初识(一)
    一、工作流程CMake允许开发者编写一种与平台无关的CMakeList.txt文件来制定编译流程,之后根据所在的平台进一步生成本地化Makefile和工程文件(e.g.,Unix下的Makefile)......
  • JavaScript--初识
    一、JavaScript的了解1995年,网景公司与Sun公司结为开发联盟,共同完成LiveScript的开发。后网景把LiveScript改名为JavaScript。二、JavaScript的概述JavaScript是一个轻......
  • 初识c语言
    前言小伙伴们大家好,今天开始,我们即将开启c语言的正是学习,从初级到进阶,想必大家都听说过c生万物,可想而知c语言对于我们程序员的重要之处,从此篇博客开始将持续更新c语言的相关......
  • Osg-osg、osgb、osgt文件
    osg、其中osgb是osg的二进制格式;osgt格式是如下官网解释:OSGTfileisanOpenSceneGraphASCIISceneData.TheOpenSceneGraphisanopensourcehighperformance3D......
  • Osg-3D文件全解
    3dm【文件类型描述】Rhino3DModel【文件类型开发人员】Redway3dandothers【说明】3dm是二维和三维图形保存后存在的一种文件格式,大多数3DM文件被视为3DImageFiles......
  • 初识Linux(五)------ 文件与文件系统的压缩,打包与备份
    1. 压缩文件在Linux的环境中,压缩文件的扩展名大多是:“*.tar,*.tar.gz,*.tgz,*.gz,*.Z,*.bz2,*.xz”,为什么会有这样的扩展名呢?不是说Linux的扩展名没有什么作......