Commit Graph

6561 Commits

Author SHA1 Message Date
Robert Osfield
e0abc970ae Added support for setting OpenThreads_SOURCE_DIR to help the install of OpenThreads headers 2007-05-03 08:50:06 +00:00
Robert Osfield
85e5ec7579 Added OpenThreads wrappers 2007-05-02 19:57:05 +00:00
Robert Osfield
958c3efa3a Added CMake support for local OpenThreads build 2007-05-02 18:07:41 +00:00
Robert Osfield
d9ee7cabd9 Added svn:externals for include/OpenThreads and src/OpenThreads 2007-05-02 16:36:56 +00:00
Robert Osfield
80c42a7cf7 Introduced new tesslation technique that adjusts the triangulation so that the
diagonal goes between the corners with least vertical deviation.
2007-05-02 13:58:38 +00:00
Robert Osfield
859bcf3c4b Further perfomrmance optimizations and clean up on new VBO/EBO/PBO API. 2007-05-01 18:03:32 +00:00
Robert Osfield
fe85a439fb Cleaned up the optional code paths in new VBO code 2007-05-01 09:29:30 +00:00
Robert Osfield
914763b77a Updated wrappers 2007-05-01 07:31:30 +00:00
Robert Osfield
cd0d2ffe27 Added direct links to the CMake build pages 2007-05-01 06:40:26 +00:00
Robert Osfield
40db1a8934 Moved VBO switching code into inline methods into osg::State to speed performance 2007-05-01 06:28:20 +00:00
Eric WING
a67111a64c Fixes to resync Xcode project with current tree.
flt files are missing. I'm not sure if it was intentionally removed from the project, so I left the everything in place, but removed the target from the build aggregate targets so it doesn't get in the way of the build system.
Added back osgTerrain to the project (don't know who deleted those). SDL's aggregate target is also missing.
2007-04-30 22:12:08 +00:00
Robert Osfield
0742975f9b Added initalization of _startTick to CompositeViewer 2007-04-30 15:10:57 +00:00
Robert Osfield
367ab032b1 From Jeremy Moles, fixed missing intialization of _startTick member variable. 2007-04-30 14:49:05 +00:00
Robert Osfield
d625a5e114 Implementated new dirty buffer mechansim for BufferObjects to make it more efficient 2007-04-30 12:18:27 +00:00
Robert Osfield
efb52dfab9 Added TerrainNode::setColorFilter(layerNum,Filter) to allow developers to set
what type of texture filter to use, either LINEAER and NEAREST.
2007-04-30 09:47:35 +00:00
Robert Osfield
43e6d7e879 Updated ChangeLog and AUTHORS file 2007-04-30 08:37:46 +00:00
Robert Osfield
22ad53d7d9 Updated version number for 1.9.2 dev release 2007-04-30 08:31:25 +00:00
Robert Osfield
3054dd166c Updated wrappers 2007-04-29 20:19:12 +00:00
Robert Osfield
9e07a72119 Added temporary code (but comment out) for testing VBO performance 2007-04-29 20:13:53 +00:00
Robert Osfield
aa56bddefc Added a MatrixTransform set up to provide a local origin for better precision. 2007-04-29 20:10:43 +00:00
Robert Osfield
921eb0fdd0 Further work on new VertexBufferObject/ElementsBufferObject support 2007-04-29 08:12:29 +00:00
Robert Osfield
47598ce1a9 Added back in osg::Geometry path 2007-04-27 17:03:06 +00:00
Robert Osfield
4968eb7136 Further work on the new VBO support 2007-04-27 14:52:30 +00:00
Robert Osfield
2168eac1d4 From Eric Wing,
"
Here are more changes for the CMake scripts:

- I removed CMAKE_INSTALL_PREFIX in FindOpenThreads as a follow up to
the discussion thread.

- I introduced an experimental CMAKE_PREFIX_PATH to replace it.

- I added CMAKE_PREFIX_PATH, CMAKE_INCLUDE_PATH, and
CMAKE_LIBRARY_PATH to the CMake GUI so users can enter values there
instead of in the environment.

- I added OPENSCENEGRAPH_*_VERSION variables (MAJOR, MINOR, PATCH).
These should be kept up-to-date with the real version numbers. Mac
bundles like to have version information so users can find out the
version they are running through standard About panels and also
automated system reporters for troubleshooting/bug tracking. In
theory, this information could be used for library versioning.
We should do the same for OpenThreads, but I forgot about it.

- I added some Mac Info.plist stuff (which uses the version information).

"
2007-04-27 10:29:48 +00:00
Robert Osfield
c826452923 Fixed tabbing 2007-04-27 09:49:28 +00:00
Robert Osfield
2929667dc4 Added using of VertexBufferObject and ElementsBufferObject classes 2007-04-26 16:50:35 +00:00
Robert Osfield
a3e6d8283d Further work VertexBufferObject and ElementsBufferObject classes 2007-04-26 16:50:06 +00:00
Robert Osfield
0df82ba60f Updated wrappers 2007-04-26 08:26:10 +00:00
Robert Osfield
a1639c3d2d From Brad Colbert, "Added a new method to ImageStream called getLength that is used to
return the length of the stream.

Implemented the virtual methods in QuicktimeImageStream, (getLength,
getReferenceTime, setTimeMultiplier), to return valid value for each.
"
2007-04-26 08:11:09 +00:00
Robert Osfield
8ef833c585 From Eric Wing, Added quicktime CMakeLists.txt 2007-04-26 08:07:25 +00:00
Robert Osfield
4b71e3948b Added VertexBufferObject and ElementBufferObject class interfaces, and wired
up osg::Array and osg::DrawElements* to these respectively.

Updated wrappers
2007-04-25 18:50:11 +00:00
Robert Osfield
2ca0075426 Added --static and --vbo options to allow the user to toggle on/off dynamic updating
of geometry and use of vertex buffer objects.
2007-04-25 15:32:33 +00:00
Robert Osfield
e316a8617c Updated wrappers 2007-04-25 10:32:41 +00:00
Robert Osfield
5325653f30 Cleaned up numToTop method 2007-04-25 10:32:28 +00:00
Robert Osfield
cfe746f795 From Martin Aumueller, fixed unused parameter warnings 2007-04-25 10:12:46 +00:00
Robert Osfield
c65278e9dc From Martin Aumueller, "
a collegue of mine noticed that on Windows and X11 the modifier state (such as
Alt or Ctrl) would be applied one key press too late: e.g. press & hold Alt,
press a, release Alt, press a, press a would generate the key sequence a,
Alt-a, a instead of Alt-a, a, a.

The problem is also present on Carbon. Moving the call to setModKeyMask in
front of the call to keyPress fixed it for me on Carbon and X11. I suppose
that this will fix the problem for Windows as well."
2007-04-25 09:32:12 +00:00
Robert Osfield
5693afa5be From Eric Wing,
"These enhancements make it much easier to control which libraries get
found by FIND_ using environmental variables. The problem with the old
script was that CMake searches what it considers system paths first.
This makes it difficult to override in the case where you might have a
stable version in /usr/local, but are trying to build a bleeding edge
release in the non-standard location /bleeding-edge.

I went to the CMake mailing list hoping to find a good solution to
this. Unfortunately, there isn't one, and I have to do something
rather bone-headed in the Find module. Basically, I have to run FIND_
twice: once with default search paths turned off and my environmental
variables listed, and again with standard search paths reenabled. At
least it works.

I also added a few more environmental variables, specifically:
OPENTHREADS_INCLUDE_DIR
OPENTHREADS_LIBRARY_DIR

These two variables address the shortcoming of OPENTHREADS_DIR in the
case where the include path and library path don't share a common
parent.

Put all this together, and you can setup an automated shell script or
Microsoft .bat file to configure and build your application in an
automated step.


You still should be able to use the key CMake variables like
CMAKE_INCLUDE_PATH and CMAKE_LIBRARY_PATH to find things, but it will
occur after the environmental paths are searched. The reason for this
is that the OPENTHREADS_INCLUDE_DIR and OPENTHREADS_LIBRARY_DIR are
more specific. This prevents the accidental ordering problem where you
might use CMAKE_INCLUDE_PATH to find some other component like GLUT,
but didn't want to accidentally include an older version of
OpenThreads located in the same area.

As the ultimate override, you can still pass -DVAR=value arguments to
cmake and it will take these above all else. However, it's safer for
people to not use these in case we modify the script and change the
variable names.

Finally, I'm wondering if we can kill the ${CMAKE_INSTALL_PREFIX}
searches in the Find module. As I've said before, this is kind of a
hack and the variable wasn't really intended to be used in this way.
And I just got bitten by it in some bad corner cases. The problem is
that if you don't explicitly set the ${CMAKE_INSTALL_PREFIX}, CMake
sets a default value for it (such as /usr/local). The problem is that
/usr/local may not be the place you want searched. If you wait to set
the ${CMAKE_INSTALL_PREFIX} in the ccmake GUI, then FIND_ is already
run once on ${CMAKE_INSTALL_PREFIX=/usr/local. If you were planning to
change the value in the GUI, it's too late if you had a stuff in
/usr/local because FIND_ already found something and won't change the
value when you reconfigure since it is already set. You will have to
manually change the value yourself. Furthermore, as another problem
example, on the Mac, /Library/Frameworks is supposed to be searched
before /usr/local, but ${CMAKE_INSTALL_PREFIX} kept causing stuff in
/usr/local to be hit first which took me a really long time to
understand how this was happenning. The work around is that I must
push the ${CMAKE_INSTALL_PREFIX} search to the very end as not to
conflict with anything else. But I think it would be much better if we
removed it entirely.

And with so many different environmental variables at our disposal, I
don't think we need this one:

(Checked by CMake automatically:)
CMAKE_INCLUDE_PATH
CMAKE_SYSTEM_INCLUDE_PATH
CMAKE_LIBRARY_PATH
CMAKE_SYSTEM_LIBRARY_PATH
PATH
LIB

(Checked by us:)
OPENTHREADS_INCLUDE_DIR
OPENTHREADS_LIBRARY_DIR
OPENTHREADS_DIR
OSG_INCLUDE_DIR
OSG_LIBRARY_DIR
OSG_DIR
"
2007-04-25 09:21:57 +00:00
Robert Osfield
6405b7724d From Eric Wing, "lwo must link to osgFX or undefined symbols ensue." 2007-04-25 09:16:31 +00:00
Robert Osfield
24cf948b3f From Eric Wing, "I made a mistake in my IF() checks for FOO_CONFIG_HAS_BEEN_RUN_BEFORE.
I was using ${FOO_CONFIG_HAS_BEEN_RUN_BEFORE} instead of just
FOO_HAS_BEEN_RUN_BEFORE.

In this case, it happened to work out to still be correct, but in
general it shouldn't have the ${}. (I really hate this syntax.)"
2007-04-25 09:14:01 +00:00
Robert Osfield
20f8fedfcc From Jeremy Moles, Added check for image transluceny to image loaded code, placing
the image quad into the transparent bin for images with alpha values.
2007-04-24 19:08:52 +00:00
Robert Osfield
00a44eb636 From Martin Aumueller, "the new Inventor plugin needs some changes in order to compile against OpenInventor.
Just as in the pre-r6419 I used the COIN_BASIC_H define in order to discriminate
between the two versions of Inventor.

Additionally, I had to change the CMakeLists.txt to use the proper include path.
"
2007-04-24 19:03:51 +00:00
Robert Osfield
d35d8d0fa8 From Jan Peciva,
"I was working on a new version of Inventor plugin.
It was inspired by the need to get correct and high quality conversion,
so I verified the plugin on complex models and made number of serious fixes:

- the geometry is not two times on the output file (!)
- SoVRMLImageTexture: VRML texture support was rewritten according to
  Inventor programming practices, since it does not worked correctly on
  many models (Anyway, thanks for Gerrick Bivins to introduce it.)
- osg::ref wrong usage related crash fixed
- code cleaning and texture code overhaul
- LOD fixes
- appended README.txt with all the contributors I was able to get from
  SVN logs"
2007-04-24 13:12:40 +00:00
Robert Osfield
56188dde68 Added CMake support for lwo plugin. 2007-04-24 13:11:22 +00:00
Robert Osfield
4371d22682 Added compile path support for XINE, Inventor and LibXML 2007-04-24 12:59:23 +00:00
Robert Osfield
0e6bcc61f0 Updated version to 1.9.1 2007-04-23 20:21:06 +00:00
Robert Osfield
47eed158b3 Updated AUTHORS file for 1.9 developer release 2007-04-22 21:54:05 +00:00
Robert Osfield
16bc9da8fc Updated ChangeLog 2007-04-22 21:53:12 +00:00
Robert Osfield
1a4cf30c4a Added --version-number support 2007-04-22 21:40:46 +00:00
Robert Osfield
2bf836ea93 From Michael Platings, "In the "new method" 3DS loader, inverse matrices were applied to
vertices, but not normals, which caused some models to appear with
normals doubly rotated. I've now added some code to transform the
normals."
2007-04-22 21:18:20 +00:00
Robert Osfield
f242570269 Unified the setup of version numbers so that they all are based on the version
number setup in the include/osg/Version header file.
2007-04-22 20:19:43 +00:00