Commit Graph

106 Commits

Author SHA1 Message Date
Robert Osfield
6b86d2d70d From Joson Daly, fix for forward/backward/swing animation handling both 15.8 and
versions prior to 15.8, and...

" Here's another fix for OpenFlight.  The symptom was that ATTR files were
not being read correctly, and the TexEnv on a texture that should have
been set to DECAL was instead defaulting to MODULATE.  The cause is that
the ATTR reader cannot tell by itself what version it's reading (the
version information isn't present in the ATTR files), and instead relies
on the ReaderWriter::Options passed in to get the OpenFlight version.

My change clones the current ReaderWriter::Options and prepends the
appropriate FLT_VER option before the ReaderWriterATTR object is
called.  I also made the parsing of the FLT_VER string and value more
robust in the ReaderWriterATTR itself.  I think I commented things OK,
but let me know if you need me to explain anything."
2005-04-14 07:55:45 +00:00
Robert Osfield
fcab21f9cc Added osg/io_utils include 2005-04-08 09:13:07 +00:00
Robert Osfield
d9828731d8 From Alberto Farre:
"Here there are fixes for several flt loader problems.

First one was an small bug when root database was an empty string we got a database path "/" instead of "./".
Second one is more complex. Flt loader works in two passes, first one reads flt database and second one builds osg scenegraph. Special care must be taken for properly tracking database path as nested files are entered. Because textures are loaded in second pass, mentioned care should be taken once again. I wrote time ago a piece of code and I placed it in both files fltFile.cpp and flt2osg.cpp. After a long period offline I have seen the portion of code at flt2osg was missing, I just made some tests and I could see it is still required.

Finally, I have seen that pool.cpp always try to make IMAGE cache instead of reading what Options says.

Aditonally, I recently wrote an osg change, now it has external references "a la flt" what is called osg::ProxyNode. As part of the change now flt loader builds external references as ProxyNodes. I made the same mistake like pool.cpp and always made ARCHIVE cache instead of see what Options says, it has also been fixed."
2005-04-04 11:18:02 +00:00
Robert Osfield
667ecd91f1 From Alberto Farre, fixes to ProxyNode. 2005-03-18 10:00:16 +00:00
Robert Osfield
5684a130b7 From Alberto Farre, addition of ProxyNode, with support in .osg, .ive and .flt loaders 2005-03-07 14:06:09 +00:00
Robert Osfield
f7f61627a8 Fixed tabbing. 2005-03-07 12:32:58 +00:00
Robert Osfield
ce07879e2e Moved plugins across to using ReaderWriter::Options* for search paths in addition
to standard osgDB::DataFilePaths
2004-11-22 23:54:45 +00:00
Robert Osfield
d7ab56e31f From Sondra Iverson, with mods by Robert Osfield. Support for copying texenv
from the source StateSet when multi-texturing.
2004-10-12 07:54:45 +00:00
Robert Osfield
0fcc08d867 From Sondra Iversion "Loading a single model from an externally
referenced file is a standard option for OpenFlight and is specified by
including the modelname in angle brackets, such as:  filename<modelname>.

The attached code identifies and handles this case."
2004-10-07 10:03:27 +00:00
Robert Osfield
a907042618 From Jason Daly, fix to multi-texturing/detail texture handling. 2004-10-06 19:19:22 +00:00
Robert Osfield
2d901bf7ee Fixed warnings 2004-08-02 14:52:24 +00:00
Robert Osfield
6f03f991b3 Changed the color binding to better reflect the settings in the OpenFlight file. 2004-06-11 21:05:07 +00:00
Robert Osfield
09d585561a Added missing setColorBinding() into ConvertFromFLT::setMeshColors(). 2004-06-11 14:49:22 +00:00
Robert Osfield
343fa27fcd From Troy Yee, fixes to handling meshes.
From Robert Osfield, replaced assert(0)'s with error messages.
2004-06-10 15:43:56 +00:00
Robert Osfield
86d323752d From Corbin Holtz, "I have completed my mods to the OpenFlight loader (modified files are
attached):
   * Light point strings using the REPLICATE opcode should now be supported
(>=15.6?)

   * Directional lights should now work as in Performer using a viewing
frustrum defined by a direction vector, horizontal angular width, vertical
angular width, and roll angle about the direction vector.  The current
directional light implementation had some bad assumptions which caused
problems with direction vectors not on the XY plane.

   * IVE and OSG reader/writers were updated as appropriate"
2004-05-08 22:18:38 +00:00
Robert Osfield
b6c1c44bd0 From Paul Martz,
"Changes to provide rudimentary support for OF 15.8 light point
animation palettes. This change also includes light point palette override
support for external references. This is the last of my code changes to
support OF 15.8 in the flt loader. Barring bugs, of course, knock on wood.

The gist of the animation palette code is to create ref_ptr'd
osgSim::BlinkSequence objects for each palette entry, and then pass them on
to osgSim::LightPoint for any OpenFlight light points that reference that
palette entry. This should be conservative of memory (not that I expect the
animation palette to be extremely large)."
2004-05-08 21:33:25 +00:00
Robert Osfield
3a8e5fc6b4 From Yefei Hi, replaced windows specific function with sprintf to afford
better cross platform portability.
2004-05-07 19:58:56 +00:00
Robert Osfield
a196ea1d5d From Yefei Hi,fix to MultiSwitch set up, and adding of parsing of description
fields (which is presently #if 0'd out while a compile problem is resolved.)
2004-05-07 14:51:33 +00:00
Robert Osfield
bc3c6c2edf Fixed tabbing to be all four spaced tabs 2004-05-07 14:44:58 +00:00
Robert Osfield
9978c02b7f From Julian, fix to handling of multi-textures 2004-05-07 14:33:15 +00:00
Robert Osfield
ae7ceae631 From Paul Martz, added support for OpenFlight15.8 LightPointSystems 2004-04-10 11:30:16 +00:00
Robert Osfield
cb213d0ff4 From Paul Martz, changes to better support OpenFlight 15.8 2004-04-07 08:57:15 +00:00
Robert Osfield
231b4c7564 From Paul Martz, code change to make the flt loader pass its light point intensity value in to osgSim::LightPoint. 2004-03-20 17:21:53 +00:00
Robert Osfield
1aa0592878 From Paul Martz, "The attached code change causes the flt plugin to leave _sector unset if the
direction normal has a zero length. The net effect is that unidirectional
light points with zero length direction vectors are now treated as
omnidirectional light points."
2004-03-17 20:34:23 +00:00
Robert Osfield
c4deb5510f From Paul Martz, added (non-meters) unit scaling to the flt plugin
failed to set the scaling of external references.
2004-03-17 08:15:24 +00:00
Robert Osfield
3bf1bbdabd From Paul Martz, "I've added support for indexed light points and the light
point appearance palette to the OpenFlight loader. Both are 15.8 features.
I also added parsing/comments regarding other things that have changed for
v15.8."
2004-03-14 15:26:36 +00:00
Robert Osfield
cdd9c2ae25 From Paul Martz, fix to the scaling of light points in flt plugin. 2004-03-09 23:00:01 +00:00
Don BURNS
fc3d4aa5f0 Submission by Paul Martz for doing units conversions on flight files. 2004-02-12 18:40:15 +00:00
Robert Osfield
9927c664b5 Merged changes from Cobin Holtz for support of "noUnitsConversion" via
the ReaderWriter::Options string.
2004-01-06 12:27:20 +00:00
Robert Osfield
dd44734635 From Nikolaus Hanekamp, Fixes to lightpoint code 2003-11-27 13:31:16 +00:00
Robert Osfield
d41a3de37c From Trajce Nikolov:
> There are databases that contain both Matrix and GeneralMatrix records as
> ancillary records. If this happens, this fix will only use one matrix to
> create osg::TransformMatrix node.
2003-11-27 13:25:52 +00:00
Robert Osfield
d950ee8410 Addition of light point. 2003-11-26 16:56:32 +00:00
Robert Osfield
72ba462251 Added osgSim::MultiSwitch and support for it in the OpenFlight and
.osg plugins
2003-11-25 15:58:57 +00:00
Robert Osfield
31c5528ffb Moved osg::DOFTransform to osgSim::DOFTransform.
Fixed crash associated with .osg files which contain empty description fields.

From Sondra Inverson, added support to .ive plugin for osgSim::DOFTransform.
2003-11-25 14:11:05 +00:00
Robert Osfield
357078f207 From Trajce Nicklov, support for GeneralMatrix record 2003-11-25 10:47:13 +00:00
Robert Osfield
bd686c4598 From Michael Morrison, added support for the OpenFlight BSPRecord, simply
mapping it to a Group.
2003-11-25 10:20:21 +00:00
Robert Osfield
c11762aeb3 Changed the warnings about unhandled op codes to NOTICE instead or WARN 2003-10-17 10:28:55 +00:00
Robert Osfield
c342b29a04 Warning fixes for Win32. 2003-09-16 19:56:19 +00:00
Robert Osfield
79b87c933e From Julian Ortiz, fix to OpenFlight loader so that it handlers OpenFlight
switches in a more appropriate way.
2003-09-15 15:03:30 +00:00
Robert Osfield
6bb951a5bb From Alberto Farre, fixes to the file path handling of internally referenced
files.
2003-08-31 22:17:15 +00:00
Robert Osfield
64e3c052d6 Removed double line spacing in ExternalReference code. 2003-08-28 12:49:38 +00:00
Robert Osfield
138835d817 Added a PushAndPopFilePath usage to the internal flt file references. 2003-08-28 12:47:32 +00:00
Robert Osfield
aca924113f From Julia Oritz Rojas, support for detail textures. 2003-06-25 10:12:50 +00:00
Don BURNS
15f88f35b2 *** empty log message *** 2003-06-24 15:40:09 +00:00
Robert Osfield
1c8db044f1 Removed various assert() instances since these were causing crashes.
From Alberto, changed the use of the DynGeoSet to it was querried on demand
rather than used as a pointer which was originally being invalidate before
use.
2003-04-18 10:10:14 +00:00
Robert Osfield
b04edb70aa Added a clear of allocated Records and the cache's in flt::Registry to
prevent memory leaks and unneccesary references to model models remaining
beyond the scope of the loader.
2003-03-18 20:10:51 +00:00
Robert Osfield
ef3b957cb9 From Daniel Sjolie, support for light source. 2003-03-07 09:04:04 +00:00
Robert Osfield
08cdf05b3e Fix to comment record and longID length using both inbedded null's and
rec length to determine the length of a string.
2003-03-07 08:52:51 +00:00
Robert Osfield
042af2be03 Add if (!textureStateSet) return check to replace assert() to prevent crashes
when multi-texture layers don't exist.
2003-02-12 10:10:03 +00:00
Robert Osfield
5a05e14e50 Fix to handling of comment records and longid's. 2003-01-23 14:46:10 +00:00