55 osgPlugins相关
登录

osgPlugins相关

作者: osgChina 发布于2018-10-22 15:13:19 分类 : 用户指南

OSG提供了很多的插件用来读取常用的数据格式,包括图像和模型等等。下面对插件的使用进行简单的描述。

使用插件读取和保存数据

当使用osgDB读取文件时,会自动根据文件的扩展名来到插件目录中寻找相应的插件,来实现。

比如:

> osgviewer cow.osg

调用了osgdb_osg插件去读*.osg文件。 

> osgviewer model.flt

调用了osgdb_flt插件去读*.flt文件。 

如果使用代码我们是使用如下代码读取模型:

#include <osgDB/ReadFile>

osg::ref_ptr<Node> node = osgDB::readNodeFile("cow.osg");
osg::ref_ptr<Image> image = osgDB::readImageFile("lz.rgb");

下面是保存模型:

#include <osgDB/WriteFile>
osgDB::writeNodeFile(*node, "saved.osg");

使用OSG插件是用户无需过分关心的事情,机制已经建立,当读某文件时,它会自己去寻找相应的插件,当你需要读定特文件的时候,就要确认这个文件的插件是否存在,如果不存在如何编译。

列举一些OSG支持的模型类型

Plugin name

Description

Extensions

Read

Write

Notes

3dc

3DC point cloud reader

.3dc .asc

yes

no


3ds

3D Studio

.3ds

yes

yes


ac3d

AC3D modeler

.ac

yes

yes

http://www.inivis.com/

bsp

Quake3 BSP

.bsp

yes

no


dae

COLLADA 1.4.x

.dae

yes

yes

Requires Collada DOM library. See Collada plugin details

dw

Design Workshop Database

.dw

yes

no


dxf

Autodesk DXF Reader

.dxf

yes

no


fbx

Autodesk FBX

.fbx

yes

yes

Requires Autodesk's FBX SDK. If using OpenSceneGraph 2.8.x you'll need version 2010.2 of the SDK. Otherwise checkReaderWriterFBX.h to see which version of the SDK is required (currently 2012.1). If you have problems loading an FBX model please check that it works in Autodesk's FBX QuickTime Viewer first to see if the model was correctly exported.

geo

Geo

.gem .geo

yes

no


Inventor

Open Inventor format

.iv .wrl

yes

yes

.wrl Only VRML1.0

ive

Native osg binary

.ive

yes

yes

May also read/write (internal) images

logo

Logo database

.logo

yes

no


lwo

Lightwave Object

.lwo .lw .geo

yes

no


lws

Lightwave Scene

.lws

yes

no


md2

Quake MD2

.md2

yes

no


obj

Alias Wavefront

.obj

yes

yes

Also writes materials to .mtl

ogr


.ogr

yes

no


Openflight

Multigen Openflight

.flt

yes

yes

See OpenFlight plugin details

osg

Native osg ascii

.osg

yes

yes

Currently the writer supports OVERRIDE/PROTECTED flags in "StateSets" only for "Modes" and not for "StateAttributes".

pfb

Performer loader

All extensions supported by Performer loaders

yes

no

Requires Performer library

shp

ESRI Shapefile

.shp

yes

no


stl

Stereolithography file

.stl .sta

yes

no


vrml

VRML2

.wrl

yes

no

Requires OpenVRML library

x

DirectX 3D model

.x

yes

no


图片和视频

Plugin name

Description

Extensions

Read

Write

Notes

bmp

Window bitmap

.bmp

yes

yes


dds

DirectX image format

.dds

yes

yes


gdal

GDAL image loaders

All extensions supported by GDAL

yes

no


gif

GIF Image

.gif

yes

no


hdr

High Dynamic Range image

.hdr

yes

yes


jp2


.jps .jpc

yes

yes


jpeg

Jpeg image

.jpeg .jpg

yes

yes


Openflight

Image attribute files

.attr

yes

yes

Stores additional attributes that are not stored in .rgb files

pic

PIC image

.pic

yes

no


png

Portable Network Graphics

.png

yes

yes


pnm


.pnm. ppm .pgm .pbm

yes

yes


rgb


.rgb .sgi .rgba .int .inta .bw

yes

yes


tga

Targa image

.tga

yes

no


tiff

Tiff image

.tiff .tif

yes

yes


quicktime

Quicktime movie loader

.mov .mpg .mpv .mp4 .m4v .dc .avi .flv .swf

yes

yes



Quicktime image loader

rgb. rgba .jpg .jpeg .tif .tiff .gif .png .pict .pct .tga .psd

yes

yes


xine

Xine image stream

.mpg .mpv .db .flv .mov .avi .wmv. xine

yes

no


压缩以及网络传输类型

Plugin name

Description

Extensions

Read

Write

Notes

curl

HTTP Protocol Model

.curl

yes

no


osga






txp

Terrapage file

.txp

yes

no

Produced by Terra Vista terrain building tools

net






zip






tgz






osgtgz






字体类型

Plugin name

Description

Extensions

Read

Write

Notes

freetype

Freetype font loader

.ttf .ttc .pfb .pfa .cid .cff .cef .fon .fnt

yes

no


txf

GLU texture font

.txf

yes

no


加载时可以显式加的矩阵操作

Plugin name

Description

Extensions

Read

Write

Notes

rot

Rotates to the loaded model

.rot




scale

Scales the loaded model

.scale




trans

Translates the loaded model

.trans




normals

Shows normals of the loaded model

.normals