2.8 branch: Updates for dds and OpenFlight plugins. Revisions merged from trunk in this commit: 9959, 10084, 10264, 10283, 10440, 10491, 10761, and 11159.
This commit is contained in:
@@ -84,7 +84,8 @@ class Comment : public Record
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<Comment> g_Comment(COMMENT_OP);
|
||||
REGISTER_FLTRECORD(Comment, COMMENT_OP)
|
||||
|
||||
|
||||
|
||||
/** LongID -
|
||||
@@ -111,7 +112,8 @@ class LongID : public Record
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<LongID> g_LongID(LONG_ID_OP);
|
||||
REGISTER_FLTRECORD(LongID, LONG_ID_OP)
|
||||
|
||||
|
||||
|
||||
/** Matrix -
|
||||
@@ -150,7 +152,8 @@ class Matrix : public Record
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<Matrix> g_Matrix(MATRIX_OP);
|
||||
REGISTER_FLTRECORD(Matrix, MATRIX_OP)
|
||||
|
||||
|
||||
|
||||
/** Multitexture -
|
||||
@@ -228,7 +231,8 @@ class Multitexture : public Record
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<Multitexture> g_Multitexture(MULTITEXTURE_OP);
|
||||
REGISTER_FLTRECORD(Multitexture, MULTITEXTURE_OP)
|
||||
|
||||
|
||||
|
||||
/** UVList - Texture coordinates used with multitexture.
|
||||
@@ -284,7 +288,7 @@ class UVList : public Record
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<UVList> g_UVList(UV_LIST_OP);
|
||||
REGISTER_FLTRECORD(UVList, UV_LIST_OP)
|
||||
|
||||
|
||||
/** Replicate -
|
||||
@@ -310,38 +314,38 @@ class Replicate : public Record
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<Replicate> g_Replicate(REPLICATE_OP);
|
||||
|
||||
REGISTER_FLTRECORD(Replicate, REPLICATE_OP)
|
||||
|
||||
// Prevent "unknown record" message for the following ancillary records:
|
||||
RegisterRecordProxy<DummyRecord> g_OldTranslate(OLD_TRANSLATE2_OP);
|
||||
RegisterRecordProxy<DummyRecord> g_OldRotateAboutPoint(OLD_ROTATE_ABOUT_POINT_OP);
|
||||
RegisterRecordProxy<DummyRecord> g_OldRotateAboutEdge(OLD_ROTATE_ABOUT_EDGE_OP);
|
||||
RegisterRecordProxy<DummyRecord> g_OldScale(OLD_SCALE_OP);
|
||||
RegisterRecordProxy<DummyRecord> g_OldTranslate2(OLD_TRANSLATE_OP);
|
||||
RegisterRecordProxy<DummyRecord> g_OldNonuniformScale(OLD_NONUNIFORM_SCALE_OP);
|
||||
RegisterRecordProxy<DummyRecord> g_OldRotateAboutPoint2(OLD_ROTATE_ABOUT_POINT2_OP);
|
||||
RegisterRecordProxy<DummyRecord> g_OldRotateScaleToPoint(OLD_ROTATE_SCALE_TO_POINT_OP);
|
||||
RegisterRecordProxy<DummyRecord> g_OldPutTransform(OLD_PUT_TRANSFORM_OP);
|
||||
RegisterRecordProxy<DummyRecord> g_OldBoundingBox(OLD_BOUNDING_BOX_OP);
|
||||
RegisterRecordProxy<DummyRecord> g_IndexedString(INDEXED_STRING_OP);
|
||||
RegisterRecordProxy<DummyRecord> g_RoadZone(ROAD_ZONE_OP);
|
||||
RegisterRecordProxy<DummyRecord> g_RotateAboutEdge(ROTATE_ABOUT_EDGE_OP);
|
||||
RegisterRecordProxy<DummyRecord> g_Translate(TRANSLATE_OP);
|
||||
RegisterRecordProxy<DummyRecord> g_Scale(NONUNIFORM_SCALE_OP);
|
||||
RegisterRecordProxy<DummyRecord> g_RotateAboutPoint(ROTATE_ABOUT_POINT_OP);
|
||||
RegisterRecordProxy<DummyRecord> g_RotateScaleToPoint(ROTATE_SCALE_TO_POINT_OP);
|
||||
RegisterRecordProxy<DummyRecord> g_PutTransform(PUT_TRANSFORM_OP);
|
||||
RegisterRecordProxy<DummyRecord> g_GeneralMatrix(GENERAL_MATRIX_OP);
|
||||
RegisterRecordProxy<DummyRecord> g_Vector(VECTOR_OP);
|
||||
RegisterRecordProxy<DummyRecord> g_BoundingBox(BOUNDING_BOX_OP);
|
||||
RegisterRecordProxy<DummyRecord> g_BoundingSphere(BOUNDING_SPHERE_OP);
|
||||
RegisterRecordProxy<DummyRecord> g_BoundingCylinder(BOUNDING_CYLINDER_OP);
|
||||
RegisterRecordProxy<DummyRecord> g_BoundingConvexHull(BOUNDING_CONVEX_HULL_OP);
|
||||
RegisterRecordProxy<DummyRecord> g_BoundingHistogram(BOUNDING_HISTOGRAM);
|
||||
RegisterRecordProxy<DummyRecord> g_BoundingVolumeCenter(BOUNDING_VOLUME_CENTER_OP);
|
||||
RegisterRecordProxy<DummyRecord> g_BoundingVolumeOrientation(BOUNDING_VOLUME_ORIENTATION_OP);
|
||||
RegisterRecordProxy<DummyRecord> g_HistogramBoundingVolume(HISTOGRAM_BOUNDING_VOLUME_OP);
|
||||
REGISTER_FLTRECORD(DummyRecord, OLD_TRANSLATE2_OP)
|
||||
REGISTER_FLTRECORD(DummyRecord, OLD_ROTATE_ABOUT_POINT_OP)
|
||||
REGISTER_FLTRECORD(DummyRecord, OLD_ROTATE_ABOUT_EDGE_OP)
|
||||
REGISTER_FLTRECORD(DummyRecord, OLD_SCALE_OP)
|
||||
REGISTER_FLTRECORD(DummyRecord, OLD_TRANSLATE_OP)
|
||||
REGISTER_FLTRECORD(DummyRecord, OLD_NONUNIFORM_SCALE_OP)
|
||||
REGISTER_FLTRECORD(DummyRecord, OLD_ROTATE_ABOUT_POINT2_OP)
|
||||
REGISTER_FLTRECORD(DummyRecord, OLD_ROTATE_SCALE_TO_POINT_OP)
|
||||
REGISTER_FLTRECORD(DummyRecord, OLD_PUT_TRANSFORM_OP)
|
||||
REGISTER_FLTRECORD(DummyRecord, OLD_BOUNDING_BOX_OP)
|
||||
REGISTER_FLTRECORD(DummyRecord, INDEXED_STRING_OP)
|
||||
REGISTER_FLTRECORD(DummyRecord, ROAD_ZONE_OP)
|
||||
REGISTER_FLTRECORD(DummyRecord, ROTATE_ABOUT_EDGE_OP)
|
||||
REGISTER_FLTRECORD(DummyRecord, TRANSLATE_OP)
|
||||
REGISTER_FLTRECORD(DummyRecord, NONUNIFORM_SCALE_OP)
|
||||
REGISTER_FLTRECORD(DummyRecord, ROTATE_ABOUT_POINT_OP)
|
||||
REGISTER_FLTRECORD(DummyRecord, ROTATE_SCALE_TO_POINT_OP)
|
||||
REGISTER_FLTRECORD(DummyRecord, PUT_TRANSFORM_OP)
|
||||
REGISTER_FLTRECORD(DummyRecord, GENERAL_MATRIX_OP)
|
||||
REGISTER_FLTRECORD(DummyRecord, VECTOR_OP)
|
||||
REGISTER_FLTRECORD(DummyRecord, BOUNDING_BOX_OP)
|
||||
REGISTER_FLTRECORD(DummyRecord, BOUNDING_SPHERE_OP)
|
||||
REGISTER_FLTRECORD(DummyRecord, BOUNDING_CYLINDER_OP)
|
||||
REGISTER_FLTRECORD(DummyRecord, BOUNDING_CONVEX_HULL_OP)
|
||||
REGISTER_FLTRECORD(DummyRecord, BOUNDING_HISTOGRAM)
|
||||
REGISTER_FLTRECORD(DummyRecord, BOUNDING_VOLUME_CENTER_OP)
|
||||
REGISTER_FLTRECORD(DummyRecord, BOUNDING_VOLUME_ORIENTATION_OP)
|
||||
REGISTER_FLTRECORD(DummyRecord, HISTOGRAM_BOUNDING_VOLUME_OP)
|
||||
|
||||
|
||||
} // end namespace
|
||||
|
||||
|
||||
@@ -48,7 +48,8 @@ class PushLevel : public Record
|
||||
virtual ~PushLevel() {}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<PushLevel> g_PushLevel(PUSH_LEVEL_OP);
|
||||
REGISTER_FLTRECORD(PushLevel, PUSH_LEVEL_OP)
|
||||
|
||||
|
||||
|
||||
/** PophLevel
|
||||
@@ -86,7 +87,8 @@ class PopLevel : public Record
|
||||
virtual ~PopLevel() {}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<PopLevel> g_PopLevel(POP_LEVEL_OP);
|
||||
REGISTER_FLTRECORD(PopLevel, POP_LEVEL_OP)
|
||||
|
||||
|
||||
|
||||
/** PushSubface
|
||||
@@ -109,7 +111,8 @@ class PushSubface : public Record
|
||||
virtual ~PushSubface() {}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<PushSubface> g_PushSubface(PUSH_SUBFACE_OP);
|
||||
REGISTER_FLTRECORD(PushSubface, PUSH_SUBFACE_OP)
|
||||
|
||||
|
||||
|
||||
/** PopSubface
|
||||
@@ -132,7 +135,8 @@ class PopSubface : public Record
|
||||
virtual ~PopSubface() {}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<PopSubface> g_PopSubface(POP_SUBFACE_OP);
|
||||
REGISTER_FLTRECORD(PopSubface, POP_SUBFACE_OP)
|
||||
|
||||
|
||||
|
||||
/** PushExtension
|
||||
@@ -156,7 +160,8 @@ class PushExtension : public Record
|
||||
virtual ~PushExtension() {}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<PushExtension> g_PushExtension(PUSH_EXTENSION_OP);
|
||||
REGISTER_FLTRECORD(PushExtension, PUSH_EXTENSION_OP)
|
||||
|
||||
|
||||
|
||||
/** PopExtension
|
||||
@@ -180,7 +185,8 @@ class PopExtension : public Record
|
||||
virtual ~PopExtension() {}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<PopExtension> g_PopExtension(POP_EXTENSION_OP);
|
||||
REGISTER_FLTRECORD(PopExtension, POP_EXTENSION_OP)
|
||||
|
||||
|
||||
|
||||
/** PushAttribute - Reserved subtree
|
||||
@@ -203,7 +209,8 @@ class PushAttribute : public Record
|
||||
virtual ~PushAttribute() {}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<PushAttribute> g_PushAttribute(PUSH_ATTRIBUTE_OP);
|
||||
REGISTER_FLTRECORD(PushAttribute, PUSH_ATTRIBUTE_OP)
|
||||
|
||||
|
||||
|
||||
/** PopAttribute
|
||||
@@ -226,7 +233,8 @@ class PopAttribute : public Record
|
||||
virtual ~PopAttribute() {}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<PopAttribute> g_PopAttribute(POP_ATTRIBUTE_OP);
|
||||
REGISTER_FLTRECORD(PopAttribute, POP_ATTRIBUTE_OP)
|
||||
|
||||
|
||||
|
||||
} // end namespace
|
||||
|
||||
@@ -50,7 +50,7 @@
|
||||
#include <osgSim/LightPointNode>
|
||||
#include <osgSim/ObjectRecordData>
|
||||
|
||||
#ifdef _WIN32
|
||||
#ifdef _MSC_VER
|
||||
// Disable this warning. It's OK for us to use 'this' in initializer list,
|
||||
// as the texturePaletteManager merely stores a ref to it.
|
||||
#pragma warning( disable : 4355 )
|
||||
|
||||
@@ -536,7 +536,8 @@ protected:
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<Face> g_Face(FACE_OP);
|
||||
REGISTER_FLTRECORD(Face, FACE_OP)
|
||||
|
||||
|
||||
|
||||
/** VertexList -
|
||||
@@ -592,7 +593,8 @@ protected:
|
||||
};
|
||||
|
||||
|
||||
RegisterRecordProxy<VertexListRecord> g_VertexList(VERTEX_LIST_OP);
|
||||
REGISTER_FLTRECORD(VertexListRecord, VERTEX_LIST_OP)
|
||||
|
||||
|
||||
|
||||
/** MorphVertexList -
|
||||
@@ -681,7 +683,8 @@ protected:
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<MorphVertexList> g_MorphVertexList(MORPH_VERTEX_LIST_OP);
|
||||
REGISTER_FLTRECORD(MorphVertexList, MORPH_VERTEX_LIST_OP)
|
||||
|
||||
|
||||
|
||||
/* Mesh record
|
||||
@@ -1016,7 +1019,8 @@ protected:
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<Mesh> g_Mesh(MESH_OP);
|
||||
REGISTER_FLTRECORD(Mesh, MESH_OP)
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1133,7 +1137,8 @@ protected:
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<LocalVertexPool> g_LocalVertexPool(LOCAL_VERTEX_POOL_OP);
|
||||
REGISTER_FLTRECORD(LocalVertexPool, LOCAL_VERTEX_POOL_OP)
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1271,7 +1276,8 @@ protected:
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<MeshPrimitive> g_MeshPrimitive(MESH_PRIMITIVE_OP);
|
||||
REGISTER_FLTRECORD(MeshPrimitive, MESH_PRIMITIVE_OP)
|
||||
|
||||
|
||||
|
||||
} // end namespace
|
||||
|
||||
@@ -234,7 +234,8 @@ protected:
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<LightPoint> g_LightPoint(LIGHT_POINT_OP);
|
||||
REGISTER_FLTRECORD(LightPoint, LIGHT_POINT_OP)
|
||||
|
||||
|
||||
|
||||
/** IndexedLightPoint
|
||||
@@ -416,7 +417,8 @@ protected:
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<IndexedLightPoint> g_IndexedLightPoint(INDEXED_LIGHT_POINT_OP);
|
||||
REGISTER_FLTRECORD(IndexedLightPoint, INDEXED_LIGHT_POINT_OP)
|
||||
|
||||
|
||||
|
||||
/** LightPointSystem
|
||||
@@ -508,5 +510,6 @@ protected:
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<LightPointSystem> g_LightPointSystem(LIGHT_POINT_SYSTEM_OP);
|
||||
REGISTER_FLTRECORD(LightPointSystem, LIGHT_POINT_SYSTEM_OP)
|
||||
|
||||
|
||||
|
||||
@@ -60,7 +60,8 @@ protected:
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<VertexPalette> g_VertexPalette(VERTEX_PALETTE_OP);
|
||||
REGISTER_FLTRECORD(VertexPalette, VERTEX_PALETTE_OP)
|
||||
|
||||
|
||||
|
||||
class ColorPalette : public Record
|
||||
@@ -140,7 +141,8 @@ protected:
|
||||
};
|
||||
|
||||
|
||||
RegisterRecordProxy<ColorPalette> g_ColorPalette(COLOR_PALETTE_OP);
|
||||
REGISTER_FLTRECORD(ColorPalette, COLOR_PALETTE_OP)
|
||||
|
||||
|
||||
|
||||
class NameTable : public Record
|
||||
@@ -160,7 +162,8 @@ protected:
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<NameTable> g_NameTable(NAME_TABLE_OP);
|
||||
REGISTER_FLTRECORD(NameTable, NAME_TABLE_OP)
|
||||
|
||||
|
||||
|
||||
class MaterialPalette : public Record
|
||||
@@ -204,7 +207,8 @@ protected:
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<MaterialPalette> g_MaterialPalette(MATERIAL_PALETTE_OP);
|
||||
REGISTER_FLTRECORD(MaterialPalette, MATERIAL_PALETTE_OP)
|
||||
|
||||
|
||||
|
||||
class OldMaterialPalette : public Record
|
||||
@@ -251,7 +255,8 @@ protected:
|
||||
|
||||
};
|
||||
|
||||
RegisterRecordProxy<OldMaterialPalette> g_OldMaterialPalette(OLD_MATERIAL_PALETTE_OP);
|
||||
REGISTER_FLTRECORD(OldMaterialPalette, OLD_MATERIAL_PALETTE_OP)
|
||||
|
||||
|
||||
|
||||
class TexturePalette : public Record
|
||||
@@ -466,7 +471,8 @@ protected:
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<TexturePalette> g_TexturePalette(TEXTURE_PALETTE_OP);
|
||||
REGISTER_FLTRECORD(TexturePalette, TEXTURE_PALETTE_OP)
|
||||
|
||||
|
||||
|
||||
class EyepointAndTrackplanePalette : public Record
|
||||
@@ -484,7 +490,8 @@ protected:
|
||||
virtual void readRecord(RecordInputStream& /*in*/, Document& /*document*/) {}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<EyepointAndTrackplanePalette> g_EyepointAndTrackplanePalette(EYEPOINT_AND_TRACKPLANE_PALETTE_OP);
|
||||
REGISTER_FLTRECORD(EyepointAndTrackplanePalette, EYEPOINT_AND_TRACKPLANE_PALETTE_OP)
|
||||
|
||||
|
||||
|
||||
class LinkagePalette : public Record
|
||||
@@ -502,7 +509,8 @@ protected:
|
||||
virtual void readRecord(RecordInputStream& /*in*/, Document& /*document*/) {}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<LinkagePalette> g_LinkagePalette(LINKAGE_PALETTE_OP);
|
||||
REGISTER_FLTRECORD(LinkagePalette, LINKAGE_PALETTE_OP)
|
||||
|
||||
|
||||
|
||||
class SoundPalette : public Record
|
||||
@@ -520,7 +528,8 @@ protected:
|
||||
virtual void readRecord(RecordInputStream& /*in*/, Document& /*document*/) {}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<SoundPalette> g_SoundPalette(SOUND_PALETTE_OP);
|
||||
REGISTER_FLTRECORD(SoundPalette, SOUND_PALETTE_OP)
|
||||
|
||||
|
||||
|
||||
class LightSourcePalette : public Record
|
||||
@@ -599,7 +608,8 @@ protected:
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<LightSourcePalette> g_LightSourcePalette(LIGHT_SOURCE_PALETTE_OP);
|
||||
REGISTER_FLTRECORD(LightSourcePalette, LIGHT_SOURCE_PALETTE_OP)
|
||||
|
||||
|
||||
|
||||
class LightPointAppearancePalette : public Record
|
||||
@@ -681,7 +691,8 @@ protected:
|
||||
|
||||
};
|
||||
|
||||
RegisterRecordProxy<LightPointAppearancePalette> g_LightPointAppearancePalette(LIGHT_POINT_APPEARANCE_PALETTE_OP);
|
||||
REGISTER_FLTRECORD(LightPointAppearancePalette, LIGHT_POINT_APPEARANCE_PALETTE_OP)
|
||||
|
||||
|
||||
|
||||
class LightPointAnimationPalette : public Record
|
||||
@@ -739,7 +750,8 @@ protected:
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<LightPointAnimationPalette> g_LightPointAnimationPalette(LIGHT_POINT_ANIMATION_PALETTE_OP);
|
||||
REGISTER_FLTRECORD(LightPointAnimationPalette, LIGHT_POINT_ANIMATION_PALETTE_OP)
|
||||
|
||||
|
||||
|
||||
class LineStylePalette : public Record
|
||||
@@ -759,7 +771,8 @@ protected:
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<LineStylePalette> g_LineStylePalette(LINE_STYLE_PALETTE_OP);
|
||||
REGISTER_FLTRECORD(LineStylePalette, LINE_STYLE_PALETTE_OP)
|
||||
|
||||
|
||||
|
||||
class TextureMappingPalette : public Record
|
||||
@@ -779,7 +792,8 @@ protected:
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<TextureMappingPalette> g_TextureMappingPalette(TEXTURE_MAPPING_PALETTE_OP);
|
||||
REGISTER_FLTRECORD(TextureMappingPalette, TEXTURE_MAPPING_PALETTE_OP)
|
||||
|
||||
|
||||
|
||||
class ShaderPalette : public Record
|
||||
@@ -876,7 +890,8 @@ protected:
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<ShaderPalette> g_ShaderPalette(SHADER_PALETTE_OP);
|
||||
REGISTER_FLTRECORD(ShaderPalette, SHADER_PALETTE_OP)
|
||||
|
||||
|
||||
} // end namespace
|
||||
|
||||
|
||||
@@ -153,7 +153,7 @@ protected:
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<Header> g_Header(HEADER_OP);
|
||||
REGISTER_FLTRECORD(Header, HEADER_OP)
|
||||
|
||||
|
||||
/** Group
|
||||
@@ -292,7 +292,8 @@ protected:
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<Group> g_Group(GROUP_OP);
|
||||
REGISTER_FLTRECORD(Group, GROUP_OP)
|
||||
|
||||
|
||||
|
||||
/** DegreeOfFreedom
|
||||
@@ -457,7 +458,8 @@ protected:
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<DegreeOfFreedom> g_DegreeOfFreedom(DOF_OP);
|
||||
REGISTER_FLTRECORD(DegreeOfFreedom, DOF_OP)
|
||||
|
||||
|
||||
|
||||
/** LevelOfDetail - To recreate the LevelOfDetail record in OSG we have to create a LOD node with one Group node under it.
|
||||
@@ -513,7 +515,8 @@ protected:
|
||||
|
||||
};
|
||||
|
||||
RegisterRecordProxy<LevelOfDetail> g_LevelOfDetail(LOD_OP);
|
||||
REGISTER_FLTRECORD(LevelOfDetail, LOD_OP)
|
||||
|
||||
|
||||
|
||||
/** OldLevelOfDetail
|
||||
@@ -569,7 +572,8 @@ protected:
|
||||
|
||||
};
|
||||
|
||||
RegisterRecordProxy<OldLevelOfDetail> g_OldLevelOfDetail(OLD_LOD_OP);
|
||||
REGISTER_FLTRECORD(OldLevelOfDetail, OLD_LOD_OP)
|
||||
|
||||
|
||||
|
||||
/** Switch
|
||||
@@ -645,7 +649,8 @@ protected:
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<Switch> g_Switch(SWITCH_OP);
|
||||
REGISTER_FLTRECORD(Switch, SWITCH_OP)
|
||||
|
||||
|
||||
|
||||
/** ExternalReference
|
||||
@@ -729,7 +734,8 @@ protected:
|
||||
|
||||
};
|
||||
|
||||
RegisterRecordProxy<ExternalReference> g_ExternalReference(EXTERNAL_REFERENCE_OP);
|
||||
REGISTER_FLTRECORD(ExternalReference, EXTERNAL_REFERENCE_OP)
|
||||
|
||||
|
||||
|
||||
/** InstanceDefinition
|
||||
@@ -778,7 +784,8 @@ protected:
|
||||
|
||||
};
|
||||
|
||||
RegisterRecordProxy<InstanceDefinition> g_InstanceDefinition(INSTANCE_DEFINITION_OP);
|
||||
REGISTER_FLTRECORD(InstanceDefinition, INSTANCE_DEFINITION_OP)
|
||||
|
||||
|
||||
|
||||
/** InstanceReference
|
||||
@@ -809,7 +816,8 @@ protected:
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<InstanceReference> g_InstanceReference(INSTANCE_REFERENCE_OP);
|
||||
REGISTER_FLTRECORD(InstanceReference, INSTANCE_REFERENCE_OP)
|
||||
|
||||
|
||||
|
||||
/** Extension
|
||||
@@ -848,7 +856,8 @@ protected:
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<Extension> g_Extension(EXTENSION_OP);
|
||||
REGISTER_FLTRECORD(Extension, EXTENSION_OP)
|
||||
|
||||
|
||||
|
||||
/** Object
|
||||
@@ -952,7 +961,8 @@ protected:
|
||||
|
||||
};
|
||||
|
||||
RegisterRecordProxy<Object> g_Object(OBJECT_OP);
|
||||
REGISTER_FLTRECORD(Object, OBJECT_OP)
|
||||
|
||||
|
||||
|
||||
/** LightSource
|
||||
@@ -1035,7 +1045,8 @@ protected:
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<LightSource> g_LightSource(LIGHT_SOURCE_OP);
|
||||
REGISTER_FLTRECORD(LightSource, LIGHT_SOURCE_OP)
|
||||
|
||||
|
||||
|
||||
} // end namespace
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
*/
|
||||
|
||||
//
|
||||
// OpenFlight<EFBFBD> loader for OpenSceneGraph
|
||||
// OpenFlight(R) loader for OpenSceneGraph
|
||||
//
|
||||
// Copyright (C) 2005-2007 Brede Johansen
|
||||
//
|
||||
@@ -78,115 +78,105 @@ ReaderWriter::ReadResult ReaderWriterATTR::readObject(const std::string& file, c
|
||||
|
||||
AttrData* attr = new AttrData;
|
||||
|
||||
try
|
||||
{
|
||||
attr->texels_u = in.readInt32();
|
||||
attr->texels_v = in.readInt32();
|
||||
attr->direction_u = in.readInt32();
|
||||
attr->direction_v = in.readInt32();
|
||||
attr->x_up = in.readInt32();
|
||||
attr->y_up = in.readInt32();
|
||||
attr->fileFormat = in.readInt32();
|
||||
attr->minFilterMode = in.readInt32();
|
||||
attr->magFilterMode = in.readInt32();
|
||||
attr->wrapMode = in.readInt32(AttrData::WRAP_REPEAT);
|
||||
attr->texels_u = in.readInt32();
|
||||
attr->texels_v = in.readInt32();
|
||||
attr->direction_u = in.readInt32();
|
||||
attr->direction_v = in.readInt32();
|
||||
attr->x_up = in.readInt32();
|
||||
attr->y_up = in.readInt32();
|
||||
attr->fileFormat = in.readInt32();
|
||||
attr->minFilterMode = in.readInt32();
|
||||
attr->magFilterMode = in.readInt32();
|
||||
attr->wrapMode = in.readInt32(AttrData::WRAP_REPEAT);
|
||||
|
||||
attr->wrapMode_u = in.readInt32();
|
||||
if (attr->wrapMode_u == AttrData::WRAP_NONE)
|
||||
attr->wrapMode_u = attr->wrapMode;
|
||||
attr->wrapMode_u = in.readInt32();
|
||||
if (attr->wrapMode_u == AttrData::WRAP_NONE)
|
||||
attr->wrapMode_u = attr->wrapMode;
|
||||
|
||||
attr->wrapMode_v = in.readInt32();
|
||||
if (attr->wrapMode_v == AttrData::WRAP_NONE)
|
||||
attr->wrapMode_v = attr->wrapMode;
|
||||
attr->wrapMode_v = in.readInt32();
|
||||
if (attr->wrapMode_v == AttrData::WRAP_NONE)
|
||||
attr->wrapMode_v = attr->wrapMode;
|
||||
|
||||
attr->modifyFlag = in.readInt32();
|
||||
attr->pivot_x = in.readInt32();
|
||||
attr->pivot_y = in.readInt32();
|
||||
attr->modifyFlag = in.readInt32();
|
||||
attr->pivot_x = in.readInt32();
|
||||
attr->pivot_y = in.readInt32();
|
||||
|
||||
// v11 ends here
|
||||
// v11 ends here
|
||||
// if (in.eof() || (_flt_version <= 11)) return true;
|
||||
#if 1
|
||||
attr->texEnvMode = in.readInt32(AttrData::TEXENV_MODULATE);
|
||||
attr->intensityAsAlpha = in.readInt32();
|
||||
in.forward(4*8);
|
||||
in.forward(4);
|
||||
attr->size_u = in.readFloat64();
|
||||
attr->size_v = in.readFloat64();
|
||||
attr->originCode = in.readInt32();
|
||||
attr->kernelVersion = in.readInt32();
|
||||
attr->intFormat = in.readInt32();
|
||||
attr->extFormat = in.readInt32();
|
||||
attr->useMips = in.readInt32();
|
||||
for (int n=0; n<8; n++)
|
||||
attr->of_mips[n] = in.readFloat32();
|
||||
attr->useLodScale = in.readInt32();
|
||||
attr->lod0 = in.readFloat32();
|
||||
attr->scale0 = in.readFloat32();
|
||||
attr->lod1 = in.readFloat32();
|
||||
attr->scale1 = in.readFloat32();
|
||||
attr->lod2 = in.readFloat32();
|
||||
attr->scale2 = in.readFloat32();
|
||||
attr->lod3 = in.readFloat32();
|
||||
attr->scale3 = in.readFloat32();
|
||||
attr->lod4 = in.readFloat32();
|
||||
attr->scale4 = in.readFloat32();
|
||||
attr->lod5 = in.readFloat32();
|
||||
attr->scale5 = in.readFloat32();
|
||||
attr->lod6 = in.readFloat32();
|
||||
attr->scale6 = in.readFloat32();
|
||||
attr->lod7 = in.readFloat32();
|
||||
attr->scale7 = in.readFloat32();
|
||||
attr->clamp = in.readFloat32();
|
||||
attr->magFilterAlpha = in.readInt32();
|
||||
attr->magFilterColor = in.readInt32();
|
||||
in.forward(4);
|
||||
in.forward(4*8);
|
||||
attr->lambertMeridian = in.readFloat64();
|
||||
attr->lambertUpperLat = in.readFloat64();
|
||||
attr->lambertlowerLat = in.readFloat64();
|
||||
in.forward(8);
|
||||
in.forward(4*5);
|
||||
attr->useDetail = in.readInt32( );
|
||||
attr->txDetail_j = in.readInt32();
|
||||
attr->txDetail_k = in.readInt32();
|
||||
attr->txDetail_m = in.readInt32();
|
||||
attr->txDetail_n = in.readInt32();
|
||||
attr->txDetail_s = in.readInt32( );
|
||||
attr->useTile = in.readInt32();
|
||||
attr->txTile_ll_u= in.readFloat32();
|
||||
attr->txTile_ll_v = in.readFloat32();
|
||||
attr->txTile_ur_u = in.readFloat32();
|
||||
attr->txTile_ur_v = in.readFloat32();
|
||||
attr->projection = in.readInt32();
|
||||
attr->earthModel = in.readInt32();
|
||||
in.forward(4);
|
||||
attr->utmZone = in.readInt32();
|
||||
attr->imageOrigin = in.readInt32();
|
||||
attr->geoUnits = in.readInt32();
|
||||
in.forward(4);
|
||||
in.forward(4);
|
||||
attr->hemisphere = in.readInt32();
|
||||
in.forward(4);
|
||||
in.forward(4);
|
||||
in.forward(149*4);
|
||||
attr->comments = in.readString(512);
|
||||
attr->texEnvMode = in.readInt32(AttrData::TEXENV_MODULATE);
|
||||
attr->intensityAsAlpha = in.readInt32();
|
||||
in.forward(4*8);
|
||||
in.forward(4);
|
||||
attr->size_u = in.readFloat64();
|
||||
attr->size_v = in.readFloat64();
|
||||
attr->originCode = in.readInt32();
|
||||
attr->kernelVersion = in.readInt32();
|
||||
attr->intFormat = in.readInt32();
|
||||
attr->extFormat = in.readInt32();
|
||||
attr->useMips = in.readInt32();
|
||||
for (int n=0; n<8; n++)
|
||||
attr->of_mips[n] = in.readFloat32();
|
||||
attr->useLodScale = in.readInt32();
|
||||
attr->lod0 = in.readFloat32();
|
||||
attr->scale0 = in.readFloat32();
|
||||
attr->lod1 = in.readFloat32();
|
||||
attr->scale1 = in.readFloat32();
|
||||
attr->lod2 = in.readFloat32();
|
||||
attr->scale2 = in.readFloat32();
|
||||
attr->lod3 = in.readFloat32();
|
||||
attr->scale3 = in.readFloat32();
|
||||
attr->lod4 = in.readFloat32();
|
||||
attr->scale4 = in.readFloat32();
|
||||
attr->lod5 = in.readFloat32();
|
||||
attr->scale5 = in.readFloat32();
|
||||
attr->lod6 = in.readFloat32();
|
||||
attr->scale6 = in.readFloat32();
|
||||
attr->lod7 = in.readFloat32();
|
||||
attr->scale7 = in.readFloat32();
|
||||
attr->clamp = in.readFloat32();
|
||||
attr->magFilterAlpha = in.readInt32();
|
||||
attr->magFilterColor = in.readInt32();
|
||||
in.forward(4);
|
||||
in.forward(4*8);
|
||||
attr->lambertMeridian = in.readFloat64();
|
||||
attr->lambertUpperLat = in.readFloat64();
|
||||
attr->lambertlowerLat = in.readFloat64();
|
||||
in.forward(8);
|
||||
in.forward(4*5);
|
||||
attr->useDetail = in.readInt32( );
|
||||
attr->txDetail_j = in.readInt32();
|
||||
attr->txDetail_k = in.readInt32();
|
||||
attr->txDetail_m = in.readInt32();
|
||||
attr->txDetail_n = in.readInt32();
|
||||
attr->txDetail_s = in.readInt32( );
|
||||
attr->useTile = in.readInt32();
|
||||
attr->txTile_ll_u= in.readFloat32();
|
||||
attr->txTile_ll_v = in.readFloat32();
|
||||
attr->txTile_ur_u = in.readFloat32();
|
||||
attr->txTile_ur_v = in.readFloat32();
|
||||
attr->projection = in.readInt32();
|
||||
attr->earthModel = in.readInt32();
|
||||
in.forward(4);
|
||||
attr->utmZone = in.readInt32();
|
||||
attr->imageOrigin = in.readInt32();
|
||||
attr->geoUnits = in.readInt32();
|
||||
in.forward(4);
|
||||
in.forward(4);
|
||||
attr->hemisphere = in.readInt32();
|
||||
in.forward(4);
|
||||
in.forward(4);
|
||||
in.forward(149*4);
|
||||
attr->comments = in.readString(512);
|
||||
|
||||
// v12 ends here
|
||||
// v12 ends here
|
||||
// if (in.eof() || (_flt_version <= 12)) return true;
|
||||
|
||||
in.forward(14*4);
|
||||
attr->attrVersion = in.readInt32();
|
||||
attr->controlPoints = in.readInt32();
|
||||
attr->numSubtextures = in.readInt32();
|
||||
in.forward(14*4);
|
||||
attr->attrVersion = in.readInt32();
|
||||
attr->controlPoints = in.readInt32();
|
||||
attr->numSubtextures = in.readInt32();
|
||||
#endif
|
||||
}
|
||||
catch(...)
|
||||
{
|
||||
if (!fin.eof())
|
||||
{
|
||||
throw;
|
||||
}
|
||||
}
|
||||
|
||||
fin.close();
|
||||
|
||||
|
||||
@@ -40,6 +40,110 @@ using namespace flt;
|
||||
using namespace osg;
|
||||
using namespace osgDB;
|
||||
|
||||
// pull in symbols from attr plugin
|
||||
USE_OSGPLUGIN(attr)
|
||||
|
||||
// pull in symbols from individual .o's to enable the static build to work
|
||||
// note, following USE_FLTRECORD list was generated by running:
|
||||
// grep REGISTER_FLTRECORD * -h | grep -v "#define" | sed 's/REGISTER_FLTRECORD/USE_FLTRECORD/g'
|
||||
USE_FLTRECORD(Comment, COMMENT_OP)
|
||||
USE_FLTRECORD(LongID, LONG_ID_OP)
|
||||
USE_FLTRECORD(Matrix, MATRIX_OP)
|
||||
USE_FLTRECORD(Multitexture, MULTITEXTURE_OP)
|
||||
USE_FLTRECORD(UVList, UV_LIST_OP)
|
||||
USE_FLTRECORD(Replicate, REPLICATE_OP)
|
||||
USE_FLTRECORD(DummyRecord, OLD_TRANSLATE2_OP)
|
||||
USE_FLTRECORD(DummyRecord, OLD_ROTATE_ABOUT_POINT_OP)
|
||||
USE_FLTRECORD(DummyRecord, OLD_ROTATE_ABOUT_EDGE_OP)
|
||||
USE_FLTRECORD(DummyRecord, OLD_SCALE_OP)
|
||||
USE_FLTRECORD(DummyRecord, OLD_TRANSLATE_OP)
|
||||
USE_FLTRECORD(DummyRecord, OLD_NONUNIFORM_SCALE_OP)
|
||||
USE_FLTRECORD(DummyRecord, OLD_ROTATE_ABOUT_POINT2_OP)
|
||||
USE_FLTRECORD(DummyRecord, OLD_ROTATE_SCALE_TO_POINT_OP)
|
||||
USE_FLTRECORD(DummyRecord, OLD_PUT_TRANSFORM_OP)
|
||||
USE_FLTRECORD(DummyRecord, OLD_BOUNDING_BOX_OP)
|
||||
USE_FLTRECORD(DummyRecord, INDEXED_STRING_OP)
|
||||
USE_FLTRECORD(DummyRecord, ROAD_ZONE_OP)
|
||||
USE_FLTRECORD(DummyRecord, ROTATE_ABOUT_EDGE_OP)
|
||||
USE_FLTRECORD(DummyRecord, TRANSLATE_OP)
|
||||
USE_FLTRECORD(DummyRecord, NONUNIFORM_SCALE_OP)
|
||||
USE_FLTRECORD(DummyRecord, ROTATE_ABOUT_POINT_OP)
|
||||
USE_FLTRECORD(DummyRecord, ROTATE_SCALE_TO_POINT_OP)
|
||||
USE_FLTRECORD(DummyRecord, PUT_TRANSFORM_OP)
|
||||
USE_FLTRECORD(DummyRecord, GENERAL_MATRIX_OP)
|
||||
USE_FLTRECORD(DummyRecord, VECTOR_OP)
|
||||
USE_FLTRECORD(DummyRecord, BOUNDING_BOX_OP)
|
||||
USE_FLTRECORD(DummyRecord, BOUNDING_SPHERE_OP)
|
||||
USE_FLTRECORD(DummyRecord, BOUNDING_CYLINDER_OP)
|
||||
USE_FLTRECORD(DummyRecord, BOUNDING_CONVEX_HULL_OP)
|
||||
USE_FLTRECORD(DummyRecord, BOUNDING_HISTOGRAM)
|
||||
USE_FLTRECORD(DummyRecord, BOUNDING_VOLUME_CENTER_OP)
|
||||
USE_FLTRECORD(DummyRecord, BOUNDING_VOLUME_ORIENTATION_OP)
|
||||
USE_FLTRECORD(DummyRecord, HISTOGRAM_BOUNDING_VOLUME_OP)
|
||||
USE_FLTRECORD(PushLevel, PUSH_LEVEL_OP)
|
||||
USE_FLTRECORD(PopLevel, POP_LEVEL_OP)
|
||||
USE_FLTRECORD(PushSubface, PUSH_SUBFACE_OP)
|
||||
USE_FLTRECORD(PopSubface, POP_SUBFACE_OP)
|
||||
USE_FLTRECORD(PushExtension, PUSH_EXTENSION_OP)
|
||||
USE_FLTRECORD(PopExtension, POP_EXTENSION_OP)
|
||||
USE_FLTRECORD(PushAttribute, PUSH_ATTRIBUTE_OP)
|
||||
USE_FLTRECORD(PopAttribute, POP_ATTRIBUTE_OP)
|
||||
USE_FLTRECORD(Face, FACE_OP)
|
||||
USE_FLTRECORD(VertexListRecord, VERTEX_LIST_OP)
|
||||
USE_FLTRECORD(MorphVertexList, MORPH_VERTEX_LIST_OP)
|
||||
USE_FLTRECORD(Mesh, MESH_OP)
|
||||
USE_FLTRECORD(LocalVertexPool, LOCAL_VERTEX_POOL_OP)
|
||||
USE_FLTRECORD(MeshPrimitive, MESH_PRIMITIVE_OP)
|
||||
USE_FLTRECORD(LightPoint, LIGHT_POINT_OP)
|
||||
USE_FLTRECORD(IndexedLightPoint, INDEXED_LIGHT_POINT_OP)
|
||||
USE_FLTRECORD(LightPointSystem, LIGHT_POINT_SYSTEM_OP)
|
||||
USE_FLTRECORD(VertexPalette, VERTEX_PALETTE_OP)
|
||||
USE_FLTRECORD(ColorPalette, COLOR_PALETTE_OP)
|
||||
USE_FLTRECORD(NameTable, NAME_TABLE_OP)
|
||||
USE_FLTRECORD(MaterialPalette, MATERIAL_PALETTE_OP)
|
||||
USE_FLTRECORD(OldMaterialPalette, OLD_MATERIAL_PALETTE_OP)
|
||||
USE_FLTRECORD(TexturePalette, TEXTURE_PALETTE_OP)
|
||||
USE_FLTRECORD(EyepointAndTrackplanePalette, EYEPOINT_AND_TRACKPLANE_PALETTE_OP)
|
||||
USE_FLTRECORD(LinkagePalette, LINKAGE_PALETTE_OP)
|
||||
USE_FLTRECORD(SoundPalette, SOUND_PALETTE_OP)
|
||||
USE_FLTRECORD(LightSourcePalette, LIGHT_SOURCE_PALETTE_OP)
|
||||
USE_FLTRECORD(LightPointAppearancePalette, LIGHT_POINT_APPEARANCE_PALETTE_OP)
|
||||
USE_FLTRECORD(LightPointAnimationPalette, LIGHT_POINT_ANIMATION_PALETTE_OP)
|
||||
USE_FLTRECORD(LineStylePalette, LINE_STYLE_PALETTE_OP)
|
||||
USE_FLTRECORD(TextureMappingPalette, TEXTURE_MAPPING_PALETTE_OP)
|
||||
USE_FLTRECORD(ShaderPalette, SHADER_PALETTE_OP)
|
||||
USE_FLTRECORD(Header, HEADER_OP)
|
||||
USE_FLTRECORD(Group, GROUP_OP)
|
||||
USE_FLTRECORD(DegreeOfFreedom, DOF_OP)
|
||||
USE_FLTRECORD(LevelOfDetail, LOD_OP)
|
||||
USE_FLTRECORD(OldLevelOfDetail, OLD_LOD_OP)
|
||||
USE_FLTRECORD(Switch, SWITCH_OP)
|
||||
USE_FLTRECORD(ExternalReference, EXTERNAL_REFERENCE_OP)
|
||||
USE_FLTRECORD(InstanceDefinition, INSTANCE_DEFINITION_OP)
|
||||
USE_FLTRECORD(InstanceReference, INSTANCE_REFERENCE_OP)
|
||||
USE_FLTRECORD(Extension, EXTENSION_OP)
|
||||
USE_FLTRECORD(Object, OBJECT_OP)
|
||||
USE_FLTRECORD(LightSource, LIGHT_SOURCE_OP)
|
||||
USE_FLTRECORD(DummyRecord, 103)
|
||||
USE_FLTRECORD(DummyRecord, 104)
|
||||
USE_FLTRECORD(DummyRecord, 117)
|
||||
USE_FLTRECORD(DummyRecord, 118)
|
||||
USE_FLTRECORD(DummyRecord, 120)
|
||||
USE_FLTRECORD(DummyRecord, 121)
|
||||
USE_FLTRECORD(DummyRecord, 124)
|
||||
USE_FLTRECORD(DummyRecord, 125)
|
||||
USE_FLTRECORD(RoadSegment, ROAD_SEGMENT_OP)
|
||||
USE_FLTRECORD(RoadConstruction, ROAD_CONSTRUCTION_OP)
|
||||
USE_FLTRECORD(RoadPath, ROAD_PATH_OP)
|
||||
USE_FLTRECORD(VertexC, VERTEX_C_OP)
|
||||
USE_FLTRECORD(VertexCN, VERTEX_CN_OP)
|
||||
USE_FLTRECORD(VertexCT, VERTEX_CT_OP)
|
||||
USE_FLTRECORD(VertexCNT, VERTEX_CNT_OP)
|
||||
USE_FLTRECORD(AbsoluteVertex, OLD_ABSOLUTE_VERTEX_OP)
|
||||
USE_FLTRECORD(ShadedVertex, OLD_SHADED_VERTEX_OP)
|
||||
USE_FLTRECORD(NormalVertex, OLD_NORMAL_VERTEX_OP)
|
||||
|
||||
|
||||
|
||||
class ReadExternalsVisitor : public osg::NodeVisitor
|
||||
{
|
||||
@@ -177,7 +281,7 @@ class FLTReaderWriter : public ReaderWriter
|
||||
|
||||
// setting up the database path so that internally referenced file are searched for on relative paths.
|
||||
osg::ref_ptr<Options> local_opt = options ? static_cast<Options*>(options->clone(osg::CopyOp::SHALLOW_COPY)) : new Options;
|
||||
local_opt->setDatabasePath(osgDB::getFilePath(fileName));
|
||||
local_opt->getDatabasePathList().push_front(osgDB::getFilePath(fileName));
|
||||
|
||||
ReadResult rr;
|
||||
|
||||
|
||||
@@ -122,6 +122,27 @@ class RegisterRecordProxy
|
||||
~RegisterRecordProxy() {}
|
||||
};
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
|
||||
extern "C"
|
||||
{
|
||||
typedef void (* CRecordFunction) (void);
|
||||
}
|
||||
|
||||
struct RecordFunctionProxy
|
||||
{
|
||||
RecordFunctionProxy(CRecordFunction function) { (function)(); }
|
||||
};
|
||||
|
||||
#define USE_FLTRECORD(recname, opcode) \
|
||||
extern "C" void osgfltrec_##recname_##opcode(void); \
|
||||
static flt::RecordFunctionProxy proxy_fltrecord_##recname_##opcode(osgfltrec_##recname_##opcode);
|
||||
|
||||
#define REGISTER_FLTRECORD(recname, opcode) \
|
||||
extern "C" void osgfltrec_##recname_##opcode(void) {} \
|
||||
static flt::RegisterRecordProxy<recname> g_proxy_fltrecord_##recname_##opcode(opcode);
|
||||
|
||||
|
||||
} // end namespace
|
||||
|
||||
#endif
|
||||
|
||||
@@ -22,14 +22,15 @@
|
||||
using namespace flt;
|
||||
|
||||
// Prevent "unknown record" message for the following reserved records:
|
||||
RegisterRecordProxy<DummyRecord> g_Reserved_103(103);
|
||||
RegisterRecordProxy<DummyRecord> g_Reserved_104(104);
|
||||
RegisterRecordProxy<DummyRecord> g_Reserved_117(117);
|
||||
RegisterRecordProxy<DummyRecord> g_Reserved_118(118);
|
||||
RegisterRecordProxy<DummyRecord> g_Reserved_120(120);
|
||||
RegisterRecordProxy<DummyRecord> g_Reserved_121(121);
|
||||
RegisterRecordProxy<DummyRecord> g_Reserved_124(124);
|
||||
RegisterRecordProxy<DummyRecord> g_Reserved_125(125);
|
||||
REGISTER_FLTRECORD(DummyRecord, 103)
|
||||
REGISTER_FLTRECORD(DummyRecord, 104)
|
||||
REGISTER_FLTRECORD(DummyRecord, 117)
|
||||
REGISTER_FLTRECORD(DummyRecord, 118)
|
||||
REGISTER_FLTRECORD(DummyRecord, 120)
|
||||
REGISTER_FLTRECORD(DummyRecord, 121)
|
||||
REGISTER_FLTRECORD(DummyRecord, 124)
|
||||
REGISTER_FLTRECORD(DummyRecord, 125)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -60,7 +60,7 @@ class RoadSegment : public PrimaryRecord
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<RoadSegment> g_RoadSegment(ROAD_SEGMENT_OP);
|
||||
REGISTER_FLTRECORD(RoadSegment, ROAD_SEGMENT_OP)
|
||||
|
||||
|
||||
/** RoadConstruction
|
||||
@@ -98,7 +98,8 @@ class RoadConstruction : public PrimaryRecord
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<RoadConstruction> g_RoadConstruction(ROAD_CONSTRUCTION_OP);
|
||||
REGISTER_FLTRECORD(RoadConstruction, ROAD_CONSTRUCTION_OP)
|
||||
|
||||
|
||||
|
||||
/** RoadPath
|
||||
@@ -132,7 +133,8 @@ class RoadPath : public PrimaryRecord
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<RoadPath> g_RoadPath(ROAD_PATH_OP);
|
||||
REGISTER_FLTRECORD(RoadPath, ROAD_PATH_OP)
|
||||
|
||||
|
||||
|
||||
} // end namespace
|
||||
|
||||
@@ -76,7 +76,8 @@ class VertexC : public Record
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<VertexC> g_VertexC(VERTEX_C_OP);
|
||||
REGISTER_FLTRECORD(VertexC, VERTEX_C_OP)
|
||||
|
||||
|
||||
|
||||
class VertexCN : public Record
|
||||
@@ -115,7 +116,8 @@ class VertexCN : public Record
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<VertexCN> g_VertexCN(VERTEX_CN_OP);
|
||||
REGISTER_FLTRECORD(VertexCN, VERTEX_CN_OP)
|
||||
|
||||
|
||||
|
||||
class VertexCT : public Record
|
||||
@@ -154,7 +156,8 @@ class VertexCT : public Record
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<VertexCT> g_VertexCT(VERTEX_CT_OP);
|
||||
REGISTER_FLTRECORD(VertexCT, VERTEX_CT_OP)
|
||||
|
||||
|
||||
|
||||
class VertexCNT : public Record
|
||||
@@ -211,7 +214,8 @@ class VertexCNT : public Record
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<VertexCNT> g_VertexCNT(VERTEX_CNT_OP);
|
||||
REGISTER_FLTRECORD(VertexCNT, VERTEX_CNT_OP)
|
||||
|
||||
|
||||
|
||||
/** Absolute Vertex -
|
||||
@@ -252,7 +256,8 @@ class AbsoluteVertex : public Record
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<AbsoluteVertex> g_AbsoluteVertex(OLD_ABSOLUTE_VERTEX_OP);
|
||||
REGISTER_FLTRECORD(AbsoluteVertex, OLD_ABSOLUTE_VERTEX_OP)
|
||||
|
||||
|
||||
|
||||
/** Shaded Vertex
|
||||
@@ -300,7 +305,8 @@ class ShadedVertex : public Record
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<ShadedVertex> g_ShadedVertex(OLD_SHADED_VERTEX_OP);
|
||||
REGISTER_FLTRECORD(ShadedVertex, OLD_SHADED_VERTEX_OP)
|
||||
|
||||
|
||||
|
||||
/** Normal Vertex
|
||||
@@ -348,6 +354,7 @@ class NormalVertex : public Record
|
||||
}
|
||||
};
|
||||
|
||||
RegisterRecordProxy<NormalVertex> g_NormalVertex(OLD_NORMAL_VERTEX_OP);
|
||||
REGISTER_FLTRECORD(NormalVertex, OLD_NORMAL_VERTEX_OP)
|
||||
|
||||
|
||||
} // end namespace
|
||||
|
||||
@@ -9,11 +9,19 @@
|
||||
* ARB_texture_compression.pdf
|
||||
* Author: Sebastien Domine, NVIDIA Corporation
|
||||
*
|
||||
* CREATED BY: Rune Schmidt Jensen, rsj@uni-dk
|
||||
* CREATED BY: Rune Schmidt Jensen, rsj@uni-dk
|
||||
*
|
||||
* HISTORY: Created 31.03.2003
|
||||
* Modified 13.05.2004
|
||||
* by George Tarantilis, gtaranti@nps.navy.mil
|
||||
* Modified 22.05.2009
|
||||
* Wojtek Lewandowski, lewandowski@ai.com.pl
|
||||
*
|
||||
* WARNING:
|
||||
* Bit Masks in the WrtiteDDS are set for 8 bit components
|
||||
* write with 4 or 16 bit components will
|
||||
* probably produce corrupted file
|
||||
* Wojtek Lewandowski 2009-05-22
|
||||
*
|
||||
**********************************************************************/
|
||||
|
||||
@@ -716,10 +724,6 @@ printf("CORRECTO**> gtsibim:%d grsib:%d mi_size:%d lPitch%d\n",
|
||||
*/
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
bool WriteDDSFile(const osg::Image *img, std::ostream& fout)
|
||||
{
|
||||
|
||||
@@ -793,8 +797,8 @@ bool WriteDDSFile(const osg::Image *img, std::ostream& fout)
|
||||
break;
|
||||
case GL_LUMINANCE_ALPHA:
|
||||
{
|
||||
ddpf.dwRBitMask = 0x00ff0000;
|
||||
ddpf.dwRGBAlphaBitMask = 0x000000ff;
|
||||
ddpf.dwRBitMask = 0x000000ff;
|
||||
ddpf.dwRGBAlphaBitMask = 0x0000ff00;
|
||||
PF_flags |= (DDPF_ALPHAPIXELS | DDPF_LUMINANCE);
|
||||
ddpf.dwRGBBitCount = pixelSize;
|
||||
ddsd.lPitch = img->getRowSizeInBytes();
|
||||
@@ -814,7 +818,7 @@ bool WriteDDSFile(const osg::Image *img, std::ostream& fout)
|
||||
break;
|
||||
case GL_LUMINANCE:
|
||||
{
|
||||
ddpf.dwRBitMask = 0x00ff0000;
|
||||
ddpf.dwRBitMask = 0x000000ff;
|
||||
PF_flags |= DDPF_LUMINANCE;
|
||||
ddpf.dwRGBBitCount = pixelSize;
|
||||
ddsd.lPitch = img->getRowSizeInBytes();
|
||||
|
||||
Reference in New Issue
Block a user