SoSceneLoader

InventorModule
author MeVis Medical Solutions AG
package MeVisLab/Standard
dll SoLoaders
definition SoLoaders.def

Purpose

The SoSceneLoader allows for loading meshes as Open Inventor points, lines, triangles, and faces using the Open Asset Import Library.

Note: The STL format support of assimp is limited to loading the first mesh in the STL file! If you want to join identical vertices (Join Identical Vertices) that have different normals, you need to enable the Force Normal Generation and turn Generate Normals to “SmoothNormals”.

It supports:

Format File Ending
3D GameStudio Model .mdl
3D GameStudio Terrain .hmp
3D Studio Max 3DS .3ds
3D Studio Max ASE .ase
AC3D .ac
AutoCAD DXF .dxf
Autodesk DXF .dxf
Blender .blend
Biovision BVH .bvh
CharacterStudio Motion .csm
DirectX X .x
Doom 3 .md5mesh; .md5anim; .md5camera
Irrlicht Mesh .irrmesh; .xml
Irrlicht Scene .irr; .xml
LightWave Model .lwo
LightWave Scene .lws
Milkshape 3D .ms3d
Modo Model .lxo
Neutral File Format .nff
Object File Format .off
Ogre .mesh.xml, .skeleton.xml, .material
Quake I .mdl
Quake II .md2
Quake III .md3
Quake 3 BSP .pk3
Quick3D .q3o; q3s
Raw Triangles .raw
RtCW .mdc
Sense8 WorldToolkit .nff
Stanford Polygon Library .ply
Stereolithography .stl
Terragen Terrain .ter
TrueSpace .cob, .scn
Valve Model .smd, .vta
Wavefront Object .obj
XGL .xgl, .zgl (compressed)

Usage

Select the desired options and enter a filename.

Tips

The module supports materials and it is possible to insert a material shader to each material using the inMaterialShader.

Input Fields

inMaterialShader

name: inMaterialShader, type: SoNode

An optional shader for the materials.

Parameter Fields

Visible Fields

Filename

name: filename, type: String

Sets the filename of the scene.

Load

name: load, type: Trigger

When pressed, the scene file is (re)loaded.

Clear

name: clear, type: Trigger

When pressed, the output scene is cleared.

Update Mode

name: updateMode, type: Enum, default: AutoUpdate

Defines the output update mode.

Values:

Title Name Description
Auto Clear AutoClear Automatically clear the output scene if parameters change. Requires manual loading of scene.
Auto Update AutoUpdate Automatically reload scene if parameters change.
Off Off No automatic updates. Loading and clearing must be done explicitly.

Calculate Tangents

name: calculateTangents, type: Bool, default: FALSE

If checked, the module calculates tangents (for normal mapping) and adds them as the vertex attribute oiv_Tangents.

Join Identical Vertices

name: joinIdenticalVertices, type: Bool, default: TRUE

If checked, the joining of vertices with the same attributes is enabled.

Remove Redundant Materials

name: removeRedundantMaterials, type: Bool, default: TRUE

If checked, unused or duplicate materials are removed.

Triangulate

name: triangulate, type: Bool, default: TRUE

If checked, faces are triangulated.

Find Degenerates

name: findDegenerates, type: Bool, default: TRUE

If checked, degenerated faces are searched for and removed.

Find Invalid Data

name: findInvalidData, type: Bool, default: TRUE

If checked, invalid data is searched for and warned about.

Split Large Meshes

name: splitLargeMeshes, type: Bool, default: FALSE

If checked, large meshes are split into smaller ones.

Improve Cache Locality

name: improveCacheLocality, type: Bool, default: FALSE

If checked, the cache locality is improved by reordering vertices/faces.

Optimize Meshes

name: optimizeMeshes, type: Bool, default: FALSE

If checked, the meshes are optimized for rendering.

Force Normal Generation

name: forceNormalGeneration, type: Bool, default: FALSE

If checked, normal generation is forced, even if the loaded model contains normals.

Log Detail

name: logDetail, type: Enum, default: Errors

Defines the detail of the log output.

Values:

Title Name
Errors Errors
Warnings Warnings
Verbose Verbose
Debugging Debugging

Generate Normals

name: generateNormals, type: Enum, default: GenerateSmoothNormals

Defines how normals are generated if not present in the scene file.

Values:

Title Name
Smooth Normals GenerateSmoothNormals
Normals GenerateNormals
Off GenerateOff

Normal Smoothing Crease Angle

name: normalSmoothingCreaseAngle, type: Float, default: 175, minimum: 0, maximum: 175

Sets the crease angle for smoothing of normals.

Hidden Fields

renderCaching

name: renderCaching, type: Enum, default: AUTO

Values:

Title Name
On ON
Off OFF
Auto AUTO

boundingBoxCaching

name: boundingBoxCaching, type: Enum, default: AUTO

Values:

Title Name
On ON
Off OFF
Auto AUTO

renderCulling

name: renderCulling, type: Enum, default: AUTO

Values:

Title Name
On ON
Off OFF
Auto AUTO

pickCulling

name: pickCulling, type: Enum, default: AUTO

Values:

Title Name
On ON
Off OFF
Auto AUTO

sceneLoaded

name: sceneLoaded, type: Trigger