Преглед на файлове

Merge branch 'master' into ios

Donny Lawrence преди 5 години
родител
ревизия
c2a5ace45b
променени са 100 файла, в които са добавени 1342 реда и са изтрити 5854 реда
  1. 25 0
      .github/ISSUE_TEMPLATE/bug.md
  2. 15 0
      .github/ISSUE_TEMPLATE/enhancement.md
  3. 15 0
      .github/PULL_REQUEST_TEMPLATE.md
  4. 76 53
      .github/workflows/ci.yml
  5. 1 0
      .gitignore
  6. 0 60
      .travis.yml
  7. 2 3
      BACKERS.md
  8. 55 0
      CONTRIBUTING.md
  9. 7 7
      README.md
  10. 3 3
      cmake/macros/PackageConfig.cmake
  11. 7 0
      contrib/src/contribbase/contribsymbols.h
  12. 21 21
      contrib/src/rplight/rpLight.I
  13. 0 0
      contrib/src/speedtree/config_speedtree.cxx
  14. 1 1
      contrib/src/speedtree/config_speedtree.h
  15. 0 0
      contrib/src/speedtree/loaderFileTypeSrt.cxx
  16. 1 1
      contrib/src/speedtree/loaderFileTypeSrt.h
  17. 0 0
      contrib/src/speedtree/loaderFileTypeStf.cxx
  18. 1 1
      contrib/src/speedtree/loaderFileTypeStf.h
  19. 0 0
      contrib/src/speedtree/pandaspeedtree_composite1.cxx
  20. 0 0
      contrib/src/speedtree/speedTreeNode.I
  21. 1 1
      contrib/src/speedtree/speedTreeNode.cxx
  22. 1 1
      contrib/src/speedtree/speedTreeNode.h
  23. 0 0
      contrib/src/speedtree/speedtree_api.cxx
  24. 0 0
      contrib/src/speedtree/speedtree_api.h
  25. 0 0
      contrib/src/speedtree/stBasicTerrain.I
  26. 0 0
      contrib/src/speedtree/stBasicTerrain.cxx
  27. 1 1
      contrib/src/speedtree/stBasicTerrain.h
  28. 0 0
      contrib/src/speedtree/stTerrain.I
  29. 0 0
      contrib/src/speedtree/stTerrain.cxx
  30. 1 1
      contrib/src/speedtree/stTerrain.h
  31. 0 0
      contrib/src/speedtree/stTransform.I
  32. 0 0
      contrib/src/speedtree/stTransform.cxx
  33. 1 1
      contrib/src/speedtree/stTransform.h
  34. 0 0
      contrib/src/speedtree/stTree.I
  35. 0 0
      contrib/src/speedtree/stTree.cxx
  36. 1 1
      contrib/src/speedtree/stTree.h
  37. 15 1
      direct/CMakeLists.txt
  38. 5 1
      direct/src/actor/Actor.py
  39. 3 0
      direct/src/actor/__init__.py
  40. 1 1
      direct/src/dcparser/dcPacker.cxx
  41. 1 1
      direct/src/directbase/DirectStart.py
  42. 1 0
      direct/src/directscripts/Doxyfile.cxx
  43. 1 1
      direct/src/directtools/DirectManipulation.py
  44. 9 9
      direct/src/directtools/DirectSession.py
  45. 0 10
      direct/src/directutil/DirectMySQLdb.py
  46. 0 117
      direct/src/directutil/DirectMySQLdbConnection.py
  47. 12 4
      direct/src/dist/FreezeTool.py
  48. 38 11
      direct/src/dist/commands.py
  49. 5 1
      direct/src/dist/pefile.py
  50. 1 0
      direct/src/distributed/ConnectionRepository.py
  51. 1 0
      direct/src/distributed/ServerRepository.py
  52. 3 0
      direct/src/distributed/__init__.py
  53. 2 5
      direct/src/extensions_native/CInterval_extensions.py
  54. 119 3
      direct/src/filter/CommonFilters.py
  55. 7 1
      direct/src/filter/FilterManager.py
  56. 3 0
      direct/src/filter/__init__.py
  57. 2 19
      direct/src/fsm/State.py
  58. 16 0
      direct/src/gui/DirectGuiGlobals.py
  59. 1 2
      direct/src/interval/FunctionInterval.py
  60. 39 38
      direct/src/showbase/Loader.py
  61. 2 3
      direct/src/showbase/Messenger.py
  62. 3 3
      direct/src/showbase/OnScreenDebug.py
  63. 4 3
      direct/src/showbase/PythonUtil.py
  64. 278 141
      direct/src/showbase/ShowBase.py
  65. 10 5
      direct/src/showbase/ShowBaseGlobal.py
  66. 3 0
      direct/src/showbase/__init__.py
  67. 6 3
      direct/src/showutil/TexMemWatcher.py
  68. 2 1
      direct/src/stdpy/__init__.py
  69. 1 3
      direct/src/task/Task.py
  70. 14 8
      direct/src/tkpanels/Inspector.py
  71. 71 0
      doc/ReleaseNotes
  72. 2 2
      dtool/src/dtoolbase/cmath.I
  73. 1 16
      dtool/src/dtoolutil/filename_ext.cxx
  74. 64 0
      dtool/src/dtoolutil/textEncoder.cxx
  75. 1 0
      dtool/src/dtoolutil/textEncoder.h
  76. 62 5
      dtool/src/interrogate/interfaceMakerPythonNative.cxx
  77. 3 0
      dtool/src/interrogate/interfaceMakerPythonNative.h
  78. 11 3
      dtool/src/interrogatedb/py_panda.cxx
  79. 6 6
      dtool/src/prc/configPageManager.I
  80. 2 2
      dtool/src/prc/configVariableManager.cxx
  81. 3 3
      dtool/src/prc/streamReader.h
  82. 60 9
      dtool/src/prc/streamReader_ext.cxx
  83. 3 3
      dtool/src/prc/streamReader_ext.h
  84. 6 3
      dtool/src/prckeys/makePrcKey.cxx
  85. 1 1
      makepanda/installer.nsi
  86. 6 3
      makepanda/makepackage.py
  87. 20 14
      makepanda/makepanda.py
  88. 0 5108
      makepanda/makepanda.vcproj
  89. 72 21
      makepanda/makepandacore.py
  90. 28 40
      makepanda/makewheel.py
  91. 5 7
      panda/src/audio/audioManager.h
  92. 3 3
      panda/src/audio/audioSound.cxx
  93. 1 1
      panda/src/audio/audioSound.h
  94. 3 3
      panda/src/audiotraits/fmodAudioManager.h
  95. 50 38
      panda/src/audiotraits/fmodAudioSound.cxx
  96. 3 3
      panda/src/audiotraits/openalAudioManager.h
  97. 2 0
      panda/src/audiotraits/openalAudioSound.cxx
  98. 3 3
      panda/src/audiotraits/openalAudioSound.h
  99. 3 3
      panda/src/bullet/bulletAllHitsRayResult.h
  100. 3 3
      panda/src/bullet/bulletBaseCharacterControllerNode.h

+ 25 - 0
.github/ISSUE_TEMPLATE/bug.md

@@ -0,0 +1,25 @@
+---
+name: Bug report
+about: Report a defect
+title:
+labels:
+assignees:
+---
+
+## Description
+<!-- Provide a clear and concise description of the bug: what you expected to
+     happen, and what actually happened instead.  If you have a log file or
+     crash report, please attach those! -->
+
+## Steps to Reproduce
+<!-- The most minimal but complete set of steps to reproduce the bug, with a
+     code snippet that clearly demonstrates the bug.  We must be able to run
+     the code, ie. you must include any required assets. -->
+
+## Environment
+ * Operating system:
+ * System architecture:
+ * Panda3D version: <!-- import panda3d; print(panda3d.__version__) -->
+ * Installation method: (eg. pip, wheel, SDK, built from source)
+ * Python version (if using Python):
+ * Compiler (if using C++):

+ 15 - 0
.github/ISSUE_TEMPLATE/enhancement.md

@@ -0,0 +1,15 @@
+---
+name: Enhancement request
+about: Request new functionality or improvement to existing functionality
+title:
+labels: enhancement
+assignees:
+---
+
+## Description
+<!-- Please clearly describe which change you want to be made. -->
+
+## Use Case
+<!-- Describe why you need this change, how it will help you, including any
+     other imagined scenarios in which it will be useful.  If this request is
+     urgent and you have no alternatives, please state so as well. -->

+ 15 - 0
.github/PULL_REQUEST_TEMPLATE.md

@@ -0,0 +1,15 @@
+## Issue description
+<!-- What is this change intended to accomplish?  What problem does it solve?
+     If this change resolves a GitHub issue, include the issue number. -->
+
+## Solution description
+<!-- Explain here how your PR solves the problem, what approach it takes. -->
+
+## Checklist
+I have done my best to ensure that…
+* [ ] …I have familiarized myself with the CONTRIBUTING.md file
+* [ ] …this change follows the coding style and design patterns of the codebase
+* [ ] …I own the intellectual property rights to this code
+* [ ] …the intent of this change is clearly explained
+* [ ] …existing uses of the Panda3D API are not broken
+* [ ] …the changed code is adequately covered by the test suite, where possible.

+ 76 - 53
.github/workflows/ci.yml

@@ -4,6 +4,7 @@ on: [push, pull_request]
 jobs:
   cmake:
     name: CMake Buildsystem
+    if: "!contains(github.event.head_commit.message, '[skip ci]') && !contains(github.event.head_commit.message, '[ci skip]')"
 
     strategy:
       fail-fast: false
@@ -91,12 +92,18 @@ jobs:
     - name: Install dependencies (macOS)
       if: runner.os == 'macOS'
       run: |
-        curl -O https://www.panda3d.org/download/panda3d-1.10.5/panda3d-1.10.5-tools-mac.tar.gz
-        tar -xf panda3d-1.10.5-tools-mac.tar.gz
+        curl -O https://www.panda3d.org/download/panda3d-1.10.7/panda3d-1.10.7-tools-mac.tar.gz
+        tar -xf panda3d-1.10.7-tools-mac.tar.gz
+        mv panda3d-1.10.7/thirdparty thirdparty
+        rmdir panda3d-1.10.7
 
-        brew install ccache
+        mkdir -p build/Frameworks
+        cp -R thirdparty/darwin-libs-a/nvidiacg/Cg.framework build/Frameworks/Cg.framework
+
+        mkdir -p "build/${{ matrix.config }}/Frameworks"
+        cp -R thirdparty/darwin-libs-a/nvidiacg/Cg.framework "build/${{ matrix.config }}/Frameworks/Cg.framework"
 
-        echo "##[set-env name=thirdpartyOption;]-D THIRDPARTY_DIRECTORY=../panda3d-1.10.5/thirdparty" -DHAVE_CG=OFF
+        brew install ccache
 
     - name: Install dependencies (Ubuntu)
       if: startsWith(matrix.os, 'ubuntu')
@@ -119,20 +126,19 @@ jobs:
       if: runner.os == 'Windows'
       uses: actions/cache@v1
       with:
-        path: thirdparty-tools
-        key: ci-cmake-${{ runner.OS }}-thirdparty-v1.10.5-r1
+        path: thirdparty
+        key: ci-cmake-${{ runner.OS }}-thirdparty-v1.10.7-r1
     - name: Install dependencies (Windows)
       if: runner.os == 'Windows'
       shell: powershell
       run: |
-        if (!(Test-Path thirdparty-tools/panda3d-1.10.5)) {
+        if (!(Test-Path thirdparty/win-libs-vc14-x64)) {
           $wc = New-Object System.Net.WebClient
-          $wc.DownloadFile("https://www.panda3d.org/download/panda3d-1.10.5/panda3d-1.10.5-tools-win64.zip", "thirdparty-tools.zip")
+          $wc.DownloadFile("https://www.panda3d.org/download/panda3d-1.10.7/panda3d-1.10.7-tools-win64.zip", "thirdparty-tools.zip")
           Expand-Archive -Path thirdparty-tools.zip
+          Move-Item -Path thirdparty-tools/panda3d-1.10.7/thirdparty -Destination .
         }
 
-        echo "##[set-env name=thirdpartyOption;]-D THIRDPARTY_DIRECTORY=../thirdparty-tools/panda3d-1.10.5/thirdparty"
-
     - name: ccache (non-Windows)
       if: runner.os != 'Windows'
       uses: actions/cache@v1
@@ -145,15 +151,15 @@ jobs:
       env:
         CMAKE_GENERATOR: "${{ matrix.generator }}"
       run: >
-        mkdir build
+        mkdir -p build
 
         cd build
 
         if ${{ matrix.compiler == 'Clang' }}; then
           if [[ "$CMAKE_GENERATOR" == *Studio*2019* ]]; then
-            export CMAKE_GENERATOR_TOOLSET=ClangCL thirdpartyOption="$thirdpartyOption -DHAVE_HARFBUZZ=NO"
+            export CMAKE_GENERATOR_TOOLSET=ClangCL
           elif [[ "$CMAKE_GENERATOR" == *Studio* ]]; then
-            export CMAKE_GENERATOR_TOOLSET=LLVM thirdpartyOption="$thirdpartyOption -DHAVE_HARFBUZZ=NO"
+            export CMAKE_GENERATOR_TOOLSET=LLVM
           else
             export CC=clang CXX=clang++
           fi
@@ -161,7 +167,8 @@ jobs:
 
         if ${{ runner.os != 'Windows' }}; then
           compilerLauncher=$(echo -DCMAKE_C{,XX}_COMPILER_LAUNCHER=ccache)
-          echo "##[set-env name=CCACHE_DIR;]$(dirname $PWD)/ccache"
+          export CCACHE_DIR="$(dirname $PWD)/ccache"
+          echo "CCACHE_DIR=$(dirname $PWD)/ccache" >> $GITHUB_ENV
         fi
 
         cmake
@@ -171,7 +178,6 @@ jobs:
         -D BUILD_METALIBS=${{ matrix.metalibs }}
         -D HAVE_PYTHON=${{ matrix.python }}
         -D HAVE_EIGEN=${{ matrix.eigen }}
-        ${thirdpartyOption:-}
         ..
 
     - name: Build (no Python)
@@ -181,25 +187,25 @@ jobs:
       run: cmake --build . --config ${{ matrix.config }} --parallel 4
       # END A
 
-    - name: Setup Python (Python 3.5)
+    - name: Setup Python (Python 3.6)
       if: contains(matrix.python, 'YES')
       uses: actions/setup-python@v1
       with:
-        python-version: 3.5
-    - name: Configure (Python 3.5)
+        python-version: 3.6
+    - name: Configure (Python 3.6)
       if: contains(matrix.python, 'YES')
       working-directory: build
       shell: bash
       run: >
-        cmake -DWANT_PYTHON_VERSION=3.5
-        -DPython_FIND_REGISTRY=NEVER -DPython_ROOT=$pythonLocation .
-    - name: Build (Python 3.5)
+        cmake -DWANT_PYTHON_VERSION=3.6
+        -DPython_FIND_REGISTRY=NEVER -DPython_ROOT="$pythonLocation" .
+    - name: Build (Python 3.6)
       if: contains(matrix.python, 'YES')
       # BEGIN A
       working-directory: build
       run: cmake --build . --config ${{ matrix.config }} --parallel 4
       # END A
-    - name: Test (Python 3.5)
+    - name: Test (Python 3.6)
       # BEGIN B
       if: contains(matrix.python, 'YES')
       working-directory: build
@@ -208,29 +214,30 @@ jobs:
         PYTHONPATH: ${{ matrix.config }}
       run: |
         PYTHON_EXECUTABLE=$(grep 'Python_EXECUTABLE:' CMakeCache.txt | sed 's/.*=//')
-        $PYTHON_EXECUTABLE -m pip install pytest
-        $PYTHON_EXECUTABLE -m pytest ../tests
+        $PYTHON_EXECUTABLE -m pip install pytest pytest-cov
+        export COVERAGE_FILE=.coverage.$RANDOM LLVM_PROFILE_FILE=$PWD/pid-%p.profraw
+        $PYTHON_EXECUTABLE -m pytest ../tests --cov=.
       # END B
 
-    - name: Setup Python (Python 3.6)
+    - name: Setup Python (Python 3.7)
       if: contains(matrix.python, 'YES')
       uses: actions/setup-python@v1
       with:
-        python-version: 3.6
-    - name: Configure (Python 3.6)
+        python-version: 3.7
+    - name: Configure (Python 3.7)
       if: contains(matrix.python, 'YES')
       working-directory: build
       shell: bash
       run: >
-        cmake -DWANT_PYTHON_VERSION=3.6
-        -DPython_FIND_REGISTRY=NEVER -DPython_ROOT=$pythonLocation .
-    - name: Build (Python 3.6)
+        cmake -DWANT_PYTHON_VERSION=3.7
+        -DPython_FIND_REGISTRY=NEVER -DPython_ROOT="$pythonLocation" .
+    - name: Build (Python 3.7)
       if: contains(matrix.python, 'YES')
       # BEGIN A
       working-directory: build
       run: cmake --build . --config ${{ matrix.config }} --parallel 4
       # END A
-    - name: Test (Python 3.6)
+    - name: Test (Python 3.7)
       # BEGIN B
       if: contains(matrix.python, 'YES')
       working-directory: build
@@ -244,25 +251,25 @@ jobs:
         $PYTHON_EXECUTABLE -m pytest ../tests --cov=.
       # END B
 
-    - name: Setup Python (Python 3.7)
+    - name: Setup Python (Python 3.8)
       if: contains(matrix.python, 'YES')
       uses: actions/setup-python@v1
       with:
-        python-version: 3.7
-    - name: Configure (Python 3.7)
+        python-version: 3.8
+    - name: Configure (Python 3.8)
       if: contains(matrix.python, 'YES')
       working-directory: build
       shell: bash
       run: >
-        cmake -DWANT_PYTHON_VERSION=3.7
-        -DPython_FIND_REGISTRY=NEVER -DPython_ROOT=$pythonLocation .
-    - name: Build (Python 3.7)
+        cmake -DWANT_PYTHON_VERSION=3.8
+        -DPython_FIND_REGISTRY=NEVER -DPython_ROOT="$pythonLocation" .
+    - name: Build (Python 3.8)
       if: contains(matrix.python, 'YES')
       # BEGIN A
       working-directory: build
       run: cmake --build . --config ${{ matrix.config }} --parallel 4
       # END A
-    - name: Test (Python 3.7)
+    - name: Test (Python 3.8)
       # BEGIN B
       if: contains(matrix.python, 'YES')
       working-directory: build
@@ -276,25 +283,25 @@ jobs:
         $PYTHON_EXECUTABLE -m pytest ../tests --cov=.
       # END B
 
-    - name: Setup Python (Python 3.8)
+    - name: Setup Python (Python 3.9)
       if: contains(matrix.python, 'YES')
       uses: actions/setup-python@v1
       with:
-        python-version: 3.8
-    - name: Configure (Python 3.8)
+        python-version: 3.9
+    - name: Configure (Python 3.9)
       if: contains(matrix.python, 'YES')
       working-directory: build
       shell: bash
       run: >
-        cmake -DWANT_PYTHON_VERSION=3.8
-        -DPython_FIND_REGISTRY=NEVER -DPython_ROOT=$pythonLocation .
-    - name: Build (Python 3.8)
+        cmake -DWANT_PYTHON_VERSION=3.9
+        -DPython_FIND_REGISTRY=NEVER -DPython_ROOT="$pythonLocation" .
+    - name: Build (Python 3.9)
       if: contains(matrix.python, 'YES')
       # BEGIN A
       working-directory: build
       run: cmake --build . --config ${{ matrix.config }} --parallel 4
       # END A
-    - name: Test (Python 3.8)
+    - name: Test (Python 3.9)
       # BEGIN B
       if: contains(matrix.python, 'YES')
       working-directory: build
@@ -326,6 +333,7 @@ jobs:
         bash <(curl -s https://codecov.io/bash) -y ../.github/codecov.yml
 
   makepanda:
+    if: "!contains(github.event.head_commit.message, '[skip ci]') && !contains(github.event.head_commit.message, '[ci skip]')"
     strategy:
       matrix:
         os: [ubuntu-16.04, windows-2016, macOS-latest]
@@ -342,24 +350,38 @@ jobs:
       shell: powershell
       run: |
         $wc = New-Object System.Net.WebClient
-        $wc.DownloadFile("https://www.panda3d.org/download/panda3d-1.10.5/panda3d-1.10.5-tools-win64.zip", "thirdparty-tools.zip")
+        $wc.DownloadFile("https://www.panda3d.org/download/panda3d-1.10.7/panda3d-1.10.7-tools-win64.zip", "thirdparty-tools.zip")
         Expand-Archive -Path thirdparty-tools.zip
-        Move-Item -Path thirdparty-tools/panda3d-1.10.5/thirdparty -Destination .
+        Move-Item -Path thirdparty-tools/panda3d-1.10.7/thirdparty -Destination .
     - name: Get thirdparty packages (macOS)
       if: runner.os == 'macOS'
       run: |
-        curl -O https://www.panda3d.org/download/panda3d-1.10.5/panda3d-1.10.5-tools-mac.tar.gz
-        tar -xf panda3d-1.10.5-tools-mac.tar.gz
-        mv panda3d-1.10.5/thirdparty thirdparty
-        rmdir panda3d-1.10.5
+        curl -O https://www.panda3d.org/download/panda3d-1.10.7/panda3d-1.10.7-tools-mac.tar.gz
+        tar -xf panda3d-1.10.7-tools-mac.tar.gz
+        mv panda3d-1.10.7/thirdparty thirdparty
+        rmdir panda3d-1.10.7
         (cd thirdparty/darwin-libs-a && rm -rf rocket)
+    - name: Set up Python 3.9
+      uses: actions/setup-python@v1
+      with:
+        python-version: 3.9
+    - name: Build Python 3.9
+      shell: bash
+      run: |
+        python makepanda/makepanda.py --git-commit=${{github.sha}} --outputdir=built --everything --no-eigen --python-incdir="$pythonLocation/include" --python-libdir="$pythonLocation/lib" --verbose --threads=4
+    - name: Test Python 3.9
+      shell: bash
+      run: |
+        python -m pip install pytest
+        PYTHONPATH=built LD_LIBRARY_PATH=built/lib DYLD_LIBRARY_PATH=built/lib python -m pytest
     - name: Set up Python 3.8
       uses: actions/setup-python@v1
       with:
         python-version: 3.8
     - name: Build Python 3.8
+      shell: bash
       run: |
-        python makepanda/makepanda.py --git-commit=${{github.sha}} --outputdir=built --everything --no-eigen --python-incdir=$pythonLocation/include --python-libdir=$pythonLocation/lib --verbose --threads=4
+        python makepanda/makepanda.py --git-commit=${{github.sha}} --outputdir=built --everything --no-eigen --python-incdir="$pythonLocation/include" --python-libdir="$pythonLocation/lib" --verbose --threads=4
     - name: Test Python 3.8
       shell: bash
       run: |
@@ -370,8 +392,9 @@ jobs:
       with:
         python-version: 3.7
     - name: Build Python 3.7
+      shell: bash
       run: |
-        python makepanda/makepanda.py --git-commit=${{github.sha}} --outputdir=built --everything --no-eigen --python-incdir=$pythonLocation/include --python-libdir=$pythonLocation/lib --verbose --threads=4
+        python makepanda/makepanda.py --git-commit=${{github.sha}} --outputdir=built --everything --no-eigen --python-incdir="$pythonLocation/include" --python-libdir="$pythonLocation/lib" --verbose --threads=4
     - name: Test Python 3.7
       shell: bash
       run: |

+ 1 - 0
.gitignore

@@ -3,6 +3,7 @@
 /thirdparty/
 /targetroot/
 /dstroot/
+/sdks/
 
 # Core dumps and traces
 core

+ 0 - 60
.travis.yml

@@ -1,60 +0,0 @@
-language: cpp
-sudo: false
-matrix:
-  include:
-    - compiler: clang
-      env: PYTHONV=python3 FLAGS=--installer
-    - compiler: clang
-      env: PYTHONV=python3 FLAGS=--override=STDFLOAT_DOUBLE=1
-    - compiler: gcc
-      env: PYTHONV=python3 FLAGS=--optimize=4
-      before_install:
-        - export CC=gcc-4.7
-        - export CXX=g++-4.7
-    - compiler: clang
-      env: PYTHONV=python3 FLAGS=--no-python SKIP_TESTS=1
-addons:
-  apt:
-    sources:
-    - ubuntu-toolchain-r-test
-    packages:
-    - gcc-4.7
-    - g++-4.7
-    - bison
-    - flex
-    - libfreetype6-dev
-    - libgl1-mesa-dev
-    - libjpeg-dev
-    - libode-dev
-    - libopenal-dev
-    - libpng-dev
-    - libssl-dev
-    - libvorbis-dev
-    - libx11-dev
-    - libxcursor-dev
-    - libxrandr-dev
-    - nvidia-cg-toolkit
-    - python-dev
-    - python3-dev
-    - python-virtualenv
-    - zlib1g-dev
-    - fakeroot
-install:
-    - virtualenv --python=$PYTHONV venv && source venv/bin/activate
-    - $PYTHONV -m pip install pytest
-script:
-    - $PYTHONV makepanda/makepanda.py --everything --git-commit $TRAVIS_COMMIT $FLAGS --threads 4
-    - test -n "$SKIP_TESTS" || LD_LIBRARY_PATH=built/lib PYTHONPATH=built $PYTHONV -m pytest -v tests
-notifications:
-  irc:
-    channels:
-      - secure: "jfwHT9RHAVOGRGTMY8TpYKJI6rq8nFoIj41Y0soZdJQNWtSSFEK9AyzZeMY+2dHga7cR/X+/0NWZ2ehhedTnd9FvlzOnMWWC3K0I/b3XWbEdVEqIZnggFkKGqs82Gy3omguRC63yWupeJCcSCckIhoWbLzWy6xV8lF5WC80iXi8="
-    on_success: change
-    on_failure: always
-    use_notice: true
-    skip_join: false
-  webhooks:
-    urls:
-      - https://www.panda3d.org/webhooks/travis-ci.php
-    on_success: change
-    on_failure: always

+ 2 - 3
BACKERS.md

@@ -15,7 +15,6 @@ This is a list of all the people who are contributing financially to Panda3D.  I
 * [Mitchell Stokes](https://opencollective.com/mitchell-stokes)
 * [Daniel Stokes](https://opencollective.com/daniel-stokes)
 * [David Rose](https://opencollective.com/david-rose)
-* [Carnetsoft](https://cs-driving-simulator.com/)
 
 ## Benefactors
 
@@ -23,14 +22,14 @@ This is a list of all the people who are contributing financially to Panda3D.  I
 
 * Sam Edwards
 * Max Voss
-* Will Nielsen
 
 ## Enthusiasts
 
-![Benefactors](https://opencollective.com/panda3d/tiers/enthusiast.svg?avatarHeight=48&width=600)
+![Enthusiasts](https://opencollective.com/panda3d/tiers/enthusiast.svg?avatarHeight=48&width=600)
 
 * Eric Thomson
 * Kyle Roach
+* Brian Lach
 
 ## Backers
 

+ 55 - 0
CONTRIBUTING.md

@@ -0,0 +1,55 @@
+# Contributing to Panda3D
+
+Panda3D is an open-source, community-driven project, completely dependent on the
+contribution of volunteers.  As such we highly welcome you to contribute code to
+the project.  This document aims to outline some guidelines for doing so.
+
+If you would like to contribute but aren't sure where to start, please visit the
+[Get Involved](https://www.panda3d.org/get-involved/) page on our website, or
+the excellent [Open Source Guide](https://opensource.guide/how-to-contribute/).
+
+## Before implementing a change
+
+We highly recommend that you file issues before making a change.  Issues are
+used to track bugs and feature requests but also to get feedback from the other
+developers about design decisions or a specific implementation strategy.
+
+It is important for acceptance that the change is implemented in a way that fits
+the general design principles of the Panda3D API, and fits well with the general
+priorities of the team.  Therefore, prior discussion with other developers is
+critical.  Issues can be used to facilitate this, but we also invite you to
+visit the #development channel on Discord (or #panda3d-devel on FreeNode IRC).
+
+We also recommend that you familiarize yourself with the established coding
+style and design patterns of Panda3D, to reduce the amount of changes that have
+to be made during the review process.
+
+## Submitting a change
+
+All changes from non-core contributors are made via pull requests.  This
+requires you to fork the Panda3D repository, create a branch for your change,
+push your changes to this branch, and request that this branch is merged into
+the upstream branch.  Each pull request is reviewed by a maintainer and
+automatically tested for regressions and unit test coverage.  The maintainer
+will suggest any changes, which you can add by committing more code to the same
+branch (you can do a force push if necessary).  Once the change is deemed
+acceptable, the maintainer will merge your change into the appropriate branch of
+the repository.
+
+To make it easier for the maintainer to review your changes, we highly recommend
+that you give a clear and concise description of intent (linking to any issues
+that are resolved by the change), as well as the inclusion of unit tests, which
+contribute to a high level of confidence that this change does not break any
+existing behaviours.  We also recommend breaking up separate changes into
+separate PRs, rather than submitting one big PR with several unrelated changes.
+
+If your change is still a work in progress, please mark the PR as "draft".  This
+will prevent other contributors from receiving an email every time you push a
+new change to your branch.  Draft PRs can also be used to invite early feedback
+on your change, especially if you are uncertain about whether you are going in
+the right direction.
+
+The code in the Panda3D repository is copyrighted to Carnegie Mellon University
+and licensed under the Modified BSD License.  By submitting your changes, you
+accept that your code becomes placed under the same license.  Except in specific
+agreed-upon cases, we do not accept code contributions under alternate licenses.

+ 7 - 7
README.md

@@ -1,4 +1,4 @@
-[![Build Status](https://travis-ci.org/panda3d/panda3d.svg?branch=master)](https://travis-ci.org/panda3d/panda3d)
+[![Build Status](https://github.com/panda3d/panda3d/workflows/Continuous%20Integration/badge.svg?branch=master)](https://github.com/panda3d/panda3d/actions?query=branch%3Amaster+workflow%3A%22Continuous+Integration%22)
 [![OpenCollective](https://opencollective.com/panda3d/backers/badge.svg)](https://opencollective.com/panda3d)
 [![OpenCollective](https://opencollective.com/panda3d/sponsors/badge.svg)](https://opencollective.com/panda3d)
 
@@ -24,7 +24,7 @@ Installing Panda3D
 ==================
 
 The latest Panda3D SDK can be downloaded from
-[this page](https://www.panda3d.org/download/sdk-1-10-6/).
+[this page](https://www.panda3d.org/download/sdk-1-10-7/).
 If you are familiar with installing Python packages, you can use
 the following command:
 
@@ -64,8 +64,8 @@ depending on whether you are on a 32-bit or 64-bit system, or you can
 [click here](https://github.com/rdb/panda3d-thirdparty) for instructions on
 building them from source.
 
-- https://www.panda3d.org/download/panda3d-1.10.6/panda3d-1.10.6-tools-win64.zip
-- https://www.panda3d.org/download/panda3d-1.10.6/panda3d-1.10.6-tools-win32.zip
+- https://www.panda3d.org/download/panda3d-1.10.7/panda3d-1.10.7-tools-win64.zip
+- https://www.panda3d.org/download/panda3d-1.10.7/panda3d-1.10.7-tools-win32.zip
 
 After acquiring these dependencies, you can build Panda3D from the command
 prompt using the following command.  Change the `--msvc-version` option based
@@ -100,7 +100,7 @@ for you to install, depending on your distribution).
 The following command illustrates how to build Panda3D with some common
 options:
 ```bash
-python makepanda/makepanda.py --everything --installer --no-egl --no-gles --no-gles2 --no-opencv
+python3 makepanda/makepanda.py --everything --installer --no-egl --no-gles --no-gles2 --no-opencv
 ```
 
 You will probably see some warnings saying that it's unable to find several
@@ -113,7 +113,7 @@ If you are on Ubuntu, this command should cover the most frequently
 used third-party packages:
 
 ```bash
-sudo apt-get install build-essential pkg-config fakeroot python-dev libpng-dev libjpeg-dev libtiff-dev zlib1g-dev libssl-dev libx11-dev libgl1-mesa-dev libxrandr-dev libxxf86dga-dev libxcursor-dev bison flex libfreetype6-dev libvorbis-dev libeigen3-dev libopenal-dev libode-dev libbullet-dev nvidia-cg-toolkit libgtk2.0-dev libassimp-dev libopenexr-dev
+sudo apt-get install build-essential pkg-config fakeroot python3-dev libpng-dev libjpeg-dev libtiff-dev zlib1g-dev libssl-dev libx11-dev libgl1-mesa-dev libxrandr-dev libxxf86dga-dev libxcursor-dev bison flex libfreetype6-dev libvorbis-dev libeigen3-dev libopenal-dev libode-dev libbullet-dev nvidia-cg-toolkit libgtk2.0-dev libassimp-dev libopenexr-dev
 ```
 
 Once Panda3D has built, you can either install the .deb or .rpm package that
@@ -136,7 +136,7 @@ macOS
 -----
 
 On macOS, you will need to download a set of precompiled thirdparty packages in order to
-compile Panda3D, which can be acquired from [here](https://www.panda3d.org/download/panda3d-1.10.6/panda3d-1.10.6-tools-mac.tar.gz).
+compile Panda3D, which can be acquired from [here](https://www.panda3d.org/download/panda3d-1.10.7/panda3d-1.10.7-tools-mac.tar.gz).
 
 After placing the thirdparty directory inside the panda3d source directory,
 you may build Panda3D using a command like the following:

+ 3 - 3
cmake/macros/PackageConfig.cmake

@@ -145,6 +145,8 @@ function(package_option name)
     endif()
   endif()
 
+  option("HAVE_${name}" "${cache_string}" "${default}")
+
   # If it was set by the user but not found, display an error.
   string(TOUPPER "${found_as}" FOUND_AS)
   if(HAVE_${name} AND NOT ${found_as}_FOUND AND NOT ${FOUND_AS}_FOUND)
@@ -180,9 +182,7 @@ function(package_option name)
       "$<TARGET_PROPERTY:PKG::${name},INTERFACE_INCLUDE_DIRECTORIES>")
   endif()
 
-  # Create the option, and if it actually is enabled, populate the INTERFACE
-  # library created above
-  option("HAVE_${name}" "${cache_string}" "${default}")
+  # If the option actually is enabled, populate the INTERFACE library created above
   if(HAVE_${name})
     set(use_variables ON)
 

+ 7 - 0
contrib/src/contribbase/contribsymbols.h

@@ -29,4 +29,11 @@
   #define EXPTP_PANDAAI IMPORT_TEMPL
 #endif
 
+#ifdef BUILDING_PANDASPEEDTREE
+  #define EXPCL_PANDASPEEDTREE EXPORT_CLASS
+  #define EXPTP_PANDASPEEDTREE EXPORT_TEMPL
+#else
+  #define EXPCL_PANDASPEEDTREE IMPORT_CLASS
+  #define EXPTP_PANDASPEEDTREE IMPORT_TEMPL
+#endif
 #endif

+ 21 - 21
contrib/src/rplight/rpLight.I

@@ -148,7 +148,7 @@ inline void RPLight::assign_slot(int slot) {
  *   changed. This will cause all shadow sources to be updated, emitting a
  *   shadow update. Be careful when calling this method if you don't want all
  *   sources to get updated. If you only have to invalidate a single shadow source,
- *   use get_shadow_source(n)->set_needs_update(true).
+ *   use `get_shadow_source(n)->set_needs_update(true)`.
  */
 inline void RPLight::invalidate_shadows() {
   for (size_t i = 0; i < _shadow_sources.size(); ++i) {
@@ -296,14 +296,14 @@ inline bool RPLight::get_casts_shadows() const {
 }
 
 /**
- * @brief Sets the lights shadow map resolution
- * @details This sets the lights shadow map resolution. This has no effect
+ * @brief Sets the light's shadow map resolution
+ * @details This sets the light's shadow map resolution. This has no effect
  *   when the light is not told to cast shadows (Use RPLight::set_casts_shadows).
  *
- *   When calling this on a light with multiple shadow sources (e.g. PointLight),
- *   this controls the resolution of each source. If the light has 6 shadow sources,
- *   and you use a resolution of 512x512, the lights shadow map will occur a
- *   space of 6 * 512x512 maps in the shadow atlas.
+ *   When calling this on a light with multiple shadow sources (e.g.
+ *   RPPointLight), this controls the resolution of each source. If the light
+ *   has 6 shadow sources, and you use a resolution of 512x512, the light's
+ *   shadow map will occupy a space of 6 * 512x512 maps in the shadow atlas.
  *
  * @param resolution Resolution of the shadow map in pixels
  */
@@ -326,14 +326,14 @@ inline size_t RPLight::get_shadow_map_resolution() const {
 }
 
 /**
- * @brief Sets the ies profile
+ * @brief Sets the IES profile
  * @details This sets the ies profile of the light. The parameter should be a
  *   handle previously returned by RenderPipeline.load_ies_profile. Using a
  *   value of -1 indicates no ies profile.
  *
- *   Notice that for ies profiles which cover a whole range, you should use
- *   PointLights, whereas for ies profiles which only cover the lower hemisphere
- *   you should use SpotLights for the best performance.
+ *   Notice that for IES profiles which cover a whole range, you should use an
+ *   RPPointLight, whereas for ies profiles which only cover the lower
+ *   hemisphere you should use an RPSpotLight for the best performance.
  *
  * @param profile IES Profile handle
  */
@@ -343,8 +343,8 @@ inline void RPLight::set_ies_profile(int profile) {
 }
 
 /**
- * @brief Returns the lights ies profile
- * @details This returns the ies profile of a light, previously set with
+ * @brief Returns the light's IES profile
+ * @details This returns the IES profile of a light, previously set with
  *   RPLight::set_ies_profile. In case no ies profile was set, returns -1.
  *
  * @return IES Profile handle
@@ -354,20 +354,20 @@ inline int RPLight::get_ies_profile() const {
 }
 
 /**
- * @brief Returns whether the light has an ies profile assigned
- * @details This returns whether the light has an ies profile assigned,
+ * @brief Returns whether the light has an IES profile assigned
+ * @details This returns whether the light has an IES profile assigned,
  *   previously done with RPLight::set_ies_profile.
  *
- * @return true if the light has an ies profile assigned, false otherwise
+ * @return true if the light has an IES profile assigned, false otherwise
  */
 inline bool RPLight::has_ies_profile() const {
   return _ies_profile >= 0;
 }
 
 /**
- * @brief Clears the ies profile
- * @details This clears the ies profile of the light, telling it to no longer
- *   use an ies profile, and instead use the default attenuation.
+ * @brief Clears the IES profile
+ * @details This clears the IES profile of the light, telling it to no longer
+ *   use an IES profile, and instead use the default attenuation.
  */
 inline void RPLight::clear_ies_profile() {
   set_ies_profile(-1);
@@ -377,7 +377,7 @@ inline void RPLight::clear_ies_profile() {
  * @brief Sets the near plane of the light
  * @details This sets the near plane of all shadow sources of the light. It has
  *   no effects if the light does not cast shadows. This prevents artifacts from
- *   objects near to the light. It behaves like Lens::set_near_plane.
+ *   objects near to the light. It behaves like Lens::set_near().
  *
  *   It can also help increasing shadow map precision, low near planes will
  *   cause the precision to suffer. Try setting the near plane as big as possible.
@@ -394,7 +394,7 @@ inline void RPLight::set_near_plane(float near_plane) {
 
 /**
  * @brief Returns the near plane of the light
- * @details This returns the lights near plane, previously set with
+ * @details This returns the light's near plane, previously set with
  *   RPLight::set_near_plane. If the light does not cast shadows, this value
  *   is meaningless.
  *

+ 0 - 0
panda/src/speedtree/config_speedtree.cxx → contrib/src/speedtree/config_speedtree.cxx


+ 1 - 1
panda/src/speedtree/config_speedtree.h → contrib/src/speedtree/config_speedtree.h

@@ -14,7 +14,7 @@
 #ifndef CONFIG_SPEEDTREE_H
 #define CONFIG_SPEEDTREE_H
 
-#include "pandabase.h"
+#include "contribbase.h"
 #include "notifyCategoryProxy.h"
 #include "configVariableBool.h"
 #include "configVariableDouble.h"

+ 0 - 0
panda/src/speedtree/loaderFileTypeSrt.cxx → contrib/src/speedtree/loaderFileTypeSrt.cxx


+ 1 - 1
panda/src/speedtree/loaderFileTypeSrt.h → contrib/src/speedtree/loaderFileTypeSrt.h

@@ -14,7 +14,7 @@
 #ifndef LOADERFILETYPESRT_H
 #define LOADERFILETYPESRT_H
 
-#include "pandabase.h"
+#include "contribbase.h"
 
 #include "loaderFileType.h"
 

+ 0 - 0
panda/src/speedtree/loaderFileTypeStf.cxx → contrib/src/speedtree/loaderFileTypeStf.cxx


+ 1 - 1
panda/src/speedtree/loaderFileTypeStf.h → contrib/src/speedtree/loaderFileTypeStf.h

@@ -14,7 +14,7 @@
 #ifndef LOADERFILETYPESTF_H
 #define LOADERFILETYPESTF_H
 
-#include "pandabase.h"
+#include "contribbase.h"
 
 #include "loaderFileType.h"
 

+ 0 - 0
panda/src/speedtree/pandaspeedtree_composite1.cxx → contrib/src/speedtree/pandaspeedtree_composite1.cxx


+ 0 - 0
panda/src/speedtree/speedTreeNode.I → contrib/src/speedtree/speedTreeNode.I


+ 1 - 1
panda/src/speedtree/speedTreeNode.cxx → contrib/src/speedtree/speedTreeNode.cxx

@@ -11,7 +11,7 @@
  * @date 2009-03-13
  */
 
-#include "pandabase.h"
+#include "contribbase.h"
 #include "speedTreeNode.h"
 #include "stBasicTerrain.h"
 #include "virtualFileSystem.h"

+ 1 - 1
panda/src/speedtree/speedTreeNode.h → contrib/src/speedtree/speedTreeNode.h

@@ -14,7 +14,7 @@
 #ifndef SPEEDTREENODE_H
 #define SPEEDTREENODE_H
 
-#include "pandabase.h"
+#include "contribbase.h"
 #include "pandaNode.h"
 #include "pointerTo.h"
 #include "stTree.h"

+ 0 - 0
panda/src/speedtree/speedtree_api.cxx → contrib/src/speedtree/speedtree_api.cxx


+ 0 - 0
panda/src/speedtree/speedtree_api.h → contrib/src/speedtree/speedtree_api.h


+ 0 - 0
panda/src/speedtree/stBasicTerrain.I → contrib/src/speedtree/stBasicTerrain.I


+ 0 - 0
panda/src/speedtree/stBasicTerrain.cxx → contrib/src/speedtree/stBasicTerrain.cxx


+ 1 - 1
panda/src/speedtree/stBasicTerrain.h → contrib/src/speedtree/stBasicTerrain.h

@@ -14,7 +14,7 @@
 #ifndef STBASICTERRAIN_H
 #define STBASICTERRAIN_H
 
-#include "pandabase.h"
+#include "contribbase.h"
 #include "stTerrain.h"
 #include "luse.h"
 #include "pvector.h"

+ 0 - 0
panda/src/speedtree/stTerrain.I → contrib/src/speedtree/stTerrain.I


+ 0 - 0
panda/src/speedtree/stTerrain.cxx → contrib/src/speedtree/stTerrain.cxx


+ 1 - 1
panda/src/speedtree/stTerrain.h → contrib/src/speedtree/stTerrain.h

@@ -14,7 +14,7 @@
 #ifndef STTERRAIN_H
 #define STTERRAIN_H
 
-#include "pandabase.h"
+#include "contribbase.h"
 #include "typedReferenceCount.h"
 #include "namable.h"
 #include "geomVertexData.h"

+ 0 - 0
panda/src/speedtree/stTransform.I → contrib/src/speedtree/stTransform.I


+ 0 - 0
panda/src/speedtree/stTransform.cxx → contrib/src/speedtree/stTransform.cxx


+ 1 - 1
panda/src/speedtree/stTransform.h → contrib/src/speedtree/stTransform.h

@@ -14,7 +14,7 @@
 #ifndef STTRANSFORM_H
 #define STTRANSFORM_H
 
-#include "pandabase.h"
+#include "contribbase.h"
 #include "transformState.h"
 #include "speedtree_api.h"
 #include "deg_2_rad.h"

+ 0 - 0
panda/src/speedtree/stTree.I → contrib/src/speedtree/stTree.I


+ 0 - 0
panda/src/speedtree/stTree.cxx → contrib/src/speedtree/stTree.cxx


+ 1 - 1
panda/src/speedtree/stTree.h → contrib/src/speedtree/stTree.h

@@ -14,7 +14,7 @@
 #ifndef STTREE_H
 #define STTREE_H
 
-#include "pandabase.h"
+#include "contribbase.h"
 #include "typedReferenceCount.h"
 #include "namable.h"
 #include "speedtree_api.h"

+ 15 - 1
direct/CMakeLists.txt

@@ -53,7 +53,8 @@ if(HAVE_PYTHON)
   file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/pandac/PandaModules.py"
     "\"This module is deprecated.  Import from panda3d.core and other panda3d.* modules instead.\"
 
-print(\"Warning: pandac.PandaModules is deprecated, import from panda3d.core instead\")\n")
+if __debug__:
+    print(\"Warning: pandac.PandaModules is deprecated, import from panda3d.core instead\")\n")
 
   foreach(module ${ALL_INTERROGATE_MODULES})
     string(REGEX REPLACE "^.*\\." "" module_name "${module}")
@@ -66,6 +67,19 @@ except ImportError as err:
 ")
   endforeach()
 
+  file(APPEND "${CMAKE_CURRENT_BINARY_DIR}/pandac/PandaModules.py"
+    "from direct.showbase import DConfig
+
+def get_config_showbase():
+    return DConfig
+
+def get_config_express():
+    return DConfig
+
+getConfigShowbase = get_config_showbase
+getConfigExpress = get_config_express
+")
+
   # Now install ourselves:
   install_python_package(pandac SOURCE "${CMAKE_CURRENT_BINARY_DIR}/pandac" LIB COMPONENT Direct)
 endif()

+ 5 - 1
direct/src/actor/Actor.py

@@ -1,4 +1,8 @@
-"""Actor module: contains the Actor class"""
+"""Actor module: contains the Actor class.
+
+See the :ref:`models-and-actors` page in the Programming Guide to learn
+more about loading models and animated actors.
+"""
 
 __all__ = ['Actor']
 

+ 3 - 0
direct/src/actor/__init__.py

@@ -4,4 +4,7 @@ distributed variant thereof.  Actor is a high-level interface around
 the lower-level :class:`panda3d.core.Character` implementation.
 It loads and controls an animated character and manages the animations
 playing on it.
+
+See the :ref:`models-and-actors` page in the Programming Guide to learn
+more about loading models and animated actors.
 """

+ 1 - 1
direct/src/dcparser/dcPacker.cxx

@@ -769,7 +769,7 @@ enquote_string(ostream &out, char quote_mark, const string &str) {
     if ((*pi) == quote_mark || (*pi) == '\\') {
       out << '\\' << (*pi);
 
-    } else if (!isprint(*pi)) {
+    } else if (!isprint(*pi) || (*pi) == '\t') {
       char buffer[10];
       sprintf(buffer, "%02x", (unsigned char)(*pi));
       out << "\\x" << buffer;

+ 1 - 1
direct/src/directbase/DirectStart.py

@@ -4,7 +4,7 @@ opening a graphical window and setting up the scene graph.
 This example demonstrates its use:
 
    import direct.directbase.DirectStart
-   run()
+   base.run()
 
 While it may be considered useful for quick prototyping in the interactive
 Python shell, using it in applications is not considered good style.

+ 1 - 0
direct/src/directscripts/Doxyfile.cxx

@@ -789,6 +789,7 @@ RECURSIVE              = YES
 EXCLUDE                = dtool/src/parser-inc \
                          dtool/src/cppparser \
                          dtool/src/interrogate \
+                         direct/src/directscripts \
                          direct/src/plugin \
                          direct/src/plugin_standalone \
                          direct/src/plugin_npapi \

+ 1 - 1
direct/src/directtools/DirectManipulation.py

@@ -1066,7 +1066,7 @@ class ObjectHandles(NodePath, DirectObject):
         # Load up object handles model and assign it to self
         self.assign(loader.loadModel('models/misc/objectHandles'))
         self.setName(name)
-        self.scalingNode = NodePath(self)
+        self.scalingNode = self.getChild(0)
         self.scalingNode.setName('ohScalingNode')
         self.ohScalingFactor = 1.0
         self.directScalingFactor = 1.0

+ 9 - 9
direct/src/directtools/DirectSession.py

@@ -68,24 +68,24 @@ class DirectSession(DirectObject):
         self.activeParent = None
 
         self.selectedNPReadout = OnscreenText.OnscreenText(
-            pos = (-1.0, -0.9), bg=Vec4(1, 1, 1, 1),
-            scale = 0.05, align = TextNode.ALeft,
+            pos = (0.1, 0.1), bg=Vec4(0, 0, 0, .2), style=3,
+            fg = (1, 1, 1, 1), scale = 0.05, align = TextNode.ALeft,
             mayChange = 1, font = self.font)
         # Make sure readout is never lit or drawn in wireframe
         useDirectRenderStyle(self.selectedNPReadout)
         self.selectedNPReadout.reparentTo(hidden)
 
         self.activeParentReadout = OnscreenText.OnscreenText(
-            pos = (-1.0, -0.975), bg=Vec4(1, 1, 1, 1),
-            scale = 0.05, align = TextNode.ALeft,
+            pos = (0.1, 0.16), bg=Vec4(0, 0, 0, .2), style = 3,
+            fg = (1, 1, 1, 1), scale = 0.05, align = TextNode.ALeft,
             mayChange = 1, font = self.font)
         # Make sure readout is never lit or drawn in wireframe
         useDirectRenderStyle(self.activeParentReadout)
         self.activeParentReadout.reparentTo(hidden)
 
         self.directMessageReadout = OnscreenText.OnscreenText(
-            pos = (-1.0, 0.9), bg=Vec4(1, 1, 1, 1),
-            scale = 0.05, align = TextNode.ALeft,
+            pos = (0.1, -0.1), bg=Vec4(0, 0, 0, .2), style = 3,
+            fg = (1, 1, 1, 1), scale = 0.05, align = TextNode.ALeft,
             mayChange = 1, font = self.font)
         # Make sure readout is never lit or drawn in wireframe
         useDirectRenderStyle(self.directMessageReadout)
@@ -698,7 +698,7 @@ class DirectSession(DirectObject):
                 self.ancestry = dnp.getAncestors()
                 self.ancestryIndex = 0
             # Update the selectedNPReadout
-            self.selectedNPReadout.reparentTo(aspect2d)
+            self.selectedNPReadout.reparentTo(base.a2dBottomLeft)
             self.selectedNPReadout.setText(
                 'Selected:' + dnp.getName())
             # Show the manipulation widget
@@ -782,7 +782,7 @@ class DirectSession(DirectObject):
         # Record new parent
         self.activeParent = nodePath
         # Update the activeParentReadout
-        self.activeParentReadout.reparentTo(aspect2d)
+        self.activeParentReadout.reparentTo(base.a2dBottomLeft)
         self.activeParentReadout.setText(
             'Active Reparent Target:' + nodePath.getName())
         # Alert everyone else
@@ -1031,7 +1031,7 @@ class DirectSession(DirectObject):
     def message(self, text):
         taskMgr.remove('hideDirectMessage')
         taskMgr.remove('hideDirectMessageLater')
-        self.directMessageReadout.reparentTo(aspect2d)
+        self.directMessageReadout.reparentTo(base.a2dTopLeft)
         self.directMessageReadout.setText(text)
         self.hideDirectMessageLater()
 

+ 0 - 10
direct/src/directutil/DirectMySQLdb.py

@@ -1,10 +0,0 @@
-from MySQLdb import *
-
-### DCR: from MySQLdb __init__.py
-def Connect(*args, **kwargs):
-    """Factory function for connections.Connection."""
-    ### DCR: use DirectMySQLdbConnection to prevent memory leaks
-    from direct.directutil.DirectMySQLdbConnection import DirectMySQLdbConnection
-    return DirectMySQLdbConnection(*args, **kwargs)
-
-connect = Connection = Connect

+ 0 - 117
direct/src/directutil/DirectMySQLdbConnection.py

@@ -1,117 +0,0 @@
-import MySQLdb
-from MySQLdb.connections import *
-
-class DirectMySQLdbConnection(Connection):
-    ### DCR: from MySQLdb connections.py Connection.__init__
-    def __init__(self, *args, **kwargs):
-        ### DCR: fixed up relative imports
-        from MySQLdb.constants import CLIENT, FIELD_TYPE
-        from MySQLdb.converters import conversions
-        from weakref import proxy, WeakValueDictionary
-
-        import types
-
-        kwargs2 = kwargs.copy()
-
-        conv = kwargs.get('conv', conversions)
-
-        kwargs2['conv'] = dict([ (k, v) for k, v in conv.items()
-                                 if type(k) is int ])
-
-        self.cursorclass = kwargs2.pop('cursorclass', self.default_cursor)
-        charset = kwargs2.pop('charset', '')
-
-        if charset:
-            use_unicode = True
-        else:
-            use_unicode = False
-
-        use_unicode = kwargs2.pop('use_unicode', use_unicode)
-        sql_mode = kwargs2.pop('sql_mode', '')
-
-        client_flag = kwargs.get('client_flag', 0)
-        ### DCR: fixed up module reference
-        client_version = tuple([ int(n) for n in MySQLdb.connections._mysql.get_client_info().split('.')[:2] ])
-        if client_version >= (4, 1):
-            client_flag |= CLIENT.MULTI_STATEMENTS
-        if client_version >= (5, 0):
-            client_flag |= CLIENT.MULTI_RESULTS
-
-        kwargs2['client_flag'] = client_flag
-
-        ### DCR: skip over the Connection __init__
-        #super(Connection, self).__init__(*args, **kwargs2)
-        MySQLdb._mysql.connection.__init__(self, *args, **kwargs2)
-
-        self.encoders = dict([ (k, v) for k, v in conv.items()
-                               if type(k) is not int ])
-
-        self._server_version = tuple([ int(n) for n in self.get_server_info().split('.')[:2] ])
-
-        db = proxy(self)
-        ### DCR: these functions create memory leaks with gc.DEBUG_SAVEALL turned on
-        """
-        def _get_string_literal():
-            def string_literal(obj, dummy=None):
-                return db.string_literal(obj)
-            return string_literal
-
-        def _get_unicode_literal():
-            def unicode_literal(u, dummy=None):
-                return db.literal(u.encode(unicode_literal.charset))
-            return unicode_literal
-
-        def _get_string_decoder():
-            def string_decoder(s):
-                return s.decode(string_decoder.charset)
-            return string_decoder
-        """
-
-        ### DCR: use methods rather than inline-defined functions to prevent memory leaks
-        string_literal = self._get_string_literal(db)
-        self.unicode_literal = unicode_literal = self._get_unicode_literal(db)
-        self.string_decoder = string_decoder = self._get_string_decoder()
-        if not charset:
-            charset = self.character_set_name()
-        self.set_character_set(charset)
-
-        if sql_mode:
-            self.set_sql_mode(sql_mode)
-
-        if use_unicode:
-            self.converter[FIELD_TYPE.STRING].insert(-1, (None, string_decoder))
-            self.converter[FIELD_TYPE.VAR_STRING].insert(-1, (None, string_decoder))
-            self.converter[FIELD_TYPE.BLOB].insert(-1, (None, string_decoder))
-
-        self.encoders[types.StringType] = string_literal
-        self.encoders[types.UnicodeType] = unicode_literal
-        self._transactional = self.server_capabilities & CLIENT.TRANSACTIONS
-        if self._transactional:
-            # PEP-249 requires autocommit to be initially off
-            self.autocommit(False)
-        self.messages = []
-
-    ### DCR: make inline-defined functions into member methods to avoid garbage
-    def _string_literal(self, db, obj, dummy=None):
-        return db.string_literal(obj)
-    def _get_string_literal(self, db):
-        return Functor(self._string_literal, db)
-
-    def _unicode_literal(self, db, u, dummy=None):
-        return db.literal(u.encode(unicode_literal.charset))
-    def _get_unicode_literal(self, db):
-        return Functor(self._unicode_literal, db)
-
-    def _string_decoder(self, s):
-        return s.decode(string_decoder.charset)
-    def _get_string_decoder(self):
-        # make it into a Functor since MySQLdb.connections.Connection wants to set
-        # attributes on its string_decoder
-        return Functor(self._string_decoder)
-
-    def close(self):
-        Connection.close(self)
-        # break garbage cycles
-        self.unicode_literal = None
-        self.string_decoder = None
-        self.encoders = None

+ 12 - 4
direct/src/dist/FreezeTool.py

@@ -61,7 +61,7 @@ except ImportError:
     def pytest_imports():
         return []
 
-hiddenImports = {
+defaultHiddenImports = {
     'pytest': pytest_imports(),
     'pkg_resources': [
         'pkg_resources.*.*',
@@ -751,7 +751,7 @@ class Freezer:
             return 'ModuleDef(%s)' % (', '.join(args))
 
     def __init__(self, previous = None, debugLevel = 0,
-                 platform = None, path=None):
+                 platform = None, path=None, hiddenImports=None):
         # Normally, we are freezing for our own platform.  Change this
         # if untrue.
         self.platform = platform or PandaSystem.getPlatform()
@@ -825,6 +825,11 @@ class Freezer:
                 if path:
                     modulefinder.AddPackagePath(moduleName, path[0])
 
+        # Module with non-obvious dependencies
+        self.hiddenImports = defaultHiddenImports.copy()
+        if hiddenImports is not None:
+            self.hiddenImports.update(hiddenImports)
+
         # Suffix/extension for Python C extension modules
         if self.platform == PandaSystem.getPlatform():
             self.moduleSuffixes = imp.get_suffixes()
@@ -1166,7 +1171,7 @@ class Freezer:
 
         # Check if any new modules we found have "hidden" imports
         for origName in list(self.mf.modules.keys()):
-            hidden = hiddenImports.get(origName, [])
+            hidden = self.hiddenImports.get(origName, [])
             for modname in hidden:
                 if modname.endswith('.*'):
                     mdefs = self._gatherSubmodules(modname, implicit = True)
@@ -1333,7 +1338,8 @@ class Freezer:
         for moduleName, module in list(self.mf.modules.items()):
             if module.__code__:
                 origPathname = module.__code__.co_filename
-                replace_paths.append((origPathname, moduleName))
+                if origPathname:
+                    replace_paths.append((origPathname, moduleName))
         self.mf.replace_paths = replace_paths
 
         # Now that we have built up the replacement mapping, go back
@@ -1721,6 +1727,8 @@ class Freezer:
 
     def generateRuntimeFromStub(self, target, stub_file, use_console, fields={},
                                 log_append=False):
+        self.__replacePaths()
+
         # We must have a __main__ module to make an exe file.
         if not self.__writingModule('__main__'):
             message = "Can't generate an executable without a __main__ module."

+ 38 - 11
direct/src/dist/commands.py

@@ -241,6 +241,7 @@ class build_apps(setuptools.Command):
             'dciman32.dll', 'comdlg32.dll', 'comctl32.dll', 'ole32.dll',
             'oleaut32.dll', 'gdiplus.dll', 'winmm.dll', 'iphlpapi.dll',
             'msvcrt.dll', 'kernelbase.dll', 'msimg32.dll', 'msacm32.dll',
+            'setupapi.dll', 'version.dll',
 
             # manylinux1/linux
             'libdl.so.*', 'libstdc++.so.*', 'libm.so.*', 'libgcc_s.so.*',
@@ -258,7 +259,14 @@ class build_apps(setuptools.Command):
             '/usr/lib/libedit.*.dylib',
             '/System/Library/**',
         ]
+
+        if sys.version_info >= (3, 5):
+            # Python 3.5+ requires at least Windows Vista to run anyway, so we
+            # shouldn't warn about DLLs that are shipped with Vista.
+            self.exclude_dependencies += ['bcrypt.dll']
+
         self.package_data_dirs = {}
+        self.hidden_imports = {}
 
         # We keep track of the zip files we've opened.
         self._zip_files = {}
@@ -292,6 +300,10 @@ class build_apps(setuptools.Command):
         self.platforms = _parse_list(self.platforms)
         self.plugins = _parse_list(self.plugins)
         self.extra_prc_files = _parse_list(self.extra_prc_files)
+        self.hidden_imports = {
+            key: _parse_list(value)
+            for key, value in _parse_dict(self.hidden_imports).items()
+        }
 
         if self.default_prc_dir is None:
             self.default_prc_dir = '<auto>etc' if not self.embed_prc_data else ''
@@ -397,12 +409,13 @@ class build_apps(setuptools.Command):
                     os.remove(os.path.join(whldir, whl))
 
         pip_args = [
+            '--disable-pip-version-check',
             'download',
             '-d', whldir,
             '-r', self.requirements_path,
             '--only-binary', ':all:',
             '--platform', platform,
-            '--abi', abi_tag
+            '--abi', abi_tag,
         ]
 
         if self.use_optimized_wheels:
@@ -689,16 +702,24 @@ class build_apps(setuptools.Command):
                     rootdir = wf.split(os.path.sep, 1)[0]
                     search_path.append(os.path.join(whl, rootdir, '.libs'))
 
+                    # Also look for eg. numpy.libs or Pillow.libs in the root
+                    whl_name = os.path.basename(whl).split('-', 1)[0]
+                    search_path.append(os.path.join(whl, whl_name + '.libs'))
+
                     # Also look for more specific per-package cases, defined in
                     # PACKAGE_LIB_DIRS at the top of this file.
-                    whl_name = os.path.basename(whl).split('-', 1)[0]
                     extra_dirs = PACKAGE_LIB_DIRS.get(whl_name, [])
                     for extra_dir in extra_dirs:
                         search_path.append(os.path.join(whl, extra_dir.replace('/', os.path.sep)))
+
             return search_path
 
         def create_runtime(appname, mainscript, use_console):
-            freezer = FreezeTool.Freezer(platform=platform, path=path)
+            freezer = FreezeTool.Freezer(
+                platform=platform,
+                path=path,
+                hiddenImports=self.hidden_imports
+            )
             freezer.addModule('__main__', filename=mainscript)
             freezer.addModule('site', filename='site.py', text=SITE_PY)
             for incmod in self.include_modules.get(appname, []) + self.include_modules.get('*', []):
@@ -1085,7 +1106,10 @@ class build_apps(setuptools.Command):
         source_dir = os.path.dirname(source_path)
         target_dir = os.path.dirname(target_path)
         base = os.path.basename(target_path)
-        self.copy_dependencies(target_path, target_dir, search_path + [source_dir], base)
+
+        if source_dir not in search_path:
+            search_path = search_path + [source_dir]
+        self.copy_dependencies(target_path, target_dir, search_path, base)
 
     def copy_dependencies(self, target_path, target_dir, search_path, referenced_by):
         """ Copies the dependencies of target_path into target_dir. """
@@ -1100,8 +1124,7 @@ class build_apps(setuptools.Command):
             pe = pefile.PEFile()
             pe.read(fp)
             for lib in pe.imports:
-                if not lib.lower().startswith('api-ms-win-'):
-                    deps.append(lib)
+                deps.append(lib)
 
         elif magic == b'\x7FELF':
             # Elf magic.  Used on (among others) Linux and FreeBSD.
@@ -1372,7 +1395,6 @@ class bdist_apps(setuptools.Command):
             for i in apps
         ]
 
-        fullname = self.distribution.get_fullname()
         shortname = self.distribution.get_name()
 
         # Create the .nsi installer script
@@ -1382,7 +1404,7 @@ class bdist_apps(setuptools.Command):
 
         # Some global info
         nsi.write('Name "%s"\n' % shortname)
-        nsi.write('OutFile "%s"\n' % (fullname+'.exe'))
+        nsi.write('OutFile "%s"\n' % os.path.join(self.dist_dir, basename+'.exe'))
         if is_64bit:
             nsi.write('InstallDir "$PROGRAMFILES64\\%s"\n' % shortname)
         else:
@@ -1420,17 +1442,22 @@ class bdist_apps(setuptools.Command):
         nsi.write('Section "" SecCore\n')
         nsi.write('  SetOutPath "$INSTDIR"\n')
         curdir = ""
+        nsi_dir = p3d.Filename.fromOsSpecific(build_cmd.build_base)
+        build_root_dir = p3d.Filename.fromOsSpecific(build_dir)
         for root, dirs, files in os.walk(build_dir):
             for name in files:
                 basefile = p3d.Filename.fromOsSpecific(os.path.join(root, name))
                 file = p3d.Filename(basefile)
                 file.makeAbsolute()
-                file.makeRelativeTo(build_dir)
-                outdir = file.getDirname().replace('/', '\\')
+                file.makeRelativeTo(nsi_dir)
+                outdir = p3d.Filename(basefile)
+                outdir.makeAbsolute()
+                outdir.makeRelativeTo(build_root_dir)
+                outdir = outdir.getDirname().replace('/', '\\')
                 if curdir != outdir:
                     nsi.write('  SetOutPath "$INSTDIR\\%s"\n' % outdir)
                     curdir = outdir
-                nsi.write('  File "%s"\n' % (basefile.toOsSpecific()))
+                nsi.write('  File "%s"\n' % (file.toOsSpecific()))
         nsi.write('  SetOutPath "$INSTDIR"\n')
         nsi.write('  WriteUninstaller "$INSTDIR\\Uninstall.exe"\n')
         nsi.write('  ; Start menu items\n')

+ 5 - 1
direct/src/dist/pefile.py

@@ -242,7 +242,11 @@ class VersionInfoResource(object):
         length, value_length = unpack('<HH', data[0:4])
         offset = 40 + value_length + (value_length & 1)
         dwords = array('I')
-        dwords.fromstring(bytes(data[40:offset]))
+        if sys.version_info >= (3, 2):
+            dwords.frombytes(bytes(data[40:offset]))
+        else:
+            dwords.fromstring(bytes(data[40:offset]))
+
         if len(dwords) > 0:
             self.signature = dwords[0]
         if len(dwords) > 1:

+ 1 - 0
direct/src/distributed/ConnectionRepository.py

@@ -260,6 +260,7 @@ class ConnectionRepository(
             searchPath = getModelPath().getValue()
             for dcFileName in dcFileNames:
                 pathname = Filename(dcFileName)
+                vfs = VirtualFileSystem.getGlobalPtr()
                 vfs.resolveFilename(pathname, searchPath)
                 readResult = dcFile.read(pathname)
                 if not readResult:

+ 1 - 0
direct/src/distributed/ServerRepository.py

@@ -225,6 +225,7 @@ class ServerRepository:
             searchPath = getModelPath().getValue()
             for dcFileName in dcFileNames:
                 pathname = Filename(dcFileName)
+                vfs = VirtualFileSystem.getGlobalPtr()
                 vfs.resolveFilename(pathname, searchPath)
                 readResult = dcFile.read(pathname)
                 if not readResult:

+ 3 - 0
direct/src/distributed/__init__.py

@@ -2,4 +2,7 @@
 This package contains an implementation of the Distributed Networking
 API, a high-level networking system that automatically propagates
 changes made on distributed objects to interested clients.
+
+See the :ref:`distributed-networking` section of the Programming Guide to
+learn more about the distributed networking system.
 """

+ 2 - 5
direct/src/extensions_native/CInterval_extensions.py

@@ -63,12 +63,9 @@ def popupControls(self, tl = None):
         import math
         # Don't use a regular import, to prevent ModuleFinder from picking
         # it up as a dependency when building a .p3d package.
-        import importlib, sys
+        import importlib
         EntryScale = importlib.import_module('direct.tkwidgets.EntryScale')
-        if sys.version_info >= (3, 0):
-            tkinter = importlib.import_module('tkinter')
-        else:
-            tkinter = importlib.import_module('Tkinter')
+        tkinter = importlib.import_module('tkinter')
 
         if tl == None:
             tl = tkinter.Toplevel()

+ 119 - 3
direct/src/filter/CommonFilters.py

@@ -1,7 +1,8 @@
 """
 
 Class CommonFilters implements certain common image
-postprocessing filters.
+postprocessing filters.  See the :ref:`common-image-filters` page for
+more information about how to use these filters.
 
 It is not ideal that these filters are all included in a single
 monolithic module.  Unfortunately, when you want to apply two filters
@@ -27,6 +28,7 @@ from panda3d.core import LVecBase4, LPoint2
 from panda3d.core import Filename
 from panda3d.core import AuxBitplaneAttrib
 from panda3d.core import Texture, Shader, ATSNone
+from panda3d.core import FrameBufferProperties
 import os
 
 CARTOON_BODY="""
@@ -177,7 +179,15 @@ class CommonFilters:
                 self.textures[tex].setWrapU(Texture.WMClamp)
                 self.textures[tex].setWrapV(Texture.WMClamp)
 
-            self.finalQuad = self.manager.renderSceneInto(textures = self.textures, auxbits=auxbits)
+            fbprops = None
+            clamping = None
+            if "HighDynamicRange" in configuration:
+                fbprops = FrameBufferProperties()
+                fbprops.setFloatColor(True)
+                fbprops.setSrgbColor(False)
+                clamping = False
+
+            self.finalQuad = self.manager.renderSceneInto(textures = self.textures, auxbits=auxbits, fbprops=fbprops, clamping=clamping)
             if (self.finalQuad == None):
                 self.cleanup()
                 return False
@@ -255,6 +265,17 @@ class CommonFilters:
             texcoordSets = list(enumerate(texcoordPadding.keys()))
 
             text = "//Cg\n"
+            if "HighDynamicRange" in configuration:
+                text += "static const float3x3 aces_input_mat = {\n"
+                text += "  {0.59719, 0.35458, 0.04823},\n"
+                text += "  {0.07600, 0.90834, 0.01566},\n"
+                text += "  {0.02840, 0.13383, 0.83777},\n"
+                text += "};\n"
+                text += "static const float3x3 aces_output_mat = {\n"
+                text += "  { 1.60475, -0.53108, -0.07367},\n"
+                text += "  {-0.10208,  1.10813, -0.00605},\n"
+                text += "  {-0.00327, -0.07276,  1.07602},\n"
+                text += "};\n"
             text += "void vshader(float4 vtx_position : POSITION,\n"
             text += "  out float4 l_position : POSITION,\n"
 
@@ -301,6 +322,10 @@ class CommonFilters:
             if ("VolumetricLighting" in configuration):
                 text += "  uniform float4 k_casterpos,\n"
                 text += "  uniform float4 k_vlparams,\n"
+
+            if ("ExposureAdjust" in configuration):
+                text += "  uniform float k_exposure,\n"
+
             text += "  out float4 o_color : COLOR)\n"
             text += "{\n"
             text += "  o_color = tex2D(k_txcolor, %s);\n" % (texcoords["color"])
@@ -332,6 +357,14 @@ class CommonFilters:
                 text += "  }\n"
                 text += "  o_color += float4(vlcolor * k_vlparams.z, 1);\n"
 
+            if ("ExposureAdjust" in configuration):
+                text += "  o_color.rgb *= k_exposure;\n"
+
+            # With thanks to Stephen Hill!
+            if ("HighDynamicRange" in configuration):
+                text += "  float3 aces_color = mul(aces_input_mat, o_color.rgb);\n"
+                text += "  o_color.rgb = saturate(mul(aces_output_mat, (aces_color * (aces_color + 0.0245786f) - 0.000090537f) / (aces_color * (0.983729f * aces_color + 0.4329510f) + 0.238081f)));\n"
+
             if ("GammaAdjust" in configuration):
                 gamma = configuration["GammaAdjust"]
                 if gamma == 0.5:
@@ -341,6 +374,11 @@ class CommonFilters:
                 elif gamma != 1.0:
                     text += "  o_color.rgb = pow(o_color.rgb, %ff);\n" % (gamma)
 
+            if ("SrgbEncode" in configuration):
+                text += "  o_color.r = (o_color.r < 0.0031308) ? (o_color.r * 12.92) : (1.055 * pow(o_color.r, 0.41666) - 0.055);\n"
+                text += "  o_color.g = (o_color.g < 0.0031308) ? (o_color.g * 12.92) : (1.055 * pow(o_color.g, 0.41666) - 0.055);\n"
+                text += "  o_color.b = (o_color.b < 0.0031308) ? (o_color.b * 12.92) : (1.055 * pow(o_color.b, 0.41666) - 0.055);\n"
+
             if ("Inverted" in configuration):
                 text += "  o_color = float4(1, 1, 1, 1) - o_color;\n"
             text += "}\n"
@@ -386,6 +424,11 @@ class CommonFilters:
                 self.ssao[0].setShaderInput("params1", config.numsamples, -float(config.amount) / config.numsamples, config.radius, 0)
                 self.ssao[0].setShaderInput("params2", config.strength, config.falloff, 0, 0)
 
+        if (changed == "ExposureAdjust") or fullrebuild:
+            if ("ExposureAdjust" in configuration):
+                stops = configuration["ExposureAdjust"]
+                self.finalQuad.setShaderInput("exposure", 2 ** stops)
+
         self.update()
         return True
 
@@ -547,6 +590,73 @@ class CommonFilters:
             return self.reconfigure((old_gamma != 1.0), "GammaAdjust")
         return True
 
+    def setSrgbEncode(self, force=False):
+        """ Applies the inverse sRGB EOTF to the output, unless the window
+        already has an sRGB framebuffer, in which case this filter refuses to
+        apply, to prevent accidental double-application.
+
+        Set the force argument to True to force it to be applied in all cases.
+
+        .. versionadded:: 1.10.7
+        """
+        new_enable = force or not self.manager.win.getFbProperties().getSrgbColor()
+        old_enable = self.configuration.get("SrgbEncode", False)
+        if new_enable and not old_enable:
+            self.configuration["SrgbEncode"] = True
+            return self.reconfigure(True, "SrgbEncode")
+        elif not new_enable and old_enable:
+            del self.configuration["SrgbEncode"]
+        return new_enable
+
+    def delSrgbEncode(self):
+        """ Reverses the effects of setSrgbEncode. """
+        if ("SrgbEncode" in self.configuration):
+            old_enable = self.configuration["SrgbEncode"]
+            del self.configuration["SrgbEncode"]
+            return self.reconfigure(old_enable, "SrgbEncode")
+        return True
+
+    def setHighDynamicRange(self):
+        """ Enables HDR rendering by using a floating-point framebuffer,
+        disabling color clamping on the main scene, and applying a tone map
+        operator (ACES).
+
+        It may also be necessary to use setExposureAdjust to perform exposure
+        compensation on the scene, depending on the lighting intensity.
+
+        .. versionadded:: 1.10.7
+        """
+
+        fullrebuild = (("HighDynamicRange" in self.configuration) is False)
+        self.configuration["HighDynamicRange"] = 1
+        return self.reconfigure(fullrebuild, "HighDynamicRange")
+
+    def delHighDynamicRange(self):
+        if ("HighDynamicRange" in self.configuration):
+            del self.configuration["HighDynamicRange"]
+            return self.reconfigure(True, "HighDynamicRange")
+        return True
+
+    def setExposureAdjust(self, stops):
+        """ Sets a relative exposure adjustment to multiply with the result of
+        rendering the scene, in stops.  A value of 0 means no adjustment, a
+        positive value will result in a brighter image.  Useful in conjunction
+        with HDR, see setHighDynamicRange.
+
+        .. versionadded:: 1.10.7
+        """
+        old_stops = self.configuration.get("ExposureAdjust")
+        if old_stops != stops:
+            self.configuration["ExposureAdjust"] = stops
+            return self.reconfigure(old_stops is None, "ExposureAdjust")
+        return True
+
+    def delExposureAdjust(self):
+        if ("ExposureAdjust" in self.configuration):
+            del self.configuration["ExposureAdjust"]
+            return self.reconfigure(True, "ExposureAdjust")
+        return True
+
     #snake_case alias:
     del_cartoon_ink = delCartoonInk
     set_half_pixel_shift = setHalfPixelShift
@@ -555,7 +665,6 @@ class CommonFilters:
     del_inverted = delInverted
     del_view_glow = delViewGlow
     set_volumetric_lighting = setVolumetricLighting
-    del_gamma_adjust = delGammaAdjust
     set_bloom = setBloom
     set_view_glow = setViewGlow
     set_ambient_occlusion = setAmbientOcclusion
@@ -566,3 +675,10 @@ class CommonFilters:
     del_blur_sharpen = delBlurSharpen
     del_volumetric_lighting = delVolumetricLighting
     set_gamma_adjust = setGammaAdjust
+    del_gamma_adjust = delGammaAdjust
+    set_srgb_encode = setSrgbEncode
+    del_srgb_encode = delSrgbEncode
+    set_exposure_adjust = setExposureAdjust
+    del_exposure_adjust = delExposureAdjust
+    set_high_dynamic_range = setHighDynamicRange
+    del_high_dynamic_range = delHighDynamicRange

+ 7 - 1
direct/src/filter/FilterManager.py

@@ -3,6 +3,8 @@
 The FilterManager is a convenience class that helps with the creation
 of render-to-texture buffers for image postprocessing applications.
 
+See :ref:`generalized-image-filters` for information on how to use this class.
+
 Still need to implement:
 
 * Make sure sort-order of buffers is correct.
@@ -22,6 +24,7 @@ from panda3d.core import WindowProperties, FrameBufferProperties
 from panda3d.core import Camera
 from panda3d.core import OrthographicLens
 from panda3d.core import AuxBitplaneAttrib
+from panda3d.core import LightRampAttrib
 from direct.directnotify.DirectNotifyGlobal import *
 from direct.showbase.DirectObject import DirectObject
 
@@ -124,7 +127,7 @@ class FilterManager(DirectObject):
 
         return winx,winy
 
-    def renderSceneInto(self, depthtex=None, colortex=None, auxtex=None, auxbits=0, textures=None, fbprops=None):
+    def renderSceneInto(self, depthtex=None, colortex=None, auxtex=None, auxbits=0, textures=None, fbprops=None, clamping=None):
 
         """ Causes the scene to be rendered into the supplied textures
         instead of into the original window.  Puts a fullscreen quad
@@ -207,6 +210,9 @@ class FilterManager(DirectObject):
         #cs.setShaderAuto()
         if (auxbits):
             cs.setAttrib(AuxBitplaneAttrib.make(auxbits))
+        if clamping is False:
+            # Disables clamping in the shader generator.
+            cs.setAttrib(LightRampAttrib.make_identity())
         self.camera.node().setInitialState(cs.getState())
 
         quadcamnode = Camera("filter-quad-cam")

+ 3 - 0
direct/src/filter/__init__.py

@@ -8,4 +8,7 @@ texture values as desired.
 The :class:`.CommonFilters` class contains various filters that are
 provided out of the box, whereas the :class:`.FilterManager` class
 is a lower-level class that allows you to set up your own filters.
+
+See the :ref:`render-to-texture-and-image-postprocessing` section of the
+Programming Guide to learn more about image postprocessing in Panda3D.
 """

+ 2 - 19
direct/src/fsm/State.py

@@ -33,15 +33,13 @@ class State(DirectObject):
                     if enterFunc.__func__ == oldFunction:
                         # print 'found: ', enterFunc, oldFunction
                         state.setEnterFunc(types.MethodType(newFunction,
-                                                            enterFunc.__self__,
-                                                            enterFunc.__self__.__class__))
+                                                            enterFunc.__self__))
                         count += 1
                 if type(exitFunc) == types.MethodType:
                     if exitFunc.__func__ == oldFunction:
                         # print 'found: ', exitFunc, oldFunction
                         state.setExitFunc(types.MethodType(newFunction,
-                                                           exitFunc.__self__,
-                                                           exitFunc.__self__.__class__))
+                                                           exitFunc.__self__))
                         count += 1
             return count
 
@@ -215,18 +213,3 @@ class State(DirectObject):
     def __str__(self):
         return "State: name = %s, enter = %s, exit = %s, trans = %s, children = %s" %\
                (self.__name, self.__enterFunc, self.__exitFunc, self.__transitions, self.__FSMList)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-

+ 16 - 0
direct/src/gui/DirectGuiGlobals.py

@@ -132,6 +132,8 @@ def getDefaultFont():
     return defaultFont
 
 def setDefaultFont(newFont):
+    """Changes the default font for DirectGUI items.  To change the default
+    font across the board, see :meth:`.TextNode.setDefaultFont`. """
     global defaultFont
     defaultFont = newFont
 
@@ -165,3 +167,17 @@ def getDefaultPanel():
 def setDefaultPanel(newPanel):
     global panel
     panel = newPanel
+
+get_default_rollover_sound = getDefaultRolloverSound
+set_default_rollover_sound = setDefaultRolloverSound
+get_default_click_sound = getDefaultClickSound
+set_default_click_sound = setDefaultClickSound
+get_default_font = getDefaultFont
+set_default_font = setDefaultFont
+get_default_dialog_geom = getDefaultDialogGeom
+get_default_dialog_relief = getDefaultDialogRelief
+set_default_dialog_geom = setDefaultDialogGeom
+get_default_draw_order = getDefaultDrawOrder
+set_default_draw_order = setDefaultDrawOrder
+get_default_panel = getDefaultPanel
+set_default_panel = setDefaultPanel

+ 1 - 2
direct/src/interval/FunctionInterval.py

@@ -37,8 +37,7 @@ class FunctionInterval(Interval.Interval):
                     if ival.function.__func__ == oldFunction:
                         # print 'found: ', ival.function, oldFunction
                         ival.function = types.MethodType(newFunction,
-                                                         ival.function.__self__,
-                                                         ival.function.__self__.__class__)
+                                                         ival.function.__self__)
                         count += 1
             return count
 

+ 39 - 38
direct/src/showbase/Loader.py

@@ -24,14 +24,14 @@ class Loader(DirectObject):
 
     _loadedPythonFileTypes = False
 
-    class Callback:
+    class _Callback:
         """Returned by loadModel when used asynchronously.  This class is
         modelled after Future, and can be awaited."""
 
         # This indicates that this class behaves like a Future.
         _asyncio_future_blocking = False
 
-        class ResultAwaiter(object):
+        class _ResultAwaiter(object):
             """Reinvents generators because of PEP 479, sigh.  See #513."""
 
             __slots__ = 'requestList', 'index'
@@ -126,9 +126,9 @@ class Loader(DirectObject):
                 self._asyncio_future_blocking = True
 
             if self.gotList:
-                return self.ResultAwaiter([self])
+                return self._ResultAwaiter([self])
             else:
-                return self.ResultAwaiter(self.requestList)
+                return self._ResultAwaiter(self.requestList)
 
         def __aiter__(self):
             """ This allows using `async for` to iterate asynchronously over
@@ -138,7 +138,7 @@ class Loader(DirectObject):
             requestList = self.requestList
             assert requestList is not None, "Request was cancelled."
 
-            return self.ResultAwaiter(requestList)
+            return self._ResultAwaiter(requestList)
 
     # special methods
     def __init__(self, base):
@@ -192,21 +192,21 @@ class Loader(DirectObject):
         pathname), the return value will be a NodePath to the model
         loaded if the load was successful, or None otherwise.  If the
         input modelPath is a list of pathnames, the return value will
-        be a list of NodePaths and/or Nones.
+        be a list of `.NodePath` objects and/or Nones.
 
         loaderOptions may optionally be passed in to control details
         about the way the model is searched and loaded.  See the
-        LoaderOptions class for more.
+        `.LoaderOptions` class for more.
 
-        The default is to look in the ModelPool (RAM) cache first, and
-        return a copy from that if the model can be found there.  If
-        the bam cache is enabled (via the model-cache-dir config
+        The default is to look in the `.ModelPool` (RAM) cache first,
+        and return a copy from that if the model can be found there.
+        If the bam cache is enabled (via the `model-cache-dir` config
         variable), then that will be consulted next, and if both
         caches fail, the file will be loaded from disk.  If noCache is
         True, then neither cache will be consulted or updated.
 
         If allowInstance is True, a shared instance may be returned
-        from the ModelPool.  This is dangerous, since it is easy to
+        from the `.ModelPool`.  This is dangerous, since it is easy to
         accidentally modify the shared instance, and invalidate future
         load attempts of the same model.  Normally, you should leave
         allowInstance set to False, which will always return a unique
@@ -214,10 +214,10 @@ class Loader(DirectObject):
 
         If okMissing is True, None is returned if the model is not
         found or cannot be read, and no error message is printed.
-        Otherwise, an IOError is raised if the model is not found or
+        Otherwise, an `IOError` is raised if the model is not found or
         cannot be read (similar to attempting to open a nonexistent
-        file).  (If modelPath is a list of filenames, then IOError is
-        raised if *any* of the models could not be loaded.)
+        file).  (If modelPath is a list of filenames, then `IOError`
+        is raised if *any* of the models could not be loaded.)
 
         If callback is not None, then the model load will be performed
         asynchronously.  In this case, loadModel() will initiate a
@@ -235,7 +235,7 @@ class Loader(DirectObject):
 
         True asynchronous model loading requires Panda to have been
         compiled with threading support enabled (you can test
-        Thread.isThreadingSupported()).  In the absence of threading
+        `.Thread.isThreadingSupported()`).  In the absence of threading
         support, the asynchronous interface still exists and still
         behaves exactly as described, except that loadModel() might
         not return immediately.
@@ -308,7 +308,7 @@ class Loader(DirectObject):
             # requested models have been loaded, we'll invoke the
             # callback (passing it the models on the parameter list).
 
-            cb = Loader.Callback(self, len(modelList), gotList, callback, extraArgs)
+            cb = Loader._Callback(self, len(modelList), gotList, callback, extraArgs)
             i = 0
             for modelPath in modelList:
                 request = self.loader.makeAsyncRequest(Filename(modelPath), loaderOptions)
@@ -420,7 +420,7 @@ class Loader(DirectObject):
     def saveModel(self, modelPath, node, loaderOptions = None,
                   callback = None, extraArgs = [], priority = None,
                   blocking = None):
-        """ Saves the model (a NodePath or PandaNode) to the indicated
+        """ Saves the model (a `NodePath` or `PandaNode`) to the indicated
         filename path.  Returns true on success, false on failure.  If
         a callback is used, the model is saved asynchronously, and the
         true/false status is passed to the callback function. """
@@ -476,7 +476,7 @@ class Loader(DirectObject):
             # requested models have been saved, we'll invoke the
             # callback (passing it the models on the parameter list).
 
-            cb = Loader.Callback(self, len(modelList), gotList, callback, extraArgs)
+            cb = Loader._Callback(self, len(modelList), gotList, callback, extraArgs)
             i = 0
             for modelPath, node in modelList:
                 request = self.loader.makeAsyncSaveRequest(Filename(modelPath), loaderOptions, node)
@@ -508,8 +508,8 @@ class Loader(DirectObject):
         """
         modelPath is a string.
 
-        This loads a special model as a TextFont object, for rendering
-        text with a TextNode.  A font file must be either a special
+        This loads a special model as a `TextFont` object, for rendering
+        text with a `TextNode`.  A font file must be either a special
         egg file (or bam file) generated with egg-mkfont, which is
         considered a static font, or a standard font file (like a TTF
         file) that is supported by FreeType, which is considered a
@@ -573,7 +573,7 @@ class Loader(DirectObject):
 
         If color is not None, it should be a VBase4 specifying the
         foreground color of the font.  Specifying this option breaks
-        TextNode.setColor(), so you almost never want to use this
+        `TextNode.setColor()`, so you almost never want to use this
         option; the default (white) is the most appropriate for a
         font, as it allows text to have any arbitrary color assigned
         at generation time.  However, if you want to use a colored
@@ -695,7 +695,8 @@ class Loader(DirectObject):
         texturePath is a string.
 
         Attempt to load a texture from the given file path using
-        TexturePool class.
+        `TexturePool` class.  Returns a `Texture` object, or raises
+        `IOError` if the file could not be loaded.
 
         okMissing should be True to indicate the method should return
         None if the texture file is not found.  If it is False, the
@@ -713,17 +714,17 @@ class Loader(DirectObject):
         the texture and the number of expected mipmap images.
 
         If minfilter or magfilter is not None, they should be a symbol
-        like SamplerState.FTLinear or SamplerState.FTNearest.  (minfilter
-        may be further one of the Mipmap filter type symbols.)  These
-        specify the filter mode that will automatically be applied to
-        the texture when it is loaded.  Note that this setting may
+        like `SamplerState.FTLinear` or `SamplerState.FTNearest`.
+        (minfilter may be further one of the Mipmap filter type symbols.)
+        These specify the filter mode that will automatically be applied
+        to the texture when it is loaded.  Note that this setting may
         override the texture's existing settings, even if it has
-        already been loaded.  See egg-texture-cards for a more robust
+        already been loaded.  See `egg-texture-cards` for a more robust
         way to apply per-texture filter types and settings.
 
         If anisotropicDegree is not None, it specifies the anisotropic degree
         to apply to the texture when it is loaded.  Like minfilter and
-        magfilter, egg-texture-cards may be a more robust way to apply
+        magfilter, `egg-texture-cards` may be a more robust way to apply
         this setting.
 
         If multiview is true, it indicates to load a multiview or
@@ -769,7 +770,7 @@ class Loader(DirectObject):
         """
         texturePattern is a string that contains a sequence of one or
         more hash characters ('#'), which will be filled in with the
-        z-height number.  Returns a 3-D Texture object, suitable for
+        z-height number.  Returns a 3-D `Texture` object, suitable for
         rendering volumetric textures.
 
         okMissing should be True to indicate the method should return
@@ -826,7 +827,7 @@ class Loader(DirectObject):
         """
         texturePattern is a string that contains a sequence of one or
         more hash characters ('#'), which will be filled in with the
-        z-height number.  Returns a 2-D Texture array object, suitable
+        z-height number.  Returns a 2-D `Texture` array object, suitable
         for rendering array of textures.
 
         okMissing should be True to indicate the method should return
@@ -884,7 +885,7 @@ class Loader(DirectObject):
         texturePattern is a string that contains a sequence of one or
         more hash characters ('#'), which will be filled in with the
         face index number (0 through 6).  Returns a six-face cube map
-        Texture object.
+        `Texture` object.
 
         okMissing should be True to indicate the method should return
         None if the texture file is not found.  If it is False, the
@@ -951,8 +952,8 @@ class Loader(DirectObject):
         """Loads one or more sound files, specifically designated as a
         "sound effect" file (that is, uses the sfxManager to load the
         sound).  There is no distinction between sound effect files
-        and music files other than the particular AudioManager used to
-        load the sound file, but this distinction allows the sound
+        and music files other than the particular `AudioManager` used
+        to load the sound file, but this distinction allows the sound
         effects and/or the music files to be adjusted as a group,
         independently of the other group."""
 
@@ -965,8 +966,8 @@ class Loader(DirectObject):
         """Loads one or more sound files, specifically designated as a
         "music" file (that is, uses the musicManager to load the
         sound).  There is no distinction between sound effect files
-        and music files other than the particular AudioManager used to
-        load the sound file, but this distinction allows the sound
+        and music files other than the particular `AudioManager` used
+        to load the sound file, but this distinction allows the sound
         effects and/or the music files to be adjusted as a group,
         independently of the other group."""
         if(self.base.musicManager):
@@ -1013,7 +1014,7 @@ class Loader(DirectObject):
             # requested sounds have been loaded, we'll invoke the
             # callback (passing it the sounds on the parameter list).
 
-            cb = Loader.Callback(self, len(soundList), gotList, callback, extraArgs)
+            cb = Loader._Callback(self, len(soundList), gotList, callback, extraArgs)
             for i, soundPath in enumerate(soundList):
                 request = AudioLoadRequest(manager, soundPath, positional)
                 request.setDoneEvent(self.hook)
@@ -1052,7 +1053,7 @@ class Loader(DirectObject):
                            callback = None, extraArgs = []):
         """ Performs a model.flattenStrong() operation in a sub-thread
         (if threading is compiled into Panda).  The model may be a
-        single NodePath, or it may be a list of NodePaths.
+        single `.NodePath`, or it may be a list of NodePaths.
 
         Each model is duplicated and flattened in the sub-thread.
 
@@ -1078,7 +1079,7 @@ class Loader(DirectObject):
             callback = self.__asyncFlattenDone
             gotList = True
 
-        cb = Loader.Callback(self, len(modelList), gotList, callback, extraArgs)
+        cb = Loader._Callback(self, len(modelList), gotList, callback, extraArgs)
         i = 0
         for model in modelList:
             request = ModelFlattenRequest(model.node())

+ 2 - 3
direct/src/showbase/Messenger.py

@@ -1,5 +1,5 @@
 """This defines the Messenger class, which is responsible for most of the
-event handling that happens on the Python side.
+:ref:`event handling <event-handlers>` that happens on the Python side.
 """
 
 __all__ = ['Messenger']
@@ -464,8 +464,7 @@ class Messenger:
                 #       'oldMethod: ' + repr(oldMethod) + '\n' +
                 #       'newFunction: ' + repr(newFunction) + '\n')
                 if (function == oldMethod):
-                    newMethod = types.MethodType(
-                        newFunction, method.__self__, method.__self__.__class__)
+                    newMethod = types.MethodType(newFunction, method.__self__)
                     params[0] = newMethod
                     # Found it retrun true
                     retFlag += 1

+ 3 - 3
direct/src/showbase/OnScreenDebug.py

@@ -38,9 +38,9 @@ class OnScreenDebug:
             print("failed to load OnScreenDebug font %s" % fontPath)
             font = TextNode.getDefaultFont()
         self.onScreenText = OnscreenText.OnscreenText(
-                pos = (-1.0, 0.9), fg=fgColor, bg=bgColor,
-                scale = (fontScale, fontScale, 0.0), align = TextNode.ALeft,
-                mayChange = 1, font = font)
+                parent = base.a2dTopLeft, pos = (0.0, -0.1),
+                fg=fgColor, bg=bgColor, scale = (fontScale, fontScale, 0.0),
+                align = TextNode.ALeft, mayChange = 1, font = font)
         # Make sure readout is never lit or drawn in wireframe
         DirectUtil.useDirectRenderStyle(self.onScreenText)
 

+ 4 - 3
direct/src/showbase/PythonUtil.py

@@ -39,6 +39,7 @@ import random
 import time
 import builtins
 import importlib
+import functools
 
 __report_indent = 3
 
@@ -1560,7 +1561,7 @@ def appendStr(obj, st):
             return s
         oldStr = Functor(stringer, str(obj))
         stringer = None
-    obj.__str__ = types.MethodType(Functor(appendedStr, oldStr, st), obj, obj.__class__)
+    obj.__str__ = types.MethodType(Functor(appendedStr, oldStr, st), obj)
     appendedStr = None
     return obj
 
@@ -2062,7 +2063,7 @@ def report(types = [], prefix = '', xform = None, notifyFunc = None, dConfigPara
             if not rArgs:
                 rArgs = '()'
             else:
-                rArgs = '(' + reduce(str.__add__,rArgs)[:-2] + ')'
+                rArgs = '(' + functools.reduce(str.__add__,rArgs)[:-2] + ')'
 
 
             outStr = '%s%s' % (f.__name__, rArgs)
@@ -2345,7 +2346,7 @@ class MiniLog:
         if not rArgs:
             rArgs = '()'
         else:
-            rArgs = '(' + reduce(str.__add__,rArgs)[:-2] + ')'
+            rArgs = '(' + functools.reduce(str.__add__,rArgs)[:-2] + ')'
 
         line = '%s%s' % (funcName, rArgs)
         self.appendFunctionCall(line)

Файловите разлики са ограничени, защото са твърде много
+ 278 - 141
direct/src/showbase/ShowBase.py


+ 10 - 5
direct/src/showbase/ShowBaseGlobal.py

@@ -2,9 +2,14 @@
 :class:`~.ShowBase.ShowBase` instance, as an alternative to using the builtin
 scope.
 
-Note that you cannot directly import `base` from this module since ShowBase
-may not have been created yet; instead, ShowBase dynamically adds itself to
-this module's scope when instantiated."""
+Many of the variables contained in this module are also automatically written
+to the :mod:`builtins` module when ShowBase is instantiated, making them
+available to any Python code.  Importing them from this module instead can make
+it easier to see where these variables are coming from.
+
+Note that you cannot directly import :data:`~builtins.base` from this module
+since ShowBase may not have been created yet; instead, ShowBase dynamically
+adds itself to this module's scope when instantiated."""
 
 __all__ = []
 
@@ -17,8 +22,8 @@ from . import DConfig as config
 
 __dev__ = config.GetBool('want-dev', __debug__)
 
-#: The global instance of the :class:`~panda3d.core.VirtualFileSystem`, as
-#: obtained using :meth:`panda3d.core.VirtualFileSystem.getGlobalPtr()`.
+#: The global instance of the :ref:`virtual-file-system`, as obtained using
+#: :meth:`panda3d.core.VirtualFileSystem.getGlobalPtr()`.
 vfs = VirtualFileSystem.getGlobalPtr()
 
 #: The default Panda3D output stream for notifications and logging, as

+ 3 - 0
direct/src/showbase/__init__.py

@@ -0,0 +1,3 @@
+""" This package contains `.ShowBase`, an application framework responsible
+for opening a graphical display, setting up input devices and creating
+the scene graph. """

+ 6 - 3
direct/src/showutil/TexMemWatcher.py

@@ -327,7 +327,10 @@ class TexMemWatcher(DirectObject):
 
         if self.dynamicLimit:
             # Choose a suitable limit by rounding to the next power of two.
-            self.limit = Texture.upToPower2(self.totalSize)
+            limit = 1
+            while limit < self.totalSize:
+                limit *= 2
+            self.limit = limit
 
         # Set our GSG to limit itself to no more textures than we
         # expect to display onscreen, so we don't go crazy with
@@ -883,7 +886,7 @@ class TexMemWatcher(DirectObject):
             matches.append((match, tp))
 
         if matches:
-            return max(matches)[1]
+            return max(matches, key=lambda match: match[0])[1]
         return None
 
     def findHolePieces(self, area):
@@ -937,7 +940,7 @@ class TexMemWatcher(DirectObject):
     def findLargestHole(self):
         holes = self.findAvailableHoles(0)
         if holes:
-            return max(holes)[1]
+            return max(holes, key=lambda hole: hole[0])[1]
         return None
 
     def findAvailableHoles(self, area, w = None, h = None):

+ 2 - 1
direct/src/stdpy/__init__.py

@@ -1,5 +1,6 @@
 """
 This package contains various modules that provide a drop-in substitute
 for some of the built-in Python modules.  These substitutes make better
-use of Panda3D's virtual file system and threading system.
+use of Panda3D's :ref:`Virtual File System <virtual-file-system>` and
+:ref:`threading` system.
 """

+ 1 - 3
direct/src/task/Task.py

@@ -593,9 +593,7 @@ class TaskManager:
         else:
             function = method
         if (function == oldMethod):
-            newMethod = types.MethodType(newFunction,
-                                         method.__self__,
-                                         method.__self__.__class__)
+            newMethod = types.MethodType(newFunction, method.__self__)
             task.setFunction(newMethod)
             # Found a match
             return 1

+ 14 - 8
direct/src/tkpanels/Inspector.py

@@ -1,8 +1,15 @@
 """Inspectors allow you to visually browse through the members of
-various python objects.  To open an inspector, import this module, and
-execute inspector.inspect(anObject) I start IDLE with this command
-line: idle.py -c "from inspector import inspect"
-so that I can just type: inspect(anObject) any time."""
+various Python objects.  To open an inspector, import this module, and
+execute ``inspector.inspect(anObject)``.
+
+I start IDLE with this command line::
+
+   idle.py -c "from inspector import inspect"
+
+so that I can just type: ``inspect(anObject)`` any time.
+
+See :ref:`inspection-utilities` for more information.
+"""
 
 
 __all__ = ['inspect', 'inspectorFor', 'Inspector', 'ModuleInspector', 'ClassInspector', 'InstanceInspector', 'FunctionInspector', 'InstanceMethodInspector', 'CodeInspector', 'ComplexInspector', 'DictionaryInspector', 'SequenceInspector', 'SliceInspector', 'InspectorWindow']
@@ -13,6 +20,9 @@ import Pmw
 ### public API
 
 def inspect(anObject):
+    """Opens up a window for visually inspecting the details of a given Python
+    object.  See :ref:`inspection-utilities`.
+    """
     inspector = inspectorFor(anObject)
     inspectorWindow = InspectorWindow(inspector)
     inspectorWindow.open()
@@ -437,7 +447,3 @@ class InspectorWindow:
                 label = item,
                 command = lambda p = part, f = func: f(p))
         return popupMenu
-
-
-
-

+ 71 - 0
doc/ReleaseNotes

@@ -1,3 +1,74 @@
+------------------------  RELEASE 1.10.7  -----------------------
+
+This is primarily a bugfix release, but includes a few new features as well.
+
+Rendering
+* Add High Dynamic Range filter with ACES tone mapping to CommonFilters
+* Add sRGB filter to CommonFilters (to be used as fallback to framebuffer-srgb)
+* Fix (shadow) buffer no longer working after host buffer is destroyed (#890)
+* Fix rare bug with shader parameters not being set right across render passes
+* Fog density passed to shader now defaults to 0 when no fog is applied
+* Don't check sampler/light type mismatch for non-shadow-casting lights (#942)
+* Shader generator now makes use of Material alpha values if present (#912)
+* Support sRGB textures and framebuffers in OpenGL ES 2 renderer
+
+Asset Loading
+* Egg files can now be loaded with sRGB texture formats automatically
+* Fix maya2egg regression not creating animations properly (#1004)
+* Fix FMOD issue reading sounds from read-write-opened multifiles (#1002)
+
+Stability
+* Fix faulty collision detection when sphere is under polygon (#907)
+* Fix PStats misreporting an exploding number of RenderState/TransformState
+* Fix memory leak when removing a task that is awaiting a non-Panda future
+* Optimize RenderState cache for case where texture is replaced repeatedly
+* PNMImage add_sub_image() / mult_sub_image() now properly adds offset (#903)
+* Fix some ServerRepository issues in Python 3
+* Fix has_tags() still returning true after clearing all Python tags (#936)
+* Fix crash in BitArray.has_any_of()
+* Fix errors in PythonUtil.detectLeaks() and PythonUtil.report()
+* Fix runtime error during ControlManager deletion (#884)
+* Some error messages in nativenet are changed to debug messages
+* Fix TexMemWatcher crash when graphics memory reaches 1 GB (#975)
+* Fix a Triangulator crash dealing with certain invalid polygons (#985)
+* Fix in MultiplexStreamBuf::Output::write_string() (#902)
+* Fix a buffer overrun on FreeBSD when extracting very long command-line args
+
+Input and Windowing
+* M_confined mouse mode on Windows now confines mouse to client rectangle
+* Fix incorrect handling of shift modifier on macOS (#959)
+* Fix erroneous dpad_*-up events when emulating a dpad on Linux (#973)
+* Fix tab handling in DirectEntry with certain versions of Windows CRT (#994)
+* Fix parented window receiving WS_POPUP style on Windows (#915)
+
+Deployment
+* macOS app bundle now performs chdir into Resources folder upon launch
+* No longer defaults to FMOD audio on macOS unless FMOD is explicitly bundled
+* Improvements to Config.prc handling (strip comments, sort files, etc.)
+* Line buffering is now used on Windows when writing to log files (#947)
+* stdout/stderr output streams are now flushed on exit (#946)
+* Build paths are now properly stripped from compiled Python code (#991)
+* Update to support a change in location of numpy/Pillow libraries (#914)
+* Fix libffi-7.dll not being included in official wheels
+* PYTHONINSPECT mechanism is no longer enabled when building with optimizations
+* A few unnecessary warning messages are squelched
+* Windows builds now include previously missing CRT dlls
+
+API
+* Add pickle support to Datagram class
+* Unexpose a crashing CollisionPolygon constructor and method (#908)
+* FilterManager has new parameter to control framebuffer clamping
+* Add snake_case aliases for functions in DirectGuiGlobals
+* Global delete operator is now safe to call with a null pointer
+* Improvements to API reference documentation
+
+Build
+* Fix issues building with development versions Python 3.9 and 3.10
+* Fix an ABI incompatibility issue with MouseWatcher in NDEBUG builds
+* Fix incorrect NaN/inf detection in double-precision release builds (#987)
+* interrogate C++ parser supports arbitrary constant expressions in bitfields
+* interrogate C++ parser supports sizeof with constant expression
+
 ------------------------  RELEASE 1.10.6  -----------------------
 
 This is a recommended bugfix release that adds additional stability fixes.

+ 2 - 2
dtool/src/dtoolbase/cmath.I

@@ -351,7 +351,7 @@ cnan(double v) {
 #if __FINITE_MATH_ONLY__
   // GCC's isnan breaks when using -ffast-math.
   union { double d; uint64_t x; } u = { v };
-  return ((u.x << 1) > 0xff70000000000000ull);
+  return ((u.x << 1) > 0xffe0000000000000ull);
 #elif !defined(_WIN32)
   return std::isnan(v);
 #else
@@ -383,7 +383,7 @@ cinf(double v) {
 #if __FINITE_MATH_ONLY__
   // GCC's isinf breaks when using -ffast-math.
   union { double d; uint64_t x; } u = { v };
-  return ((u.x << 1) == 0xff70000000000000ull);
+  return ((u.x << 1) == 0xffe0000000000000ull);
 #elif !defined(_WIN32)
   return std::isinf(v);
 #else

+ 1 - 16
dtool/src/dtoolutil/filename_ext.cxx

@@ -53,9 +53,6 @@ __init__(PyObject *path) {
     return;
   }
 
-  PyObject *path_str;
-
-#if PY_VERSION_HEX >= 0x03060000
   // It must be an os.PathLike object.  Check for an __fspath__ method.
   PyObject *fspath = PyObject_GetAttrString((PyObject *)Py_TYPE(path), "__fspath__");
   if (fspath == nullptr) {
@@ -63,20 +60,8 @@ __init__(PyObject *path) {
     return;
   }
 
-  path_str = PyObject_CallFunctionObjArgs(fspath, path, nullptr);
+  PyObject *path_str = PyObject_CallFunctionObjArgs(fspath, path, nullptr);
   Py_DECREF(fspath);
-#else
-  // There is no standard path protocol before Python 3.6, but let's try and
-  // support taking pathlib paths anyway.  We don't version check this to
-  // allow people to use backports of the pathlib module.
-  if (PyObject_HasAttrString(path, "_format_parsed_parts")) {
-    path_str = PyObject_Str(path);
-  } else {
-    PyErr_Format(PyExc_TypeError, "expected str, bytes, Path or Filename object, not %s", Py_TYPE(path)->tp_name);
-    return;
-  }
-#endif
-
   if (path_str == nullptr) {
     return;
   }

+ 64 - 0
dtool/src/dtoolutil/textEncoder.cxx

@@ -21,6 +21,42 @@ using std::ostream;
 using std::string;
 using std::wstring;
 
+// Maps cp437 characters to Unicode codepoints.
+static char16_t cp437_table[256] = {
+  0x0000, 0x263a, 0x263b, 0x2665, 0x2666, 0x2663, 0x2660, 0x2022,
+  0x25d8, 0x25cb, 0x25d9, 0x2642, 0x2640, 0x266a, 0x266b, 0x263c,
+  0x25ba, 0x25c4, 0x2195, 0x203c, 0x00b6, 0x00a7, 0x25ac, 0x21a8,
+  0x2191, 0x2193, 0x2192, 0x2190, 0x221f, 0x2194, 0x25b2, 0x25bc,
+  0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+  0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+  0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+  0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+  0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+  0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+  0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+  0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+  0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+  0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+  0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+  0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x2302,
+  0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00e4, 0x00e0, 0x00e5, 0x00e7,
+  0x00ea, 0x00eb, 0x00e8, 0x00ef, 0x00ee, 0x00ec, 0x00c4, 0x00c5,
+  0x00c9, 0x00e6, 0x00c6, 0x00f4, 0x00f6, 0x00f2, 0x00fb, 0x00f9,
+  0x00ff, 0x00d6, 0x00dc, 0x00a2, 0x00a3, 0x00a5, 0x20a7, 0x0192,
+  0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x00f1, 0x00d1, 0x00aa, 0x00ba,
+  0x00bf, 0x2310, 0x00ac, 0x00bd, 0x00bc, 0x00a1, 0x00ab, 0x00bb,
+  0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
+  0x2555, 0x2563, 0x2551, 0x2557, 0x255d, 0x255c, 0x255b, 0x2510,
+  0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x255e, 0x255f,
+  0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x2567,
+  0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256b,
+  0x256a, 0x2518, 0x250c, 0x2588, 0x2584, 0x258c, 0x2590, 0x2580,
+  0x03b1, 0x00df, 0x0393, 0x03c0, 0x03a3, 0x03c3, 0x00b5, 0x03c4,
+  0x03a6, 0x0398, 0x03a9, 0x03b4, 0x221e, 0x03c6, 0x03b5, 0x2229,
+  0x2261, 0x00b1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00f7, 0x2248,
+  0x00b0, 0x2219, 0x00b7, 0x221a, 0x207f, 0x00b2, 0x25a0, 0x00a0,
+};
+
 TextEncoder::Encoding TextEncoder::_default_encoding = TextEncoder::E_utf8;
 
 /**
@@ -177,6 +213,20 @@ encode_wchar(char32_t ch, TextEncoder::Encoding encoding) {
       };
       return string(encoded, 4);
     }
+
+  case E_cp437:
+    if ((ch & ~0x7f) == 0) {
+      return string(1, (char)ch);
+    }
+    else if (ch >= 0 && ch < 0x266b) {
+      // This case is not optimized, because we don't really need it right now.
+      for (int i = 0; i < 256; ++i) {
+        if (cp437_table[i] == ch) {
+          return std::string(1, (char)i);
+        }
+      }
+    }
+    return ".";
   }
 
   return "";
@@ -233,6 +283,15 @@ decode_text(const string &text, TextEncoder::Encoding encoding) {
       return decode_text_impl(decoder);
     }
 
+  case E_cp437:
+    {
+      std::wstring result(text.size(), 0);
+      for (size_t i = 0; i < result.size(); ++i) {
+        result[i] = cp437_table[(uint8_t)text[i]];
+      }
+      return result;
+    }
+
   case E_iso8859:
   default:
     {
@@ -382,6 +441,9 @@ operator << (ostream &out, TextEncoder::Encoding encoding) {
 
   case TextEncoder::E_utf16be:
     return out << "utf16be";
+
+  case TextEncoder::E_cp437:
+    return out << "cp437";
   };
 
   return out << "**invalid TextEncoder::Encoding(" << (int)encoding << ")**";
@@ -402,6 +464,8 @@ operator >> (istream &in, TextEncoder::Encoding &encoding) {
   } else if (word == "unicode" || word == "utf16be" || word == "utf-16be" ||
                                   word == "utf16-be" || word == "utf-16-be") {
     encoding = TextEncoder::E_utf16be;
+  } else if (word == "cp437") {
+    encoding = TextEncoder::E_cp437;
   } else {
     ostream *notify_ptr = StringDecoder::get_notify_ptr();
     if (notify_ptr != nullptr) {

+ 1 - 0
dtool/src/dtoolutil/textEncoder.h

@@ -36,6 +36,7 @@ PUBLISHED:
     E_iso8859,
     E_utf8,
     E_utf16be,
+    E_cp437,
 
     // Deprecated alias for E_utf16be
     E_unicode = E_utf16be,

+ 62 - 5
dtool/src/interrogate/interfaceMakerPythonNative.cxx

@@ -2594,6 +2594,8 @@ write_module_class(ostream &out, Object *obj) {
     out << "    return nullptr;\n";
     out << "  }\n\n";
 
+    bool have_eq = false;
+    bool have_ne = false;
     for (Function *func : obj->_methods) {
       std::set<FunctionRemap*> remaps;
       if (!func) {
@@ -2614,8 +2616,10 @@ write_module_class(ostream &out, Object *obj) {
         op_type = "Py_LE";
       } else if (fname == "operator ==") {
         op_type = "Py_EQ";
+        have_eq = true;
       } else if (fname == "operator !=") {
         op_type = "Py_NE";
+        have_ne = true;
       } else if (fname == "operator >") {
         op_type = "Py_GT";
       } else if (fname == "operator >=") {
@@ -2640,6 +2644,43 @@ write_module_class(ostream &out, Object *obj) {
     }
 
     if (has_local_richcompare) {
+      if (have_eq && !have_ne) {
+        // Generate a not-equal function from the equal function.
+        for (Function *func : obj->_methods) {
+          std::set<FunctionRemap*> remaps;
+          if (!func) {
+            continue;
+          }
+          const string &fname = func->_ifunc.get_name();
+          if (fname != "operator ==") {
+            continue;
+          }
+          for (FunctionRemap *remap : func->_remaps) {
+            if (is_remap_legal(remap) && remap->_has_this && (remap->_args_type == AT_single_arg)) {
+              remaps.insert(remap);
+            }
+          }
+          out << "  case Py_NE: // from Py_EQ\n";
+          out << "    {\n";
+
+          string expected_params;
+          write_function_forset(out, remaps, 1, 1, expected_params, 6, true, false,
+                                AT_single_arg, RF_pyobject | RF_invert_bool | RF_err_null, false);
+
+          out << "      break;\n";
+          out << "    }\n";
+        }
+      }
+      else if (!have_eq && !slots.count("tp_compare")) {
+        // Generate an equals function.
+        out << "  case Py_EQ:\n";
+        out << "    return PyBool_FromLong(DtoolInstance_Check(arg) && DtoolInstance_VOID_PTR(self) == DtoolInstance_VOID_PTR(arg));\n";
+        if (!have_ne) {
+          out << "  case Py_NE:\n";
+          out << "    return PyBool_FromLong(!DtoolInstance_Check(arg) || DtoolInstance_VOID_PTR(self) != DtoolInstance_VOID_PTR(arg));\n";
+        }
+      }
+
       // End of switch block
       out << "  }\n\n";
       out << "  if (_PyErr_OCCURRED()) {\n";
@@ -6082,8 +6123,13 @@ write_function_instance(ostream &out, FunctionRemap *remap,
       return_flags &= ~RF_pyobject;
 
     } else if (return_null && TypeManager::is_bool(remap->_return_type->get_new_type())) {
-      indent(out, indent_level)
-        << "return Dtool_Return_Bool(" << return_expr << ");\n";
+      if (return_flags & RF_invert_bool) {
+        indent(out, indent_level)
+          << "return Dtool_Return_Bool(!(" << return_expr << "));\n";
+      } else {
+        indent(out, indent_level)
+          << "return Dtool_Return_Bool(" << return_expr << ");\n";
+      }
       return_flags &= ~RF_pyobject;
 
     } else if (return_null && TypeManager::is_pointer_to_PyObject(remap->_return_type->get_new_type())) {
@@ -6438,9 +6484,14 @@ pack_return_value(ostream &out, int indent_level, FunctionRemap *remap,
       TypeManager::is_vector_unsigned_char(type)) {
     // Most types are now handled by the many overloads of Dtool_WrapValue,
     // defined in py_panda.h.
-    indent(out, indent_level)
-      << "return Dtool_WrapValue(" << return_expr << ");\n";
-
+    if (return_flags & RF_invert_bool) {
+      indent(out, indent_level)
+        << "return Dtool_WrapValue(!(" << return_expr << "));\n";
+    }
+    else {
+      indent(out, indent_level)
+        << "return Dtool_WrapValue(" << return_expr << ");\n";
+    }
   } else if (TypeManager::is_pointer(type)) {
     bool is_const = TypeManager::is_const_pointer_to_anything(type);
     bool owns_memory = remap->_return_value_needs_management;
@@ -6567,7 +6618,9 @@ write_make_seq(ostream &out, Object *obj, const std::string &ClassName,
     "\n";
 
   if ((elem_getter->_args_type & AT_varargs) == AT_varargs) {
+    out << "#if defined(Py_TRACE_REFS) || PY_VERSION_HEX < 0x03090000\n";
     out << "  _Py_ForgetReference((PyObject *)&args);\n";
+    out << "#endif\n";
   }
 
   out <<
@@ -8047,6 +8100,10 @@ output_quoted(ostream &out, int indent_level, const std::string &str,
         << '"';
       continue;
 
+    case '\t':
+      out << "\\t";
+      break;
+
     default:
       if (!isprint(*si)) {
         out << "\\" << oct << std::setw(3) << std::setfill('0') << (unsigned int)(*si)

+ 3 - 0
dtool/src/interrogate/interfaceMakerPythonNative.h

@@ -115,6 +115,9 @@ private:
 
     // This raises a KeyError on falsey (or -1) return value.
     RF_raise_keyerror = 0x4000,
+
+    // Invert boolean return value.
+    RF_invert_bool = 0x8000,
   };
 
   class SlottedFunctionDef {

+ 11 - 3
dtool/src/interrogatedb/py_panda.cxx

@@ -10,6 +10,9 @@
 
 #ifdef HAVE_PYTHON
 
+#define _STRINGIFY_VERSION(a, b) (#a "." #b)
+#define STRINGIFY_VERSION(a, b) _STRINGIFY_VERSION(a, b)
+
 using std::string;
 
 /**
@@ -521,6 +524,8 @@ Dtool_TypeMap *Dtool_GetGlobalTypeMap() {
   }
 }
 
+#define PY_MAJOR_VERSION_STR #PY_MAJOR_VERSION "." #PY_MINOR_VERSION
+
 #if PY_MAJOR_VERSION >= 3
 PyObject *Dtool_PyModuleInitHelper(const LibraryDef *defs[], PyModuleDef *module_def) {
 #else
@@ -528,15 +533,18 @@ PyObject *Dtool_PyModuleInitHelper(const LibraryDef *defs[], const char *modulen
 #endif
   // Check the version so we can print a helpful error if it doesn't match.
   string version = Py_GetVersion();
+  size_t version_len = version.find('.', 2);
+  if (version_len != string::npos) {
+    version.resize(version_len);
+  }
 
-  if (version[0] != '0' + PY_MAJOR_VERSION ||
-      version[2] != '0' + PY_MINOR_VERSION) {
+  if (version != STRINGIFY_VERSION(PY_MAJOR_VERSION, PY_MINOR_VERSION)) {
     // Raise a helpful error message.  We can safely do this because the
     // signature and behavior for PyErr_SetString has remained consistent.
     std::ostringstream errs;
     errs << "this module was compiled for Python "
          << PY_MAJOR_VERSION << "." << PY_MINOR_VERSION << ", which is "
-         << "incompatible with Python " << version.substr(0, 3);
+         << "incompatible with Python " << version;
     string error = errs.str();
     PyErr_SetString(PyExc_ImportError, error.c_str());
     return nullptr;

+ 6 - 6
dtool/src/prc/configPageManager.I

@@ -12,7 +12,7 @@
  */
 
 /**
- * Returns true if the implicit *.prc files have already been loaded, false
+ * Returns true if the implicit `*.prc` files have already been loaded, false
  * otherwise.  Normally this will only be false briefly before startup.
  */
 INLINE bool ConfigPageManager::
@@ -21,7 +21,7 @@ loaded_implicit_pages() const {
 }
 
 /**
- * Searches the PRC_DIR and/or PRC_PATH directories for *.prc files and loads
+ * Searches the PRC_DIR and/or PRC_PATH directories for `*.prc` files and loads
  * them in as pages.  This is normally called automatically at startup time,
  * when the first variable's value is referenced.  See also
  * reload_implicit_pages().
@@ -46,9 +46,9 @@ get_search_path() {
 }
 
 /**
- * Returns the number of patterns, like "*.prc", that are compiled in that
+ * Returns the number of patterns, like `*.prc`, that are compiled in that
  * will be searched for as default config filenames.  Normally there is only
- * one pattern, and it is "*.prc", but others may be specified with the
+ * one pattern, and it is `*.prc`, but others may be specified with the
  * PRC_FILENAME variable in Config.pp.
  */
 INLINE size_t ConfigPageManager::
@@ -67,7 +67,7 @@ get_prc_pattern(size_t n) const {
 }
 
 /**
- * Returns the number of patterns, like "*.pre", that are compiled in that
+ * Returns the number of patterns, like `*.pre`, that are compiled in that
  * will be searched for as special config files that are understood to be
  * encrypted.
  */
@@ -87,7 +87,7 @@ get_prc_encrypted_pattern(size_t n) const {
 }
 
 /**
- * Returns the number of patterns, like "*.exe", that are compiled in that
+ * Returns the number of patterns, like `*.exe`, that are compiled in that
  * will be searched for as special config files that are to be executed as a
  * program, and their output taken to be input.  This is normally empty.
  */

+ 2 - 2
dtool/src/prc/configVariableManager.cxx

@@ -82,7 +82,7 @@ make_variable(const string &name) {
  * Defines a variable "template" to match against dynamically-defined
  * variables that may or may not be created in the future.
  *
- * The template consists of a glob pattern, e.g.  "notify-level-*", which will
+ * The template consists of a glob pattern, e.g.  `notify-level-*`, which will
  * be tested against any config variable passed to a future call to
  * make_variable().  If the pattern matches, the returned ConfigVariableCore
  * is copied to define the new variable, instead of creating a default, empty
@@ -92,7 +92,7 @@ make_variable(const string &name) {
  * all have similar properties, and all may not be created at the same time.
  * It is especially useful to avoid cluttering up the list of available
  * variables with user-declared variables that have not been defined yet by
- * the application (e.g.  "egg-object-type-*").
+ * the application (e.g. `egg-object-type-*`).
  *
  * This method basically pre-defines all variables that match the specified
  * glob pattern.

+ 3 - 3
dtool/src/prc/streamReader.h

@@ -68,10 +68,10 @@ PUBLISHED:
 
   BLOCKING void skip_bytes(size_t size);
   BLOCKING size_t extract_bytes(unsigned char *into, size_t size);
-  EXTENSION(BLOCKING PyObject *extract_bytes(size_t size));
+  EXTENSION(PyObject *extract_bytes(size_t size));
 
-  EXTENSION(BLOCKING PyObject *readline());
-  EXTENSION(BLOCKING PyObject *readlines());
+  EXTENSION(PyObject *readline());
+  EXTENSION(PyObject *readlines());
 
 public:
   BLOCKING vector_uchar extract_bytes(size_t size);

+ 60 - 9
dtool/src/prc/streamReader_ext.cxx

@@ -15,6 +15,8 @@
 
 #ifdef HAVE_PYTHON
 
+#include "vector_string.h"
+
 /**
  * Extracts the indicated number of bytes in the stream and returns them as a
  * string (or bytes, in Python 3).  Returns empty string at end-of-file.
@@ -23,13 +25,25 @@ PyObject *Extension<StreamReader>::
 extract_bytes(size_t size) {
   std::istream *in = _this->get_istream();
   if (in->eof() || in->fail() || size == 0) {
+    // Note that this is only safe to call with size 0 while the GIL is held.
     return PyBytes_FromStringAndSize(nullptr, 0);
   }
 
   PyObject *bytes = PyBytes_FromStringAndSize(nullptr, size);
-  in->read(PyBytes_AS_STRING(bytes), size);
+  char *buffer = (char *)PyBytes_AS_STRING(bytes);
+
+#if defined(HAVE_THREADS) && !defined(SIMPLE_THREADS)
+  PyThreadState *_save;
+  Py_UNBLOCK_THREADS
+#endif  // HAVE_THREADS && !SIMPLE_THREADS
+
+  in->read(buffer, size);
   size_t read_bytes = in->gcount();
 
+#if defined(HAVE_THREADS) && !defined(SIMPLE_THREADS)
+  Py_BLOCK_THREADS
+#endif  // HAVE_THREADS && !SIMPLE_THREADS
+
   if (read_bytes == size || _PyBytes_Resize(&bytes, read_bytes) == 0) {
     return bytes;
   } else {
@@ -47,6 +61,11 @@ extract_bytes(size_t size) {
  */
 PyObject *Extension<StreamReader>::
 readline() {
+#if defined(HAVE_THREADS) && !defined(SIMPLE_THREADS)
+  PyThreadState *_save;
+  Py_UNBLOCK_THREADS
+#endif  // HAVE_THREADS && !SIMPLE_THREADS
+
   std::istream *in = _this->get_istream();
 
   std::string line;
@@ -60,6 +79,10 @@ readline() {
     ch = in->get();
   }
 
+#if defined(HAVE_THREADS) && !defined(SIMPLE_THREADS)
+  Py_BLOCK_THREADS
+#endif  // HAVE_THREADS && !SIMPLE_THREADS
+
   return PyBytes_FromStringAndSize(line.data(), line.size());
 }
 
@@ -69,18 +92,46 @@ readline() {
  */
 PyObject *Extension<StreamReader>::
 readlines() {
-  PyObject *lst = PyList_New(0);
-  if (lst == nullptr) {
-    return nullptr;
+#if defined(HAVE_THREADS) && !defined(SIMPLE_THREADS)
+  PyThreadState *_save;
+  Py_UNBLOCK_THREADS
+#endif  // HAVE_THREADS && !SIMPLE_THREADS
+
+  std::istream *in = _this->get_istream();
+  vector_string lines;
+
+  while (true) {
+    std::string line;
+    int ch = in->get();
+    while (ch != EOF && !in->fail()) {
+      line += ch;
+      if (ch == '\n' || in->eof()) {
+        // Here's the newline character.
+        break;
+      }
+      ch = in->get();
+    }
+
+    if (line.empty()) {
+      break;
+    }
+
+    lines.push_back(std::move(line));
   }
 
-  PyObject *py_line = readline();
+#if defined(HAVE_THREADS) && !defined(SIMPLE_THREADS)
+  Py_BLOCK_THREADS
+#endif  // HAVE_THREADS && !SIMPLE_THREADS
 
-  while (PyBytes_GET_SIZE(py_line) > 0) {
-    PyList_Append(lst, py_line);
-    Py_DECREF(py_line);
+  PyObject *lst = PyList_New(lines.size());
+  if (lst == nullptr) {
+    return nullptr;
+  }
 
-    py_line = readline();
+  Py_ssize_t i = 0;
+  for (const std::string &line : lines) {
+    PyObject *py_line = PyBytes_FromStringAndSize(line.data(), line.size());
+    PyList_SET_ITEM(lst, i++, py_line);
   }
 
   return lst;

+ 3 - 3
dtool/src/prc/streamReader_ext.h

@@ -29,9 +29,9 @@
 template<>
 class Extension<StreamReader> : public ExtensionBase<StreamReader> {
 public:
-  BLOCKING PyObject *extract_bytes(size_t size);
-  BLOCKING PyObject *readline();
-  BLOCKING PyObject *readlines();
+  PyObject *extract_bytes(size_t size);
+  PyObject *readline();
+  PyObject *readlines();
 };
 
 #endif  // HAVE_PYTHON

+ 6 - 3
dtool/src/prckeys/makePrcKey.cxx

@@ -93,10 +93,13 @@ output_c_string(std::ostream &out, const string &string_name,
         last_nl = false;
       }
 
-      if (isprint(data_ptr[i])) {
+      if (data_ptr[i] == '\t') {
+        out << "\\t";
+      }
+      else if (isprint(data_ptr[i])) {
         out << data_ptr[i];
-
-      } else {
+      }
+      else {
         out << "\\x" << std::hex << std::setw(2) << std::setfill('0')
             << (unsigned int)(unsigned char)data_ptr[i] << std::dec;
       }

+ 1 - 1
makepanda/installer.nsi

@@ -229,7 +229,7 @@ SectionGroup "Panda3D Libraries"
         SetDetailsPrint listonly
 
         SetOutPath $INSTDIR\models
-        File /r /x CVS "${BUILT}\models\*"
+        File /nonfatal /r /x CVS "${BUILT}\models\*"
 
         SetDetailsPrint both
         DetailPrint "Installing optional components..."

+ 6 - 3
makepanda/makepackage.py

@@ -158,10 +158,13 @@ def MakeInstallerNSIS(version, file, title, installdir, compressor="lzma", **kwa
     # Are we shipping a version of Python?
     if os.path.isfile(os.path.join(outputdir, "python", "python.exe")):
         py_dlls = glob.glob(os.path.join(outputdir, "python", "python[0-9][0-9].dll")) \
-                + glob.glob(os.path.join(outputdir, "python", "python[0-9][0-9]_d.dll"))
+                + glob.glob(os.path.join(outputdir, "python", "python[0-9][0-9]_d.dll")) \
+                + glob.glob(os.path.join(outputdir, "python", "python[0-9][0-9][0-9].dll")) \
+                + glob.glob(os.path.join(outputdir, "python", "python[0-9][0-9][0-9]_d.dll"))
         assert py_dlls
         py_dll = os.path.basename(py_dlls[0])
-        pyver = py_dll[6] + "." + py_dll[7]
+        py_dllver = py_dll.strip(".DHLNOPTY_dhlnopty")
+        pyver = py_dllver[0] + '.' + py_dllver[1:]
 
         if GetTargetArch() != 'x64':
             pyver += '-32'
@@ -723,7 +726,7 @@ def MakeInstallerFreeBSD(version, python_versions=[], **kwargs):
         oscmd("rm -f %s/tmp/python_dep" % outputdir)
 
         if "PYTHONVERSION" in SDK:
-            pyver_nodot = SDK["PYTHONVERSION"][6:9:2]
+            pyver_nodot = SDK["PYTHONVERSION"][6:].rstrip('dmu').replace('.', '')
         else:
             pyver_nodot = "%d%d" % (sys.version_info[:2])
 

+ 20 - 14
makepanda/makepanda.py

@@ -9,8 +9,8 @@
 ########################################################################
 
 import sys
-if sys.version_info < (3, 5):
-    print("This version of Python is not supported, use version 3.5 or higher.")
+if sys.version_info < (3, 6):
+    print("This version of Python is not supported, use version 3.6 or higher.")
     exit(1)
 
 try:
@@ -778,7 +778,7 @@ if (COMPILER=="GCC"):
     SmartPkgEnable("FFMPEG",    ffmpeg_libs, ffmpeg_libs, ("libavformat/avformat.h", "libavcodec/avcodec.h", "libavutil/avutil.h"))
     SmartPkgEnable("SWSCALE",   "libswscale", "libswscale", ("libswscale/swscale.h"), target_pkg = "FFMPEG", thirdparty_dir = "ffmpeg")
     SmartPkgEnable("SWRESAMPLE","libswresample", "libswresample", ("libswresample/swresample.h"), target_pkg = "FFMPEG", thirdparty_dir = "ffmpeg")
-    SmartPkgEnable("FFTW",      "",          ("fftw3"), ("fftw.h"))
+    SmartPkgEnable("FFTW",      "fftw3",     ("fftw3"), ("fftw.h"))
     SmartPkgEnable("FMODEX",    "",          ("fmodex"), ("fmodex", "fmodex/fmod.h"))
     SmartPkgEnable("FREETYPE",  "freetype2", ("freetype"), ("freetype2", "freetype2/freetype/freetype.h"))
     SmartPkgEnable("HARFBUZZ",  "harfbuzz",  ("harfbuzz"), ("harfbuzz", "harfbuzz/hb-ft.h"))
@@ -1111,8 +1111,12 @@ def CompileCxx(obj,src,opts):
             cmd += "/DWINVER=0x600 "
 
             cmd += "/Fo" + obj + " /nologo /c"
-            if GetTargetArch() != 'x64' and (not PkgSkip("SSE2") or 'SSE2' in opts):
-                cmd += " /arch:SSE2"
+            if GetTargetArch() == 'x86':
+                # x86 (32 bit) MSVC 2015+ defaults to /arch:SSE2
+                if not PkgSkip("SSE2") or 'SSE2' in opts:   # x86 with SSE2
+                    cmd += " /arch:SSE2"    # let's still be explicit and pass in /arch:SSE2
+                else:                                       # x86 without SSE2
+                    cmd += " /arch:IA32"
             for x in ipath: cmd += " /I" + x
             for (opt,dir) in INCDIRECTORIES:
                 if (opt=="ALWAYS") or (opt in opts): cmd += " /I" + BracketNameWithQuotes(dir)
@@ -1122,10 +1126,10 @@ def CompileCxx(obj,src,opts):
 
             if (optlevel==1): cmd += " /MDd /Zi /RTCs /GS"
             if (optlevel==2): cmd += " /MDd /Zi"
-            if (optlevel==3): cmd += " /MD /Zi /GS- /O2 /Ob2 /Oi /Ot /fp:fast"
+            if (optlevel==3): cmd += " /MD /Zi /GS- /O2 /fp:fast"
             if (optlevel==4):
-                cmd += " /MD /Zi /GS- /Ox /Ob2 /Oi /Ot /fp:fast /DFORCE_INLINING /DNDEBUG /GL"
-                cmd += " /Oy /Zp16"      # jean-claude add /Zp16 insures correct static alignment for SSEx
+                cmd += " /MD /Zi /GS- /O2 /fp:fast /DFORCE_INLINING /DNDEBUG /GL"
+                cmd += " /Zp16"      # jean-claude add /Zp16 insures correct static alignment for SSEx
 
             cmd += " /Fd" + os.path.splitext(obj)[0] + ".pdb"
 
@@ -1430,7 +1434,7 @@ def CompileFlex(wobj,wsrc,opts):
             oscmd(flex +    " -P" + pre + " -o"+wdst+" "+wsrc)
 
     # Finally, compile the generated source file.
-    CompileCxx(wobj,wdst,opts)
+    CompileCxx(wobj, wdst, opts + ["FLEX"])
 
 ########################################################################
 ##
@@ -3101,7 +3105,7 @@ if (PkgSkip("BULLET")==0):
     CopyAllHeaders('panda/metalibs/pandabullet')
 
 if (PkgSkip("SPEEDTREE")==0):
-    CopyAllHeaders('panda/src/speedtree')
+    CopyAllHeaders('contrib/src/speedtree')
 
 if (PkgSkip("DIRECT")==0):
     CopyAllHeaders('direct/src/directbase')
@@ -3825,6 +3829,7 @@ OPTS=['DIR:panda/src/collide']
 IGATEFILES=GetDirectoryContents('panda/src/collide', ["*.h", "*_composite*.cxx"])
 TargetAdd('libp3collide.in', opts=OPTS, input=IGATEFILES)
 TargetAdd('libp3collide.in', opts=['IMOD:panda3d.core', 'ILIB:libp3collide', 'SRCDIR:panda/src/collide'])
+PyTargetAdd('p3collide_ext_composite.obj', opts=OPTS, input='p3collide_ext_composite.cxx')
 
 #
 # DIRECTORY: panda/src/parametrics/
@@ -4069,6 +4074,7 @@ PyTargetAdd('core.pyd', input='p3event_pythonTask.obj')
 PyTargetAdd('core.pyd', input='p3gobj_ext_composite.obj')
 PyTargetAdd('core.pyd', input='p3pgraph_ext_composite.obj')
 PyTargetAdd('core.pyd', input='p3display_ext_composite.obj')
+PyTargetAdd('core.pyd', input='p3collide_ext_composite.obj')
 
 PyTargetAdd('core.pyd', input='core_module.obj')
 if not GetLinkAllStatic() and GetTarget() != 'emscripten':
@@ -4696,15 +4702,15 @@ if (PkgSkip("PANDAPHYSICS")==0):
   PyTargetAdd('physics.pyd', input=COMMON_PANDA_LIBS)
 
 #
-# DIRECTORY: panda/src/speedtree/
+# DIRECTORY: contrib/src/speedtree/
 #
 
 if (PkgSkip("SPEEDTREE")==0):
-  OPTS=['DIR:panda/src/speedtree', 'BUILDING:PANDASPEEDTREE', 'SPEEDTREE']
+  OPTS=['DIR:contrib/src/speedtree', 'BUILDING:PANDASPEEDTREE', 'SPEEDTREE']
   TargetAdd('pandaspeedtree_composite1.obj', opts=OPTS, input='pandaspeedtree_composite1.cxx')
-  IGATEFILES=GetDirectoryContents('panda/src/speedtree', ["*.h", "*_composite*.cxx"])
+  IGATEFILES=GetDirectoryContents('contrib/src/speedtree', ["*.h", "*_composite*.cxx"])
   TargetAdd('libpandaspeedtree.in', opts=OPTS, input=IGATEFILES)
-  TargetAdd('libpandaspeedtree.in', opts=['IMOD:libpandaspeedtree', 'ILIB:libpandaspeedtree', 'SRCDIR:panda/src/speedtree'])
+  TargetAdd('libpandaspeedtree.in', opts=['IMOD:libpandaspeedtree', 'ILIB:libpandaspeedtree', 'SRCDIR:contrib/src/speedtree'])
 
   PyTargetAdd('libpandaspeedtree_module.obj', input='libpandaspeedtree.in')
   PyTargetAdd('libpandaspeedtree_module.obj', opts=OPTS)

+ 0 - 5108
makepanda/makepanda.vcproj

@@ -1,5108 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
-	ProjectType="Visual C++"
-	Version="9,00"
-	Name="makepanda"
-	ProjectGUID="{F4935D7A-20AD-4132-B3CB-ADFF4F928D25}"
-	RootNamespace="makepanda"
-	Keyword="MakeFileProj"
-	TargetFrameworkVersion="0"
-	>
-	<Platforms>
-		<Platform
-			Name="Win32"
-		/>
-	</Platforms>
-	<ToolFiles>
-	</ToolFiles>
-	<Configurations>
-		<Configuration
-			Name="Debug|Win32"
-			OutputDirectory="..\debug"
-			IntermediateDirectory="..\debug"
-			ConfigurationType="0"
-			>
-			<Tool
-				Name="VCNMakeTool"
-				BuildCommandLine="cd .. &amp; makepanda\makepanda --everything --optimize 1 --outputdir debug"
-				ReBuildCommandLine=""
-				CleanCommandLine="cd .. &amp; RD /S /Q debug"
-				Output=""
-				PreprocessorDefinitions=""
-				IncludeSearchPath=""
-				ForcedIncludes=""
-				AssemblySearchPath=""
-				ForcedUsingAssemblies=""
-				CompileAsManaged=""
-			/>
-		</Configuration>
-		<Configuration
-			Name="Release|Win32"
-			OutputDirectory="..\built"
-			IntermediateDirectory="..\built"
-			ConfigurationType="0"
-			>
-			<Tool
-				Name="VCNMakeTool"
-				BuildCommandLine="cd .. &amp; makepanda\makepanda --everything --optimize 3 --installer"
-				ReBuildCommandLine=""
-				CleanCommandLine="cd .. &amp; RD /S /Q built"
-				Output=""
-				PreprocessorDefinitions=""
-				IncludeSearchPath=""
-				ForcedIncludes=""
-				AssemblySearchPath=""
-				ForcedUsingAssemblies=""
-				CompileAsManaged=""
-			/>
-		</Configuration>
-	</Configurations>
-	<References>
-	</References>
-	<Files>
-		<Filter Name="dtool">
-			<Filter Name="dconfig">
-				<File RelativePath="..\dtool\src\dconfig\config_dconfig.h"></File>
-				<File RelativePath="..\dtool\src\dconfig\dconfig.cxx"></File>
-				<File RelativePath="..\dtool\src\dconfig\config_dconfig.cxx"></File>
-				<File RelativePath="..\dtool\src\dconfig\dconfig_composite1.cxx"></File>
-				<File RelativePath="..\dtool\src\dconfig\test_searchpath.cxx"></File>
-				<File RelativePath="..\dtool\src\dconfig\test_config.cxx"></File>
-				<File RelativePath="..\dtool\src\dconfig\test_pfstream.cxx"></File>
-				<File RelativePath="..\dtool\src\dconfig\test_expand.cxx"></File>
-				<File RelativePath="..\dtool\src\dconfig\dconfig.I"></File>
-				<File RelativePath="..\dtool\src\dconfig\dconfig.h"></File>
-				<File RelativePath="..\dtool\src\dconfig\dconfig_composite.cxx"></File>
-			</Filter>
-			<Filter Name="parser-inc">
-				<File RelativePath="..\dtool\src\parser-inc\setjmp.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\Max.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\NxCapsuleController.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\ucontext.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\semaphore.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\avformat.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\stdcompare.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\rational.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\cg.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\NxCooking.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\NxPhysics.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\tcp.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\NxStream.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\cv.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\hex.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\iparamm2.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\cxcore.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\hxcore.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\math.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\cxtypes.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\pthreadtypes.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\istdplug.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\intfloat_readwrite.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\pem.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\dllpath.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\tinyxml.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\hxengin.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\artools.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\swscale.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\stdmat.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\iskin.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\phyexp.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\hxerror.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\collision_trimesh.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\pyconfig.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\iparamb2.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\rtp.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\ode.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\windows.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\hxcom.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\hxfiles.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\md5.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\WebView.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\rtsp.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\highgui.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\cgGL.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\cvtypes.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\x509v3.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\NxExtended.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\x509.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\rfftw.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\hxcomm.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\krb5.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\files.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\NxBoxController.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\WebViewListener.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\py_panda.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\mathematics.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\hxtbuf.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\avutil.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\stdtypedefs.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\cxerror.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\malloc.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\ssl.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\zlib.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\winsock2.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\socket.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\ctype.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\err.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\pthread.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\ft2build.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\hxwin.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\mmsystem.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\avio.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\NxController.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\NxControllerManager.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\stddef.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\Python.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\WebCore.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\stdint.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\control.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\rtspcodes.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\hxtbuff.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\ar.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\integer.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\ip.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\crypto.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\rand.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\MainHelix.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\evp.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\rsa.h"></File>
-				<File RelativePath="..\dtool\src\parser-inc\avcodec.h"></File>
-			</Filter>
-			<Filter Name="prc">
-				<File RelativePath="..\dtool\src\prc\configVariableSearchPath.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\notifyCategoryProxy.I"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableList.h"></File>
-				<File RelativePath="..\dtool\src\prc\reversedNumericData.h"></File>
-				<File RelativePath="..\dtool\src\prc\bigEndian.h"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableManager.I"></File>
-				<File RelativePath="..\dtool\src\prc\configFlags.h"></File>
-				<File RelativePath="..\dtool\src\prc\nativeNumericData.I"></File>
-				<File RelativePath="..\dtool\src\prc\notifySeverity.h"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableSearchPath.I"></File>
-				<File RelativePath="..\dtool\src\prc\prcKeyRegistry.h"></File>
-				<File RelativePath="..\dtool\src\prc\configDeclaration.I"></File>
-				<File RelativePath="..\dtool\src\prc\littleEndian.h"></File>
-				<File RelativePath="..\dtool\src\prc\reversedNumericData.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\configPage.I"></File>
-				<File RelativePath="..\dtool\src\prc\streamWriter.I"></File>
-				<File RelativePath="..\dtool\src\prc\configVariable.h"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableCore.h"></File>
-				<File RelativePath="..\dtool\src\prc\configVariable.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\encryptStreamBuf.I"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableBool.I"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableFilename.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableEnum.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\streamReader.h"></File>
-				<File RelativePath="..\dtool\src\prc\reversedNumericData.I"></File>
-				<File RelativePath="..\dtool\src\prc\configDeclaration.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableBase.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\encryptStream.h"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableInt.I"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableDouble.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\prcKeyRegistry.I"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableString.I"></File>
-				<File RelativePath="..\dtool\src\prc\streamWrapper.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\notifySeverity.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableEnum.h"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableSearchPath.h"></File>
-				<File RelativePath="..\dtool\src\prc\encryptStreamBuf.h"></File>
-				<File RelativePath="..\dtool\src\prc\config_prc.h"></File>
-				<File RelativePath="..\dtool\src\prc\configDeclaration.h"></File>
-				<File RelativePath="..\dtool\src\prc\globPattern.I"></File>
-				<File RelativePath="..\dtool\src\prc\prcKeyRegistry.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableInt64.h"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableInt64.I"></File>
-				<File RelativePath="..\dtool\src\prc\streamReader.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\config_prc.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\configPageManager.I"></File>
-				<File RelativePath="..\dtool\src\prc\notifyCategory.I"></File>
-				<File RelativePath="..\dtool\src\prc\encryptStreamBuf.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\notifyCategory.h"></File>
-				<File RelativePath="..\dtool\src\prc\streamWrapper.I"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableBase.h"></File>
-				<File RelativePath="..\dtool\src\prc\configPageManager.h"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableFilename.I"></File>
-				<File RelativePath="..\dtool\src\prc\nativeNumericData.h"></File>
-				<File RelativePath="..\dtool\src\prc\configPage.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\globPattern.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableList.I"></File>
-				<File RelativePath="..\dtool\src\prc\notifyCategory.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableFilename.h"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableEnum.I"></File>
-				<File RelativePath="..\dtool\src\prc\prc_composite.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableCore.I"></File>
-				<File RelativePath="..\dtool\src\prc\streamWrapper.h"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableInt64.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableBool.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\encryptStream.I"></File>
-				<File RelativePath="..\dtool\src\prc\notifyCategoryProxy.h"></File>
-				<File RelativePath="..\dtool\src\prc\encryptStream.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\pnotify.I"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableDouble.h"></File>
-				<File RelativePath="..\dtool\src\prc\prc_composite2.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableCore.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableManager.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableBase.I"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableString.h"></File>
-				<File RelativePath="..\dtool\src\prc\configFlags.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableList.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\streamWriter.h"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableBool.h"></File>
-				<File RelativePath="..\dtool\src\prc\globPattern.h"></File>
-				<File RelativePath="..\dtool\src\prc\configPage.h"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableInt.h"></File>
-				<File RelativePath="..\dtool\src\prc\configFlags.I"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableManager.h"></File>
-				<File RelativePath="..\dtool\src\prc\configPageManager.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableInt.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\configVariable.I"></File>
-				<File RelativePath="..\dtool\src\prc\streamWriter.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\streamReader.I"></File>
-				<File RelativePath="..\dtool\src\prc\notify.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableDouble.I"></File>
-				<File RelativePath="..\dtool\src\prc\pnotify.h"></File>
-				<File RelativePath="..\dtool\src\prc\nativeNumericData.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\configVariableString.cxx"></File>
-				<File RelativePath="..\dtool\src\prc\prc_composite1.cxx"></File>
-			</Filter>
-			<Filter Name="newheader">
-				<File RelativePath="..\dtool\src\newheader\newheader.cxx"></File>
-			</Filter>
-			<Filter Name="dtoolbase">
-				<File RelativePath="..\dtool\src\dtoolbase\lookup3.c"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\cmath.I"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\register_type.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\dlmalloc_src.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\typedObject.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\deletedBufferChain.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\pallocator.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\verdate.cpp"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\typeRegistry.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\deletedBufferChain.I"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\atomicAdjustDummyImpl.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\deletedChain.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\pstrtod.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\dtoolsymbols.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\mutexImpl.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\mutexDummyImpl.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\numeric_types.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\mutexPosixImpl.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\addHash.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\atomicAdjustPosixImpl.I"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\dtoolbase.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\atomicAdjustWin32Impl.I"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\atomicAdjustI386Impl.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\atomicAdjustI386Impl.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\typeHandle.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\addHash.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\register_type.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\atomicAdjustWin32Impl.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\dtool_platform.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\nearly_zero.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\neverFreeMemory.I"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\pmap.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\memoryHook.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\mutexWin32Impl.I"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\dtoolbase_composite1.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\typeRegistry.I"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\pset.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\atomicAdjustPosixImpl.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\mutexSpinlockImpl.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\plist.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\indent.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\lookup3.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\version.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\typeRegistryNode.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\selectThreadImpl.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\ptmalloc2_smp_src.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\indent.I"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\atomicAdjustI386Impl.I"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\dtoolbase_composite2.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\memoryBase.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\mutexSpinlockImpl.I"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\deletedBufferChain.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\neverFreeMemory.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\typedObject.I"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\typeRegistryNode.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\mutexSpinlockImpl.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\mutexDummyImpl.I"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\atomicAdjustPosixImpl.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\test_strtod.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\memoryHook.I"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\stl_compares.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\pvector.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\typeRegistryNode.I"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\mutexPosixImpl.I"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\atomicAdjust.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\register_type.I"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\mutexPosixImpl.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\memoryBase.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\pstrtod.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\typeHandle.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\indent.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\dlmalloc.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\addHash.I"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\mutexWin32Impl.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\neverFreeMemory.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\mutexDummyImpl.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\fakestringstream.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\cmath.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\pdeque.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\typeRegistry.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\atomicAdjustDummyImpl.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\dtoolbase.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\memoryHook.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\typeHandle.I"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\dtoolbase_cc.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\stl_compares.I"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\atomicAdjustDummyImpl.I"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\atomicAdjustWin32Impl.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\typedObject.h"></File>
-				<File RelativePath="..\dtool\src\dtoolbase\mutexWin32Impl.cxx"></File>
-			</Filter>
-			<Filter Name="dtoolutil">
-				<File RelativePath="..\dtool\src\dtoolutil\pandaFileStreamBuf.h"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\vector_src.h"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\dSearchPath.I"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\pfstreamBuf.h"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\config_dtoolutil.h"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\load_dso.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\dtoolutil_composite.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\pfstreamBuf.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\filename.I"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\pandaFileStream.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\executionEnvironment.I"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\dtoolutil_composite1.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\filename.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\vector_string.h"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\filename.h"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\executionEnvironment.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\executionEnvironment.h"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\test_touch.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\test_pfstream.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\vector_src.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\gnu_getopt.c"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\gnu_getopt.h"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\dSearchPath.h"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\filename_assist.h"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\config_dtoolutil.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\pandaFileStream.I"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\pfstream.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\vector_string.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\pandaSystem.h"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\gnu_getopt1.c"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\pandaFileStreamBuf.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\dtoolutil_composite2.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\pfstream.h"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\dSearchPath.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\load_dso.h"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\pandaSystem.cxx"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\pandaFileStream.h"></File>
-				<File RelativePath="..\dtool\src\dtoolutil\pfstream.I"></File>
-			</Filter>
-			<Filter Name="test_interrogate">
-				<File RelativePath="..\dtool\src\test_interrogate\test_lib.h"></File>
-				<File RelativePath="..\dtool\src\test_interrogate\test_lib.cxx"></File>
-				<File RelativePath="..\dtool\src\test_interrogate\test_interrogate.cxx"></File>
-			</Filter>
-			<Filter Name="interrogate">
-				<File RelativePath="..\dtool\src\interrogate\interrogateBuilder.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\functionWriterPtrToPython.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\parameterRemapBasicStringPtrToString.h"></File>
-				<File RelativePath="..\dtool\src\interrogate\parameterRemapToString.h"></File>
-				<File RelativePath="..\dtool\src\interrogate\interrogate_composite1.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\functionWriter.h"></File>
-				<File RelativePath="..\dtool\src\interrogate\parameterRemap.I"></File>
-				<File RelativePath="..\dtool\src\interrogate\functionRemap.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\interfaceMakerPythonObj.h"></File>
-				<File RelativePath="..\dtool\src\interrogate\parameterRemapBasicStringToString.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\parameterRemap.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\parameterRemapReferenceToPointer.h"></File>
-				<File RelativePath="..\dtool\src\interrogate\parameterRemapToString.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\parameterRemapBasicStringRefToString.h"></File>
-				<File RelativePath="..\dtool\src\interrogate\interrogate_composite2.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\typeManager.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\parameterRemapCharStarToString.h"></File>
-				<File RelativePath="..\dtool\src\interrogate\parse_file.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\interrogateBuilder.h"></File>
-				<File RelativePath="..\dtool\src\interrogate\parameterRemapThis.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\parameterRemapEnumToInt.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\parameterRemapPTToPointer.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\parameterRemapEnumToInt.h"></File>
-				<File RelativePath="..\dtool\src\interrogate\interfaceMakerPythonObj.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\parameterRemapBasicStringRefToString.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\parameterRemapPTToPointer.h"></File>
-				<File RelativePath="..\dtool\src\interrogate\interrogate.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\interfaceMakerC.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\parameterRemapConstToNonConst.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\parameterRemapReferenceToConcrete.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\parameterRemapUnchanged.h"></File>
-				<File RelativePath="..\dtool\src\interrogate\parameterRemapReferenceToConcrete.h"></File>
-				<File RelativePath="..\dtool\src\interrogate\typeManager.h"></File>
-				<File RelativePath="..\dtool\src\interrogate\parameterRemapConstToNonConst.h"></File>
-				<File RelativePath="..\dtool\src\interrogate\interrogate_composite.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\parameterRemapReferenceToPointer.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\functionRemap.h"></File>
-				<File RelativePath="..\dtool\src\interrogate\interfaceMakerPythonNative.h"></File>
-				<File RelativePath="..\dtool\src\interrogate\parameterRemapBasicStringPtrToString.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\interfaceMaker.h"></File>
-				<File RelativePath="..\dtool\src\interrogate\functionWriterPtrFromPython.h"></File>
-				<File RelativePath="..\dtool\src\interrogate\interfaceMakerPython.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\parameterRemapConcreteToPointer.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\parameterRemapBasicStringToString.h"></File>
-				<File RelativePath="..\dtool\src\interrogate\functionWriters.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\interfaceMakerPythonNative.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\functionWriterPtrToPython.h"></File>
-				<File RelativePath="..\dtool\src\interrogate\interfaceMakerPythonSimple.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\parameterRemapUnchanged.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\functionWriters.h"></File>
-				<File RelativePath="..\dtool\src\interrogate\interfaceMakerPython.h"></File>
-				<File RelativePath="..\dtool\src\interrogate\functionWriter.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\interfaceMakerC.h"></File>
-				<File RelativePath="..\dtool\src\interrogate\interfaceMakerPythonSimple.h"></File>
-				<File RelativePath="..\dtool\src\interrogate\parameterRemapThis.h"></File>
-				<File RelativePath="..\dtool\src\interrogate\parameterRemapCharStarToString.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\interrogate_module.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\parameterRemapConcreteToPointer.h"></File>
-				<File RelativePath="..\dtool\src\interrogate\interrogate.h"></File>
-				<File RelativePath="..\dtool\src\interrogate\functionWriterPtrFromPython.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogate\parameterRemap.h"></File>
-				<File RelativePath="..\dtool\src\interrogate\interfaceMaker.cxx"></File>
-			</Filter>
-			<Filter Name="cppparser">
-				<File RelativePath="..\dtool\src\cppparser\cppManifest.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppFunctionGroup.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppIdentifier.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppTypedef.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppTBDType.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppParser_composite2.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppScope.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppDeclaration.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppTypeParser.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppFile.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppNameComponent.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppVisibility.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppParameterList.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppConstType.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppNamespace.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppType.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppExtensionType.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppGlobals.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppFunctionType.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppVisibility.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppInstance.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppSimpleType.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppBison.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppUsing.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppTemplateParameterList.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppExpressionParser.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppIdentifier.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppToken.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppPreprocessor.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppBison.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppInstanceIdentifier.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppStructType.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppManifest.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppExpressionParser.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppInstance.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppStructType.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppParameterList.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppToken.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppTemplateScope.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppMakeSeq.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppTypeProxy.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppExtensionType.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppTypedef.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppClassTemplateParameter.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppNamespace.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppFunctionType.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppParser_composite1.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppSimpleType.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppFunctionGroup.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppBisonDefs.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppInstanceIdentifier.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppArrayType.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppTemplateScope.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppParser.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppCommentBlock.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppClassTemplateParameter.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppDeclaration.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppTBDType.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppParser_composite.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppReferenceType.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppFile.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppCommentBlock.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppExpression.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppTypeParser.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppPointerType.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppEnumType.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppParser.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppReferenceType.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppPointerType.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppConstType.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppTypeDeclaration.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppPreprocessor.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppExpression.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppType.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppNameComponent.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppScope.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppMakeSeq.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppEnumType.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppTemplateParameterList.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppGlobals.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppArrayType.h"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppTypeDeclaration.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppUsing.cxx"></File>
-				<File RelativePath="..\dtool\src\cppparser\cppTypeProxy.h"></File>
-			</Filter>
-			<Filter Name="interrogatedb">
-				<File RelativePath="..\dtool\src\interrogatedb\interrogateComponent.I"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogateFunctionWrapper.h"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogateFunction.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogateFunction.I"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\config_interrogatedb.h"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\indexRemapper.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogateType.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogateManifest.I"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogatedb_composite2.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogateManifest.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogateComponent.h"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogateMakeSeq.h"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\config_interrogatedb.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogateFunctionWrapper.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogate_interface.h"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogateElement.I"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogateMakeSeq.I"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogateType.I"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogate_datafile.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogateFunctionWrapper.I"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogateDatabase.I"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\vector_int.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogateManifest.h"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogateElement.h"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogateType.h"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\py_panda.h"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\indexRemapper.h"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogate_request.h"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogateDatabase.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogate_request.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\vector_int.h"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogateDatabase.h"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogatedb_composite.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogateComponent.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogate_interface.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogateElement.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogate_datafile.I"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\dtool_super_base.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\py_panda.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogateMakeSeq.cxx"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogateFunction.h"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogate_datafile.h"></File>
-				<File RelativePath="..\dtool\src\interrogatedb\interrogatedb_composite1.cxx"></File>
-			</Filter>
-			<Filter Name="prckeys">
-				<File RelativePath="..\dtool\src\prckeys\signPrcFile_src.cxx"></File>
-				<File RelativePath="..\dtool\src\prckeys\makePrcKey.cxx"></File>
-			</Filter>
-		</Filter>
-		<Filter Name="panda">
-			<Filter Name="char">
-				<File RelativePath="..\panda\src\char\characterVertexSlider.h"></File>
-				<File RelativePath="..\panda\src\char\characterJointBundle.cxx"></File>
-				<File RelativePath="..\panda\src\char\character.cxx"></File>
-				<File RelativePath="..\panda\src\char\jointVertexTransform.h"></File>
-				<File RelativePath="..\panda\src\char\characterVertexSlider.cxx"></File>
-				<File RelativePath="..\panda\src\char\characterJoint.cxx"></File>
-				<File RelativePath="..\panda\src\char\jointVertexTransform.I"></File>
-				<File RelativePath="..\panda\src\char\config_char.cxx"></File>
-				<File RelativePath="..\panda\src\char\char_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\char\characterJointBundle.h"></File>
-				<File RelativePath="..\panda\src\char\characterSlider.cxx"></File>
-				<File RelativePath="..\panda\src\char\character.I"></File>
-				<File RelativePath="..\panda\src\char\jointVertexTransform.cxx"></File>
-				<File RelativePath="..\panda\src\char\char_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\char\characterJointEffect.cxx"></File>
-				<File RelativePath="..\panda\src\char\characterJoint.h"></File>
-				<File RelativePath="..\panda\src\char\characterVertexSlider.I"></File>
-				<File RelativePath="..\panda\src\char\config_char.h"></File>
-				<File RelativePath="..\panda\src\char\character.h"></File>
-				<File RelativePath="..\panda\src\char\characterJointEffect.h"></File>
-				<File RelativePath="..\panda\src\char\char_composite.cxx"></File>
-				<File RelativePath="..\panda\src\char\characterSlider.h"></File>
-				<File RelativePath="..\panda\src\char\characterJointEffect.I"></File>
-				<File RelativePath="..\panda\src\char\characterJoint.I"></File>
-				<File RelativePath="..\panda\src\char\characterJointBundle.I"></File>
-			</Filter>
-			<Filter Name="vision">
-				<File RelativePath="..\panda\src\vision\vision_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\vision\config_vision.h"></File>
-				<File RelativePath="..\panda\src\vision\webcamVideo.I"></File>
-				<File RelativePath="..\panda\src\vision\openCVTexture.cxx"></File>
-				<File RelativePath="..\panda\src\vision\config_vision.cxx"></File>
-				<File RelativePath="..\panda\src\vision\arToolKit.h"></File>
-				<File RelativePath="..\panda\src\vision\webcamVideoDS.cxx"></File>
-				<File RelativePath="..\panda\src\vision\arToolKit.I"></File>
-				<File RelativePath="..\panda\src\vision\openCVTexture.I"></File>
-				<File RelativePath="..\panda\src\vision\webcamVideo.h"></File>
-				<File RelativePath="..\panda\src\vision\openCVTexture.h"></File>
-				<File RelativePath="..\panda\src\vision\webcamVideo.cxx"></File>
-				<File RelativePath="..\panda\src\vision\arToolKit.cxx"></File>
-			</Filter>
-			<Filter Name="gobj">
-				<File RelativePath="..\panda\src\gobj\geomEnums.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\geomContext.h"></File>
-				<File RelativePath="..\panda\src\gobj\geomVertexData.h"></File>
-				<File RelativePath="..\panda\src\gobj\shaderContext.h"></File>
-				<File RelativePath="..\panda\src\gobj\transformBlend.I"></File>
-				<File RelativePath="..\panda\src\gobj\sliderTable.I"></File>
-				<File RelativePath="..\panda\src\gobj\gobj_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\geomLinestrips.h"></File>
-				<File RelativePath="..\panda\src\gobj\animateVerticesRequest.h"></File>
-				<File RelativePath="..\panda\src\gobj\preparedGraphicsObjects.h"></File>
-				<File RelativePath="..\panda\src\gobj\geomVertexReader.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\transformTable.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\transformBlendTable.h"></File>
-				<File RelativePath="..\panda\src\gobj\geomVertexAnimationSpec.I"></File>
-				<File RelativePath="..\panda\src\gobj\bufferContext.I"></File>
-				<File RelativePath="..\panda\src\gobj\gobj_composite.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\materialPool.h"></File>
-				<File RelativePath="..\panda\src\gobj\orthographicLens.h"></File>
-				<File RelativePath="..\panda\src\gobj\geomPrimitive.I"></File>
-				<File RelativePath="..\panda\src\gobj\geomPoints.h"></File>
-				<File RelativePath="..\panda\src\gobj\geomVertexRewriter.I"></File>
-				<File RelativePath="..\panda\src\gobj\geomCacheManager.h"></File>
-				<File RelativePath="..\panda\src\gobj\lens.I"></File>
-				<File RelativePath="..\panda\src\gobj\geomPoints.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\geomVertexFormat.I"></File>
-				<File RelativePath="..\panda\src\gobj\shaderContext.I"></File>
-				<File RelativePath="..\panda\src\gobj\lens.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\vertexDataBlock.h"></File>
-				<File RelativePath="..\panda\src\gobj\geomCacheEntry.h"></File>
-				<File RelativePath="..\panda\src\gobj\transformTable.I"></File>
-				<File RelativePath="..\panda\src\gobj\preparedGraphicsObjects.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\adaptiveLru.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\geomTriangles.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\vertexDataBuffer.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\geom.I"></File>
-				<File RelativePath="..\panda\src\gobj\vertexDataPage.h"></File>
-				<File RelativePath="..\panda\src\gobj\materialPool.I"></File>
-				<File RelativePath="..\panda\src\gobj\geomCacheEntry.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\vertexSlider.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\geomLinestrips.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\queryContext.I"></File>
-				<File RelativePath="..\panda\src\gobj\geomVertexWriter.h"></File>
-				<File RelativePath="..\panda\src\gobj\indexBufferContext.h"></File>
-				<File RelativePath="..\panda\src\gobj\geomLines.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\savedContext.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\perspectiveLens.I"></File>
-				<File RelativePath="..\panda\src\gobj\transformBlendTable.I"></File>
-				<File RelativePath="..\panda\src\gobj\geomVertexArrayData.I"></File>
-				<File RelativePath="..\panda\src\gobj\geomTriangles.h"></File>
-				<File RelativePath="..\panda\src\gobj\geomVertexAnimationSpec.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\orthographicLens.I"></File>
-				<File RelativePath="..\panda\src\gobj\bufferResidencyTracker.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\vertexDataBook.h"></File>
-				<File RelativePath="..\panda\src\gobj\vertexDataSaveFile.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\texturePeeker.h"></File>
-				<File RelativePath="..\panda\src\gobj\queryContext.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\geomVertexData.I"></File>
-				<File RelativePath="..\panda\src\gobj\geomMunger.I"></File>
-				<File RelativePath="..\panda\src\gobj\transformBlend.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\textureContext.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\internalName.I"></File>
-				<File RelativePath="..\panda\src\gobj\sliderTable.h"></File>
-				<File RelativePath="..\panda\src\gobj\vertexBufferContext.h"></File>
-				<File RelativePath="..\panda\src\gobj\geomEnums.h"></File>
-				<File RelativePath="..\panda\src\gobj\shader.I"></File>
-				<File RelativePath="..\panda\src\gobj\geomContext.I"></File>
-				<File RelativePath="..\panda\src\gobj\transformTable.h"></File>
-				<File RelativePath="..\panda\src\gobj\geomTristrips.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\texture.I"></File>
-				<File RelativePath="..\panda\src\gobj\config_gobj.h"></File>
-				<File RelativePath="..\panda\src\gobj\texturePoolFilter.I"></File>
-				<File RelativePath="..\panda\src\gobj\bufferContextChain.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\textureReloadRequest.h"></File>
-				<File RelativePath="..\panda\src\gobj\geomVertexWriter.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\texturePoolFilter.h"></File>
-				<File RelativePath="..\panda\src\gobj\lens.h"></File>
-				<File RelativePath="..\panda\src\gobj\matrixLens.h"></File>
-				<File RelativePath="..\panda\src\gobj\adaptiveLru.h"></File>
-				<File RelativePath="..\panda\src\gobj\occlusionQueryContext.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\textureStage.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\vertexTransform.I"></File>
-				<File RelativePath="..\panda\src\gobj\vertexTransform.h"></File>
-				<File RelativePath="..\panda\src\gobj\occlusionQueryContext.h"></File>
-				<File RelativePath="..\panda\src\gobj\geomCacheManager.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\vertexDataPage.I"></File>
-				<File RelativePath="..\panda\src\gobj\geomVertexRewriter.h"></File>
-				<File RelativePath="..\panda\src\gobj\geomTrifans.h"></File>
-				<File RelativePath="..\panda\src\gobj\vertexDataBuffer.I"></File>
-				<File RelativePath="..\panda\src\gobj\vertexDataPage.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\bufferResidencyTracker.h"></File>
-				<File RelativePath="..\panda\src\gobj\geomVertexReader.I"></File>
-				<File RelativePath="..\panda\src\gobj\vertexSlider.h"></File>
-				<File RelativePath="..\panda\src\gobj\textureCollection.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\orthographicLens.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\queryContext.h"></File>
-				<File RelativePath="..\panda\src\gobj\shader.h"></File>
-				<File RelativePath="..\panda\src\gobj\textureCollection.h"></File>
-				<File RelativePath="..\panda\src\gobj\geomVertexColumn.h"></File>
-				<File RelativePath="..\panda\src\gobj\geomVertexAnimationSpec.h"></File>
-				<File RelativePath="..\panda\src\gobj\textureStage.I"></File>
-				<File RelativePath="..\panda\src\gobj\simpleLru.h"></File>
-				<File RelativePath="..\panda\src\gobj\material.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\geomVertexWriter.I"></File>
-				<File RelativePath="..\panda\src\gobj\bufferContext.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\textureContext.I"></File>
-				<File RelativePath="..\panda\src\gobj\internalName.h"></File>
-				<File RelativePath="..\panda\src\gobj\geomTristrips.h"></File>
-				<File RelativePath="..\panda\src\gobj\textureContext.h"></File>
-				<File RelativePath="..\panda\src\gobj\config_gobj.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\geomVertexArrayData.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\shaderContext.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\animateVerticesRequest.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\texturePeeker.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\geomMunger.h"></File>
-				<File RelativePath="..\panda\src\gobj\vertexDataBook.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\simpleAllocator.h"></File>
-				<File RelativePath="..\panda\src\gobj\simpleLru.I"></File>
-				<File RelativePath="..\panda\src\gobj\texturePool.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\geomVertexArrayFormat.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\geomVertexColumn.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\userVertexSlider.I"></File>
-				<File RelativePath="..\panda\src\gobj\geomPrimitive.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\indexBufferContext.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\material.I"></File>
-				<File RelativePath="..\panda\src\gobj\bufferContextChain.I"></File>
-				<File RelativePath="..\panda\src\gobj\perspectiveLens.h"></File>
-				<File RelativePath="..\panda\src\gobj\materialPool.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\vertexSlider.I"></File>
-				<File RelativePath="..\panda\src\gobj\videoTexture.h"></File>
-				<File RelativePath="..\panda\src\gobj\vertexBufferContext.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\simpleLru.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\vertexDataSaveFile.I"></File>
-				<File RelativePath="..\panda\src\gobj\geomVertexArrayFormat.h"></File>
-				<File RelativePath="..\panda\src\gobj\geom.h"></File>
-				<File RelativePath="..\panda\src\gobj\bufferContext.h"></File>
-				<File RelativePath="..\panda\src\gobj\internalName.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\geomCacheManager.I"></File>
-				<File RelativePath="..\panda\src\gobj\bufferResidencyTracker.I"></File>
-				<File RelativePath="..\panda\src\gobj\vertexBufferContext.I"></File>
-				<File RelativePath="..\panda\src\gobj\geomTrifans.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\geomVertexReader.h"></File>
-				<File RelativePath="..\panda\src\gobj\geomContext.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\gobj_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\texturePool.I"></File>
-				<File RelativePath="..\panda\src\gobj\vertexDataSaveFile.h"></File>
-				<File RelativePath="..\panda\src\gobj\sliderTable.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\occlusionQueryContext.I"></File>
-				<File RelativePath="..\panda\src\gobj\userVertexSlider.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\geomMunger.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\texture.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\savedContext.I"></File>
-				<File RelativePath="..\panda\src\gobj\textureReloadRequest.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\geomVertexArrayFormat.I"></File>
-				<File RelativePath="..\panda\src\gobj\texture.h"></File>
-				<File RelativePath="..\panda\src\gobj\geomPrimitive.h"></File>
-				<File RelativePath="..\panda\src\gobj\geomVertexFormat.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\simpleAllocator.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\bufferContextChain.h"></File>
-				<File RelativePath="..\panda\src\gobj\texturePoolFilter.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\indexBufferContext.I"></File>
-				<File RelativePath="..\panda\src\gobj\textureReloadRequest.I"></File>
-				<File RelativePath="..\panda\src\gobj\geomVertexColumn.I"></File>
-				<File RelativePath="..\panda\src\gobj\textureCollection.I"></File>
-				<File RelativePath="..\panda\src\gobj\userVertexTransform.I"></File>
-				<File RelativePath="..\panda\src\gobj\geomCacheEntry.I"></File>
-				<File RelativePath="..\panda\src\gobj\texturePeeker.I"></File>
-				<File RelativePath="..\panda\src\gobj\geomVertexArrayData.h"></File>
-				<File RelativePath="..\panda\src\gobj\geomLines.h"></File>
-				<File RelativePath="..\panda\src\gobj\animateVerticesRequest.I"></File>
-				<File RelativePath="..\panda\src\gobj\savedContext.h"></File>
-				<File RelativePath="..\panda\src\gobj\perspectiveLens.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\userVertexTransform.h"></File>
-				<File RelativePath="..\panda\src\gobj\preparedGraphicsObjects.I"></File>
-				<File RelativePath="..\panda\src\gobj\transformBlendTable.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\geom.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\vertexTransform.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\matrixLens.I"></File>
-				<File RelativePath="..\panda\src\gobj\vertexDataBuffer.h"></File>
-				<File RelativePath="..\panda\src\gobj\shader.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\textureStage.h"></File>
-				<File RelativePath="..\panda\src\gobj\userVertexTransform.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\texturePool.h"></File>
-				<File RelativePath="..\panda\src\gobj\vertexDataBlock.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\geomVertexRewriter.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\material.h"></File>
-				<File RelativePath="..\panda\src\gobj\simpleAllocator.I"></File>
-				<File RelativePath="..\panda\src\gobj\geomVertexData.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\geomVertexFormat.h"></File>
-				<File RelativePath="..\panda\src\gobj\videoTexture.I"></File>
-				<File RelativePath="..\panda\src\gobj\transformBlend.h"></File>
-				<File RelativePath="..\panda\src\gobj\vertexDataBook.I"></File>
-				<File RelativePath="..\panda\src\gobj\userVertexSlider.h"></File>
-				<File RelativePath="..\panda\src\gobj\videoTexture.cxx"></File>
-				<File RelativePath="..\panda\src\gobj\vertexDataBlock.I"></File>
-				<File RelativePath="..\panda\src\gobj\adaptiveLru.I"></File>
-				<File RelativePath="..\panda\src\gobj\matrixLens.cxx"></File>
-			</Filter>
-			<Filter Name="parametrics">
-				<File RelativePath="..\panda\src\parametrics\nurbsSurfaceResult.cxx"></File>
-				<File RelativePath="..\panda\src\parametrics\nurbsCurveResult.h"></File>
-				<File RelativePath="..\panda\src\parametrics\config_parametrics.h"></File>
-				<File RelativePath="..\panda\src\parametrics\nurbsVertex.h"></File>
-				<File RelativePath="..\panda\src\parametrics\sheetNode.h"></File>
-				<File RelativePath="..\panda\src\parametrics\nurbsVertex.cxx"></File>
-				<File RelativePath="..\panda\src\parametrics\cubicCurveseg.h"></File>
-				<File RelativePath="..\panda\src\parametrics\nurbsCurveEvaluator.h"></File>
-				<File RelativePath="..\panda\src\parametrics\parametrics_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\parametrics\parametrics_composite.cxx"></File>
-				<File RelativePath="..\panda\src\parametrics\hermiteCurve.cxx"></File>
-				<File RelativePath="..\panda\src\parametrics\cubicCurveseg.cxx"></File>
-				<File RelativePath="..\panda\src\parametrics\sheetNode.I"></File>
-				<File RelativePath="..\panda\src\parametrics\ropeNode.I"></File>
-				<File RelativePath="..\panda\src\parametrics\nurbsCurve.h"></File>
-				<File RelativePath="..\panda\src\parametrics\nurbsCurveInterface.cxx"></File>
-				<File RelativePath="..\panda\src\parametrics\curveFitter.h"></File>
-				<File RelativePath="..\panda\src\parametrics\nurbsCurveResult.I"></File>
-				<File RelativePath="..\panda\src\parametrics\nurbsSurfaceEvaluator.cxx"></File>
-				<File RelativePath="..\panda\src\parametrics\nurbsCurveInterface.h"></File>
-				<File RelativePath="..\panda\src\parametrics\test_parametrics.cxx"></File>
-				<File RelativePath="..\panda\src\parametrics\ropeNode.cxx"></File>
-				<File RelativePath="..\panda\src\parametrics\ropeNode.h"></File>
-				<File RelativePath="..\panda\src\parametrics\parametricCurveCollection.cxx"></File>
-				<File RelativePath="..\panda\src\parametrics\nurbsSurfaceResult.I"></File>
-				<File RelativePath="..\panda\src\parametrics\nurbsSurfaceEvaluator.I"></File>
-				<File RelativePath="..\panda\src\parametrics\nurbsCurveResult.cxx"></File>
-				<File RelativePath="..\panda\src\parametrics\sheetNode.cxx"></File>
-				<File RelativePath="..\panda\src\parametrics\parametricCurve.cxx"></File>
-				<File RelativePath="..\panda\src\parametrics\nurbsCurveInterface.I"></File>
-				<File RelativePath="..\panda\src\parametrics\nurbsCurve.I"></File>
-				<File RelativePath="..\panda\src\parametrics\parametrics_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\parametrics\nurbsCurveEvaluator.I"></File>
-				<File RelativePath="..\panda\src\parametrics\nurbsVertex.I"></File>
-				<File RelativePath="..\panda\src\parametrics\nurbsCurveEvaluator.cxx"></File>
-				<File RelativePath="..\panda\src\parametrics\parametricCurveCollection.h"></File>
-				<File RelativePath="..\panda\src\parametrics\piecewiseCurve.h"></File>
-				<File RelativePath="..\panda\src\parametrics\hermiteCurve.h"></File>
-				<File RelativePath="..\panda\src\parametrics\parametricCurveCollection.I"></File>
-				<File RelativePath="..\panda\src\parametrics\nurbsSurfaceEvaluator.h"></File>
-				<File RelativePath="..\panda\src\parametrics\nurbsCurve.cxx"></File>
-				<File RelativePath="..\panda\src\parametrics\piecewiseCurve.cxx"></File>
-				<File RelativePath="..\panda\src\parametrics\nurbsBasisVector.I"></File>
-				<File RelativePath="..\panda\src\parametrics\nurbsBasisVector.cxx"></File>
-				<File RelativePath="..\panda\src\parametrics\parametricCurve.h"></File>
-				<File RelativePath="..\panda\src\parametrics\nurbsBasisVector.h"></File>
-				<File RelativePath="..\panda\src\parametrics\config_parametrics.cxx"></File>
-				<File RelativePath="..\panda\src\parametrics\curveFitter.I"></File>
-				<File RelativePath="..\panda\src\parametrics\nurbsSurfaceResult.h"></File>
-				<File RelativePath="..\panda\src\parametrics\curveFitter.cxx"></File>
-			</Filter>
-			<Filter Name="linmath">
-				<File RelativePath="..\panda\src\linmath\vector_TexCoordf.h"></File>
-				<File RelativePath="..\panda\src\linmath\lvec3_ops_src.I"></File>
-				<File RelativePath="..\panda\src\linmath\lvector4_src.h"></File>
-				<File RelativePath="..\panda\src\linmath\vector_LVecBase3f.h"></File>
-				<File RelativePath="..\panda\src\linmath\lorientation.h"></File>
-				<File RelativePath="..\panda\src\linmath\linmath_composite.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\compose_matrix.h"></File>
-				<File RelativePath="..\panda\src\linmath\lpoint3.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\lvector2_src.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\lpoint2.h"></File>
-				<File RelativePath="..\panda\src\linmath\lvecBase4_src.h"></File>
-				<File RelativePath="..\panda\src\linmath\vector_LPoint2f.h"></File>
-				<File RelativePath="..\panda\src\linmath\coordinateSystem.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\deg_2_rad.h"></File>
-				<File RelativePath="..\panda\src\linmath\lorientation_src.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\lorientation_src.I"></File>
-				<File RelativePath="..\panda\src\linmath\lvecBase2_src.h"></File>
-				<File RelativePath="..\panda\src\linmath\mathNumbers.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\lquaternion_src.h"></File>
-				<File RelativePath="..\panda\src\linmath\lvec2_ops_src.I"></File>
-				<File RelativePath="..\panda\src\linmath\lrotation.h"></File>
-				<File RelativePath="..\panda\src\linmath\lpoint2.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\cast_to_float.h"></File>
-				<File RelativePath="..\panda\src\linmath\lquaternion_src.I"></File>
-				<File RelativePath="..\panda\src\linmath\lvecBase3_src.h"></File>
-				<File RelativePath="..\panda\src\linmath\lpoint2_src.I"></File>
-				<File RelativePath="..\panda\src\linmath\lmatrix4_src.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\compose_matrix_src.I"></File>
-				<File RelativePath="..\panda\src\linmath\lvec4_ops.h"></File>
-				<File RelativePath="..\panda\src\linmath\lvector3_src.I"></File>
-				<File RelativePath="..\panda\src\linmath\dblnames.h"></File>
-				<File RelativePath="..\panda\src\linmath\lrotation_src.h"></File>
-				<File RelativePath="..\panda\src\linmath\lvec2_ops.h"></File>
-				<File RelativePath="..\panda\src\linmath\lrotation.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\lvector3.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\lvector3_src.h"></File>
-				<File RelativePath="..\panda\src\linmath\cast_to_double.I"></File>
-				<File RelativePath="..\panda\src\linmath\lvector4.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\lcast_to_src.h"></File>
-				<File RelativePath="..\panda\src\linmath\lvecBase2_src.I"></File>
-				<File RelativePath="..\panda\src\linmath\lvector4_src.I"></File>
-				<File RelativePath="..\panda\src\linmath\cast_to_double.h"></File>
-				<File RelativePath="..\panda\src\linmath\lvecBase4.h"></File>
-				<File RelativePath="..\panda\src\linmath\luse.h"></File>
-				<File RelativePath="..\panda\src\linmath\lvec2_ops_src.h"></File>
-				<File RelativePath="..\panda\src\linmath\compose_matrix.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\lvecBase3_src.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\lvecBase2.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\lpoint3_src.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\lvector2_src.h"></File>
-				<File RelativePath="..\panda\src\linmath\lrotation_src.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\lmatrix.h"></File>
-				<File RelativePath="..\panda\src\linmath\lmatrix4_src.I"></File>
-				<File RelativePath="..\panda\src\linmath\lmatrix3_src.I"></File>
-				<File RelativePath="..\panda\src\linmath\compose_matrix_src.h"></File>
-				<File RelativePath="..\panda\src\linmath\lmat_ops.h"></File>
-				<File RelativePath="..\panda\src\linmath\config_linmath.h"></File>
-				<File RelativePath="..\panda\src\linmath\luse.I"></File>
-				<File RelativePath="..\panda\src\linmath\lvecBase3_src.I"></File>
-				<File RelativePath="..\panda\src\linmath\lorientation_src.h"></File>
-				<File RelativePath="..\panda\src\linmath\lquaternion_src.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\mathNumbers.h"></File>
-				<File RelativePath="..\panda\src\linmath\lpoint3_src.I"></File>
-				<File RelativePath="..\panda\src\linmath\vector_Normalf.h"></File>
-				<File RelativePath="..\panda\src\linmath\lvecBase2.h"></File>
-				<File RelativePath="..\panda\src\linmath\lvector3_src.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\lcast_to_src.I"></File>
-				<File RelativePath="..\panda\src\linmath\lpoint4_src.h"></File>
-				<File RelativePath="..\panda\src\linmath\cast_to_float.I"></File>
-				<File RelativePath="..\panda\src\linmath\lpoint2_src.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\lcast_to.h"></File>
-				<File RelativePath="..\panda\src\linmath\linmath_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\lmatrix3_src.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\flt2dblnames.h"></File>
-				<File RelativePath="..\panda\src\linmath\lmatrix3_src.h"></File>
-				<File RelativePath="..\panda\src\linmath\fltnames.h"></File>
-				<File RelativePath="..\panda\src\linmath\vector_Colorf.h"></File>
-				<File RelativePath="..\panda\src\linmath\lmatrix4_src.h"></File>
-				<File RelativePath="..\panda\src\linmath\lpoint2_src.h"></File>
-				<File RelativePath="..\panda\src\linmath\lquaternion.h"></File>
-				<File RelativePath="..\panda\src\linmath\lrotation_src.I"></File>
-				<File RelativePath="..\panda\src\linmath\lvec3_ops.h"></File>
-				<File RelativePath="..\panda\src\linmath\lpoint4.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\lmat_ops_src.I"></File>
-				<File RelativePath="..\panda\src\linmath\lpoint4.h"></File>
-				<File RelativePath="..\panda\src\linmath\aa_luse.h"></File>
-				<File RelativePath="..\panda\src\linmath\test_math.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\lvector2_src.I"></File>
-				<File RelativePath="..\panda\src\linmath\lvec3_ops_src.h"></File>
-				<File RelativePath="..\panda\src\linmath\lmatrix.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\lvecBase4_src.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\mathNumbers.I"></File>
-				<File RelativePath="..\panda\src\linmath\lvector4.h"></File>
-				<File RelativePath="..\panda\src\linmath\lvecBase3.h"></File>
-				<File RelativePath="..\panda\src\linmath\lquaternion.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\dbl2fltnames.h"></File>
-				<File RelativePath="..\panda\src\linmath\compose_matrix_src.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\vector_Vertexf.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\config_linmath.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\lvecBase2_src.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\vector_Normalf.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\lvec4_ops_src.I"></File>
-				<File RelativePath="..\panda\src\linmath\vector_Vertexf.h"></File>
-				<File RelativePath="..\panda\src\linmath\lvector4_src.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\lmat_ops_src.h"></File>
-				<File RelativePath="..\panda\src\linmath\lvecBase3.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\vector_LVecBase3f.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\lpoint3_src.h"></File>
-				<File RelativePath="..\panda\src\linmath\lpoint4_src.I"></File>
-				<File RelativePath="..\panda\src\linmath\linmath_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\lvector2.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\coordinateSystem.h"></File>
-				<File RelativePath="..\panda\src\linmath\lpoint4_src.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\lpoint3.h"></File>
-				<File RelativePath="..\panda\src\linmath\vector_Colorf.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\lvecBase4_src.I"></File>
-				<File RelativePath="..\panda\src\linmath\lvecBase4.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\lvector3.h"></File>
-				<File RelativePath="..\panda\src\linmath\lvec4_ops_src.h"></File>
-				<File RelativePath="..\panda\src\linmath\lorientation.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\luse.cxx"></File>
-				<File RelativePath="..\panda\src\linmath\lvector2.h"></File>
-				<File RelativePath="..\panda\src\linmath\vector_LPoint2f.cxx"></File>
-			</Filter>
-			<Filter Name="collide">
-				<File RelativePath="..\panda\src\collide\collisionHandlerEvent.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionHandlerFloor.I"></File>
-				<File RelativePath="..\panda\src\collide\collisionParabola.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionHandlerFloor.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionRay.h"></File>
-				<File RelativePath="..\panda\src\collide\collisionBox.I"></File>
-				<File RelativePath="..\panda\src\collide\collisionHandlerFluidPusher.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionSphere.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionHandler.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionLevelState.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionRecorder.h"></File>
-				<File RelativePath="..\panda\src\collide\collisionLine.I"></File>
-				<File RelativePath="..\panda\src\collide\collisionHandlerFluidPusher.h"></File>
-				<File RelativePath="..\panda\src\collide\config_collide.h"></File>
-				<File RelativePath="..\panda\src\collide\collisionCapsule.h"></File>
-				<File RelativePath="..\panda\src\collide\collisionSegment.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionBox.h"></File>
-				<File RelativePath="..\panda\src\collide\collide_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionSolid.I"></File>
-				<File RelativePath="..\panda\src\collide\collisionVisualizer.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionInvSphere.h"></File>
-				<File RelativePath="..\panda\src\collide\collisionHandlerFluidPusher.I"></File>
-				<File RelativePath="..\panda\src\collide\collisionNode.h"></File>
-				<File RelativePath="..\panda\src\collide\collisionGeom.I"></File>
-				<File RelativePath="..\panda\src\collide\collisionSegment.I"></File>
-				<File RelativePath="..\panda\src\collide\collisionCapsule.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionHandlerQueue.h"></File>
-				<File RelativePath="..\panda\src\collide\collisionParabola.I"></File>
-				<File RelativePath="..\panda\src\collide\collisionPlane.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionHandlerEvent.h"></File>
-				<File RelativePath="..\panda\src\collide\collisionTraverser.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionPlane.h"></File>
-				<File RelativePath="..\panda\src\collide\collisionDSSolid.I"></File>
-				<File RelativePath="..\panda\src\collide\collide_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionHandlerGravity.h"></File>
-				<File RelativePath="..\panda\src\collide\collisionHandlerPusher.I"></File>
-				<File RelativePath="..\panda\src\collide\collisionInvSphere.I"></File>
-				<File RelativePath="..\panda\src\collide\collisionLevelState.I"></File>
-				<File RelativePath="..\panda\src\collide\collisionSolid.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionLevelStateBase.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionPolygon.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionSphere.I"></File>
-				<File RelativePath="..\panda\src\collide\collisionVisualizer.h"></File>
-				<File RelativePath="..\panda\src\collide\collisionHandlerPhysical.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionDSSolid.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionDSSolid.h"></File>
-				<File RelativePath="..\panda\src\collide\collisionHandlerHighestEvent.h"></File>
-				<File RelativePath="..\panda\src\collide\collisionSphere.h"></File>
-				<File RelativePath="..\panda\src\collide\collisionSegment.h"></File>
-				<File RelativePath="..\panda\src\collide\collisionVisualizer.I"></File>
-				<File RelativePath="..\panda\src\collide\collisionParabola.h"></File>
-				<File RelativePath="..\panda\src\collide\collisionNode.I"></File>
-				<File RelativePath="..\panda\src\collide\collisionHandlerEvent.I"></File>
-				<File RelativePath="..\panda\src\collide\collisionHandler.I"></File>
-				<File RelativePath="..\panda\src\collide\collisionFloorMesh.h"></File>
-				<File RelativePath="..\panda\src\collide\collisionTraverser.h"></File>
-				<File RelativePath="..\panda\src\collide\collisionHandlerPusher.h"></File>
-				<File RelativePath="..\panda\src\collide\collisionInvSphere.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionLine.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionEntry.I"></File>
-				<File RelativePath="..\panda\src\collide\collisionCapsule.I"></File>
-				<File RelativePath="..\panda\src\collide\collisionSolid.h"></File>
-				<File RelativePath="..\panda\src\collide\collisionPlane.I"></File>
-				<File RelativePath="..\panda\src\collide\collisionHandlerGravity.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionRecorder.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionLevelStateBase.I"></File>
-				<File RelativePath="..\panda\src\collide\collisionGeom.h"></File>
-				<File RelativePath="..\panda\src\collide\collisionLevelStateBase.h"></File>
-				<File RelativePath="..\panda\src\collide\collide_composite.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionLevelState.h"></File>
-				<File RelativePath="..\panda\src\collide\collisionEntry.h"></File>
-				<File RelativePath="..\panda\src\collide\collisionHandlerPusher.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionFloorMesh.I"></File>
-				<File RelativePath="..\panda\src\collide\collisionHandlerFloor.h"></File>
-				<File RelativePath="..\panda\src\collide\collisionHandlerHighestEvent.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionPolygon.I"></File>
-				<File RelativePath="..\panda\src\collide\collisionHandlerQueue.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionEntry.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionRay.I"></File>
-				<File RelativePath="..\panda\src\collide\collisionHandlerPhysical.h"></File>
-				<File RelativePath="..\panda\src\collide\config_collide.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionHandlerGravity.I"></File>
-				<File RelativePath="..\panda\src\collide\collisionLine.h"></File>
-				<File RelativePath="..\panda\src\collide\collisionHandlerPhysical.I"></File>
-				<File RelativePath="..\panda\src\collide\collisionFloorMesh.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionPolygon.h"></File>
-				<File RelativePath="..\panda\src\collide\collisionGeom.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionTraverser.I"></File>
-				<File RelativePath="..\panda\src\collide\collisionRecorder.I"></File>
-				<File RelativePath="..\panda\src\collide\collisionHandler.h"></File>
-				<File RelativePath="..\panda\src\collide\collisionNode.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionRay.cxx"></File>
-				<File RelativePath="..\panda\src\collide\collisionBox.cxx"></File>
-			</Filter>
-			<Filter Name="putil">
-				<File RelativePath="..\panda\src\putil\bamWriter.h"></File>
-				<File RelativePath="..\panda\src\putil\compareTo.h"></File>
-				<File RelativePath="..\panda\src\putil\globalPointerRegistry.cxx"></File>
-				<File RelativePath="..\panda\src\putil\ioPtaDatagramShort.cxx"></File>
-				<File RelativePath="..\panda\src\putil\callbackData.cxx"></File>
-				<File RelativePath="..\panda\src\putil\factory.I"></File>
-				<File RelativePath="..\panda\src\putil\firstOfPairLess.h"></File>
-				<File RelativePath="..\panda\src\putil\animInterface.I"></File>
-				<File RelativePath="..\panda\src\putil\loaderOptions.I"></File>
-				<File RelativePath="..\panda\src\putil\writableParam.I"></File>
-				<File RelativePath="..\panda\src\putil\loaderOptions.h"></File>
-				<File RelativePath="..\panda\src\putil\factoryParams.h"></File>
-				<File RelativePath="..\panda\src\putil\copyOnWriteObject.I"></File>
-				<File RelativePath="..\panda\src\putil\buttonRegistry.cxx"></File>
-				<File RelativePath="..\panda\src\putil\test_bam.h"></File>
-				<File RelativePath="..\panda\src\putil\writableParam.h"></File>
-				<File RelativePath="..\panda\src\putil\datagramInputFile.h"></File>
-				<File RelativePath="..\panda\src\putil\timedCycle.h"></File>
-				<File RelativePath="..\panda\src\putil\firstOfPairCompare.h"></File>
-				<File RelativePath="..\panda\src\putil\cPointerCallbackObject.h"></File>
-				<File RelativePath="..\panda\src\putil\nodeCachedReferenceCount.I"></File>
-				<File RelativePath="..\panda\src\putil\buttonHandle.h"></File>
-				<File RelativePath="..\panda\src\putil\pta_ushort.cxx"></File>
-				<File RelativePath="..\panda\src\putil\lineStreamBuf.I"></File>
-				<File RelativePath="..\panda\src\putil\modifierButtons.cxx"></File>
-				<File RelativePath="..\panda\src\putil\datagramInputFile.I"></File>
-				<File RelativePath="..\panda\src\putil\pbitops.I"></File>
-				<File RelativePath="..\panda\src\putil\bamEnums.cxx"></File>
-				<File RelativePath="..\panda\src\putil\test_uniqueIdAllocator.cxx"></File>
-				<File RelativePath="..\panda\src\putil\uniqueIdAllocator.cxx"></File>
-				<File RelativePath="..\panda\src\putil\loaderOptions.cxx"></File>
-				<File RelativePath="..\panda\src\putil\bamEnums.h"></File>
-				<File RelativePath="..\panda\src\putil\collideMask.h"></File>
-				<File RelativePath="..\panda\src\putil\vector_typedWritable.cxx"></File>
-				<File RelativePath="..\panda\src\putil\timedCycle.I"></File>
-				<File RelativePath="..\panda\src\putil\nameUniquifier.cxx"></File>
-				<File RelativePath="..\panda\src\putil\pythonCallbackObject.I"></File>
-				<File RelativePath="..\panda\src\putil\doubleBitMask.I"></File>
-				<File RelativePath="..\panda\src\putil\buttonRegistry.I"></File>
-				<File RelativePath="..\panda\src\putil\simpleHashMap.I"></File>
-				<File RelativePath="..\panda\src\putil\mouseButton.h"></File>
-				<File RelativePath="..\panda\src\putil\bamCache.cxx"></File>
-				<File RelativePath="..\panda\src\putil\updateSeq.I"></File>
-				<File RelativePath="..\panda\src\putil\bitArray.h"></File>
-				<File RelativePath="..\panda\src\putil\globalPointerRegistry.h"></File>
-				<File RelativePath="..\panda\src\putil\keyboardButton.cxx"></File>
-				<File RelativePath="..\panda\src\putil\bamCacheIndex.cxx"></File>
-				<File RelativePath="..\panda\src\putil\factoryBase.h"></File>
-				<File RelativePath="..\panda\src\putil\linkedListNode.h"></File>
-				<File RelativePath="..\panda\src\putil\callbackObject.cxx"></File>
-				<File RelativePath="..\panda\src\putil\keyboardButton.h"></File>
-				<File RelativePath="..\panda\src\putil\vector_writable.h"></File>
-				<File RelativePath="..\panda\src\putil\callbackData.h"></File>
-				<File RelativePath="..\panda\src\putil\lineStream.I"></File>
-				<File RelativePath="..\panda\src\putil\factoryParam.I"></File>
-				<File RelativePath="..\panda\src\putil\sparseArray.cxx"></File>
-				<File RelativePath="..\panda\src\putil\vector_ushort.h"></File>
-				<File RelativePath="..\panda\src\putil\putil_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\putil\string_utils.cxx"></File>
-				<File RelativePath="..\panda\src\putil\test_bam.cxx"></File>
-				<File RelativePath="..\panda\src\putil\buttonHandle.cxx"></File>
-				<File RelativePath="..\panda\src\putil\ioPtaDatagramInt.h"></File>
-				<File RelativePath="..\panda\src\putil\factory.h"></File>
-				<File RelativePath="..\panda\src\putil\factoryBase.cxx"></File>
-				<File RelativePath="..\panda\src\putil\linkedListNode.cxx"></File>
-				<File RelativePath="..\panda\src\putil\firstOfPairCompare.I"></File>
-				<File RelativePath="..\panda\src\putil\cPointerCallbackObject.cxx"></File>
-				<File RelativePath="..\panda\src\putil\bitMask.I"></File>
-				<File RelativePath="..\panda\src\putil\sparseArray.I"></File>
-				<File RelativePath="..\panda\src\putil\datagramOutputFile.cxx"></File>
-				<File RelativePath="..\panda\src\putil\typedWritableReferenceCount.cxx"></File>
-				<File RelativePath="..\panda\src\putil\typedWritable.cxx"></File>
-				<File RelativePath="..\panda\src\putil\timedCycle.cxx"></File>
-				<File RelativePath="..\panda\src\putil\writableConfigurable.cxx"></File>
-				<File RelativePath="..\panda\src\putil\bamReaderParam.h"></File>
-				<File RelativePath="..\panda\src\putil\mouseData.h"></File>
-				<File RelativePath="..\panda\src\putil\simpleHashMap.cxx"></File>
-				<File RelativePath="..\panda\src\putil\indirectCompareSort.h"></File>
-				<File RelativePath="..\panda\src\putil\copyOnWritePointer.h"></File>
-				<File RelativePath="..\panda\src\putil\clockObject.I"></File>
-				<File RelativePath="..\panda\src\putil\writableConfigurable.h"></File>
-				<File RelativePath="..\panda\src\putil\factoryParams.I"></File>
-				<File RelativePath="..\panda\src\putil\bamCacheIndex.h"></File>
-				<File RelativePath="..\panda\src\putil\vector_ushort.cxx"></File>
-				<File RelativePath="..\panda\src\putil\sparseArray.h"></File>
-				<File RelativePath="..\panda\src\putil\callbackObject.I"></File>
-				<File RelativePath="..\panda\src\putil\typedWritable.h"></File>
-				<File RelativePath="..\panda\src\putil\vector_double.h"></File>
-				<File RelativePath="..\panda\src\putil\pbitops.h"></File>
-				<File RelativePath="..\panda\src\putil\ioPtaDatagramFloat.h"></File>
-				<File RelativePath="..\panda\src\putil\test_filename.cxx"></File>
-				<File RelativePath="..\panda\src\putil\putil_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\putil\mouseButton.cxx"></File>
-				<File RelativePath="..\panda\src\putil\indirectCompareNames.I"></File>
-				<File RelativePath="..\panda\src\putil\pbitops.cxx"></File>
-				<File RelativePath="..\panda\src\putil\clockObject.cxx"></File>
-				<File RelativePath="..\panda\src\putil\test_bamWrite.cxx"></File>
-				<File RelativePath="..\panda\src\putil\mouseData.cxx"></File>
-				<File RelativePath="..\panda\src\putil\vector_writable.cxx"></File>
-				<File RelativePath="..\panda\src\putil\pta_double.h"></File>
-				<File RelativePath="..\panda\src\putil\copyOnWritePointer.cxx"></File>
-				<File RelativePath="..\panda\src\putil\bitMask.cxx"></File>
-				<File RelativePath="..\panda\src\putil\config_putil.h"></File>
-				<File RelativePath="..\panda\src\putil\clockObject.h"></File>
-				<File RelativePath="..\panda\src\putil\lineStream.h"></File>
-				<File RelativePath="..\panda\src\putil\datagramInputFile.cxx"></File>
-				<File RelativePath="..\panda\src\putil\ioPtaDatagramInt.cxx"></File>
-				<File RelativePath="..\panda\src\putil\load_prc_file.h"></File>
-				<File RelativePath="..\panda\src\putil\bamWriter.I"></File>
-				<File RelativePath="..\panda\src\putil\nameUniquifier.h"></File>
-				<File RelativePath="..\panda\src\putil\datagramOutputFile.h"></File>
-				<File RelativePath="..\panda\src\putil\load_prc_file.cxx"></File>
-				<File RelativePath="..\panda\src\putil\modifierButtons.I"></File>
-				<File RelativePath="..\panda\src\putil\cPointerCallbackObject.I"></File>
-				<File RelativePath="..\panda\src\putil\typedWritableReferenceCount.h"></File>
-				<File RelativePath="..\panda\src\putil\indirectCompareTo.h"></File>
-				<File RelativePath="..\panda\src\putil\buttonHandle.I"></File>
-				<File RelativePath="..\panda\src\putil\bitArray.cxx"></File>
-				<File RelativePath="..\panda\src\putil\nodeCachedReferenceCount.cxx"></File>
-				<File RelativePath="..\panda\src\putil\buttonRegistry.h"></File>
-				<File RelativePath="..\panda\src\putil\pta_ushort.h"></File>
-				<File RelativePath="..\panda\src\putil\vector_typedWritable.h"></File>
-				<File RelativePath="..\panda\src\putil\indirectCompareSort.I"></File>
-				<File RelativePath="..\panda\src\putil\factoryBase.I"></File>
-				<File RelativePath="..\panda\src\putil\updateSeq.h"></File>
-				<File RelativePath="..\panda\src\putil\writableParam.cxx"></File>
-				<File RelativePath="..\panda\src\putil\portalMask.h"></File>
-				<File RelativePath="..\panda\src\putil\bamCacheIndex.I"></File>
-				<File RelativePath="..\panda\src\putil\vector_ulong.h"></File>
-				<File RelativePath="..\panda\src\putil\typedWritable.I"></File>
-				<File RelativePath="..\panda\src\putil\pta_double.cxx"></File>
-				<File RelativePath="..\panda\src\putil\drawMask.h"></File>
-				<File RelativePath="..\panda\src\putil\doubleBitMask.cxx"></File>
-				<File RelativePath="..\panda\src\putil\bamCache.h"></File>
-				<File RelativePath="..\panda\src\putil\callbackData.I"></File>
-				<File RelativePath="..\panda\src\putil\indirectCompareTo.I"></File>
-				<File RelativePath="..\panda\src\putil\copyOnWritePointer.I"></File>
-				<File RelativePath="..\panda\src\putil\test_glob.cxx"></File>
-				<File RelativePath="..\panda\src\putil\updateSeq.cxx"></File>
-				<File RelativePath="..\panda\src\putil\vector_double.cxx"></File>
-				<File RelativePath="..\panda\src\putil\simpleHashMap.h"></File>
-				<File RelativePath="..\panda\src\putil\lineStream.cxx"></File>
-				<File RelativePath="..\panda\src\putil\uniqueIdAllocator.h"></File>
-				<File RelativePath="..\panda\src\putil\bamReader.I"></File>
-				<File RelativePath="..\panda\src\putil\cachedTypedWritableReferenceCount.h"></File>
-				<File RelativePath="..\panda\src\putil\bamCacheRecord.cxx"></File>
-				<File RelativePath="..\panda\src\putil\ioPtaDatagramFloat.cxx"></File>
-				<File RelativePath="..\panda\src\putil\bitMask.h"></File>
-				<File RelativePath="..\panda\src\putil\configurable.cxx"></File>
-				<File RelativePath="..\panda\src\putil\bamCache.I"></File>
-				<File RelativePath="..\panda\src\putil\pythonCallbackObject.h"></File>
-				<File RelativePath="..\panda\src\putil\copyOnWriteObject.h"></File>
-				<File RelativePath="..\panda\src\putil\vector_ulong.cxx"></File>
-				<File RelativePath="..\panda\src\putil\test_bamRead.cxx"></File>
-				<File RelativePath="..\panda\src\putil\copyOnWriteObject.cxx"></File>
-				<File RelativePath="..\panda\src\putil\bamReader.h"></File>
-				<File RelativePath="..\panda\src\putil\factoryParams.cxx"></File>
-				<File RelativePath="..\panda\src\putil\bamReaderParam.cxx"></File>
-				<File RelativePath="..\panda\src\putil\factoryParam.h"></File>
-				<File RelativePath="..\panda\src\putil\putil_composite.cxx"></File>
-				<File RelativePath="..\panda\src\putil\configurable.h"></File>
-				<File RelativePath="..\panda\src\putil\bitArray.I"></File>
-				<File RelativePath="..\panda\src\putil\cachedTypedWritableReferenceCount.I"></File>
-				<File RelativePath="..\panda\src\putil\string_utils.h"></File>
-				<File RelativePath="..\panda\src\putil\indirectCompareNames.h"></File>
-				<File RelativePath="..\panda\src\putil\iterator_types.h"></File>
-				<File RelativePath="..\panda\src\putil\typedWritableReferenceCount.I"></File>
-				<File RelativePath="..\panda\src\putil\string_utils.I"></File>
-				<File RelativePath="..\panda\src\putil\bamCacheRecord.h"></File>
-				<File RelativePath="..\panda\src\putil\bamWriter.cxx"></File>
-				<File RelativePath="..\panda\src\putil\compareTo.I"></File>
-				<File RelativePath="..\panda\src\putil\bamReaderParam.I"></File>
-				<File RelativePath="..\panda\src\putil\animInterface.h"></File>
-				<File RelativePath="..\panda\src\putil\modifierButtons.h"></File>
-				<File RelativePath="..\panda\src\putil\doubleBitMask.h"></File>
-				<File RelativePath="..\panda\src\putil\bamReader.cxx"></File>
-				<File RelativePath="..\panda\src\putil\lineStreamBuf.cxx"></File>
-				<File RelativePath="..\panda\src\putil\nameUniquifier.I"></File>
-				<File RelativePath="..\panda\src\putil\bamCacheRecord.I"></File>
-				<File RelativePath="..\panda\src\putil\animInterface.cxx"></File>
-				<File RelativePath="..\panda\src\putil\lineStreamBuf.h"></File>
-				<File RelativePath="..\panda\src\putil\config_putil.cxx"></File>
-				<File RelativePath="..\panda\src\putil\cachedTypedWritableReferenceCount.cxx"></File>
-				<File RelativePath="..\panda\src\putil\pythonCallbackObject.cxx"></File>
-				<File RelativePath="..\panda\src\putil\test_linestream.cxx"></File>
-				<File RelativePath="..\panda\src\putil\ioPtaDatagramShort.h"></File>
-				<File RelativePath="..\panda\src\putil\callbackObject.h"></File>
-				<File RelativePath="..\panda\src\putil\nodeCachedReferenceCount.h"></File>
-				<File RelativePath="..\panda\src\putil\datagramOutputFile.I"></File>
-				<File RelativePath="..\panda\src\putil\firstOfPairLess.I"></File>
-				<File RelativePath="..\panda\src\putil\globalPointerRegistry.I"></File>
-				<File RelativePath="..\panda\src\putil\bam.h"></File>
-				<File RelativePath="..\panda\src\putil\factoryParam.cxx"></File>
-				<File RelativePath="..\panda\src\putil\linkedListNode.I"></File>
-				<File RelativePath="..\panda\src\putil\mouseData.I"></File>
-			</Filter>
-			<Filter Name="dxgsg9">
-				<File RelativePath="..\panda\src\dxgsg9\wdxGraphicsPipe9.I"></File>
-				<File RelativePath="..\panda\src\dxgsg9\wdxGraphicsWindow9.cxx"></File>
-				<File RelativePath="..\panda\src\dxgsg9\dxGeomMunger9.I"></File>
-				<File RelativePath="..\panda\src\dxgsg9\dxShaderContext9.I"></File>
-				<File RelativePath="..\panda\src\dxgsg9\dxGraphicsStateGuardian9.I"></File>
-				<File RelativePath="..\panda\src\dxgsg9\vertexElementArray.cxx"></File>
-				<File RelativePath="..\panda\src\dxgsg9\dxVertexBufferContext9.h"></File>
-				<File RelativePath="..\panda\src\dxgsg9\wdxGraphicsBuffer9.h"></File>
-				<File RelativePath="..\panda\src\dxgsg9\dxGeomMunger9.h"></File>
-				<File RelativePath="..\panda\src\dxgsg9\dxTextureContext9.h"></File>
-				<File RelativePath="..\panda\src\dxgsg9\dxOcclusionQueryContext9.h"></File>
-				<File RelativePath="..\panda\src\dxgsg9\dxgsg9_composite.cxx"></File>
-				<File RelativePath="..\panda\src\dxgsg9\dxShaderContext9.h"></File>
-				<File RelativePath="..\panda\src\dxgsg9\dxOcclusionQueryContext9.cxx"></File>
-				<File RelativePath="..\panda\src\dxgsg9\dxgsg9_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\dxgsg9\dxTextureContext9.cxx"></File>
-				<File RelativePath="..\panda\src\dxgsg9\wdxGraphicsPipe9.cxx"></File>
-				<File RelativePath="..\panda\src\dxgsg9\wdxGraphicsWindow9.h"></File>
-				<File RelativePath="..\panda\src\dxgsg9\dxOcclusionQueryContext9.I"></File>
-				<File RelativePath="..\panda\src\dxgsg9\dxGraphicsDevice9.cxx"></File>
-				<File RelativePath="..\panda\src\dxgsg9\dxInput9.h"></File>
-				<File RelativePath="..\panda\src\dxgsg9\dxGraphicsStateGuardian9.cxx"></File>
-				<File RelativePath="..\panda\src\dxgsg9\dxGeomMunger9.cxx"></File>
-				<File RelativePath="..\panda\src\dxgsg9\dxGraphicsStateGuardian9.h"></File>
-				<File RelativePath="..\panda\src\dxgsg9\dxTextureContext9.I"></File>
-				<File RelativePath="..\panda\src\dxgsg9\dxIndexBufferContext9.cxx"></File>
-				<File RelativePath="..\panda\src\dxgsg9\dxIndexBufferContext9.h"></File>
-				<File RelativePath="..\panda\src\dxgsg9\dxShaderContext9.cxx"></File>
-				<File RelativePath="..\panda\src\dxgsg9\dxIndexBufferContext9.I"></File>
-				<File RelativePath="..\panda\src\dxgsg9\dxInput9.cxx"></File>
-				<File RelativePath="..\panda\src\dxgsg9\wdxGraphicsBuffer9.cxx"></File>
-				<File RelativePath="..\panda\src\dxgsg9\wdxGraphicsWindow9.I"></File>
-				<File RelativePath="..\panda\src\dxgsg9\config_dxgsg9.cxx"></File>
-				<File RelativePath="..\panda\src\dxgsg9\dxgsg9base.h"></File>
-				<File RelativePath="..\panda\src\dxgsg9\wdxGraphicsPipe9.h"></File>
-				<File RelativePath="..\panda\src\dxgsg9\dxVertexBufferContext9.cxx"></File>
-				<File RelativePath="..\panda\src\dxgsg9\vertexElementArray.h"></File>
-				<File RelativePath="..\panda\src\dxgsg9\dxVertexBufferContext9.I"></File>
-				<File RelativePath="..\panda\src\dxgsg9\dxGraphicsDevice9.h"></File>
-				<File RelativePath="..\panda\src\dxgsg9\config_dxgsg9.h"></File>
-			</Filter>
-			<Filter Name="display">
-				<File RelativePath="..\panda\src\display\displayRegionCullCallbackData.I"></File>
-				<File RelativePath="..\panda\src\display\graphicsEngine.cxx"></File>
-				<File RelativePath="..\panda\src\display\displayRegionCullCallbackData.h"></File>
-				<File RelativePath="..\panda\src\display\windowHandle.I"></File>
-				<File RelativePath="..\panda\src\display\renderBuffer.h"></File>
-				<File RelativePath="..\panda\src\display\graphicsEngine.h"></File>
-				<File RelativePath="..\panda\src\display\config_display.h"></File>
-				<File RelativePath="..\panda\src\display\display_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\display\displayInformation.cxx"></File>
-				<File RelativePath="..\panda\src\display\windowProperties.I"></File>
-				<File RelativePath="..\panda\src\display\displayRegion.h"></File>
-				<File RelativePath="..\panda\src\display\windowHandle.h"></File>
-				<File RelativePath="..\panda\src\display\displayRegionCullCallbackData.cxx"></File>
-				<File RelativePath="..\panda\src\display\graphicsOutput.cxx"></File>
-				<File RelativePath="..\panda\src\display\graphicsBuffer.I"></File>
-				<File RelativePath="..\panda\src\display\stencilRenderStates.cxx"></File>
-				<File RelativePath="..\panda\src\display\stereoDisplayRegion.I"></File>
-				<File RelativePath="..\panda\src\display\graphicsWindowInputDevice.h"></File>
-				<File RelativePath="..\panda\src\display\graphicsThreadingModel.I"></File>
-				<File RelativePath="..\panda\src\display\parasiteBuffer.cxx"></File>
-				<File RelativePath="..\panda\src\display\stencilRenderStates.h"></File>
-				<File RelativePath="..\panda\src\display\frameBufferProperties.h"></File>
-				<File RelativePath="..\panda\src\display\graphicsPipeSelection.h"></File>
-				<File RelativePath="..\panda\src\display\standardMunger.I"></File>
-				<File RelativePath="..\panda\src\display\lru.cxx"></File>
-				<File RelativePath="..\panda\src\display\graphicsPipeSelection.cxx"></File>
-				<File RelativePath="..\panda\src\display\displayInformation.h"></File>
-				<File RelativePath="..\panda\src\display\display_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\display\lru.h"></File>
-				<File RelativePath="..\panda\src\display\windowProperties.cxx"></File>
-				<File RelativePath="..\panda\src\display\drawableRegion.h"></File>
-				<File RelativePath="..\panda\src\display\graphicsBuffer.cxx"></File>
-				<File RelativePath="..\panda\src\display\drawableRegion.I"></File>
-				<File RelativePath="..\panda\src\display\graphicsBuffer.h"></File>
-				<File RelativePath="..\panda\src\display\parasiteBuffer.h"></File>
-				<File RelativePath="..\panda\src\display\subprocessWindow.cxx"></File>
-				<File RelativePath="..\panda\src\display\graphicsPipeSelection.I"></File>
-				<File RelativePath="..\panda\src\display\windowHandle.cxx"></File>
-				<File RelativePath="..\panda\src\display\graphicsWindow.I"></File>
-				<File RelativePath="..\panda\src\display\nativeWindowHandle.I"></File>
-				<File RelativePath="..\panda\src\display\graphicsPipe.I"></File>
-				<File RelativePath="..\panda\src\display\displayRegion.I"></File>
-				<File RelativePath="..\panda\src\display\nativeWindowHandle.h"></File>
-				<File RelativePath="..\panda\src\display\subprocessWindowBuffer.cxx"></File>
-				<File RelativePath="..\panda\src\display\graphicsOutput.I"></File>
-				<File RelativePath="..\panda\src\display\graphicsEngine.I"></File>
-				<File RelativePath="..\panda\src\display\stereoDisplayRegion.cxx"></File>
-				<File RelativePath="..\panda\src\display\displayRegion.cxx"></File>
-				<File RelativePath="..\panda\src\display\graphicsWindow.cxx"></File>
-				<File RelativePath="..\panda\src\display\subprocessWindow.I"></File>
-				<File RelativePath="..\panda\src\display\displayRegionDrawCallbackData.h"></File>
-				<File RelativePath="..\panda\src\display\stereoDisplayRegion.h"></File>
-				<File RelativePath="..\panda\src\display\graphicsOutput.h"></File>
-				<File RelativePath="..\panda\src\display\graphicsDevice.I"></File>
-				<File RelativePath="..\panda\src\display\graphicsThreadingModel.h"></File>
-				<File RelativePath="..\panda\src\display\drawableRegion.cxx"></File>
-				<File RelativePath="..\panda\src\display\display_composite.cxx"></File>
-				<File RelativePath="..\panda\src\display\standardMunger.cxx"></File>
-				<File RelativePath="..\panda\src\display\nativeWindowHandle.cxx"></File>
-				<File RelativePath="..\panda\src\display\displaySearchParameters.h"></File>
-				<File RelativePath="..\panda\src\display\config_display.cxx"></File>
-				<File RelativePath="..\panda\src\display\graphicsThreadingModel.cxx"></File>
-				<File RelativePath="..\panda\src\display\standardMunger.h"></File>
-				<File RelativePath="..\panda\src\display\graphicsDevice.cxx"></File>
-				<File RelativePath="..\panda\src\display\graphicsStateGuardian.h"></File>
-				<File RelativePath="..\panda\src\display\subprocessWindowBuffer.I"></File>
-				<File RelativePath="..\panda\src\display\parasiteBuffer.I"></File>
-				<File RelativePath="..\panda\src\display\windowProperties.h"></File>
-				<File RelativePath="..\panda\src\display\graphicsStateGuardian.cxx"></File>
-				<File RelativePath="..\panda\src\display\graphicsWindowInputDevice.I"></File>
-				<File RelativePath="..\panda\src\display\frameBufferProperties.cxx"></File>
-				<File RelativePath="..\panda\src\display\subprocessWindow.h"></File>
-				<File RelativePath="..\panda\src\display\graphicsPipe.h"></File>
-				<File RelativePath="..\panda\src\display\frameBufferProperties.I"></File>
-				<File RelativePath="..\panda\src\display\displayRegionDrawCallbackData.cxx"></File>
-				<File RelativePath="..\panda\src\display\graphicsWindowInputDevice.cxx"></File>
-				<File RelativePath="..\panda\src\display\graphicsPipe.cxx"></File>
-				<File RelativePath="..\panda\src\display\graphicsStateGuardian.I"></File>
-				<File RelativePath="..\panda\src\display\graphicsWindow.h"></File>
-				<File RelativePath="..\panda\src\display\subprocessWindowBuffer.h"></File>
-				<File RelativePath="..\panda\src\display\graphicsDevice.h"></File>
-				<File RelativePath="..\panda\src\display\displaySearchParameters.cxx"></File>
-				<File RelativePath="..\panda\src\display\displayRegionDrawCallbackData.I"></File>
-			</Filter>
-			<Filter Name="audio">
-				<File RelativePath="..\panda\src\audio\audioSound.I"></File>
-				<File RelativePath="..\panda\src\audio\config_audio.h"></File>
-				<File RelativePath="..\panda\src\audio\nullAudioSound.cxx"></File>
-				<File RelativePath="..\panda\src\audio\audio_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\audio\filterProperties.h"></File>
-				<File RelativePath="..\panda\src\audio\nullAudioManager.cxx"></File>
-				<File RelativePath="..\panda\src\audio\audio_composite.cxx"></File>
-				<File RelativePath="..\panda\src\audio\filterProperties.I"></File>
-				<File RelativePath="..\panda\src\audio\test_audio.cxx"></File>
-				<File RelativePath="..\panda\src\audio\nullAudioManager.h"></File>
-				<File RelativePath="..\panda\src\audio\audioSound.cxx"></File>
-				<File RelativePath="..\panda\src\audio\config_audio.cxx"></File>
-				<File RelativePath="..\panda\src\audio\nullAudioSound.h"></File>
-				<File RelativePath="..\panda\src\audio\filterProperties.cxx"></File>
-				<File RelativePath="..\panda\src\audio\audioManager.h"></File>
-				<File RelativePath="..\panda\src\audio\audioLoadRequest.I"></File>
-				<File RelativePath="..\panda\src\audio\audioManager.cxx"></File>
-				<File RelativePath="..\panda\src\audio\audioLoadRequest.cxx"></File>
-				<File RelativePath="..\panda\src\audio\audio.h"></File>
-				<File RelativePath="..\panda\src\audio\audioManager.I"></File>
-				<File RelativePath="..\panda\src\audio\audioSound.h"></File>
-				<File RelativePath="..\panda\src\audio\audioLoadRequest.h"></File>
-			</Filter>
-			<Filter Name="recorder">
-				<File RelativePath="..\panda\src\recorder\socketStreamRecorder.I"></File>
-				<File RelativePath="..\panda\src\recorder\mouseRecorder.cxx"></File>
-				<File RelativePath="..\panda\src\recorder\socketStreamRecorder.h"></File>
-				<File RelativePath="..\panda\src\recorder\recorderTable.I"></File>
-				<File RelativePath="..\panda\src\recorder\recorderBase.cxx"></File>
-				<File RelativePath="..\panda\src\recorder\socketStreamRecorder.cxx"></File>
-				<File RelativePath="..\panda\src\recorder\recorderFrame.I"></File>
-				<File RelativePath="..\panda\src\recorder\recorderFrame.h"></File>
-				<File RelativePath="..\panda\src\recorder\recorderBase.h"></File>
-				<File RelativePath="..\panda\src\recorder\config_recorder.h"></File>
-				<File RelativePath="..\panda\src\recorder\recorderHeader.cxx"></File>
-				<File RelativePath="..\panda\src\recorder\recorderController.I"></File>
-				<File RelativePath="..\panda\src\recorder\recorder_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\recorder\recorderController.cxx"></File>
-				<File RelativePath="..\panda\src\recorder\recorder_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\recorder\recorderHeader.I"></File>
-				<File RelativePath="..\panda\src\recorder\config_recorder.cxx"></File>
-				<File RelativePath="..\panda\src\recorder\recorder_composite.cxx"></File>
-				<File RelativePath="..\panda\src\recorder\recorderController.h"></File>
-				<File RelativePath="..\panda\src\recorder\recorderFrame.cxx"></File>
-				<File RelativePath="..\panda\src\recorder\recorderHeader.h"></File>
-				<File RelativePath="..\panda\src\recorder\mouseRecorder.h"></File>
-				<File RelativePath="..\panda\src\recorder\recorderTable.h"></File>
-				<File RelativePath="..\panda\src\recorder\recorderTable.cxx"></File>
-				<File RelativePath="..\panda\src\recorder\recorderBase.I"></File>
-			</Filter>
-			<Filter Name="x11display">
-				<File RelativePath="..\panda\src\x11display\x11GraphicsWindow.cxx"></File>
-				<File RelativePath="..\panda\src\x11display\x11display_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\x11display\x11GraphicsPipe.h"></File>
-				<File RelativePath="..\panda\src\x11display\config_x11display.h"></File>
-				<File RelativePath="..\panda\src\x11display\x11GraphicsWindow.I"></File>
-				<File RelativePath="..\panda\src\x11display\x11GraphicsPipe.I"></File>
-				<File RelativePath="..\panda\src\x11display\x11GraphicsPipe.cxx"></File>
-				<File RelativePath="..\panda\src\x11display\config_x11display.cxx"></File>
-				<File RelativePath="..\panda\src\x11display\x11display_composite.cxx"></File>
-				<File RelativePath="..\panda\src\x11display\x11GraphicsWindow.h"></File>
-			</Filter>
-			<Filter Name="distort">
-				<File RelativePath="..\panda\src\distort\pSphereLens.I"></File>
-				<File RelativePath="..\panda\src\distort\cylindricalLens.cxx"></File>
-				<File RelativePath="..\panda\src\distort\fisheyeLens.h"></File>
-				<File RelativePath="..\panda\src\distort\fisheyeLens.cxx"></File>
-				<File RelativePath="..\panda\src\distort\distort_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\distort\distort_composite.cxx"></File>
-				<File RelativePath="..\panda\src\distort\pSphereLens.h"></File>
-				<File RelativePath="..\panda\src\distort\projectionScreen.cxx"></File>
-				<File RelativePath="..\panda\src\distort\pSphereLens.cxx"></File>
-				<File RelativePath="..\panda\src\distort\projectionScreen.h"></File>
-				<File RelativePath="..\panda\src\distort\config_distort.cxx"></File>
-				<File RelativePath="..\panda\src\distort\nonlinearImager.cxx"></File>
-				<File RelativePath="..\panda\src\distort\cylindricalLens.h"></File>
-				<File RelativePath="..\panda\src\distort\cylindricalLens.I"></File>
-				<File RelativePath="..\panda\src\distort\config_distort.h"></File>
-				<File RelativePath="..\panda\src\distort\nonlinearImager.I"></File>
-				<File RelativePath="..\panda\src\distort\projectionScreen.I"></File>
-				<File RelativePath="..\panda\src\distort\fisheyeLens.I"></File>
-				<File RelativePath="..\panda\src\distort\nonlinearImager.h"></File>
-			</Filter>
-			<Filter Name="wgldisplay">
-				<File RelativePath="..\panda\src\wgldisplay\wglGraphicsWindow.cxx"></File>
-				<File RelativePath="..\panda\src\wgldisplay\wglGraphicsBuffer.I"></File>
-				<File RelativePath="..\panda\src\wgldisplay\wglGraphicsWindow.h"></File>
-				<File RelativePath="..\panda\src\wgldisplay\wglGraphicsBuffer.cxx"></File>
-				<File RelativePath="..\panda\src\wgldisplay\config_wgldisplay.cxx"></File>
-				<File RelativePath="..\panda\src\wgldisplay\wglGraphicsPipe.h"></File>
-				<File RelativePath="..\panda\src\wgldisplay\wglGraphicsPipe.cxx"></File>
-				<File RelativePath="..\panda\src\wgldisplay\wglGraphicsPipe.I"></File>
-				<File RelativePath="..\panda\src\wgldisplay\wglext.h"></File>
-				<File RelativePath="..\panda\src\wgldisplay\wglGraphicsBuffer.h"></File>
-				<File RelativePath="..\panda\src\wgldisplay\wglGraphicsWindow.I"></File>
-				<File RelativePath="..\panda\src\wgldisplay\wglGraphicsStateGuardian.I"></File>
-				<File RelativePath="..\panda\src\wgldisplay\wgldisplay_composite.cxx"></File>
-				<File RelativePath="..\panda\src\wgldisplay\config_wgldisplay.h"></File>
-				<File RelativePath="..\panda\src\wgldisplay\wglGraphicsStateGuardian.cxx"></File>
-				<File RelativePath="..\panda\src\wgldisplay\wgldisplay_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\wgldisplay\wglGraphicsStateGuardian.h"></File>
-			</Filter>
-			<Filter Name="glgsg">
-				<File RelativePath="..\panda\src\glgsg\glgsg.cxx"></File>
-				<File RelativePath="..\panda\src\glgsg\glgsg_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\glgsg\config_glgsg.h"></File>
-				<File RelativePath="..\panda\src\glgsg\glgsg.h"></File>
-				<File RelativePath="..\panda\src\glgsg\glgsg_composite.cxx"></File>
-				<File RelativePath="..\panda\src\glgsg\config_glgsg.cxx"></File>
-			</Filter>
-			<Filter Name="egldisplay">
-				<File RelativePath="..\panda\src\egldisplay\config_egldisplay.h"></File>
-				<File RelativePath="..\panda\src\egldisplay\eglGraphicsWindow.I"></File>
-				<File RelativePath="..\panda\src\egldisplay\eglGraphicsStateGuardian.cxx"></File>
-				<File RelativePath="..\panda\src\egldisplay\eglGraphicsStateGuardian.h"></File>
-				<File RelativePath="..\panda\src\egldisplay\eglGraphicsWindow.h"></File>
-				<File RelativePath="..\panda\src\egldisplay\eglGraphicsPixmap.cxx"></File>
-				<File RelativePath="..\panda\src\egldisplay\eglGraphicsPixmap.h"></File>
-				<File RelativePath="..\panda\src\egldisplay\eglGraphicsPipe.I"></File>
-				<File RelativePath="..\panda\src\egldisplay\eglGraphicsPipe.cxx"></File>
-				<File RelativePath="..\panda\src\egldisplay\eglGraphicsBuffer.cxx"></File>
-				<File RelativePath="..\panda\src\egldisplay\eglGraphicsStateGuardian.I"></File>
-				<File RelativePath="..\panda\src\egldisplay\eglGraphicsWindow.cxx"></File>
-				<File RelativePath="..\panda\src\egldisplay\config_egldisplay.cxx"></File>
-				<File RelativePath="..\panda\src\egldisplay\eglGraphicsBuffer.h"></File>
-				<File RelativePath="..\panda\src\egldisplay\eglGraphicsPipe.h"></File>
-			</Filter>
-			<Filter Name="dgraph">
-				<File RelativePath="..\panda\src\dgraph\dataNode.cxx"></File>
-				<File RelativePath="..\panda\src\dgraph\dataNodeTransmit.I"></File>
-				<File RelativePath="..\panda\src\dgraph\dataNodeTransmit.cxx"></File>
-				<File RelativePath="..\panda\src\dgraph\dataGraphTraverser.cxx"></File>
-				<File RelativePath="..\panda\src\dgraph\dataNode.h"></File>
-				<File RelativePath="..\panda\src\dgraph\dgraph_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\dgraph\dgraph_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\dgraph\config_dgraph.cxx"></File>
-				<File RelativePath="..\panda\src\dgraph\dataNodeTransmit.h"></File>
-				<File RelativePath="..\panda\src\dgraph\dataGraphTraverser.h"></File>
-				<File RelativePath="..\panda\src\dgraph\dgraph_composite.cxx"></File>
-				<File RelativePath="..\panda\src\dgraph\dataGraphTraverser.I"></File>
-				<File RelativePath="..\panda\src\dgraph\config_dgraph.h"></File>
-				<File RelativePath="..\panda\src\dgraph\dataNode.I"></File>
-			</Filter>
-			<Filter Name="glxdisplay">
-				<File RelativePath="..\panda\src\glxdisplay\panda_glxext.h"></File>
-				<File RelativePath="..\panda\src\glxdisplay\glxGraphicsPixmap.I"></File>
-				<File RelativePath="..\panda\src\glxdisplay\glxGraphicsBuffer.h"></File>
-				<File RelativePath="..\panda\src\glxdisplay\glxGraphicsPixmap.h"></File>
-				<File RelativePath="..\panda\src\glxdisplay\glxGraphicsStateGuardian.h"></File>
-				<File RelativePath="..\panda\src\glxdisplay\glxGraphicsPixmap.cxx"></File>
-				<File RelativePath="..\panda\src\glxdisplay\glxGraphicsPipe.I"></File>
-				<File RelativePath="..\panda\src\glxdisplay\glxGraphicsWindow.cxx"></File>
-				<File RelativePath="..\panda\src\glxdisplay\glxdisplay_composite.cxx"></File>
-				<File RelativePath="..\panda\src\glxdisplay\glxdisplay_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\glxdisplay\glxGraphicsPipe.h"></File>
-				<File RelativePath="..\panda\src\glxdisplay\config_glxdisplay.cxx"></File>
-				<File RelativePath="..\panda\src\glxdisplay\glxGraphicsStateGuardian.cxx"></File>
-				<File RelativePath="..\panda\src\glxdisplay\config_glxdisplay.h"></File>
-				<File RelativePath="..\panda\src\glxdisplay\glxGraphicsPipe.cxx"></File>
-				<File RelativePath="..\panda\src\glxdisplay\glxGraphicsBuffer.I"></File>
-				<File RelativePath="..\panda\src\glxdisplay\glxGraphicsStateGuardian.I"></File>
-				<File RelativePath="..\panda\src\glxdisplay\glxGraphicsWindow.I"></File>
-				<File RelativePath="..\panda\src\glxdisplay\glxGraphicsWindow.h"></File>
-				<File RelativePath="..\panda\src\glxdisplay\glxGraphicsBuffer.cxx"></File>
-			</Filter>
-			<Filter Name="tinydisplay">
-				<File RelativePath="..\panda\src\tinydisplay\ztriangle_1.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinyGraphicsBuffer.I"></File>
-				<File RelativePath="..\panda\src\tinydisplay\zmath.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\zdither.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\zbuffer.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinydisplay_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinySDLGraphicsWindow.I"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinyOffscreenGraphicsPipe.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\error.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinyOffscreenGraphicsPipe.I"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinyWinGraphicsWindow.h"></File>
-				<File RelativePath="..\panda\src\tinydisplay\image_util.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinyGeomMunger.h"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinyGeomMunger.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinyWinGraphicsPipe.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\td_texture.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinyWinGraphicsWindow.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\config_tinydisplay.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinySDLGraphicsPipe.h"></File>
-				<File RelativePath="..\panda\src\tinydisplay\ztriangle_code_3.h"></File>
-				<File RelativePath="..\panda\src\tinydisplay\ztriangle_code_2.h"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinyWinGraphicsPipe.h"></File>
-				<File RelativePath="..\panda\src\tinydisplay\ztriangle_code_4.h"></File>
-				<File RelativePath="..\panda\src\tinydisplay\specbuf.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\ztriangle_table.h"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinydisplay_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\td_light.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinyXGraphicsWindow.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\config_tinydisplay.h"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinySDLGraphicsWindow.h"></File>
-				<File RelativePath="..\panda\src\tinydisplay\store_pixel.h"></File>
-				<File RelativePath="..\panda\src\tinydisplay\ztriangle.h"></File>
-				<File RelativePath="..\panda\src\tinydisplay\clip.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinyTextureContext.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinyGraphicsBuffer.h"></File>
-				<File RelativePath="..\panda\src\tinydisplay\zfeatures.h"></File>
-				<File RelativePath="..\panda\src\tinydisplay\store_pixel.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinyXGraphicsPipe.I"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinySDLGraphicsPipe.I"></File>
-				<File RelativePath="..\panda\src\tinydisplay\zgl.h"></File>
-				<File RelativePath="..\panda\src\tinydisplay\ztriangle_table.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\ztriangle_two.h"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinyTextureContext.I"></File>
-				<File RelativePath="..\panda\src\tinydisplay\store_pixel_code.h"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinySDLGraphicsWindow.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinyGeomMunger.I"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinyXGraphicsPipe.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinyGraphicsBuffer.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinyWinGraphicsPipe.I"></File>
-				<File RelativePath="..\panda\src\tinydisplay\store_pixel_table.h"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinyGraphicsStateGuardian.h"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinyTextureContext.h"></File>
-				<File RelativePath="..\panda\src\tinydisplay\zline.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinyOffscreenGraphicsPipe.h"></File>
-				<File RelativePath="..\panda\src\tinydisplay\ztriangle_4.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\ztriangle_code_1.h"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinyXGraphicsWindow.h"></File>
-				<File RelativePath="..\panda\src\tinydisplay\ztriangle_2.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\ztriangle_3.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\init.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\zbuffer.h"></File>
-				<File RelativePath="..\panda\src\tinydisplay\vertex.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinyWinGraphicsWindow.I"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinyGraphicsStateGuardian.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinyXGraphicsPipe.h"></File>
-				<File RelativePath="..\panda\src\tinydisplay\zmath.h"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinyGraphicsStateGuardian.I"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinySDLGraphicsPipe.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\tinyXGraphicsWindow.I"></File>
-				<File RelativePath="..\panda\src\tinydisplay\memory.cxx"></File>
-				<File RelativePath="..\panda\src\tinydisplay\zline.h"></File>
-			</Filter>
-			<Filter Name="event">
-				<File RelativePath="..\panda\src\event\asyncTaskChain.h"></File>
-				<File RelativePath="..\panda\src\event\asyncTaskCollection.h"></File>
-				<File RelativePath="..\panda\src\event\test_task.cxx"></File>
-				<File RelativePath="..\panda\src\event\buttonEvent.cxx"></File>
-				<File RelativePath="..\panda\src\event\event.I"></File>
-				<File RelativePath="..\panda\src\event\event_composite.cxx"></File>
-				<File RelativePath="..\panda\src\event\eventParameter.cxx"></File>
-				<File RelativePath="..\panda\src\event\eventHandler.I"></File>
-				<File RelativePath="..\panda\src\event\buttonEventList.cxx"></File>
-				<File RelativePath="..\panda\src\event\pointerEventList.cxx"></File>
-				<File RelativePath="..\panda\src\event\event_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\event\asyncTask.cxx"></File>
-				<File RelativePath="..\panda\src\event\event_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\event\config_event.h"></File>
-				<File RelativePath="..\panda\src\event\asyncTaskSequence.cxx"></File>
-				<File RelativePath="..\panda\src\event\asyncTaskPause.h"></File>
-				<File RelativePath="..\panda\src\event\pointerEventList.I"></File>
-				<File RelativePath="..\panda\src\event\genericAsyncTask.I"></File>
-				<File RelativePath="..\panda\src\event\asyncTaskPause.cxx"></File>
-				<File RelativePath="..\panda\src\event\asyncTask.h"></File>
-				<File RelativePath="..\panda\src\event\asyncTaskManager.cxx"></File>
-				<File RelativePath="..\panda\src\event\buttonEventList.I"></File>
-				<File RelativePath="..\panda\src\event\eventQueue.I"></File>
-				<File RelativePath="..\panda\src\event\buttonEvent.I"></File>
-				<File RelativePath="..\panda\src\event\genericAsyncTask.h"></File>
-				<File RelativePath="..\panda\src\event\pt_Event.h"></File>
-				<File RelativePath="..\panda\src\event\pythonTask.cxx"></File>
-				<File RelativePath="..\panda\src\event\eventHandler.h"></File>
-				<File RelativePath="..\panda\src\event\pythonTask.I"></File>
-				<File RelativePath="..\panda\src\event\buttonEvent.h"></File>
-				<File RelativePath="..\panda\src\event\asyncTaskChain.I"></File>
-				<File RelativePath="..\panda\src\event\genericAsyncTask.cxx"></File>
-				<File RelativePath="..\panda\src\event\eventQueue.h"></File>
-				<File RelativePath="..\panda\src\event\eventParameter.I"></File>
-				<File RelativePath="..\panda\src\event\asyncTaskSequence.h"></File>
-				<File RelativePath="..\panda\src\event\asyncTaskManager.I"></File>
-				<File RelativePath="..\panda\src\event\eventReceiver.cxx"></File>
-				<File RelativePath="..\panda\src\event\event.h"></File>
-				<File RelativePath="..\panda\src\event\config_event.cxx"></File>
-				<File RelativePath="..\panda\src\event\asyncTaskManager.h"></File>
-				<File RelativePath="..\panda\src\event\asyncTaskChain.cxx"></File>
-				<File RelativePath="..\panda\src\event\event.cxx"></File>
-				<File RelativePath="..\panda\src\event\eventHandler.cxx"></File>
-				<File RelativePath="..\panda\src\event\throw_event.I"></File>
-				<File RelativePath="..\panda\src\event\buttonEventList.h"></File>
-				<File RelativePath="..\panda\src\event\pythonTask.h"></File>
-				<File RelativePath="..\panda\src\event\pointerEvent.cxx"></File>
-				<File RelativePath="..\panda\src\event\pt_Event.cxx"></File>
-				<File RelativePath="..\panda\src\event\asyncTaskCollection.cxx"></File>
-				<File RelativePath="..\panda\src\event\eventParameter.h"></File>
-				<File RelativePath="..\panda\src\event\pointerEvent.I"></File>
-				<File RelativePath="..\panda\src\event\pointerEventList.h"></File>
-				<File RelativePath="..\panda\src\event\asyncTaskSequence.I"></File>
-				<File RelativePath="..\panda\src\event\eventReceiver.h"></File>
-				<File RelativePath="..\panda\src\event\asyncTask.I"></File>
-				<File RelativePath="..\panda\src\event\pointerEvent.h"></File>
-				<File RelativePath="..\panda\src\event\throw_event.h"></File>
-				<File RelativePath="..\panda\src\event\asyncTaskPause.I"></File>
-				<File RelativePath="..\panda\src\event\asyncTaskCollection.I"></File>
-				<File RelativePath="..\panda\src\event\eventQueue.cxx"></File>
-			</Filter>
-			<Filter Name="downloader">
-				<File RelativePath="..\panda\src\downloader\httpDigestAuthorization.I"></File>
-				<File RelativePath="..\panda\src\downloader\httpBasicAuthorization.h"></File>
-				<File RelativePath="..\panda\src\downloader\multiplexStreamBuf.I"></File>
-				<File RelativePath="..\panda\src\downloader\httpDate.h"></File>
-				<File RelativePath="..\panda\src\downloader\bioPtr.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\virtualFileMountHTTP.h"></File>
-				<File RelativePath="..\panda\src\downloader\decompressor.h"></File>
-				<File RelativePath="..\panda\src\downloader\extractor.I"></File>
-				<File RelativePath="..\panda\src\downloader\socketStream.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\urlSpec.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\socketStream.h"></File>
-				<File RelativePath="..\panda\src\downloader\httpCookie.h"></File>
-				<File RelativePath="..\panda\src\downloader\download_utils.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\identityStream.h"></File>
-				<File RelativePath="..\panda\src\downloader\decompressor.I"></File>
-				<File RelativePath="..\panda\src\downloader\httpCookie.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\identityStreamBuf.h"></File>
-				<File RelativePath="..\panda\src\downloader\downloadDb.h"></File>
-				<File RelativePath="..\panda\src\downloader\httpChannel.h"></File>
-				<File RelativePath="..\panda\src\downloader\chunkedStreamBuf.I"></File>
-				<File RelativePath="..\panda\src\downloader\httpAuthorization.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\virtualFileMountHTTP.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\virtualFileHTTP.h"></File>
-				<File RelativePath="..\panda\src\downloader\virtualFileMountHTTP.I"></File>
-				<File RelativePath="..\panda\src\downloader\extractor.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\documentSpec.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\decompressor.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\bioStreamBuf.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\patcher.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\extractor.h"></File>
-				<File RelativePath="..\panda\src\downloader\patcher.h"></File>
-				<File RelativePath="..\panda\src\downloader\bioPtr.I"></File>
-				<File RelativePath="..\panda\src\downloader\config_downloader.h"></File>
-				<File RelativePath="..\panda\src\downloader\config_downloader.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\httpClient.I"></File>
-				<File RelativePath="..\panda\src\downloader\chunkedStreamBuf.h"></File>
-				<File RelativePath="..\panda\src\downloader\httpEnum.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\virtualFileHTTP.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\stringStream.h"></File>
-				<File RelativePath="..\panda\src\downloader\identityStreamBuf.I"></File>
-				<File RelativePath="..\panda\src\downloader\socketStream.I"></File>
-				<File RelativePath="..\panda\src\downloader\patcher.I"></File>
-				<File RelativePath="..\panda\src\downloader\multiplexStream.I"></File>
-				<File RelativePath="..\panda\src\downloader\identityStreamBuf.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\bioStreamPtr.I"></File>
-				<File RelativePath="..\panda\src\downloader\httpAuthorization.I"></File>
-				<File RelativePath="..\panda\src\downloader\downloader_composite.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\httpClient.h"></File>
-				<File RelativePath="..\panda\src\downloader\downloadDb.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\stringStreamBuf.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\urlSpec.I"></File>
-				<File RelativePath="..\panda\src\downloader\virtualFileHTTP.I"></File>
-				<File RelativePath="..\panda\src\downloader\chunkedStream.h"></File>
-				<File RelativePath="..\panda\src\downloader\bioStreamBuf.h"></File>
-				<File RelativePath="..\panda\src\downloader\chunkedStream.I"></File>
-				<File RelativePath="..\panda\src\downloader\download_utils.h"></File>
-				<File RelativePath="..\panda\src\downloader\multiplexStream.h"></File>
-				<File RelativePath="..\panda\src\downloader\httpEntityTag.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\identityStream.I"></File>
-				<File RelativePath="..\panda\src\downloader\bioStream.I"></File>
-				<File RelativePath="..\panda\src\downloader\bioPtr.h"></File>
-				<File RelativePath="..\panda\src\downloader\multiplexStreamBuf.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\identityStream.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\httpEnum.h"></File>
-				<File RelativePath="..\panda\src\downloader\stringStream.I"></File>
-				<File RelativePath="..\panda\src\downloader\bioStream.h"></File>
-				<File RelativePath="..\panda\src\downloader\chunkedStream.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\bioStreamPtr.h"></File>
-				<File RelativePath="..\panda\src\downloader\httpChannel.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\downloader_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\stringStreamBuf.I"></File>
-				<File RelativePath="..\panda\src\downloader\httpClient.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\bioStream.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\httpCookie.I"></File>
-				<File RelativePath="..\panda\src\downloader\httpAuthorization.h"></File>
-				<File RelativePath="..\panda\src\downloader\httpDate.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\downloader_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\httpDigestAuthorization.h"></File>
-				<File RelativePath="..\panda\src\downloader\httpDate.I"></File>
-				<File RelativePath="..\panda\src\downloader\multiplexStreamBuf.h"></File>
-				<File RelativePath="..\panda\src\downloader\stringStream.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\bioStreamPtr.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\httpEntityTag.h"></File>
-				<File RelativePath="..\panda\src\downloader\httpBasicAuthorization.I"></File>
-				<File RelativePath="..\panda\src\downloader\stringStreamBuf.h"></File>
-				<File RelativePath="..\panda\src\downloader\urlSpec.h"></File>
-				<File RelativePath="..\panda\src\downloader\httpDigestAuthorization.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\multiplexStream.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\documentSpec.I"></File>
-				<File RelativePath="..\panda\src\downloader\httpEntityTag.I"></File>
-				<File RelativePath="..\panda\src\downloader\chunkedStreamBuf.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\downloadDb.I"></File>
-				<File RelativePath="..\panda\src\downloader\httpBasicAuthorization.cxx"></File>
-				<File RelativePath="..\panda\src\downloader\documentSpec.h"></File>
-				<File RelativePath="..\panda\src\downloader\httpChannel.I"></File>
-			</Filter>
-			<Filter Name="chan">
-				<File RelativePath="..\panda\src\chan\partSubset.I"></File>
-				<File RelativePath="..\panda\src\chan\animChannelFixed.I"></File>
-				<File RelativePath="..\panda\src\chan\animChannelScalarTable.cxx"></File>
-				<File RelativePath="..\panda\src\chan\config_chan.cxx"></File>
-				<File RelativePath="..\panda\src\chan\partBundleNode.h"></File>
-				<File RelativePath="..\panda\src\chan\animControl.I"></File>
-				<File RelativePath="..\panda\src\chan\movingPartScalar.I"></File>
-				<File RelativePath="..\panda\src\chan\movingPartBase.cxx"></File>
-				<File RelativePath="..\panda\src\chan\movingPartMatrix.I"></File>
-				<File RelativePath="..\panda\src\chan\config_chan.h"></File>
-				<File RelativePath="..\panda\src\chan\animChannelMatrixXfmTable.cxx"></File>
-				<File RelativePath="..\panda\src\chan\animChannelScalarDynamic.cxx"></File>
-				<File RelativePath="..\panda\src\chan\partGroup.I"></File>
-				<File RelativePath="..\panda\src\chan\animBundleNode.I"></File>
-				<File RelativePath="..\panda\src\chan\partBundleHandle.h"></File>
-				<File RelativePath="..\panda\src\chan\animGroup.cxx"></File>
-				<File RelativePath="..\panda\src\chan\partSubset.h"></File>
-				<File RelativePath="..\panda\src\chan\chan_composite.cxx"></File>
-				<File RelativePath="..\panda\src\chan\animBundleNode.cxx"></File>
-				<File RelativePath="..\panda\src\chan\partBundleNode.cxx"></File>
-				<File RelativePath="..\panda\src\chan\auto_bind.h"></File>
-				<File RelativePath="..\panda\src\chan\movingPartBase.I"></File>
-				<File RelativePath="..\panda\src\chan\partBundleNode.I"></File>
-				<File RelativePath="..\panda\src\chan\animChannelScalarTable.h"></File>
-				<File RelativePath="..\panda\src\chan\auto_bind.cxx"></File>
-				<File RelativePath="..\panda\src\chan\movingPart.I"></File>
-				<File RelativePath="..\panda\src\chan\partBundle.h"></File>
-				<File RelativePath="..\panda\src\chan\animBundleNode.h"></File>
-				<File RelativePath="..\panda\src\chan\vector_PartGroupStar.cxx"></File>
-				<File RelativePath="..\panda\src\chan\animChannelMatrixDynamic.cxx"></File>
-				<File RelativePath="..\panda\src\chan\animControlCollection.I"></File>
-				<File RelativePath="..\panda\src\chan\vector_PartGroupStar.h"></File>
-				<File RelativePath="..\panda\src\chan\animGroup.I"></File>
-				<File RelativePath="..\panda\src\chan\bindAnimRequest.h"></File>
-				<File RelativePath="..\panda\src\chan\animChannelBase.cxx"></File>
-				<File RelativePath="..\panda\src\chan\partBundle.I"></File>
-				<File RelativePath="..\panda\src\chan\animControl.h"></File>
-				<File RelativePath="..\panda\src\chan\animBundle.cxx"></File>
-				<File RelativePath="..\panda\src\chan\movingPartScalar.h"></File>
-				<File RelativePath="..\panda\src\chan\animChannelScalarDynamic.I"></File>
-				<File RelativePath="..\panda\src\chan\bindAnimRequest.cxx"></File>
-				<File RelativePath="..\panda\src\chan\animChannelMatrixXfmTable.I"></File>
-				<File RelativePath="..\panda\src\chan\animGroup.h"></File>
-				<File RelativePath="..\panda\src\chan\animControl.cxx"></File>
-				<File RelativePath="..\panda\src\chan\animChannel.I"></File>
-				<File RelativePath="..\panda\src\chan\animControlCollection.cxx"></File>
-				<File RelativePath="..\panda\src\chan\animPreloadTable.h"></File>
-				<File RelativePath="..\panda\src\chan\movingPartBase.h"></File>
-				<File RelativePath="..\panda\src\chan\partBundle.cxx"></File>
-				<File RelativePath="..\panda\src\chan\movingPartScalar.cxx"></File>
-				<File RelativePath="..\panda\src\chan\animPreloadTable.cxx"></File>
-				<File RelativePath="..\panda\src\chan\animChannelBase.h"></File>
-				<File RelativePath="..\panda\src\chan\partBundleHandle.cxx"></File>
-				<File RelativePath="..\panda\src\chan\animChannelMatrixFixed.h"></File>
-				<File RelativePath="..\panda\src\chan\partGroup.h"></File>
-				<File RelativePath="..\panda\src\chan\animBundle.I"></File>
-				<File RelativePath="..\panda\src\chan\partGroup.cxx"></File>
-				<File RelativePath="..\panda\src\chan\bindAnimRequest.I"></File>
-				<File RelativePath="..\panda\src\chan\animControlCollection.h"></File>
-				<File RelativePath="..\panda\src\chan\animChannel.h"></File>
-				<File RelativePath="..\panda\src\chan\partSubset.cxx"></File>
-				<File RelativePath="..\panda\src\chan\movingPartMatrix.cxx"></File>
-				<File RelativePath="..\panda\src\chan\animChannelMatrixDynamic.I"></File>
-				<File RelativePath="..\panda\src\chan\animChannelMatrixXfmTable.h"></File>
-				<File RelativePath="..\panda\src\chan\animChannelScalarDynamic.h"></File>
-				<File RelativePath="..\panda\src\chan\animBundle.h"></File>
-				<File RelativePath="..\panda\src\chan\chan_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\chan\movingPart.h"></File>
-				<File RelativePath="..\panda\src\chan\animChannelMatrixDynamic.h"></File>
-				<File RelativePath="..\panda\src\chan\partBundleHandle.I"></File>
-				<File RelativePath="..\panda\src\chan\animChannelMatrixFixed.I"></File>
-				<File RelativePath="..\panda\src\chan\chan_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\chan\animPreloadTable.I"></File>
-				<File RelativePath="..\panda\src\chan\animChannelBase.I"></File>
-				<File RelativePath="..\panda\src\chan\animChannelMatrixFixed.cxx"></File>
-				<File RelativePath="..\panda\src\chan\animChannel.cxx"></File>
-				<File RelativePath="..\panda\src\chan\animChannelFixed.h"></File>
-				<File RelativePath="..\panda\src\chan\animChannelScalarTable.I"></File>
-				<File RelativePath="..\panda\src\chan\movingPartMatrix.h"></File>
-			</Filter>
-			<Filter Name="doc">
-				<File RelativePath="..\panda\src\doc\sampleClass.I"></File>
-				<File RelativePath="..\panda\src\doc\sampleClass.h"></File>
-				<File RelativePath="..\panda\src\doc\sampleClass.cxx"></File>
-			</Filter>
-			<Filter Name="ode">
-				<File RelativePath="..\panda\src\ode\odeSurfaceParameters.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeSpace.h"></File>
-				<File RelativePath="..\panda\src\ode\odeCollisionEntry.I"></File>
-				<File RelativePath="..\panda\src\ode\odeJointCollection.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeJointGroup.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeAMotorJoint.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeHinge2Joint.h"></File>
-				<File RelativePath="..\panda\src\ode\odeJointGroup.h"></File>
-				<File RelativePath="..\panda\src\ode\odeGeom.h"></File>
-				<File RelativePath="..\panda\src\ode\odeFixedJoint.I"></File>
-				<File RelativePath="..\panda\src\ode\odeTriMeshData.h"></File>
-				<File RelativePath="..\panda\src\ode\odeSurfaceParameters.h"></File>
-				<File RelativePath="..\panda\src\ode\odeJoint.I"></File>
-				<File RelativePath="..\panda\src\ode\odeSphereGeom.h"></File>
-				<File RelativePath="..\panda\src\ode\odeCylinderGeom.h"></File>
-				<File RelativePath="..\panda\src\ode\odeHingeJoint.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeSurfaceParameters.I"></File>
-				<File RelativePath="..\panda\src\ode\odeCylinderGeom.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeContactJoint.h"></File>
-				<File RelativePath="..\panda\src\ode\odeSphereGeom.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeContactGeom.I"></File>
-				<File RelativePath="..\panda\src\ode\pode_composite3.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeCappedCylinderGeom.I"></File>
-				<File RelativePath="..\panda\src\ode\odeUniversalJoint.I"></File>
-				<File RelativePath="..\panda\src\ode\odeLMotorJoint.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeBallJoint.cxx"></File>
-				<File RelativePath="..\panda\src\ode\config_ode.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeJointGroup.I"></File>
-				<File RelativePath="..\panda\src\ode\odeConvexGeom.h"></File>
-				<File RelativePath="..\panda\src\ode\odeUtil.h"></File>
-				<File RelativePath="..\panda\src\ode\odeAMotorJoint.I"></File>
-				<File RelativePath="..\panda\src\ode\odeConvexGeom.I"></File>
-				<File RelativePath="..\panda\src\ode\odeTriMeshGeom.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeHashSpace.h"></File>
-				<File RelativePath="..\panda\src\ode\odeBody.h"></File>
-				<File RelativePath="..\panda\src\ode\odeRayGeom.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeSliderJoint.I"></File>
-				<File RelativePath="..\panda\src\ode\odeJointCollection.I"></File>
-				<File RelativePath="..\panda\src\ode\odeQuadTreeSpace.I"></File>
-				<File RelativePath="..\panda\src\ode\odeTriMeshData.I"></File>
-				<File RelativePath="..\panda\src\ode\odePlaneGeom.I"></File>
-				<File RelativePath="..\panda\src\ode\odeCappedCylinderGeom.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeBallJoint.h"></File>
-				<File RelativePath="..\panda\src\ode\odeQuadTreeSpace.h"></File>
-				<File RelativePath="..\panda\src\ode\odeSphereGeom.I"></File>
-				<File RelativePath="..\panda\src\ode\odeCollisionEntry.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeSpace.I"></File>
-				<File RelativePath="..\panda\src\ode\odeSimpleSpace.I"></File>
-				<File RelativePath="..\panda\src\ode\odeQuadTreeSpace.cxx"></File>
-				<File RelativePath="..\panda\src\ode\pode_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeGeom.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeHeightFieldGeom.h"></File>
-				<File RelativePath="..\panda\src\ode\odePlane2dJoint.h"></File>
-				<File RelativePath="..\panda\src\ode\odeSliderJoint.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeCappedCylinderGeom.h"></File>
-				<File RelativePath="..\panda\src\ode\odeTriMeshGeom.h"></File>
-				<File RelativePath="..\panda\src\ode\odeCollisionEntry.h"></File>
-				<File RelativePath="..\panda\src\ode\config_ode.h"></File>
-				<File RelativePath="..\panda\src\ode\odeHingeJoint.I"></File>
-				<File RelativePath="..\panda\src\ode\odeConvexGeom.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeBody.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeSliderJoint.h"></File>
-				<File RelativePath="..\panda\src\ode\odeUniversalJoint.h"></File>
-				<File RelativePath="..\panda\src\ode\odeNullJoint.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odePlane2dJoint.I"></File>
-				<File RelativePath="..\panda\src\ode\odeContactGeom.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeWorld.I"></File>
-				<File RelativePath="..\panda\src\ode\odeJoint.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeSpace.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeLMotorJoint.h"></File>
-				<File RelativePath="..\panda\src\ode\odeGeom.I"></File>
-				<File RelativePath="..\panda\src\ode\odeRayGeom.I"></File>
-				<File RelativePath="..\panda\src\ode\odeTriMeshGeom.I"></File>
-				<File RelativePath="..\panda\src\ode\odeMass.h"></File>
-				<File RelativePath="..\panda\src\ode\odeMass.I"></File>
-				<File RelativePath="..\panda\src\ode\odeWorld.h"></File>
-				<File RelativePath="..\panda\src\ode\odeContact.I"></File>
-				<File RelativePath="..\panda\src\ode\odePlaneGeom.h"></File>
-				<File RelativePath="..\panda\src\ode\odeBody.I"></File>
-				<File RelativePath="..\panda\src\ode\odeBallJoint.I"></File>
-				<File RelativePath="..\panda\src\ode\odeAMotorJoint.h"></File>
-				<File RelativePath="..\panda\src\ode\odeJointCollection.h"></File>
-				<File RelativePath="..\panda\src\ode\odeSimpleSpace.h"></File>
-				<File RelativePath="..\panda\src\ode\odeHashSpace.I"></File>
-				<File RelativePath="..\panda\src\ode\odeBoxGeom.I"></File>
-				<File RelativePath="..\panda\src\ode\odeUniversalJoint.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeContactJoint.I"></File>
-				<File RelativePath="..\panda\src\ode\odeWorld.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeContactJoint.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeContact.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odePlaneGeom.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeHingeJoint.h"></File>
-				<File RelativePath="..\panda\src\ode\odeNullJoint.I"></File>
-				<File RelativePath="..\panda\src\ode\odeHelperStructs.h"></File>
-				<File RelativePath="..\panda\src\ode\odeRayGeom.h"></File>
-				<File RelativePath="..\panda\src\ode\odePlane2dJoint.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeHinge2Joint.I"></File>
-				<File RelativePath="..\panda\src\ode\pode_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeCylinderGeom.I"></File>
-				<File RelativePath="..\panda\src\ode\odeTriMeshData.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeMass.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeLMotorJoint.I"></File>
-				<File RelativePath="..\panda\src\ode\odeJoint.h"></File>
-				<File RelativePath="..\panda\src\ode\odeFixedJoint.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeContactGeom.h"></File>
-				<File RelativePath="..\panda\src\ode\odeSimpleSpace.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeContact.h"></File>
-				<File RelativePath="..\panda\src\ode\odeHinge2Joint.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeNullJoint.h"></File>
-				<File RelativePath="..\panda\src\ode\ode_includes.h"></File>
-				<File RelativePath="..\panda\src\ode\odeHashSpace.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeFixedJoint.h"></File>
-				<File RelativePath="..\panda\src\ode\odeBoxGeom.cxx"></File>
-				<File RelativePath="..\panda\src\ode\odeBoxGeom.h"></File>
-				<File RelativePath="..\panda\src\ode\odeUtil.cxx"></File>
-			</Filter>
-			<Filter Name="pnmimagetypes">
-				<File RelativePath="..\panda\src\pnmimagetypes\pnmFileTypeTGA.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\pnmFileTypeSGI.h"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\pnmimagetypes_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\pnmFileTypeSoftImage.h"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\pnmFileTypePNG.h"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\pnmFileTypeTGA.h"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\sgi.h"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\pnmFileTypeIMG.h"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\pnmFileTypeJPG.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\config_pnmimagetypes.h"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\pnmFileTypeBMP.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\pnmimagetypes_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\pnmFileTypeTIFF.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\pnmFileTypeJPGReader.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\pnmFileTypeSGIReader.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\pnmFileTypeJPGWriter.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\bmp.h"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\pnmFileTypeSGI.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\pnmFileTypeJPG.h"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\pnmFileTypeSGIWriter.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\pnmFileTypePNM.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\config_pnmimagetypes.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\pnmFileTypeTIFF.h"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\pnmFileTypeBMPReader.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\pnmFileTypeSoftImage.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\pnmFileTypeBMP.h"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\pnmimagetypes_composite.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\pnmFileTypePNM.h"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\pnmFileTypeIMG.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\pnmFileTypeBMPWriter.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\pnmFileTypePNG.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimagetypes\colrops.c"></File>
-			</Filter>
-			<Filter Name="downloadertools">
-				<File RelativePath="..\panda\src\downloadertools\pencrypt.cxx"></File>
-				<File RelativePath="..\panda\src\downloadertools\pdecrypt.cxx"></File>
-				<File RelativePath="..\panda\src\downloadertools\pzip.cxx"></File>
-				<File RelativePath="..\panda\src\downloadertools\multify.cxx"></File>
-				<File RelativePath="..\panda\src\downloadertools\punzip.cxx"></File>
-			</Filter>
-			<Filter Name="gles2gsg">
-				<File RelativePath="..\panda\src\gles2gsg\gles2gsg_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\gles2gsg\gles2gsg.cxx"></File>
-				<File RelativePath="..\panda\src\gles2gsg\config_gles2gsg.h"></File>
-				<File RelativePath="..\panda\src\gles2gsg\gles2gsg.h"></File>
-				<File RelativePath="..\panda\src\gles2gsg\gles2gsg_composite.cxx"></File>
-				<File RelativePath="..\panda\src\gles2gsg\config_gles2gsg.cxx"></File>
-			</Filter>
-			<Filter Name="express">
-				<File RelativePath="..\panda\src\express\openSSLWrapper.I"></File>
-				<File RelativePath="..\panda\src\express\nodePointerTo.h"></File>
-				<File RelativePath="..\panda\src\express\encrypt_string.cxx"></File>
-				<File RelativePath="..\panda\src\express\nodeReferenceCount.h"></File>
-				<File RelativePath="..\panda\src\express\virtualFileSimple.I"></File>
-				<File RelativePath="..\panda\src\express\zStream.cxx"></File>
-				<File RelativePath="..\panda\src\express\memoryUsagePointerCounts.h"></File>
-				<File RelativePath="..\panda\src\express\weakReferenceList.I"></File>
-				<File RelativePath="..\panda\src\express\pointerToBase.h"></File>
-				<File RelativePath="..\panda\src\express\openSSLWrapper.cxx"></File>
-				<File RelativePath="..\panda\src\express\zStreamBuf.cxx"></File>
-				<File RelativePath="..\panda\src\express\pointerToArrayBase.h"></File>
-				<File RelativePath="..\panda\src\express\buffer.cxx"></File>
-				<File RelativePath="..\panda\src\express\pta_uchar.h"></File>
-				<File RelativePath="..\panda\src\express\virtualFileMountMultifile.h"></File>
-				<File RelativePath="..\panda\src\express\config_express.h"></File>
-				<File RelativePath="..\panda\src\express\hashVal.h"></File>
-				<File RelativePath="..\panda\src\express\export_dtool.h"></File>
-				<File RelativePath="..\panda\src\express\nodeReferenceCount.cxx"></File>
-				<File RelativePath="..\panda\src\express\weakPointerTo.cxx"></File>
-				<File RelativePath="..\panda\src\express\encrypt_string.h"></File>
-				<File RelativePath="..\panda\src\express\weakPointerToVoid.I"></File>
-				<File RelativePath="..\panda\src\express\pta_uchar.cxx"></File>
-				<File RelativePath="..\panda\src\express\make_ca_bundle.cxx"></File>
-				<File RelativePath="..\panda\src\express\express_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\express\indirectLess.h"></File>
-				<File RelativePath="..\panda\src\express\memoryInfo.I"></File>
-				<File RelativePath="..\panda\src\express\circBuffer.h"></File>
-				<File RelativePath="..\panda\src\express\memoryUsage.cxx"></File>
-				<File RelativePath="..\panda\src\express\ordered_vector.h"></File>
-				<File RelativePath="..\panda\src\express\multifile.h"></File>
-				<File RelativePath="..\panda\src\express\virtualFileMountSystem.cxx"></File>
-				<File RelativePath="..\panda\src\express\error_utils.cxx"></File>
-				<File RelativePath="..\panda\src\express\pta_float.h"></File>
-				<File RelativePath="..\panda\src\express\zStream.h"></File>
-				<File RelativePath="..\panda\src\express\checksumHashGenerator.h"></File>
-				<File RelativePath="..\panda\src\express\memoryInfo.h"></File>
-				<File RelativePath="..\panda\src\express\textEncoder.I"></File>
-				<File RelativePath="..\panda\src\express\virtualFileMount.h"></File>
-				<File RelativePath="..\panda\src\express\typedReferenceCount.cxx"></File>
-				<File RelativePath="..\panda\src\express\test_types.cxx"></File>
-				<File RelativePath="..\panda\src\express\weakPointerTo.I"></File>
-				<File RelativePath="..\panda\src\express\pta_int.cxx"></File>
-				<File RelativePath="..\panda\src\express\namable.I"></File>
-				<File RelativePath="..\panda\src\express\vector_float.cxx"></File>
-				<File RelativePath="..\panda\src\express\pointerTo.h"></File>
-				<File RelativePath="..\panda\src\express\datagramSink.h"></File>
-				<File RelativePath="..\panda\src\express\copy_stream.cxx"></File>
-				<File RelativePath="..\panda\src\express\datagramSink.I"></File>
-				<File RelativePath="..\panda\src\express\nodePointerTo.cxx"></File>
-				<File RelativePath="..\panda\src\express\subStream.cxx"></File>
-				<File RelativePath="..\panda\src\express\virtualFileList.cxx"></File>
-				<File RelativePath="..\panda\src\express\zStreamBuf.h"></File>
-				<File RelativePath="..\panda\src\express\memoryUsage.h"></File>
-				<File RelativePath="..\panda\src\express\virtualFileMount.I"></File>
-				<File RelativePath="..\panda\src\express\virtualFileSystem.h"></File>
-				<File RelativePath="..\panda\src\express\ca_bundle_data_src.c"></File>
-				<File RelativePath="..\panda\src\express\pointerTo.cxx"></File>
-				<File RelativePath="..\panda\src\express\pStatCollectorForwardBase.h"></File>
-				<File RelativePath="..\panda\src\express\weakPointerToBase.h"></File>
-				<File RelativePath="..\panda\src\express\hashGeneratorBase.I"></File>
-				<File RelativePath="..\panda\src\express\hashGeneratorBase.cxx"></File>
-				<File RelativePath="..\panda\src\express\stringDecoder.cxx"></File>
-				<File RelativePath="..\panda\src\express\pointerToBase.I"></File>
-				<File RelativePath="..\panda\src\express\trueClock.cxx"></File>
-				<File RelativePath="..\panda\src\express\dcast.cxx"></File>
-				<File RelativePath="..\panda\src\express\datagramGenerator.h"></File>
-				<File RelativePath="..\panda\src\express\weakPointerToVoid.h"></File>
-				<File RelativePath="..\panda\src\express\datagram.I"></File>
-				<File RelativePath="..\panda\src\express\weakPointerCallback.h"></File>
-				<File RelativePath="..\panda\src\express\datagram.h"></File>
-				<File RelativePath="..\panda\src\express\textEncoder.h"></File>
-				<File RelativePath="..\panda\src\express\multifile.cxx"></File>
-				<File RelativePath="..\panda\src\express\memoryUsagePointerCounts.I"></File>
-				<File RelativePath="..\panda\src\express\stringDecoder.I"></File>
-				<File RelativePath="..\panda\src\express\unicodeLatinMap.cxx"></File>
-				<File RelativePath="..\panda\src\express\pointerToBase.cxx"></File>
-				<File RelativePath="..\panda\src\express\pointerToVoid.cxx"></File>
-				<File RelativePath="..\panda\src\express\virtualFileSimple.h"></File>
-				<File RelativePath="..\panda\src\express\virtualFileMountMultifile.cxx"></File>
-				<File RelativePath="..\panda\src\express\windowsRegistry.cxx"></File>
-				<File RelativePath="..\panda\src\express\ramfile.cxx"></File>
-				<File RelativePath="..\panda\src\express\checksumHashGenerator.I"></File>
-				<File RelativePath="..\panda\src\express\checksumHashGenerator.cxx"></File>
-				<File RelativePath="..\panda\src\express\windowsRegistry.h"></File>
-				<File RelativePath="..\panda\src\express\typedReferenceCount.I"></File>
-				<File RelativePath="..\panda\src\express\weakPointerCallback.cxx"></File>
-				<File RelativePath="..\panda\src\express\stringDecoder.h"></File>
-				<File RelativePath="..\panda\src\express\copy_stream.h"></File>
-				<File RelativePath="..\panda\src\express\memoryUsagePointers.cxx"></File>
-				<File RelativePath="..\panda\src\express\nodeReferenceCount.I"></File>
-				<File RelativePath="..\panda\src\express\buffer.I"></File>
-				<File RelativePath="..\panda\src\express\datagram.cxx"></File>
-				<File RelativePath="..\panda\src\express\dcast.h"></File>
-				<File RelativePath="..\panda\src\express\pointerToArray.cxx"></File>
-				<File RelativePath="..\panda\src\express\typedef.h"></File>
-				<File RelativePath="..\panda\src\express\virtualFileMountSystem.h"></File>
-				<File RelativePath="..\panda\src\express\typedReferenceCount.h"></File>
-				<File RelativePath="..\panda\src\express\virtualFileMountSystem.I"></File>
-				<File RelativePath="..\panda\src\express\nodePointerTo.I"></File>
-				<File RelativePath="..\panda\src\express\hashVal.I"></File>
-				<File RelativePath="..\panda\src\express\pta_float.cxx"></File>
-				<File RelativePath="..\panda\src\express\weakPointerTo.h"></File>
-				<File RelativePath="..\panda\src\express\ramfile.h"></File>
-				<File RelativePath="..\panda\src\express\hashVal.cxx"></File>
-				<File RelativePath="..\panda\src\express\pointerToArrayBase.I"></File>
-				<File RelativePath="..\panda\src\express\datagramIterator.I"></File>
-				<File RelativePath="..\panda\src\express\vector_uchar.h"></File>
-				<File RelativePath="..\panda\src\express\datagramIterator.h"></File>
-				<File RelativePath="..\panda\src\express\datagramGenerator.cxx"></File>
-				<File RelativePath="..\panda\src\express\hashGeneratorBase.h"></File>
-				<File RelativePath="..\panda\src\express\patchfile.cxx"></File>
-				<File RelativePath="..\panda\src\express\test_ordered_vector.cxx"></File>
-				<File RelativePath="..\panda\src\express\nodePointerToBase.h"></File>
-				<File RelativePath="..\panda\src\express\virtualFile.h"></File>
-				<File RelativePath="..\panda\src\express\zStream.I"></File>
-				<File RelativePath="..\panda\src\express\subStreamBuf.h"></File>
-				<File RelativePath="..\panda\src\express\virtualFile.cxx"></File>
-				<File RelativePath="..\panda\src\express\password_hash.cxx"></File>
-				<File RelativePath="..\panda\src\express\datagramSink.cxx"></File>
-				<File RelativePath="..\panda\src\express\pointerTo.I"></File>
-				<File RelativePath="..\panda\src\express\virtualFileSystem.I"></File>
-				<File RelativePath="..\panda\src\express\referenceCount.I"></File>
-				<File RelativePath="..\panda\src\express\patchfile.h"></File>
-				<File RelativePath="..\panda\src\express\ordered_vector.I"></File>
-				<File RelativePath="..\panda\src\express\pointerToVoid.h"></File>
-				<File RelativePath="..\panda\src\express\weakPointerToBase.cxx"></File>
-				<File RelativePath="..\panda\src\express\virtualFileMountMultifile.I"></File>
-				<File RelativePath="..\panda\src\express\compress_string.h"></File>
-				<File RelativePath="..\panda\src\express\memoryUsagePointers.h"></File>
-				<File RelativePath="..\panda\src\express\memoryUsage.I"></File>
-				<File RelativePath="..\panda\src\express\referenceCount.h"></File>
-				<File RelativePath="..\panda\src\express\ordered_vector.cxx"></File>
-				<File RelativePath="..\panda\src\express\virtualFileList.I"></File>
-				<File RelativePath="..\panda\src\express\circBuffer.I"></File>
-				<File RelativePath="..\panda\src\express\weakReferenceList.cxx"></File>
-				<File RelativePath="..\panda\src\express\weakPointerToBase.I"></File>
-				<File RelativePath="..\panda\src\express\textEncoder.cxx"></File>
-				<File RelativePath="..\panda\src\express\referenceCount.cxx"></File>
-				<File RelativePath="..\panda\src\express\buffer.h"></File>
-				<File RelativePath="..\panda\src\express\weakReferenceList.h"></File>
-				<File RelativePath="..\panda\src\express\unicodeLatinMap.h"></File>
-				<File RelativePath="..\panda\src\express\namable.h"></File>
-				<File RelativePath="..\panda\src\express\indirectLess.I"></File>
-				<File RelativePath="..\panda\src\express\pta_int.h"></File>
-				<File RelativePath="..\panda\src\express\memoryUsagePointers.I"></File>
-				<File RelativePath="..\panda\src\express\trueClock.h"></File>
-				<File RelativePath="..\panda\src\express\memoryInfo.cxx"></File>
-				<File RelativePath="..\panda\src\express\virtualFileSystem.cxx"></File>
-				<File RelativePath="..\panda\src\express\namable.cxx"></File>
-				<File RelativePath="..\panda\src\express\trueClock.I"></File>
-				<File RelativePath="..\panda\src\express\config_express.cxx"></File>
-				<File RelativePath="..\panda\src\express\pointerToVoid.I"></File>
-				<File RelativePath="..\panda\src\express\vector_uchar.cxx"></File>
-				<File RelativePath="..\panda\src\express\vector_float.h"></File>
-				<File RelativePath="..\panda\src\express\express_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\express\virtualFileSimple.cxx"></File>
-				<File RelativePath="..\panda\src\express\pointerToArray.h"></File>
-				<File RelativePath="..\panda\src\express\memoryUsagePointerCounts.cxx"></File>
-				<File RelativePath="..\panda\src\express\datagramIterator.cxx"></File>
-				<File RelativePath="..\panda\src\express\nodePointerToBase.cxx"></File>
-				<File RelativePath="..\panda\src\express\openSSLWrapper.h"></File>
-				<File RelativePath="..\panda\src\express\subStream.h"></File>
-				<File RelativePath="..\panda\src\express\subStream.I"></File>
-				<File RelativePath="..\panda\src\express\password_hash.h"></File>
-				<File RelativePath="..\panda\src\express\pStatCollectorForwardBase.cxx"></File>
-				<File RelativePath="..\panda\src\express\pointerToArray.I"></File>
-				<File RelativePath="..\panda\src\express\error_utils.h"></File>
-				<File RelativePath="..\panda\src\express\ramfile.I"></File>
-				<File RelativePath="..\panda\src\express\virtualFileComposite.cxx"></File>
-				<File RelativePath="..\panda\src\express\weakPointerToVoid.cxx"></File>
-				<File RelativePath="..\panda\src\express\test_zstream.cxx"></File>
-				<File RelativePath="..\panda\src\express\virtualFileMount.cxx"></File>
-				<File RelativePath="..\panda\src\express\nodePointerToBase.I"></File>
-				<File RelativePath="..\panda\src\express\virtualFileComposite.h"></File>
-				<File RelativePath="..\panda\src\express\datagramGenerator.I"></File>
-				<File RelativePath="..\panda\src\express\compress_string.cxx"></File>
-				<File RelativePath="..\panda\src\express\subStreamBuf.cxx"></File>
-				<File RelativePath="..\panda\src\express\pointerToArrayBase.cxx"></File>
-				<File RelativePath="..\panda\src\express\express_composite.cxx"></File>
-				<File RelativePath="..\panda\src\express\virtualFileComposite.I"></File>
-				<File RelativePath="..\panda\src\express\weakPointerCallback.I"></File>
-				<File RelativePath="..\panda\src\express\multifile.I"></File>
-				<File RelativePath="..\panda\src\express\virtualFile.I"></File>
-				<File RelativePath="..\panda\src\express\patchfile.I"></File>
-				<File RelativePath="..\panda\src\express\virtualFileList.h"></File>
-			</Filter>
-			<Filter Name="iphonedisplay">
-				<File RelativePath="..\panda\src\iphonedisplay\iPhoneGraphicsStateGuardian.h"></File>
-				<File RelativePath="..\panda\src\iphonedisplay\iPhoneGraphicsPipe.h"></File>
-				<File RelativePath="..\panda\src\iphonedisplay\config_iphonedisplay.h"></File>
-				<File RelativePath="..\panda\src\iphonedisplay\eaglView.h"></File>
-				<File RelativePath="..\panda\src\iphonedisplay\iPhoneGraphicsWindow.h"></File>
-				<File RelativePath="..\panda\src\iphonedisplay\viewController.h"></File>
-				<File RelativePath="..\panda\src\iphonedisplay\iPhoneGraphicsWindow.I"></File>
-			</Filter>
-			<Filter Name="pstatclient">
-				<File RelativePath="..\panda\src\pstatclient\pStatServerControlMessage.cxx"></File>
-				<File RelativePath="..\panda\src\pstatclient\pStatCollectorForward.h"></File>
-				<File RelativePath="..\panda\src\pstatclient\pStatClientControlMessage.h"></File>
-				<File RelativePath="..\panda\src\pstatclient\pStatServerControlMessage.h"></File>
-				<File RelativePath="..\panda\src\pstatclient\config_pstatclient.h"></File>
-				<File RelativePath="..\panda\src\pstatclient\config_pstatclient.cxx"></File>
-				<File RelativePath="..\panda\src\pstatclient\pStatClient.cxx"></File>
-				<File RelativePath="..\panda\src\pstatclient\pStatFrameData.I"></File>
-				<File RelativePath="..\panda\src\pstatclient\test_client.cxx"></File>
-				<File RelativePath="..\panda\src\pstatclient\pStatThread.cxx"></File>
-				<File RelativePath="..\panda\src\pstatclient\pStatClient.I"></File>
-				<File RelativePath="..\panda\src\pstatclient\pstatclient_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\pstatclient\pStatClientImpl.cxx"></File>
-				<File RelativePath="..\panda\src\pstatclient\pstatclient_composite.cxx"></File>
-				<File RelativePath="..\panda\src\pstatclient\pStatTimer.I"></File>
-				<File RelativePath="..\panda\src\pstatclient\pStatClient.h"></File>
-				<File RelativePath="..\panda\src\pstatclient\pStatProperties.h"></File>
-				<File RelativePath="..\panda\src\pstatclient\pStatClientImpl.I"></File>
-				<File RelativePath="..\panda\src\pstatclient\pStatClientVersion.h"></File>
-				<File RelativePath="..\panda\src\pstatclient\pStatCollectorForward.cxx"></File>
-				<File RelativePath="..\panda\src\pstatclient\pStatFrameData.cxx"></File>
-				<File RelativePath="..\panda\src\pstatclient\pStatThread.I"></File>
-				<File RelativePath="..\panda\src\pstatclient\pStatCollectorDef.cxx"></File>
-				<File RelativePath="..\panda\src\pstatclient\pStatClientImpl.h"></File>
-				<File RelativePath="..\panda\src\pstatclient\pstatclient_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\pstatclient\pStatClientVersion.I"></File>
-				<File RelativePath="..\panda\src\pstatclient\pStatClientControlMessage.cxx"></File>
-				<File RelativePath="..\panda\src\pstatclient\pStatCollectorDef.h"></File>
-				<File RelativePath="..\panda\src\pstatclient\pStatTimer.h"></File>
-				<File RelativePath="..\panda\src\pstatclient\pStatClientVersion.cxx"></File>
-				<File RelativePath="..\panda\src\pstatclient\pStatCollector.I"></File>
-				<File RelativePath="..\panda\src\pstatclient\pStatProperties.cxx"></File>
-				<File RelativePath="..\panda\src\pstatclient\pStatCollectorForward.I"></File>
-				<File RelativePath="..\panda\src\pstatclient\pStatCollector.h"></File>
-				<File RelativePath="..\panda\src\pstatclient\pStatThread.h"></File>
-				<File RelativePath="..\panda\src\pstatclient\pStatFrameData.h"></File>
-			</Filter>
-			<Filter Name="framework">
-				<File RelativePath="..\panda\src\framework\rock_floor.rgb.c"></File>
-				<File RelativePath="..\panda\src\framework\framework_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\framework\windowFramework.I"></File>
-				<File RelativePath="..\panda\src\framework\pandaFramework.I"></File>
-				<File RelativePath="..\panda\src\framework\shuttle_controls.bam.c"></File>
-				<File RelativePath="..\panda\src\framework\config_framework.h"></File>
-				<File RelativePath="..\panda\src\framework\windowFramework.h"></File>
-				<File RelativePath="..\panda\src\framework\windowFramework.cxx"></File>
-				<File RelativePath="..\panda\src\framework\config_framework.cxx"></File>
-				<File RelativePath="..\panda\src\framework\pandaFramework.h"></File>
-				<File RelativePath="..\panda\src\framework\pandaFramework.cxx"></File>
-				<File RelativePath="..\panda\src\framework\framework_composite.cxx"></File>
-			</Filter>
-			<Filter Name="gsgbase">
-				<File RelativePath="..\panda\src\gsgbase\graphicsOutputBase.cxx"></File>
-				<File RelativePath="..\panda\src\gsgbase\gsgbase_composite.cxx"></File>
-				<File RelativePath="..\panda\src\gsgbase\config_gsgbase.cxx"></File>
-				<File RelativePath="..\panda\src\gsgbase\graphicsOutputBase.I"></File>
-				<File RelativePath="..\panda\src\gsgbase\gsgbase_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\gsgbase\config_gsgbase.h"></File>
-				<File RelativePath="..\panda\src\gsgbase\test_gsgbase.cxx"></File>
-				<File RelativePath="..\panda\src\gsgbase\graphicsStateGuardianBase.h"></File>
-				<File RelativePath="..\panda\src\gsgbase\graphicsOutputBase.h"></File>
-				<File RelativePath="..\panda\src\gsgbase\graphicsStateGuardianBase.cxx"></File>
-			</Filter>
-			<Filter Name="lerp">
-				<File RelativePath="..\panda\src\lerp\lerpchans.h"></File>
-				<File RelativePath="..\panda\src\lerp\lerpblend.cxx"></File>
-				<File RelativePath="..\panda\src\lerp\lerp_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\lerp\lerpfunctor.h"></File>
-				<File RelativePath="..\panda\src\lerp\lerpfunctor.cxx"></File>
-				<File RelativePath="..\panda\src\lerp\config_lerp.h"></File>
-				<File RelativePath="..\panda\src\lerp\config_lerp.cxx"></File>
-				<File RelativePath="..\panda\src\lerp\lerpblend.h"></File>
-				<File RelativePath="..\panda\src\lerp\lerp.h"></File>
-				<File RelativePath="..\panda\src\lerp\lerp.cxx"></File>
-				<File RelativePath="..\panda\src\lerp\lerp_composite.cxx"></File>
-			</Filter>
-			<Filter Name="effects">
-				<File RelativePath="..\panda\src\effects\config_effects.cxx"></File>
-				<File RelativePath="..\panda\src\effects\lensFlareNode.I"></File>
-				<File RelativePath="..\panda\src\effects\effects_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\effects\effects_composite.cxx"></File>
-				<File RelativePath="..\panda\src\effects\lensFlareNode.cxx"></File>
-				<File RelativePath="..\panda\src\effects\lensFlareNode.h"></File>
-				<File RelativePath="..\panda\src\effects\config_effects.h"></File>
-			</Filter>
-			<Filter Name="mesadisplay">
-				<File RelativePath="..\panda\src\mesadisplay\mesadisplay_composite.cxx"></File>
-				<File RelativePath="..\panda\src\mesadisplay\osMesaGraphicsPipe.cxx"></File>
-				<File RelativePath="..\panda\src\mesadisplay\osMesaGraphicsBuffer.h"></File>
-				<File RelativePath="..\panda\src\mesadisplay\osMesaGraphicsStateGuardian.I"></File>
-				<File RelativePath="..\panda\src\mesadisplay\mesagsg.cxx"></File>
-				<File RelativePath="..\panda\src\mesadisplay\mesagsg.h"></File>
-				<File RelativePath="..\panda\src\mesadisplay\osMesaGraphicsPipe.I"></File>
-				<File RelativePath="..\panda\src\mesadisplay\mesadisplay_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\mesadisplay\osMesaGraphicsStateGuardian.h"></File>
-				<File RelativePath="..\panda\src\mesadisplay\config_mesadisplay.cxx"></File>
-				<File RelativePath="..\panda\src\mesadisplay\osMesaGraphicsBuffer.I"></File>
-				<File RelativePath="..\panda\src\mesadisplay\osMesaGraphicsBuffer.cxx"></File>
-				<File RelativePath="..\panda\src\mesadisplay\osMesaGraphicsPipe.h"></File>
-				<File RelativePath="..\panda\src\mesadisplay\config_mesadisplay.h"></File>
-				<File RelativePath="..\panda\src\mesadisplay\osMesaGraphicsStateGuardian.cxx"></File>
-			</Filter>
-			<Filter Name="egg2pg">
-				<File RelativePath="..\panda\src\egg2pg\eggLoader.h"></File>
-				<File RelativePath="..\panda\src\egg2pg\load_egg_file.cxx"></File>
-				<File RelativePath="..\panda\src\egg2pg\egg2pg_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\egg2pg\eggLoader.cxx"></File>
-				<File RelativePath="..\panda\src\egg2pg\eggRenderState.h"></File>
-				<File RelativePath="..\panda\src\egg2pg\deferredNodeProperty.cxx"></File>
-				<File RelativePath="..\panda\src\egg2pg\eggBinner.h"></File>
-				<File RelativePath="..\panda\src\egg2pg\characterMaker.cxx"></File>
-				<File RelativePath="..\panda\src\egg2pg\eggRenderState.I"></File>
-				<File RelativePath="..\panda\src\egg2pg\egg_parametrics.h"></File>
-				<File RelativePath="..\panda\src\egg2pg\config_egg2pg.cxx"></File>
-				<File RelativePath="..\panda\src\egg2pg\loaderFileTypeEgg.h"></File>
-				<File RelativePath="..\panda\src\egg2pg\eggBinner.cxx"></File>
-				<File RelativePath="..\panda\src\egg2pg\animBundleMaker.h"></File>
-				<File RelativePath="..\panda\src\egg2pg\load_egg_file.h"></File>
-				<File RelativePath="..\panda\src\egg2pg\characterMaker.h"></File>
-				<File RelativePath="..\panda\src\egg2pg\egg2pg_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\egg2pg\loaderFileTypeEgg.cxx"></File>
-				<File RelativePath="..\panda\src\egg2pg\config_egg2pg.h"></File>
-				<File RelativePath="..\panda\src\egg2pg\deferredNodeProperty.h"></File>
-				<File RelativePath="..\panda\src\egg2pg\eggRenderState.cxx"></File>
-				<File RelativePath="..\panda\src\egg2pg\egg_parametrics.cxx"></File>
-				<File RelativePath="..\panda\src\egg2pg\egg2pg_composite.cxx"></File>
-				<File RelativePath="..\panda\src\egg2pg\eggLoader.I"></File>
-				<File RelativePath="..\panda\src\egg2pg\animBundleMaker.cxx"></File>
-			</Filter>
-			<Filter Name="windisplay">
-				<File RelativePath="..\panda\src\windisplay\winGraphicsPipe.cxx"></File>
-				<File RelativePath="..\panda\src\windisplay\config_windisplay.h"></File>
-				<File RelativePath="..\panda\src\windisplay\winGraphicsWindow.h"></File>
-				<File RelativePath="..\panda\src\windisplay\windisplay_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\windisplay\winGraphicsWindow.cxx"></File>
-				<File RelativePath="..\panda\src\windisplay\winGraphicsWindow.I"></File>
-				<File RelativePath="..\panda\src\windisplay\winGraphicsPipe.I"></File>
-				<File RelativePath="..\panda\src\windisplay\windisplay_composite.cxx"></File>
-				<File RelativePath="..\panda\src\windisplay\winDetectDx9.cxx"></File>
-				<File RelativePath="..\panda\src\windisplay\config_windisplay.cxx"></File>
-				<File RelativePath="..\panda\src\windisplay\winGraphicsPipe.h"></File>
-				<File RelativePath="..\panda\src\windisplay\winDetectDx.h"></File>
-			</Filter>
-			<Filter Name="pgraph">
-				<File RelativePath="..\panda\src\pgraph\lensNode.I"></File>
-				<File RelativePath="..\panda\src\pgraph\portalNode.h"></File>
-				<File RelativePath="..\panda\src\pgraph\pandaNodeChain.I"></File>
-				<File RelativePath="..\panda\src\pgraph\shaderAttrib.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\auxBitplaneAttrib.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\workingNodePath.I"></File>
-				<File RelativePath="..\panda\src\pgraph\renderEffect.I"></File>
-				<File RelativePath="..\panda\src\pgraph\polylightNode.h"></File>
-				<File RelativePath="..\panda\src\pgraph\shaderPool.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\cullBinManager.I"></File>
-				<File RelativePath="..\panda\src\pgraph\nodePathLerps.h"></File>
-				<File RelativePath="..\panda\src\pgraph\attribNodeRegistry.h"></File>
-				<File RelativePath="..\panda\src\pgraph\fog.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\scissorEffect.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\clipPlaneAttrib.I"></File>
-				<File RelativePath="..\panda\src\pgraph\modelPool.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\stencilAttrib.I"></File>
-				<File RelativePath="..\panda\src\pgraph\colorWriteAttrib.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\depthTestAttrib.I"></File>
-				<File RelativePath="..\panda\src\pgraph\nodePathLerps.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\renderEffect.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\modelNode.h"></File>
-				<File RelativePath="..\panda\src\pgraph\loader.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\shaderPool.I"></File>
-				<File RelativePath="..\panda\src\pgraph\light.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\decalEffect.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\polylightEffect.h"></File>
-				<File RelativePath="..\panda\src\pgraph\modelRoot.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\shadeModelAttrib.I"></File>
-				<File RelativePath="..\panda\src\pgraph\cullHandler.h"></File>
-				<File RelativePath="..\panda\src\pgraph\colorBlendAttrib.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\texMatrixAttrib.h"></File>
-				<File RelativePath="..\panda\src\pgraph\cullBinManager.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\test_pgraph.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\billboardEffect.I"></File>
-				<File RelativePath="..\panda\src\pgraph\transparencyAttrib.h"></File>
-				<File RelativePath="..\panda\src\pgraph\materialAttrib.I"></File>
-				<File RelativePath="..\panda\src\pgraph\geomTransformer.h"></File>
-				<File RelativePath="..\panda\src\pgraph\geomDrawCallbackData.h"></File>
-				<File RelativePath="..\panda\src\pgraph\loader.I"></File>
-				<File RelativePath="..\panda\src\pgraph\transformState.h"></File>
-				<File RelativePath="..\panda\src\pgraph\texMatrixAttrib.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\portalNode.I"></File>
-				<File RelativePath="..\panda\src\pgraph\colorScaleAttrib.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\clipPlaneAttrib.h"></File>
-				<File RelativePath="..\panda\src\pgraph\billboardEffect.h"></File>
-				<File RelativePath="..\panda\src\pgraph\compassEffect.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\shaderAttrib.h"></File>
-				<File RelativePath="..\panda\src\pgraph\renderEffects.h"></File>
-				<File RelativePath="..\panda\src\pgraph\nodePathComponent.h"></File>
-				<File RelativePath="..\panda\src\pgraph\light.I"></File>
-				<File RelativePath="..\panda\src\pgraph\colorWriteAttrib.h"></File>
-				<File RelativePath="..\panda\src\pgraph\materialCollection.h"></File>
-				<File RelativePath="..\panda\src\pgraph\loaderFileType.h"></File>
-				<File RelativePath="..\panda\src\pgraph\transformState.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\depthOffsetAttrib.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\rescaleNormalAttrib.I"></File>
-				<File RelativePath="..\panda\src\pgraph\depthTestAttrib.h"></File>
-				<File RelativePath="..\panda\src\pgraph\texGenAttrib.h"></File>
-				<File RelativePath="..\panda\src\pgraph\showBoundsEffect.I"></File>
-				<File RelativePath="..\panda\src\pgraph\fogAttrib.h"></File>
-				<File RelativePath="..\panda\src\pgraph\loaderFileTypeRegistry.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\colorScaleAttrib.I"></File>
-				<File RelativePath="..\panda\src\pgraph\light.h"></File>
-				<File RelativePath="..\panda\src\pgraph\modelFlattenRequest.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\nodePathComponent.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\cullTraverser.h"></File>
-				<File RelativePath="..\panda\src\pgraph\camera.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\bamFile.I"></File>
-				<File RelativePath="..\panda\src\pgraph\decalEffect.I"></File>
-				<File RelativePath="..\panda\src\pgraph\cullableObject.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\cullHandler.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\renderAttrib.h"></File>
-				<File RelativePath="..\panda\src\pgraph\antialiasAttrib.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\cullTraverserData.h"></File>
-				<File RelativePath="..\panda\src\pgraph\cacheStats.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\cullBinAttrib.I"></File>
-				<File RelativePath="..\panda\src\pgraph\weakNodePath.h"></File>
-				<File RelativePath="..\panda\src\pgraph\attribNodeRegistry.I"></File>
-				<File RelativePath="..\panda\src\pgraph\scissorAttrib.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\geomNode.I"></File>
-				<File RelativePath="..\panda\src\pgraph\workingNodePath.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\pgraph_composite4.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\pgraph_composite3.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\lightAttrib.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\pandaNodeChain.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\renderState.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\depthOffsetAttrib.h"></File>
-				<File RelativePath="..\panda\src\pgraph\stateMunger.I"></File>
-				<File RelativePath="..\panda\src\pgraph\findApproxPath.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\stencilAttrib.h"></File>
-				<File RelativePath="..\panda\src\pgraph\lightAttrib.h"></File>
-				<File RelativePath="..\panda\src\pgraph\renderModeAttrib.I"></File>
-				<File RelativePath="..\panda\src\pgraph\pandaNodeChain.h"></File>
-				<File RelativePath="..\panda\src\pgraph\shaderPool.h"></File>
-				<File RelativePath="..\panda\src\pgraph\cullBinAttrib.h"></File>
-				<File RelativePath="..\panda\src\pgraph\textureStageCollection.I"></File>
-				<File RelativePath="..\panda\src\pgraph\camera.h"></File>
-				<File RelativePath="..\panda\src\pgraph\sceneGraphReducer.h"></File>
-				<File RelativePath="..\panda\src\pgraph\texMatrixAttrib.I"></File>
-				<File RelativePath="..\panda\src\pgraph\findApproxPath.h"></File>
-				<File RelativePath="..\panda\src\pgraph\textureStageCollection.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\audioVolumeAttrib.I"></File>
-				<File RelativePath="..\panda\src\pgraph\portalClipper.I"></File>
-				<File RelativePath="..\panda\src\pgraph\billboardEffect.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\cullResult.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\fogAttrib.I"></File>
-				<File RelativePath="..\panda\src\pgraph\eventStorePandaNode.h"></File>
-				<File RelativePath="..\panda\src\pgraph\colorBlendAttrib.h"></File>
-				<File RelativePath="..\panda\src\pgraph\sceneGraphReducer.I"></File>
-				<File RelativePath="..\panda\src\pgraph\pandaNode.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\scissorAttrib.I"></File>
-				<File RelativePath="..\panda\src\pgraph\sceneGraphReducer.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\cullPlanes.I"></File>
-				<File RelativePath="..\panda\src\pgraph\accumulatedAttribs.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\modelPool.h"></File>
-				<File RelativePath="..\panda\src\pgraph\antialiasAttrib.h"></File>
-				<File RelativePath="..\panda\src\pgraph\geomDrawCallbackData.I"></File>
-				<File RelativePath="..\panda\src\pgraph\loaderFileTypeBam.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\depthTestAttrib.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\polylightEffect.I"></File>
-				<File RelativePath="..\panda\src\pgraph\modelFlattenRequest.I"></File>
-				<File RelativePath="..\panda\src\pgraph\transparencyAttrib.I"></File>
-				<File RelativePath="..\panda\src\pgraph\depthWriteAttrib.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\alphaTestAttrib.I"></File>
-				<File RelativePath="..\panda\src\pgraph\auxBitplaneAttrib.I"></File>
-				<File RelativePath="..\panda\src\pgraph\internalNameCollection.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\modelNode.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\nodePathCollection.I"></File>
-				<File RelativePath="..\panda\src\pgraph\transparencyAttrib.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\config_pgraph.h"></File>
-				<File RelativePath="..\panda\src\pgraph\renderState.I"></File>
-				<File RelativePath="..\panda\src\pgraph\modelLoadRequest.h"></File>
-				<File RelativePath="..\panda\src\pgraph\cacheStats.h"></File>
-				<File RelativePath="..\panda\src\pgraph\stateMunger.h"></File>
-				<File RelativePath="..\panda\src\pgraph\cullFaceAttrib.I"></File>
-				<File RelativePath="..\panda\src\pgraph\texGenAttrib.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\sceneSetup.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\planeNode.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\weakNodePath.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\nodePath.h"></File>
-				<File RelativePath="..\panda\src\pgraph\geomNode.h"></File>
-				<File RelativePath="..\panda\src\pgraph\findApproxLevelEntry.I"></File>
-				<File RelativePath="..\panda\src\pgraph\pgraph_composite.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\fog.I"></File>
-				<File RelativePath="..\panda\src\pgraph\nodePath.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\planeNode.I"></File>
-				<File RelativePath="..\panda\src\pgraph\cullTraverserData.I"></File>
-				<File RelativePath="..\panda\src\pgraph\renderEffects.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\geomDrawCallbackData.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\renderEffects.I"></File>
-				<File RelativePath="..\panda\src\pgraph\cullFaceAttrib.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\sceneSetup.h"></File>
-				<File RelativePath="..\panda\src\pgraph\auxSceneData.h"></File>
-				<File RelativePath="..\panda\src\pgraph\textureStageCollection.h"></File>
-				<File RelativePath="..\panda\src\pgraph\eventStorePandaNode.I"></File>
-				<File RelativePath="..\panda\src\pgraph\cullBinManager.h"></File>
-				<File RelativePath="..\panda\src\pgraph\cullHandler.I"></File>
-				<File RelativePath="..\panda\src\pgraph\scissorEffect.h"></File>
-				<File RelativePath="..\panda\src\pgraph\nodePathComponent.I"></File>
-				<File RelativePath="..\panda\src\pgraph\auxSceneData.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\clipPlaneAttrib.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\lightRampAttrib.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\accumulatedAttribs.h"></File>
-				<File RelativePath="..\panda\src\pgraph\stencilAttrib.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\depthOffsetAttrib.I"></File>
-				<File RelativePath="..\panda\src\pgraph\rescaleNormalAttrib.h"></File>
-				<File RelativePath="..\panda\src\pgraph\cullBinAttrib.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\colorAttrib.I"></File>
-				<File RelativePath="..\panda\src\pgraph\auxBitplaneAttrib.h"></File>
-				<File RelativePath="..\panda\src\pgraph\loaderFileTypeRegistry.h"></File>
-				<File RelativePath="..\panda\src\pgraph\portalClipper.h"></File>
-				<File RelativePath="..\panda\src\pgraph\modelRoot.I"></File>
-				<File RelativePath="..\panda\src\pgraph\compassEffect.I"></File>
-				<File RelativePath="..\panda\src\pgraph\bamFile.h"></File>
-				<File RelativePath="..\panda\src\pgraph\cullBin.I"></File>
-				<File RelativePath="..\panda\src\pgraph\config_pgraph.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\internalNameCollection.h"></File>
-				<File RelativePath="..\panda\src\pgraph\shadeModelAttrib.h"></File>
-				<File RelativePath="..\panda\src\pgraph\texProjectorEffect.h"></File>
-				<File RelativePath="..\panda\src\pgraph\modelLoadRequest.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\renderModeAttrib.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\nodePathCollection.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\compassEffect.h"></File>
-				<File RelativePath="..\panda\src\pgraph\camera.I"></File>
-				<File RelativePath="..\panda\src\pgraph\polylightNode.I"></File>
-				<File RelativePath="..\panda\src\pgraph\alphaTestAttrib.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\nodePathCollection.h"></File>
-				<File RelativePath="..\panda\src\pgraph\cullableObject.h"></File>
-				<File RelativePath="..\panda\src\pgraph\loader.h"></File>
-				<File RelativePath="..\panda\src\pgraph\bamFile.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\materialCollection.I"></File>
-				<File RelativePath="..\panda\src\pgraph\showBoundsEffect.h"></File>
-				<File RelativePath="..\panda\src\pgraph\materialAttrib.h"></File>
-				<File RelativePath="..\panda\src\pgraph\textureAttrib.h"></File>
-				<File RelativePath="..\panda\src\pgraph\cullPlanes.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\colorBlendAttrib.I"></File>
-				<File RelativePath="..\panda\src\pgraph\lightRampAttrib.I"></File>
-				<File RelativePath="..\panda\src\pgraph\fog.h"></File>
-				<File RelativePath="..\panda\src\pgraph\colorAttrib.h"></File>
-				<File RelativePath="..\panda\src\pgraph\renderModeAttrib.h"></File>
-				<File RelativePath="..\panda\src\pgraph\shaderAttrib.I"></File>
-				<File RelativePath="..\panda\src\pgraph\geomNode.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\shadeModelAttrib.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\cullFaceAttrib.h"></File>
-				<File RelativePath="..\panda\src\pgraph\depthWriteAttrib.I"></File>
-				<File RelativePath="..\panda\src\pgraph\findApproxPath.I"></File>
-				<File RelativePath="..\panda\src\pgraph\modelLoadRequest.I"></File>
-				<File RelativePath="..\panda\src\pgraph\renderAttribRegistry.I"></File>
-				<File RelativePath="..\panda\src\pgraph\rescaleNormalAttrib.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\cullPlanes.h"></File>
-				<File RelativePath="..\panda\src\pgraph\stateMunger.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\planeNode.h"></File>
-				<File RelativePath="..\panda\src\pgraph\loaderFileType.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\cullBinEnums.h"></File>
-				<File RelativePath="..\panda\src\pgraph\shaderInput.h"></File>
-				<File RelativePath="..\panda\src\pgraph\lightAttrib.I"></File>
-				<File RelativePath="..\panda\src\pgraph\lensNode.h"></File>
-				<File RelativePath="..\panda\src\pgraph\cullTraverserData.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\polylightEffect.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\modelNode.I"></File>
-				<File RelativePath="..\panda\src\pgraph\auxSceneData.I"></File>
-				<File RelativePath="..\panda\src\pgraph\loaderFileTypeBam.h"></File>
-				<File RelativePath="..\panda\src\pgraph\sceneSetup.I"></File>
-				<File RelativePath="..\panda\src\pgraph\textureAttrib.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\modelRoot.h"></File>
-				<File RelativePath="..\panda\src\pgraph\cullTraverser.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\cullBin.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\lensNode.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\renderAttribRegistry.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\renderEffect.h"></File>
-				<File RelativePath="..\panda\src\pgraph\nodePath.I"></File>
-				<File RelativePath="..\panda\src\pgraph\showBoundsEffect.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\findApproxLevelEntry.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\decalEffect.h"></File>
-				<File RelativePath="..\panda\src\pgraph\colorAttrib.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\pgraph_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\modelFlattenRequest.h"></File>
-				<File RelativePath="..\panda\src\pgraph\weakNodePath.I"></File>
-				<File RelativePath="..\panda\src\pgraph\materialAttrib.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\shaderInput.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\renderAttrib.I"></File>
-				<File RelativePath="..\panda\src\pgraph\accumulatedAttribs.I"></File>
-				<File RelativePath="..\panda\src\pgraph\portalClipper.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\audioVolumeAttrib.h"></File>
-				<File RelativePath="..\panda\src\pgraph\eventStorePandaNode.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\colorWriteAttrib.I"></File>
-				<File RelativePath="..\panda\src\pgraph\fogAttrib.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\materialCollection.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\attribNodeRegistry.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\polylightNode.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\textureAttrib.I"></File>
-				<File RelativePath="..\panda\src\pgraph\cullBin.h"></File>
-				<File RelativePath="..\panda\src\pgraph\scissorEffect.I"></File>
-				<File RelativePath="..\panda\src\pgraph\renderState.h"></File>
-				<File RelativePath="..\panda\src\pgraph\antialiasAttrib.I"></File>
-				<File RelativePath="..\panda\src\pgraph\pandaNode.I"></File>
-				<File RelativePath="..\panda\src\pgraph\pgraph_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\texProjectorEffect.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\depthWriteAttrib.h"></File>
-				<File RelativePath="..\panda\src\pgraph\cullableObject.I"></File>
-				<File RelativePath="..\panda\src\pgraph\pandaNode.h"></File>
-				<File RelativePath="..\panda\src\pgraph\renderAttrib.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\portalNode.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\texProjectorEffect.I"></File>
-				<File RelativePath="..\panda\src\pgraph\cullResult.I"></File>
-				<File RelativePath="..\panda\src\pgraph\findApproxLevelEntry.h"></File>
-				<File RelativePath="..\panda\src\pgraph\renderAttribRegistry.h"></File>
-				<File RelativePath="..\panda\src\pgraph\modelPool.I"></File>
-				<File RelativePath="..\panda\src\pgraph\shaderInput.I"></File>
-				<File RelativePath="..\panda\src\pgraph\texGenAttrib.I"></File>
-				<File RelativePath="..\panda\src\pgraph\alphaTestAttrib.h"></File>
-				<File RelativePath="..\panda\src\pgraph\cullResult.h"></File>
-				<File RelativePath="..\panda\src\pgraph\cullTraverser.I"></File>
-				<File RelativePath="..\panda\src\pgraph\workingNodePath.h"></File>
-				<File RelativePath="..\panda\src\pgraph\geomTransformer.cxx"></File>
-				<File RelativePath="..\panda\src\pgraph\internalNameCollection.I"></File>
-				<File RelativePath="..\panda\src\pgraph\geomTransformer.I"></File>
-				<File RelativePath="..\panda\src\pgraph\transformState.I"></File>
-				<File RelativePath="..\panda\src\pgraph\cacheStats.I"></File>
-				<File RelativePath="..\panda\src\pgraph\scissorAttrib.h"></File>
-				<File RelativePath="..\panda\src\pgraph\lightRampAttrib.h"></File>
-				<File RelativePath="..\panda\src\pgraph\colorScaleAttrib.h"></File>
-				<File RelativePath="..\panda\src\pgraph\audioVolumeAttrib.cxx"></File>
-			</Filter>
-			<Filter Name="dxgsg8">
-				<File RelativePath="..\panda\src\dxgsg8\wdxGraphicsPipe8.cxx"></File>
-				<File RelativePath="..\panda\src\dxgsg8\dxGraphicsStateGuardian8.cxx"></File>
-				<File RelativePath="..\panda\src\dxgsg8\dxIndexBufferContext8.cxx"></File>
-				<File RelativePath="..\panda\src\dxgsg8\wdxGraphicsBuffer8.cxx"></File>
-				<File RelativePath="..\panda\src\dxgsg8\dxgsg8base.h"></File>
-				<File RelativePath="..\panda\src\dxgsg8\dxIndexBufferContext8.I"></File>
-				<File RelativePath="..\panda\src\dxgsg8\dxVertexBufferContext8.cxx"></File>
-				<File RelativePath="..\panda\src\dxgsg8\dxTextureContext8.I"></File>
-				<File RelativePath="..\panda\src\dxgsg8\dxGeomMunger8.cxx"></File>
-				<File RelativePath="..\panda\src\dxgsg8\dxIndexBufferContext8.h"></File>
-				<File RelativePath="..\panda\src\dxgsg8\config_dxgsg8.h"></File>
-				<File RelativePath="..\panda\src\dxgsg8\dxgsg8_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\dxgsg8\wdxGraphicsWindow8.h"></File>
-				<File RelativePath="..\panda\src\dxgsg8\dxGeomMunger8.h"></File>
-				<File RelativePath="..\panda\src\dxgsg8\wdxGraphicsPipe8.h"></File>
-				<File RelativePath="..\panda\src\dxgsg8\wdxGraphicsWindow8.I"></File>
-				<File RelativePath="..\panda\src\dxgsg8\dxGeomMunger8.I"></File>
-				<File RelativePath="..\panda\src\dxgsg8\dxGraphicsDevice8.cxx"></File>
-				<File RelativePath="..\panda\src\dxgsg8\dxGraphicsStateGuardian8.I"></File>
-				<File RelativePath="..\panda\src\dxgsg8\dxInput8.h"></File>
-				<File RelativePath="..\panda\src\dxgsg8\dxTextureContext8.h"></File>
-				<File RelativePath="..\panda\src\dxgsg8\wdxGraphicsPipe8.I"></File>
-				<File RelativePath="..\panda\src\dxgsg8\config_dxgsg8.cxx"></File>
-				<File RelativePath="..\panda\src\dxgsg8\dxInput8.cxx"></File>
-				<File RelativePath="..\panda\src\dxgsg8\dxTextureContext8.cxx"></File>
-				<File RelativePath="..\panda\src\dxgsg8\dxgsg8_composite.cxx"></File>
-				<File RelativePath="..\panda\src\dxgsg8\dxGraphicsStateGuardian8.h"></File>
-				<File RelativePath="..\panda\src\dxgsg8\dxVertexBufferContext8.I"></File>
-				<File RelativePath="..\panda\src\dxgsg8\dxGraphicsDevice8.h"></File>
-				<File RelativePath="..\panda\src\dxgsg8\dxVertexBufferContext8.h"></File>
-				<File RelativePath="..\panda\src\dxgsg8\wdxGraphicsWindow8.cxx"></File>
-				<File RelativePath="..\panda\src\dxgsg8\wdxGraphicsBuffer8.h"></File>
-			</Filter>
-			<Filter Name="pnmtext">
-				<File RelativePath="..\panda\src\pnmtext\pnmTextMaker.h"></File>
-				<File RelativePath="..\panda\src\pnmtext\freetypeFont.cxx"></File>
-				<File RelativePath="..\panda\src\pnmtext\pnmTextGlyph.h"></File>
-				<File RelativePath="..\panda\src\pnmtext\freetypeFace.cxx"></File>
-				<File RelativePath="..\panda\src\pnmtext\pnmTextGlyph.I"></File>
-				<File RelativePath="..\panda\src\pnmtext\pnmTextMaker.I"></File>
-				<File RelativePath="..\panda\src\pnmtext\config_pnmtext.cxx"></File>
-				<File RelativePath="..\panda\src\pnmtext\pnmTextMaker.cxx"></File>
-				<File RelativePath="..\panda\src\pnmtext\freetypeFace.h"></File>
-				<File RelativePath="..\panda\src\pnmtext\pnmTextGlyph.cxx"></File>
-				<File RelativePath="..\panda\src\pnmtext\pnmtext_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\pnmtext\freetypeFace.I"></File>
-				<File RelativePath="..\panda\src\pnmtext\config_pnmtext.h"></File>
-				<File RelativePath="..\panda\src\pnmtext\pnmtext_composite.cxx"></File>
-				<File RelativePath="..\panda\src\pnmtext\freetypeFont.I"></File>
-				<File RelativePath="..\panda\src\pnmtext\freetypeFont.h"></File>
-			</Filter>
-			<Filter Name="skel">
-				<File RelativePath="..\panda\src\skel\typedSkel.h"></File>
-				<File RelativePath="..\panda\src\skel\basicSkel.cxx"></File>
-				<File RelativePath="..\panda\src\skel\config_skel.cxx"></File>
-				<File RelativePath="..\panda\src\skel\config_skel.h"></File>
-				<File RelativePath="..\panda\src\skel\basicSkel.I"></File>
-				<File RelativePath="..\panda\src\skel\typedSkel.I"></File>
-				<File RelativePath="..\panda\src\skel\skel_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\skel\basicSkel.h"></File>
-				<File RelativePath="..\panda\src\skel\skel_composite.cxx"></File>
-				<File RelativePath="..\panda\src\skel\typedSkel.cxx"></File>
-			</Filter>
-			<Filter Name="tform">
-				<File RelativePath="..\panda\src\tform\mouseWatcherRegion.I"></File>
-				<File RelativePath="..\panda\src\tform\tform_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\tform\transform2sg.cxx"></File>
-				<File RelativePath="..\panda\src\tform\trackball.h"></File>
-				<File RelativePath="..\panda\src\tform\mouseWatcherRegion.cxx"></File>
-				<File RelativePath="..\panda\src\tform\mouseWatcherGroup.h"></File>
-				<File RelativePath="..\panda\src\tform\mouseWatcherParameter.h"></File>
-				<File RelativePath="..\panda\src\tform\driveInterface.I"></File>
-				<File RelativePath="..\panda\src\tform\mouseWatcher.h"></File>
-				<File RelativePath="..\panda\src\tform\mouseWatcherRegion.h"></File>
-				<File RelativePath="..\panda\src\tform\tform_composite.cxx"></File>
-				<File RelativePath="..\panda\src\tform\mouseInterfaceNode.cxx"></File>
-				<File RelativePath="..\panda\src\tform\config_tform.cxx"></File>
-				<File RelativePath="..\panda\src\tform\mouseInterfaceNode.h"></File>
-				<File RelativePath="..\panda\src\tform\driveInterface.h"></File>
-				<File RelativePath="..\panda\src\tform\buttonThrower.cxx"></File>
-				<File RelativePath="..\panda\src\tform\mouseWatcher.cxx"></File>
-				<File RelativePath="..\panda\src\tform\mouseWatcher.I"></File>
-				<File RelativePath="..\panda\src\tform\transform2sg.h"></File>
-				<File RelativePath="..\panda\src\tform\tform_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\tform\mouseWatcherParameter.cxx"></File>
-				<File RelativePath="..\panda\src\tform\config_tform.h"></File>
-				<File RelativePath="..\panda\src\tform\mouseWatcherGroup.cxx"></File>
-				<File RelativePath="..\panda\src\tform\buttonThrower.I"></File>
-				<File RelativePath="..\panda\src\tform\buttonThrower.h"></File>
-				<File RelativePath="..\panda\src\tform\trackball.cxx"></File>
-				<File RelativePath="..\panda\src\tform\mouseInterfaceNode.I"></File>
-				<File RelativePath="..\panda\src\tform\mouseSubregion.cxx"></File>
-				<File RelativePath="..\panda\src\tform\mouseSubregion.I"></File>
-				<File RelativePath="..\panda\src\tform\mouseSubregion.h"></File>
-				<File RelativePath="..\panda\src\tform\mouseWatcherParameter.I"></File>
-				<File RelativePath="..\panda\src\tform\driveInterface.cxx"></File>
-			</Filter>
-			<Filter Name="egg">
-				<File RelativePath="..\panda\src\egg\eggGroup.h"></File>
-				<File RelativePath="..\panda\src\egg\eggNameUniquifier.h"></File>
-				<File RelativePath="..\panda\src\egg\eggGroup.I"></File>
-				<File RelativePath="..\panda\src\egg\eggCoordinateSystem.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggNurbsCurve.h"></File>
-				<File RelativePath="..\panda\src\egg\eggMaterialCollection.h"></File>
-				<File RelativePath="..\panda\src\egg\eggLine.h"></File>
-				<File RelativePath="..\panda\src\egg\eggPoint.h"></File>
-				<File RelativePath="..\panda\src\egg\eggBinMaker.h"></File>
-				<File RelativePath="..\panda\src\egg\eggPoint.I"></File>
-				<File RelativePath="..\panda\src\egg\eggFilenameNode.h"></File>
-				<File RelativePath="..\panda\src\egg\eggUtilities.h"></File>
-				<File RelativePath="..\panda\src\egg\eggVertexPool.h"></File>
-				<File RelativePath="..\panda\src\egg\eggBin.h"></File>
-				<File RelativePath="..\panda\src\egg\eggSAnimData.I"></File>
-				<File RelativePath="..\panda\src\egg\eggVertexPool.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggMorphList.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggTable.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggMesherFanMaker.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggNurbsCurve.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggSurface.I"></File>
-				<File RelativePath="..\panda\src\egg\eggMesherEdge.I"></File>
-				<File RelativePath="..\panda\src\egg\eggMesher.h"></File>
-				<File RelativePath="..\panda\src\egg\eggPoint.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggMaterial.I"></File>
-				<File RelativePath="..\panda\src\egg\eggMiscFuncs.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggVertexUV.I"></File>
-				<File RelativePath="..\panda\src\egg\eggXfmAnimData.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggTable.I"></File>
-				<File RelativePath="..\panda\src\egg\eggMaterial.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggExternalReference.h"></File>
-				<File RelativePath="..\panda\src\egg\eggTransform.h"></File>
-				<File RelativePath="..\panda\src\egg\vector_PT_EggVertex.h"></File>
-				<File RelativePath="..\panda\src\egg\vector_PT_EggMaterial.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggAnimData.h"></File>
-				<File RelativePath="..\panda\src\egg\eggNurbsCurve.I"></File>
-				<File RelativePath="..\panda\src\egg\eggExternalReference.I"></File>
-				<File RelativePath="..\panda\src\egg\eggPoolUniquifier.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggSurface.h"></File>
-				<File RelativePath="..\panda\src\egg\eggMesherStrip.h"></File>
-				<File RelativePath="..\panda\src\egg\eggPolygon.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggXfmSAnim.I"></File>
-				<File RelativePath="..\panda\src\egg\vector_PT_EggMaterial.h"></File>
-				<File RelativePath="..\panda\src\egg\eggObject.h"></File>
-				<File RelativePath="..\panda\src\egg\eggRenderMode.I"></File>
-				<File RelativePath="..\panda\src\egg\eggCurve.I"></File>
-				<File RelativePath="..\panda\src\egg\eggSAnimData.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggMiscFuncs.h"></File>
-				<File RelativePath="..\panda\src\egg\eggMesher.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggPolysetMaker.h"></File>
-				<File RelativePath="..\panda\src\egg\lexerDefs.h"></File>
-				<File RelativePath="..\panda\src\egg\eggNamedObject.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggAttributes.cxx"></File>
-				<File RelativePath="..\panda\src\egg\test_egg.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggComment.I"></File>
-				<File RelativePath="..\panda\src\egg\eggVertex.h"></File>
-				<File RelativePath="..\panda\src\egg\eggSwitchCondition.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggCoordinateSystem.I"></File>
-				<File RelativePath="..\panda\src\egg\eggNurbsSurface.I"></File>
-				<File RelativePath="..\panda\src\egg\config_egg.h"></File>
-				<File RelativePath="..\panda\src\egg\eggVertex.I"></File>
-				<File RelativePath="..\panda\src\egg\eggMesherEdge.h"></File>
-				<File RelativePath="..\panda\src\egg\eggFilenameNode.I"></File>
-				<File RelativePath="..\panda\src\egg\eggTransform.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggMorph.I"></File>
-				<File RelativePath="..\panda\src\egg\pt_EggMaterial.h"></File>
-				<File RelativePath="..\panda\src\egg\eggVertexUV.h"></File>
-				<File RelativePath="..\panda\src\egg\egg_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggParameters.h"></File>
-				<File RelativePath="..\panda\src\egg\eggUtilities.I"></File>
-				<File RelativePath="..\panda\src\egg\eggMaterial.h"></File>
-				<File RelativePath="..\panda\src\egg\eggSwitchCondition.h"></File>
-				<File RelativePath="..\panda\src\egg\eggTriangleFan.h"></File>
-				<File RelativePath="..\panda\src\egg\eggObject.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggMesherEdge.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggMesherFanMaker.I"></File>
-				<File RelativePath="..\panda\src\egg\eggGroupNode.I"></File>
-				<File RelativePath="..\panda\src\egg\eggAttributes.I"></File>
-				<File RelativePath="..\panda\src\egg\eggUtilities.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggExternalReference.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggTexture.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggPrimitive.I"></File>
-				<File RelativePath="..\panda\src\egg\eggNode.I"></File>
-				<File RelativePath="..\panda\src\egg\egg_composite.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggNode.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggTriangleFan.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggTextureCollection.h"></File>
-				<File RelativePath="..\panda\src\egg\eggNameUniquifier.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggAnimPreload.I"></File>
-				<File RelativePath="..\panda\src\egg\eggTriangleStrip.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggVertexUV.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggComment.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggMorphList.h"></File>
-				<File RelativePath="..\panda\src\egg\eggMaterialCollection.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggCurve.h"></File>
-				<File RelativePath="..\panda\src\egg\eggMesherStrip.I"></File>
-				<File RelativePath="..\panda\src\egg\eggComment.h"></File>
-				<File RelativePath="..\panda\src\egg\eggCompositePrimitive.h"></File>
-				<File RelativePath="..\panda\src\egg\eggGroupNode.h"></File>
-				<File RelativePath="..\panda\src\egg\eggVertexPool.I"></File>
-				<File RelativePath="..\panda\src\egg\egg_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggSAnimData.h"></File>
-				<File RelativePath="..\panda\src\egg\eggUserData.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggAnimData.I"></File>
-				<File RelativePath="..\panda\src\egg\pt_EggMaterial.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggTriangleStrip.I"></File>
-				<File RelativePath="..\panda\src\egg\eggPolygon.I"></File>
-				<File RelativePath="..\panda\src\egg\vector_PT_EggVertex.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggTriangleStrip.h"></File>
-				<File RelativePath="..\panda\src\egg\eggRenderMode.h"></File>
-				<File RelativePath="..\panda\src\egg\pt_EggTexture.h"></File>
-				<File RelativePath="..\panda\src\egg\eggGroupNode.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggUserData.h"></File>
-				<File RelativePath="..\panda\src\egg\eggNurbsSurface.cxx"></File>
-				<File RelativePath="..\panda\src\egg\parserDefs.h"></File>
-				<File RelativePath="..\panda\src\egg\eggAnimPreload.h"></File>
-				<File RelativePath="..\panda\src\egg\eggRenderMode.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggCurve.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggPoolUniquifier.h"></File>
-				<File RelativePath="..\panda\src\egg\eggTextureCollection.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggMiscFuncs.I"></File>
-				<File RelativePath="..\panda\src\egg\eggBin.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggMorphList.I"></File>
-				<File RelativePath="..\panda\src\egg\eggMaterialCollection.I"></File>
-				<File RelativePath="..\panda\src\egg\eggCoordinateSystem.h"></File>
-				<File RelativePath="..\panda\src\egg\eggLine.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggNamedObject.I"></File>
-				<File RelativePath="..\panda\src\egg\eggUserData.I"></File>
-				<File RelativePath="..\panda\src\egg\eggBinMaker.cxx"></File>
-				<File RelativePath="..\panda\src\egg\config_egg.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggPolysetMaker.cxx"></File>
-				<File RelativePath="..\panda\src\egg\pt_EggVertex.h"></File>
-				<File RelativePath="..\panda\src\egg\eggParameters.cxx"></File>
-				<File RelativePath="..\panda\src\egg\pt_EggTexture.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggCompositePrimitive.I"></File>
-				<File RelativePath="..\panda\src\egg\eggTexture.I"></File>
-				<File RelativePath="..\panda\src\egg\eggTransform.I"></File>
-				<File RelativePath="..\panda\src\egg\eggNode.h"></File>
-				<File RelativePath="..\panda\src\egg\eggAnimPreload.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggNamedObject.h"></File>
-				<File RelativePath="..\panda\src\egg\eggXfmSAnim.h"></File>
-				<File RelativePath="..\panda\src\egg\pt_EggVertex.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggTexture.h"></File>
-				<File RelativePath="..\panda\src\egg\eggXfmAnimData.I"></File>
-				<File RelativePath="..\panda\src\egg\eggData.h"></File>
-				<File RelativePath="..\panda\src\egg\eggPrimitive.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggVertex.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggMorph.h"></File>
-				<File RelativePath="..\panda\src\egg\eggMesherFanMaker.h"></File>
-				<File RelativePath="..\panda\src\egg\eggTextureCollection.I"></File>
-				<File RelativePath="..\panda\src\egg\eggFilenameNode.cxx"></File>
-				<File RelativePath="..\panda\src\egg\parser.h"></File>
-				<File RelativePath="..\panda\src\egg\eggCompositePrimitive.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggPrimitive.h"></File>
-				<File RelativePath="..\panda\src\egg\lexer.cxx"></File>
-				<File RelativePath="..\panda\src\egg\parser.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggNurbsSurface.h"></File>
-				<File RelativePath="..\panda\src\egg\eggData.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggData.I"></File>
-				<File RelativePath="..\panda\src\egg\eggTriangleFan.I"></File>
-				<File RelativePath="..\panda\src\egg\eggGroupUniquifier.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggSurface.cxx"></File>
-				<File RelativePath="..\panda\src\egg\vector_PT_EggTexture.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggGroup.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggXfmAnimData.h"></File>
-				<File RelativePath="..\panda\src\egg\eggLine.I"></File>
-				<File RelativePath="..\panda\src\egg\eggMesherStrip.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggTable.h"></File>
-				<File RelativePath="..\panda\src\egg\eggAnimData.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggMesher.I"></File>
-				<File RelativePath="..\panda\src\egg\eggAttributes.h"></File>
-				<File RelativePath="..\panda\src\egg\eggXfmSAnim.cxx"></File>
-				<File RelativePath="..\panda\src\egg\eggObject.I"></File>
-				<File RelativePath="..\panda\src\egg\vector_PT_EggTexture.h"></File>
-				<File RelativePath="..\panda\src\egg\eggGroupUniquifier.h"></File>
-				<File RelativePath="..\panda\src\egg\eggPolygon.h"></File>
-			</Filter>
-			<Filter Name="grutil">
-				<File RelativePath="..\panda\src\grutil\geoMipTerrain.cxx"></File>
-				<File RelativePath="..\panda\src\grutil\rigidBodyCombiner.h"></File>
-				<File RelativePath="..\panda\src\grutil\meshDrawer2D.cxx"></File>
-				<File RelativePath="..\panda\src\grutil\pipeOcclusionCullTraverser.cxx"></File>
-				<File RelativePath="..\panda\src\grutil\lineSegs.cxx"></File>
-				<File RelativePath="..\panda\src\grutil\rigidBodyCombiner.cxx"></File>
-				<File RelativePath="..\panda\src\grutil\movieTexture.cxx"></File>
-				<File RelativePath="..\panda\src\grutil\grutil_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\grutil\nodeVertexTransform.cxx"></File>
-				<File RelativePath="..\panda\src\grutil\pipeOcclusionCullTraverser.h"></File>
-				<File RelativePath="..\panda\src\grutil\frameRateMeter.I"></File>
-				<File RelativePath="..\panda\src\grutil\multitexReducer.h"></File>
-				<File RelativePath="..\panda\src\grutil\grutil_composite.cxx"></File>
-				<File RelativePath="..\panda\src\grutil\nodeVertexTransform.I"></File>
-				<File RelativePath="..\panda\src\grutil\movieTexture.h"></File>
-				<File RelativePath="..\panda\src\grutil\sceneGraphAnalyzerMeter.I"></File>
-				<File RelativePath="..\panda\src\grutil\ffmpegTexture.I"></File>
-				<File RelativePath="..\panda\src\grutil\multitexReducer.cxx"></File>
-				<File RelativePath="..\panda\src\grutil\fisheyeMaker.h"></File>
-				<File RelativePath="..\panda\src\grutil\pipeOcclusionCullTraverser.I"></File>
-				<File RelativePath="..\panda\src\grutil\geoMipTerrain.h"></File>
-				<File RelativePath="..\panda\src\grutil\geoMipTerrain.I"></File>
-				<File RelativePath="..\panda\src\grutil\movieTexture.I"></File>
-				<File RelativePath="..\panda\src\grutil\cardMaker.h"></File>
-				<File RelativePath="..\panda\src\grutil\meshDrawer.cxx"></File>
-				<File RelativePath="..\panda\src\grutil\grutil_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\grutil\fisheyeMaker.cxx"></File>
-				<File RelativePath="..\panda\src\grutil\lineSegs.h"></File>
-				<File RelativePath="..\panda\src\grutil\config_grutil.cxx"></File>
-				<File RelativePath="..\panda\src\grutil\fisheyeMaker.I"></File>
-				<File RelativePath="..\panda\src\grutil\meshDrawer.I"></File>
-				<File RelativePath="..\panda\src\grutil\lineSegs.I"></File>
-				<File RelativePath="..\panda\src\grutil\rigidBodyCombiner.I"></File>
-				<File RelativePath="..\panda\src\grutil\cardMaker.cxx"></File>
-				<File RelativePath="..\panda\src\grutil\heightfieldTesselator.h"></File>
-				<File RelativePath="..\panda\src\grutil\frameRateMeter.h"></File>
-				<File RelativePath="..\panda\src\grutil\heightfieldTesselator.cxx"></File>
-				<File RelativePath="..\panda\src\grutil\meshDrawer.h"></File>
-				<File RelativePath="..\panda\src\grutil\multitexReducer.I"></File>
-				<File RelativePath="..\panda\src\grutil\ffmpegTexture.h"></File>
-				<File RelativePath="..\panda\src\grutil\sceneGraphAnalyzerMeter.h"></File>
-				<File RelativePath="..\panda\src\grutil\nodeVertexTransform.h"></File>
-				<File RelativePath="..\panda\src\grutil\config_grutil.h"></File>
-				<File RelativePath="..\panda\src\grutil\sceneGraphAnalyzerMeter.cxx"></File>
-				<File RelativePath="..\panda\src\grutil\heightfieldTesselator.I"></File>
-				<File RelativePath="..\panda\src\grutil\meshDrawer2D.h"></File>
-				<File RelativePath="..\panda\src\grutil\ffmpegTexture.cxx"></File>
-				<File RelativePath="..\panda\src\grutil\frameRateMeter.cxx"></File>
-				<File RelativePath="..\panda\src\grutil\cardMaker.I"></File>
-				<File RelativePath="..\panda\src\grutil\meshDrawer2D.I"></File>
-			</Filter>
-			<Filter Name="glstuff">
-				<File RelativePath="..\panda\src\glstuff\glGraphicsBuffer_src.cxx"></File>
-				<File RelativePath="..\panda\src\glstuff\glmisc_src.h"></File>
-				<File RelativePath="..\panda\src\glstuff\glIndexBufferContext_src.cxx"></File>
-				<File RelativePath="..\panda\src\glstuff\glShaderContext_src.I"></File>
-				<File RelativePath="..\panda\src\glstuff\panda_glext.h"></File>
-				<File RelativePath="..\panda\src\glstuff\glImmediateModeSender_src.cxx"></File>
-				<File RelativePath="..\panda\src\glstuff\glstuff_undef_src.h"></File>
-				<File RelativePath="..\panda\src\glstuff\glTextureContext_src.I"></File>
-				<File RelativePath="..\panda\src\glstuff\glGeomContext_src.cxx"></File>
-				<File RelativePath="..\panda\src\glstuff\glOcclusionQueryContext_src.h"></File>
-				<File RelativePath="..\panda\src\glstuff\glGraphicsBuffer_src.I"></File>
-				<File RelativePath="..\panda\src\glstuff\glGeomMunger_src.h"></File>
-				<File RelativePath="..\panda\src\glstuff\glGeomMunger_src.cxx"></File>
-				<File RelativePath="..\panda\src\glstuff\glGeomContext_src.h"></File>
-				<File RelativePath="..\panda\src\glstuff\glOcclusionQueryContext_src.I"></File>
-				<File RelativePath="..\panda\src\glstuff\glVertexBufferContext_src.cxx"></File>
-				<File RelativePath="..\panda\src\glstuff\glShaderContext_src.cxx"></File>
-				<File RelativePath="..\panda\src\glstuff\glGeomContext_src.I"></File>
-				<File RelativePath="..\panda\src\glstuff\glShaderContext_src.h"></File>
-				<File RelativePath="..\panda\src\glstuff\glIndexBufferContext_src.h"></File>
-				<File RelativePath="..\panda\src\glstuff\glIndexBufferContext_src.I"></File>
-				<File RelativePath="..\panda\src\glstuff\glGraphicsStateGuardian_src.cxx"></File>
-				<File RelativePath="..\panda\src\glstuff\glVertexBufferContext_src.h"></File>
-				<File RelativePath="..\panda\src\glstuff\glOcclusionQueryContext_src.cxx"></File>
-				<File RelativePath="..\panda\src\glstuff\glstuff_src.cxx"></File>
-				<File RelativePath="..\panda\src\glstuff\glTextureContext_src.h"></File>
-				<File RelativePath="..\panda\src\glstuff\glTextureContext_src.cxx"></File>
-				<File RelativePath="..\panda\src\glstuff\glImmediateModeSender_src.I"></File>
-				<File RelativePath="..\panda\src\glstuff\glVertexBufferContext_src.I"></File>
-				<File RelativePath="..\panda\src\glstuff\glGraphicsBuffer_src.h"></File>
-				<File RelativePath="..\panda\src\glstuff\glGraphicsStateGuardian_src.h"></File>
-				<File RelativePath="..\panda\src\glstuff\glGeomMunger_src.I"></File>
-				<File RelativePath="..\panda\src\glstuff\glmisc_src.cxx"></File>
-				<File RelativePath="..\panda\src\glstuff\glstuff_src.h"></File>
-				<File RelativePath="..\panda\src\glstuff\glpure.cxx"></File>
-				<File RelativePath="..\panda\src\glstuff\glImmediateModeSender_src.h"></File>
-				<File RelativePath="..\panda\src\glstuff\glGraphicsStateGuardian_src.I"></File>
-			</Filter>
-			<Filter Name="pandabase">
-				<File RelativePath="..\panda\src\pandabase\pandabase.h"></File>
-				<File RelativePath="..\panda\src\pandabase\pandabase.cxx"></File>
-				<File RelativePath="..\panda\src\pandabase\pandasymbols.h"></File>
-			</Filter>
-			<Filter Name="vrpn">
-				<File RelativePath="..\panda\src\vrpn\vrpnButtonDevice.I"></File>
-				<File RelativePath="..\panda\src\vrpn\config_vrpn.cxx"></File>
-				<File RelativePath="..\panda\src\vrpn\vrpnDial.I"></File>
-				<File RelativePath="..\panda\src\vrpn\vrpnButton.I"></File>
-				<File RelativePath="..\panda\src\vrpn\vrpnButton.cxx"></File>
-				<File RelativePath="..\panda\src\vrpn\vrpnAnalog.cxx"></File>
-				<File RelativePath="..\panda\src\vrpn\vrpnTracker.cxx"></File>
-				<File RelativePath="..\panda\src\vrpn\vrpnTrackerDevice.h"></File>
-				<File RelativePath="..\panda\src\vrpn\vrpnDialDevice.cxx"></File>
-				<File RelativePath="..\panda\src\vrpn\vrpn_interface.h"></File>
-				<File RelativePath="..\panda\src\vrpn\vrpnDial.cxx"></File>
-				<File RelativePath="..\panda\src\vrpn\vrpnTrackerDevice.I"></File>
-				<File RelativePath="..\panda\src\vrpn\vrpnDialDevice.h"></File>
-				<File RelativePath="..\panda\src\vrpn\vrpnAnalogDevice.h"></File>
-				<File RelativePath="..\panda\src\vrpn\vrpnTracker.h"></File>
-				<File RelativePath="..\panda\src\vrpn\vrpn_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\vrpn\vrpn_composite.cxx"></File>
-				<File RelativePath="..\panda\src\vrpn\vrpnButton.h"></File>
-				<File RelativePath="..\panda\src\vrpn\vrpnButtonDevice.h"></File>
-				<File RelativePath="..\panda\src\vrpn\config_vrpn.h"></File>
-				<File RelativePath="..\panda\src\vrpn\vrpnTracker.I"></File>
-				<File RelativePath="..\panda\src\vrpn\vrpnClient.h"></File>
-				<File RelativePath="..\panda\src\vrpn\vrpnButtonDevice.cxx"></File>
-				<File RelativePath="..\panda\src\vrpn\vrpnTrackerDevice.cxx"></File>
-				<File RelativePath="..\panda\src\vrpn\vrpnAnalog.h"></File>
-				<File RelativePath="..\panda\src\vrpn\vrpnAnalog.I"></File>
-				<File RelativePath="..\panda\src\vrpn\vrpnDialDevice.I"></File>
-				<File RelativePath="..\panda\src\vrpn\vrpnAnalogDevice.I"></File>
-				<File RelativePath="..\panda\src\vrpn\vrpnAnalogDevice.cxx"></File>
-				<File RelativePath="..\panda\src\vrpn\vrpnDial.h"></File>
-				<File RelativePath="..\panda\src\vrpn\vrpnClient.cxx"></File>
-				<File RelativePath="..\panda\src\vrpn\vrpnClient.I"></File>
-			</Filter>
-			<Filter Name="net">
-				<File RelativePath="..\panda\src\net\queuedConnectionReader.cxx"></File>
-				<File RelativePath="..\panda\src\net\datagramGeneratorNet.I"></File>
-				<File RelativePath="..\panda\src\net\datagramSinkNet.cxx"></File>
-				<File RelativePath="..\panda\src\net\connectionReader.h"></File>
-				<File RelativePath="..\panda\src\net\config_net.cxx"></File>
-				<File RelativePath="..\panda\src\net\net_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\net\test_udp.cxx"></File>
-				<File RelativePath="..\panda\src\net\datagramGeneratorNet.cxx"></File>
-				<File RelativePath="..\panda\src\net\queuedReturn.I"></File>
-				<File RelativePath="..\panda\src\net\netAddress.h"></File>
-				<File RelativePath="..\panda\src\net\queuedReturn.h"></File>
-				<File RelativePath="..\panda\src\net\datagramSinkNet.I"></File>
-				<File RelativePath="..\panda\src\net\connection.h"></File>
-				<File RelativePath="..\panda\src\net\test_spam_client.cxx"></File>
-				<File RelativePath="..\panda\src\net\datagramQueue.h"></File>
-				<File RelativePath="..\panda\src\net\datagramUDPHeader.I"></File>
-				<File RelativePath="..\panda\src\net\datagramUDPHeader.cxx"></File>
-				<File RelativePath="..\panda\src\net\net_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\net\config_net.h"></File>
-				<File RelativePath="..\panda\src\net\connectionListener.h"></File>
-				<File RelativePath="..\panda\src\net\test_datagram.cxx"></File>
-				<File RelativePath="..\panda\src\net\datagramTCPHeader.cxx"></File>
-				<File RelativePath="..\panda\src\net\test_tcp_client.cxx"></File>
-				<File RelativePath="..\panda\src\net\datagramSinkNet.h"></File>
-				<File RelativePath="..\panda\src\net\datagramTCPHeader.h"></File>
-				<File RelativePath="..\panda\src\net\connectionWriter.cxx"></File>
-				<File RelativePath="..\panda\src\net\netDatagram.cxx"></File>
-				<File RelativePath="..\panda\src\net\queuedConnectionListener.cxx"></File>
-				<File RelativePath="..\panda\src\net\test_tcp_server.cxx"></File>
-				<File RelativePath="..\panda\src\net\test_spam_server.cxx"></File>
-				<File RelativePath="..\panda\src\net\connectionManager.h"></File>
-				<File RelativePath="..\panda\src\net\connectionManager.cxx"></File>
-				<File RelativePath="..\panda\src\net\netDatagram.I"></File>
-				<File RelativePath="..\panda\src\net\connectionReader.cxx"></File>
-				<File RelativePath="..\panda\src\net\recentConnectionReader.cxx"></File>
-				<File RelativePath="..\panda\src\net\datagramGeneratorNet.h"></File>
-				<File RelativePath="..\panda\src\net\connectionWriter.h"></File>
-				<File RelativePath="..\panda\src\net\connectionListener.cxx"></File>
-				<File RelativePath="..\panda\src\net\netDatagram.h"></File>
-				<File RelativePath="..\panda\src\net\connectionReader.I"></File>
-				<File RelativePath="..\panda\src\net\net_composite.cxx"></File>
-				<File RelativePath="..\panda\src\net\queuedConnectionListener.h"></File>
-				<File RelativePath="..\panda\src\net\test_raw_server.cxx"></File>
-				<File RelativePath="..\panda\src\net\queuedConnectionManager.h"></File>
-				<File RelativePath="..\panda\src\net\fake_http_server.cxx"></File>
-				<File RelativePath="..\panda\src\net\queuedConnectionListener.I"></File>
-				<File RelativePath="..\panda\src\net\datagramUDPHeader.h"></File>
-				<File RelativePath="..\panda\src\net\connection.cxx"></File>
-				<File RelativePath="..\panda\src\net\datagramQueue.cxx"></File>
-				<File RelativePath="..\panda\src\net\queuedConnectionManager.cxx"></File>
-				<File RelativePath="..\panda\src\net\datagramTCPHeader.I"></File>
-				<File RelativePath="..\panda\src\net\queuedConnectionReader.h"></File>
-				<File RelativePath="..\panda\src\net\datagram_ui.h"></File>
-				<File RelativePath="..\panda\src\net\recentConnectionReader.h"></File>
-				<File RelativePath="..\panda\src\net\datagram_ui.cxx"></File>
-				<File RelativePath="..\panda\src\net\netAddress.cxx"></File>
-			</Filter>
-			<Filter Name="movies">
-				<File RelativePath="..\panda\src\movies\ffmpegVideoCursor.h"></File>
-				<File RelativePath="..\panda\src\movies\movies_composite.cxx"></File>
-				<File RelativePath="..\panda\src\movies\ffmpegVirtualFile.I"></File>
-				<File RelativePath="..\panda\src\movies\ffmpegVirtualFile.cxx"></File>
-				<File RelativePath="..\panda\src\movies\userDataAudio.cxx"></File>
-				<File RelativePath="..\panda\src\movies\ffmpegVideo.I"></File>
-				<File RelativePath="..\panda\src\movies\movieAudio.cxx"></File>
-				<File RelativePath="..\panda\src\movies\movies_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\movies\ffmpegAudioCursor.cxx"></File>
-				<File RelativePath="..\panda\src\movies\movieVideoCursor.h"></File>
-				<File RelativePath="..\panda\src\movies\userDataAudioCursor.cxx"></File>
-				<File RelativePath="..\panda\src\movies\userDataAudio.h"></File>
-				<File RelativePath="..\panda\src\movies\userDataAudio.I"></File>
-				<File RelativePath="..\panda\src\movies\inkblotVideo.cxx"></File>
-				<File RelativePath="..\panda\src\movies\inkblotVideoCursor.cxx"></File>
-				<File RelativePath="..\panda\src\movies\movieAudio.I"></File>
-				<File RelativePath="..\panda\src\movies\inkblotVideoCursor.I"></File>
-				<File RelativePath="..\panda\src\movies\ffmpegVideo.h"></File>
-				<File RelativePath="..\panda\src\movies\config_movies.cxx"></File>
-				<File RelativePath="..\panda\src\movies\inkblotVideo.h"></File>
-				<File RelativePath="..\panda\src\movies\config_movies.h"></File>
-				<File RelativePath="..\panda\src\movies\movieAudioCursor.cxx"></File>
-				<File RelativePath="..\panda\src\movies\microphoneAudio.I"></File>
-				<File RelativePath="..\panda\src\movies\ffmpegAudioCursor.h"></File>
-				<File RelativePath="..\panda\src\movies\ffmpegVirtualFile.h"></File>
-				<File RelativePath="..\panda\src\movies\movieAudioCursor.h"></File>
-				<File RelativePath="..\panda\src\movies\movieAudio.h"></File>
-				<File RelativePath="..\panda\src\movies\movieVideoCursor.I"></File>
-				<File RelativePath="..\panda\src\movies\ffmpegVideoCursor.cxx"></File>
-				<File RelativePath="..\panda\src\movies\ffmpegAudio.I"></File>
-				<File RelativePath="..\panda\src\movies\movieVideo.I"></File>
-				<File RelativePath="..\panda\src\movies\inkblotVideoCursor.h"></File>
-				<File RelativePath="..\panda\src\movies\ffmpegAudioCursor.I"></File>
-				<File RelativePath="..\panda\src\movies\movieVideo.h"></File>
-				<File RelativePath="..\panda\src\movies\microphoneAudioDS.cxx"></File>
-				<File RelativePath="..\panda\src\movies\ffmpegVideoCursor.I"></File>
-				<File RelativePath="..\panda\src\movies\ffmpegVideo.cxx"></File>
-				<File RelativePath="..\panda\src\movies\microphoneAudio.h"></File>
-				<File RelativePath="..\panda\src\movies\ffmpegAudio.h"></File>
-				<File RelativePath="..\panda\src\movies\ffmpegAudio.cxx"></File>
-				<File RelativePath="..\panda\src\movies\inkblotVideo.I"></File>
-				<File RelativePath="..\panda\src\movies\userDataAudioCursor.I"></File>
-				<File RelativePath="..\panda\src\movies\movieVideo.cxx"></File>
-				<File RelativePath="..\panda\src\movies\microphoneAudio.cxx"></File>
-				<File RelativePath="..\panda\src\movies\movieAudioCursor.I"></File>
-				<File RelativePath="..\panda\src\movies\userDataAudioCursor.h"></File>
-				<File RelativePath="..\panda\src\movies\movieVideoCursor.cxx"></File>
-			</Filter>
-			<Filter Name="text">
-				<File RelativePath="..\panda\src\text\textAssembler.I"></File>
-				<File RelativePath="..\panda\src\text\text_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\text\textNode.h"></File>
-				<File RelativePath="..\panda\src\text\textProperties.I"></File>
-				<File RelativePath="..\panda\src\text\default_font.h"></File>
-				<File RelativePath="..\panda\src\text\textGraphic.cxx"></File>
-				<File RelativePath="..\panda\src\text\dynamicTextGlyph.I"></File>
-				<File RelativePath="..\panda\src\text\dynamicTextPage.h"></File>
-				<File RelativePath="..\panda\src\text\textProperties.h"></File>
-				<File RelativePath="..\panda\src\text\config_text.cxx"></File>
-				<File RelativePath="..\panda\src\text\textFont.h"></File>
-				<File RelativePath="..\panda\src\text\geomTextGlyph.I"></File>
-				<File RelativePath="..\panda\src\text\staticTextFont.h"></File>
-				<File RelativePath="..\panda\src\text\fontPool.I"></File>
-				<File RelativePath="..\panda\src\text\textGlyph.I"></File>
-				<File RelativePath="..\panda\src\text\staticTextFont.cxx"></File>
-				<File RelativePath="..\panda\src\text\textGraphic.h"></File>
-				<File RelativePath="..\panda\src\text\fontPool.cxx"></File>
-				<File RelativePath="..\panda\src\text\textGraphic.I"></File>
-				<File RelativePath="..\panda\src\text\dynamicTextPage.I"></File>
-				<File RelativePath="..\panda\src\text\config_text.h"></File>
-				<File RelativePath="..\panda\src\text\textGlyph.h"></File>
-				<File RelativePath="..\panda\src\text\textFont.cxx"></File>
-				<File RelativePath="..\panda\src\text\dynamicTextFont.I"></File>
-				<File RelativePath="..\panda\src\text\textProperties.cxx"></File>
-				<File RelativePath="..\panda\src\text\dynamicTextGlyph.cxx"></File>
-				<File RelativePath="..\panda\src\text\geomTextGlyph.h"></File>
-				<File RelativePath="..\panda\src\text\default_font.cxx"></File>
-				<File RelativePath="..\panda\src\text\text_composite.cxx"></File>
-				<File RelativePath="..\panda\src\text\dynamicTextFont.cxx"></File>
-				<File RelativePath="..\panda\src\text\textGlyph.cxx"></File>
-				<File RelativePath="..\panda\src\text\textAssembler.h"></File>
-				<File RelativePath="..\panda\src\text\staticTextFont.I"></File>
-				<File RelativePath="..\panda\src\text\text_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\text\dynamicTextGlyph.h"></File>
-				<File RelativePath="..\panda\src\text\fontPool.h"></File>
-				<File RelativePath="..\panda\src\text\textFont.I"></File>
-				<File RelativePath="..\panda\src\text\cmss12.bam.c"></File>
-				<File RelativePath="..\panda\src\text\dynamicTextFont.h"></File>
-				<File RelativePath="..\panda\src\text\geomTextGlyph.cxx"></File>
-				<File RelativePath="..\panda\src\text\textAssembler.cxx"></File>
-				<File RelativePath="..\panda\src\text\dynamicTextPage.cxx"></File>
-				<File RelativePath="..\panda\src\text\cmss12.bam.pz.c"></File>
-				<File RelativePath="..\panda\src\text\textNode.cxx"></File>
-				<File RelativePath="..\panda\src\text\textPropertiesManager.cxx"></File>
-				<File RelativePath="..\panda\src\text\textPropertiesManager.I"></File>
-				<File RelativePath="..\panda\src\text\textPropertiesManager.h"></File>
-				<File RelativePath="..\panda\src\text\textNode.I"></File>
-				<File RelativePath="..\panda\src\text\persans.ttf.c"></File>
-			</Filter>
-			<Filter Name="testbed">
-				<File RelativePath="..\panda\src\testbed\test_texmem.cxx"></File>
-				<File RelativePath="..\panda\src\testbed\test_lod.cxx"></File>
-				<File RelativePath="..\panda\src\testbed\test_map.cxx"></File>
-				<File RelativePath="..\panda\src\testbed\pgrid.cxx"></File>
-				<File RelativePath="..\panda\src\testbed\pview.cxx"></File>
-			</Filter>
-			<Filter Name="cull">
-				<File RelativePath="..\panda\src\cull\config_cull.cxx"></File>
-				<File RelativePath="..\panda\src\cull\drawCullHandler.cxx"></File>
-				<File RelativePath="..\panda\src\cull\drawCullHandler.h"></File>
-				<File RelativePath="..\panda\src\cull\cullBinUnsorted.cxx"></File>
-				<File RelativePath="..\panda\src\cull\cullBinFrontToBack.I"></File>
-				<File RelativePath="..\panda\src\cull\binCullHandler.cxx"></File>
-				<File RelativePath="..\panda\src\cull\cullBinBackToFront.h"></File>
-				<File RelativePath="..\panda\src\cull\binCullHandler.I"></File>
-				<File RelativePath="..\panda\src\cull\cullBinFixed.I"></File>
-				<File RelativePath="..\panda\src\cull\binCullHandler.h"></File>
-				<File RelativePath="..\panda\src\cull\cullBinBackToFront.I"></File>
-				<File RelativePath="..\panda\src\cull\cullBinFixed.h"></File>
-				<File RelativePath="..\panda\src\cull\cull_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\cull\cullBinStateSorted.I"></File>
-				<File RelativePath="..\panda\src\cull\cullBinStateSorted.cxx"></File>
-				<File RelativePath="..\panda\src\cull\cullBinUnsorted.h"></File>
-				<File RelativePath="..\panda\src\cull\drawCullHandler.I"></File>
-				<File RelativePath="..\panda\src\cull\cullBinUnsorted.I"></File>
-				<File RelativePath="..\panda\src\cull\cullBinFixed.cxx"></File>
-				<File RelativePath="..\panda\src\cull\cull_composite.cxx"></File>
-				<File RelativePath="..\panda\src\cull\cullBinBackToFront.cxx"></File>
-				<File RelativePath="..\panda\src\cull\cullBinFrontToBack.h"></File>
-				<File RelativePath="..\panda\src\cull\cullBinStateSorted.h"></File>
-				<File RelativePath="..\panda\src\cull\cull_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\cull\cullBinFrontToBack.cxx"></File>
-				<File RelativePath="..\panda\src\cull\config_cull.h"></File>
-			</Filter>
-			<Filter Name="audiotraits">
-				<File RelativePath="..\panda\src\audiotraits\milesAudioSequence.cxx"></File>
-				<File RelativePath="..\panda\src\audiotraits\milesAudioStream.I"></File>
-				<File RelativePath="..\panda\src\audiotraits\config_milesAudio.cxx"></File>
-				<File RelativePath="..\panda\src\audiotraits\fmod_audio_composite.cxx"></File>
-				<File RelativePath="..\panda\src\audiotraits\config_openalAudio.h"></File>
-				<File RelativePath="..\panda\src\audiotraits\openalAudioSound.cxx"></File>
-				<File RelativePath="..\panda\src\audiotraits\fmodAudioSound.h"></File>
-				<File RelativePath="..\panda\src\audiotraits\openalAudioManager.cxx"></File>
-				<File RelativePath="..\panda\src\audiotraits\milesAudioStream.cxx"></File>
-				<File RelativePath="..\panda\src\audiotraits\milesAudioSample.cxx"></File>
-				<File RelativePath="..\panda\src\audiotraits\milesAudioSequence.I"></File>
-				<File RelativePath="..\panda\src\audiotraits\milesAudioSound.h"></File>
-				<File RelativePath="..\panda\src\audiotraits\config_fmodAudio.h"></File>
-				<File RelativePath="..\panda\src\audiotraits\openal_audio_composite.cxx"></File>
-				<File RelativePath="..\panda\src\audiotraits\milesAudioSound.cxx"></File>
-				<File RelativePath="..\panda\src\audiotraits\config_openalAudio.cxx"></File>
-				<File RelativePath="..\panda\src\audiotraits\fmodAudioManager.cxx"></File>
-				<File RelativePath="..\panda\src\audiotraits\fmodAudioManager.h"></File>
-				<File RelativePath="..\panda\src\audiotraits\fmodAudioSound.cxx"></File>
-				<File RelativePath="..\panda\src\audiotraits\config_fmodAudio.cxx"></File>
-				<File RelativePath="..\panda\src\audiotraits\milesAudioManager.h"></File>
-				<File RelativePath="..\panda\src\audiotraits\miles_audio_composite.cxx"></File>
-				<File RelativePath="..\panda\src\audiotraits\openal_audio_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\audiotraits\milesAudioStream.h"></File>
-				<File RelativePath="..\panda\src\audiotraits\fmodAudioSound.I"></File>
-				<File RelativePath="..\panda\src\audiotraits\milesAudioSequence.h"></File>
-				<File RelativePath="..\panda\src\audiotraits\globalMilesManager.I"></File>
-				<File RelativePath="..\panda\src\audiotraits\config_milesAudio.h"></File>
-				<File RelativePath="..\panda\src\audiotraits\milesAudioManager.cxx"></File>
-				<File RelativePath="..\panda\src\audiotraits\globalMilesManager.cxx"></File>
-				<File RelativePath="..\panda\src\audiotraits\openalAudioSound.I"></File>
-				<File RelativePath="..\panda\src\audiotraits\milesAudioSample.h"></File>
-				<File RelativePath="..\panda\src\audiotraits\openalAudioSound.h"></File>
-				<File RelativePath="..\panda\src\audiotraits\miles_audio_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\audiotraits\globalMilesManager.h"></File>
-				<File RelativePath="..\panda\src\audiotraits\milesAudioSound.I"></File>
-				<File RelativePath="..\panda\src\audiotraits\fmod_audio_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\audiotraits\openalAudioManager.h"></File>
-				<File RelativePath="..\panda\src\audiotraits\milesAudioSample.I"></File>
-			</Filter>
-			<Filter Name="glesgsg">
-				<File RelativePath="..\panda\src\glesgsg\glesgsg.h"></File>
-				<File RelativePath="..\panda\src\glesgsg\config_glesgsg.cxx"></File>
-				<File RelativePath="..\panda\src\glesgsg\panda_esglext.h"></File>
-				<File RelativePath="..\panda\src\glesgsg\glesgsg_composite.cxx"></File>
-				<File RelativePath="..\panda\src\glesgsg\glesgsg.cxx"></File>
-				<File RelativePath="..\panda\src\glesgsg\config_glesgsg.h"></File>
-				<File RelativePath="..\panda\src\glesgsg\glesgsg_composite1.cxx"></File>
-			</Filter>
-			<Filter Name="mathutil">
-				<File RelativePath="..\panda\src\mathutil\config_mathutil.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\geometricBoundingVolume.I"></File>
-				<File RelativePath="..\panda\src\mathutil\parabola_src.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\stackedPerlinNoise2.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\perlinNoise3.h"></File>
-				<File RelativePath="..\panda\src\mathutil\mersenne.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\perlinNoise2.I"></File>
-				<File RelativePath="..\panda\src\mathutil\stackedPerlinNoise2.I"></File>
-				<File RelativePath="..\panda\src\mathutil\parabola_src.h"></File>
-				<File RelativePath="..\panda\src\mathutil\triangulator.I"></File>
-				<File RelativePath="..\panda\src\mathutil\perlinNoise2.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\pta_LVecBase2f.h"></File>
-				<File RelativePath="..\panda\src\mathutil\omniBoundingVolume.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\boundingBox.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\stackedPerlinNoise3.I"></File>
-				<File RelativePath="..\panda\src\mathutil\plane_src.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\triangulator.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\boundingLine.h"></File>
-				<File RelativePath="..\panda\src\mathutil\perlinNoise2.h"></File>
-				<File RelativePath="..\panda\src\mathutil\omniBoundingVolume.h"></File>
-				<File RelativePath="..\panda\src\mathutil\config_mathutil.h"></File>
-				<File RelativePath="..\panda\src\mathutil\rotate_to.h"></File>
-				<File RelativePath="..\panda\src\mathutil\look_at_src.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\pta_LVecBase4f.h"></File>
-				<File RelativePath="..\panda\src\mathutil\boundingVolume.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\parabola_src.I"></File>
-				<File RelativePath="..\panda\src\mathutil\boundingSphere.I"></File>
-				<File RelativePath="..\panda\src\mathutil\rotate_to.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\plane_src.h"></File>
-				<File RelativePath="..\panda\src\mathutil\geometricBoundingVolume.h"></File>
-				<File RelativePath="..\panda\src\mathutil\boundingHexahedron.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\pta_LVecBase3f.h"></File>
-				<File RelativePath="..\panda\src\mathutil\finiteBoundingVolume.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\randomizer.h"></File>
-				<File RelativePath="..\panda\src\mathutil\look_at.h"></File>
-				<File RelativePath="..\panda\src\mathutil\pta_LMatrix4f.h"></File>
-				<File RelativePath="..\panda\src\mathutil\mathutil_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\perlinNoise.I"></File>
-				<File RelativePath="..\panda\src\mathutil\plane.h"></File>
-				<File RelativePath="..\panda\src\mathutil\parabola.h"></File>
-				<File RelativePath="..\panda\src\mathutil\triangulator.h"></File>
-				<File RelativePath="..\panda\src\mathutil\boundingVolume.I"></File>
-				<File RelativePath="..\panda\src\mathutil\boundingPlane.I"></File>
-				<File RelativePath="..\panda\src\mathutil\boundingBox.h"></File>
-				<File RelativePath="..\panda\src\mathutil\boundingBox.I"></File>
-				<File RelativePath="..\panda\src\mathutil\omniBoundingVolume.I"></File>
-				<File RelativePath="..\panda\src\mathutil\boundingSphere.h"></File>
-				<File RelativePath="..\panda\src\mathutil\linmath_events.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\finiteBoundingVolume.h"></File>
-				<File RelativePath="..\panda\src\mathutil\stackedPerlinNoise3.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\test_mathutil.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\frustum.h"></File>
-				<File RelativePath="..\panda\src\mathutil\boundingLine.I"></File>
-				<File RelativePath="..\panda\src\mathutil\randomizer.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\pta_LMatrix4f.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\linmath_events.h"></File>
-				<File RelativePath="..\panda\src\mathutil\boundingPlane.h"></File>
-				<File RelativePath="..\panda\src\mathutil\frustum_src.h"></File>
-				<File RelativePath="..\panda\src\mathutil\pta_LVecBase2f.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\boundingHexahedron.I"></File>
-				<File RelativePath="..\panda\src\mathutil\look_at.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\mersenne.h"></File>
-				<File RelativePath="..\panda\src\mathutil\perlinNoise3.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\mathutil_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\pta_LMatrix3f.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\randomizer.I"></File>
-				<File RelativePath="..\panda\src\mathutil\fftCompressor.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\boundingSphere.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\plane_src.I"></File>
-				<File RelativePath="..\panda\src\mathutil\boundingVolume.h"></File>
-				<File RelativePath="..\panda\src\mathutil\perlinNoise3.I"></File>
-				<File RelativePath="..\panda\src\mathutil\stackedPerlinNoise2.h"></File>
-				<File RelativePath="..\panda\src\mathutil\boundingPlane.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\look_at_src.h"></File>
-				<File RelativePath="..\panda\src\mathutil\mathutil_composite.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\plane.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\look_at_src.I"></File>
-				<File RelativePath="..\panda\src\mathutil\rotate_to_src.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\test_tri.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\perlinNoise.h"></File>
-				<File RelativePath="..\panda\src\mathutil\pta_LVecBase4f.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\stackedPerlinNoise3.h"></File>
-				<File RelativePath="..\panda\src\mathutil\geometricBoundingVolume.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\parabola.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\frustum_src.I"></File>
-				<File RelativePath="..\panda\src\mathutil\pta_LVecBase3f.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\boundingHexahedron.h"></File>
-				<File RelativePath="..\panda\src\mathutil\fftCompressor.h"></File>
-				<File RelativePath="..\panda\src\mathutil\boundingLine.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\perlinNoise.cxx"></File>
-				<File RelativePath="..\panda\src\mathutil\pta_LMatrix3f.h"></File>
-			</Filter>
-			<Filter Name="pipeline">
-				<File RelativePath="..\panda\src\pipeline\conditionVarDebug.I"></File>
-				<File RelativePath="..\panda\src\pipeline\mutexDebug.h"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarDirect.I"></File>
-				<File RelativePath="..\panda\src\pipeline\cycleDataStageReader.I"></File>
-				<File RelativePath="..\panda\src\pipeline\pipeline.h"></File>
-				<File RelativePath="..\panda\src\pipeline\test_diners.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\mutexSimpleImpl.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\threadPriority.h"></File>
-				<File RelativePath="..\panda\src\pipeline\cycleDataLockedReader.h"></File>
-				<File RelativePath="..\panda\src\pipeline\externalThread.h"></File>
-				<File RelativePath="..\panda\src\pipeline\test_mutex.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\psemaphore.h"></File>
-				<File RelativePath="..\panda\src\pipeline\pipeline_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\thread.h"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarDebug.h"></File>
-				<File RelativePath="..\panda\src\pipeline\reMutexDirect.I"></File>
-				<File RelativePath="..\panda\src\pipeline\reMutexHolder.I"></File>
-				<File RelativePath="..\panda\src\pipeline\pipelineCycler.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\cycleDataStageWriter.h"></File>
-				<File RelativePath="..\panda\src\pipeline\reMutexHolder.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\lightMutexDirect.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\pipelineCyclerTrueImpl.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\pipelineCyclerTrivialImpl.h"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarDirect.h"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarWin32Impl.I"></File>
-				<File RelativePath="..\panda\src\pipeline\pythonThread.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\pipeline.I"></File>
-				<File RelativePath="..\panda\src\pipeline\threadSimpleManager.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\cycleDataReader.I"></File>
-				<File RelativePath="..\panda\src\pipeline\mutexDirect.I"></File>
-				<File RelativePath="..\panda\src\pipeline\cycleDataReader.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarFull.h"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarFullDirect.h"></File>
-				<File RelativePath="..\panda\src\pipeline\threadWin32Impl.h"></File>
-				<File RelativePath="..\panda\src\pipeline\lightReMutex.I"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarFullDirect.I"></File>
-				<File RelativePath="..\panda\src\pipeline\lightMutex.h"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarSpinlockImpl.I"></File>
-				<File RelativePath="..\panda\src\pipeline\pmutex.h"></File>
-				<File RelativePath="..\panda\src\pipeline\threadWin32Impl.I"></File>
-				<File RelativePath="..\panda\src\pipeline\cycleDataReader.h"></File>
-				<File RelativePath="..\panda\src\pipeline\pipelineCycler.I"></File>
-				<File RelativePath="..\panda\src\pipeline\lightReMutexHolder.I"></File>
-				<File RelativePath="..\panda\src\pipeline\cycleData.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarPosixImpl.h"></File>
-				<File RelativePath="..\panda\src\pipeline\threadSimpleImpl.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\cycleData.I"></File>
-				<File RelativePath="..\panda\src\pipeline\reMutex.I"></File>
-				<File RelativePath="..\panda\src\pipeline\test_concurrency.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarWin32Impl.h"></File>
-				<File RelativePath="..\panda\src\pipeline\mutexHolder.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\threadSimpleManager.h"></File>
-				<File RelativePath="..\panda\src\pipeline\lightReMutexHolder.h"></File>
-				<File RelativePath="..\panda\src\pipeline\threadDummyImpl.I"></File>
-				<File RelativePath="..\panda\src\pipeline\cycleDataLockedStageReader.h"></File>
-				<File RelativePath="..\panda\src\pipeline\lightMutex.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\contextSwitch.c"></File>
-				<File RelativePath="..\panda\src\pipeline\test_threaddata.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\cycleDataLockedStageReader.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\lightReMutex.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\lightMutex.I"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarFullWin32Impl.I"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVar.h"></File>
-				<File RelativePath="..\panda\src\pipeline\lightMutexDirect.I"></File>
-				<File RelativePath="..\panda\src\pipeline\threadImpl.h"></File>
-				<File RelativePath="..\panda\src\pipeline\mutexDebug.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarFullDebug.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\threadPosixImpl.I"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarSimpleImpl.h"></File>
-				<File RelativePath="..\panda\src\pipeline\pipelineCyclerDummyImpl.h"></File>
-				<File RelativePath="..\panda\src\pipeline\thread.I"></File>
-				<File RelativePath="..\panda\src\pipeline\reMutex.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarSimpleImpl.I"></File>
-				<File RelativePath="..\panda\src\pipeline\cycleDataStageReader.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\cyclerHolder.h"></File>
-				<File RelativePath="..\panda\src\pipeline\pipeline_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\cycleData.h"></File>
-				<File RelativePath="..\panda\src\pipeline\test_setjmp.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\lightReMutexDirect.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarSpinlockImpl.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\threadPosixImpl.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\lightReMutexDirect.h"></File>
-				<File RelativePath="..\panda\src\pipeline\pipelineCyclerTrueImpl.h"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarDummyImpl.h"></File>
-				<File RelativePath="..\panda\src\pipeline\reMutex.h"></File>
-				<File RelativePath="..\panda\src\pipeline\cycleDataStageWriter.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\mutexDirect.h"></File>
-				<File RelativePath="..\panda\src\pipeline\pipelineCyclerTrueImpl.I"></File>
-				<File RelativePath="..\panda\src\pipeline\externalThread.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVar.I"></File>
-				<File RelativePath="..\panda\src\pipeline\lightReMutexDirect.I"></File>
-				<File RelativePath="..\panda\src\pipeline\pipelineCyclerLinks.I"></File>
-				<File RelativePath="..\panda\src\pipeline\mutexDirect.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\threadDummyImpl.h"></File>
-				<File RelativePath="..\panda\src\pipeline\cyclerHolder.I"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarDirect.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarDummyImpl.I"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarFullDebug.I"></File>
-				<File RelativePath="..\panda\src\pipeline\cycleDataStageWriter.I"></File>
-				<File RelativePath="..\panda\src\pipeline\mutexSimpleImpl.I"></File>
-				<File RelativePath="..\panda\src\pipeline\lightMutexHolder.I"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarSpinlockImpl.h"></File>
-				<File RelativePath="..\panda\src\pipeline\lightMutexHolder.h"></File>
-				<File RelativePath="..\panda\src\pipeline\blockerSimple.h"></File>
-				<File RelativePath="..\panda\src\pipeline\mutexSimpleImpl.h"></File>
-				<File RelativePath="..\panda\src\pipeline\pipelineCyclerTrivialImpl.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\mainThread.h"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVar.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\pmutex.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\threadDummyImpl.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarDebug.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\pipelineCycler.h"></File>
-				<File RelativePath="..\panda\src\pipeline\pipelineCyclerLinks.h"></File>
-				<File RelativePath="..\panda\src\pipeline\cycleDataLockedStageReader.I"></File>
-				<File RelativePath="..\panda\src\pipeline\threadPriority.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\psemaphore.I"></File>
-				<File RelativePath="..\panda\src\pipeline\pipeline.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\asyncTaskBase.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarSimpleImpl.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarFullDirect.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\reMutexDirect.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarFullWin32Impl.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarWin32Impl.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarFull.I"></File>
-				<File RelativePath="..\panda\src\pipeline\reMutexHolder.h"></File>
-				<File RelativePath="..\panda\src\pipeline\pythonThread.h"></File>
-				<File RelativePath="..\panda\src\pipeline\pipelineCyclerBase.h"></File>
-				<File RelativePath="..\panda\src\pipeline\test_atomic.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\pipelineCyclerTrivialImpl.I"></File>
-				<File RelativePath="..\panda\src\pipeline\thread.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\psemaphore.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\lightReMutexHolder.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\cyclerHolder.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\cycleDataWriter.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\pipeline_composite.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarPosixImpl.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\reMutexDirect.h"></File>
-				<File RelativePath="..\panda\src\pipeline\test_delete.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\threadPosixImpl.h"></File>
-				<File RelativePath="..\panda\src\pipeline\contextSwitch.h"></File>
-				<File RelativePath="..\panda\src\pipeline\cycleDataStageReader.h"></File>
-				<File RelativePath="..\panda\src\pipeline\mutexHolder.I"></File>
-				<File RelativePath="..\panda\src\pipeline\threadSimpleManager.I"></File>
-				<File RelativePath="..\panda\src\pipeline\pipelineCyclerDummyImpl.I"></File>
-				<File RelativePath="..\panda\src\pipeline\asyncTaskBase.I"></File>
-				<File RelativePath="..\panda\src\pipeline\config_pipeline.h"></File>
-				<File RelativePath="..\panda\src\pipeline\threadWin32Impl.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\pmutex.I"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarFullDebug.h"></File>
-				<File RelativePath="..\panda\src\pipeline\blockerSimple.I"></File>
-				<File RelativePath="..\panda\src\pipeline\threadSimpleImpl.h"></File>
-				<File RelativePath="..\panda\src\pipeline\asyncTaskBase.h"></File>
-				<File RelativePath="..\panda\src\pipeline\cycleDataLockedReader.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarFull.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\config_pipeline.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\cycleDataWriter.I"></File>
-				<File RelativePath="..\panda\src\pipeline\lightReMutex.h"></File>
-				<File RelativePath="..\panda\src\pipeline\pipelineCyclerDummyImpl.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\mutexHolder.h"></File>
-				<File RelativePath="..\panda\src\pipeline\mutexTrueImpl.h"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarPosixImpl.I"></File>
-				<File RelativePath="..\panda\src\pipeline\mutexDebug.I"></File>
-				<File RelativePath="..\panda\src\pipeline\mainThread.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarDummyImpl.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\lightMutexHolder.cxx"></File>
-				<File RelativePath="..\panda\src\pipeline\cycleDataWriter.h"></File>
-				<File RelativePath="..\panda\src\pipeline\threadSimpleImpl.I"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarFullWin32Impl.h"></File>
-				<File RelativePath="..\panda\src\pipeline\lightMutexDirect.h"></File>
-				<File RelativePath="..\panda\src\pipeline\cycleDataLockedReader.I"></File>
-				<File RelativePath="..\panda\src\pipeline\conditionVarImpl.h"></File>
-			</Filter>
-			<Filter Name="pnmimage">
-				<File RelativePath="..\panda\src\pnmimage\pnmWriter.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimage\config_pnmimage.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimage\pnmimage_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimage\pnmFileType.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimage\pnmimage_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimage\pnmBrush.h"></File>
-				<File RelativePath="..\panda\src\pnmimage\pnmimage_composite.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimage\pnmBrush.I"></File>
-				<File RelativePath="..\panda\src\pnmimage\pnmWriter.h"></File>
-				<File RelativePath="..\panda\src\pnmimage\pnmImageHeader.h"></File>
-				<File RelativePath="..\panda\src\pnmimage\pnmFileType.h"></File>
-				<File RelativePath="..\panda\src\pnmimage\pnmPainter.I"></File>
-				<File RelativePath="..\panda\src\pnmimage\pnmPainter.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimage\pnm-image-filter.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimage\pnmimage_base.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimage\pnm-image-filter-core.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimage\pnmReader.h"></File>
-				<File RelativePath="..\panda\src\pnmimage\pnmPainter.h"></File>
-				<File RelativePath="..\panda\src\pnmimage\ppmcmap.h"></File>
-				<File RelativePath="..\panda\src\pnmimage\pnmImage.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimage\pnmImageHeader.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimage\pnmImage.h"></File>
-				<File RelativePath="..\panda\src\pnmimage\config_pnmimage.h"></File>
-				<File RelativePath="..\panda\src\pnmimage\ppmcmap.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimage\pnmImage.I"></File>
-				<File RelativePath="..\panda\src\pnmimage\pnmimage_base.h"></File>
-				<File RelativePath="..\panda\src\pnmimage\pnmReader.I"></File>
-				<File RelativePath="..\panda\src\pnmimage\pnmFileTypeRegistry.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimage\pnmImageHeader.I"></File>
-				<File RelativePath="..\panda\src\pnmimage\pnmWriter.I"></File>
-				<File RelativePath="..\panda\src\pnmimage\pnmbitio.h"></File>
-				<File RelativePath="..\panda\src\pnmimage\pnmBrush.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimage\pnmFileTypeRegistry.h"></File>
-				<File RelativePath="..\panda\src\pnmimage\pnmReader.cxx"></File>
-				<File RelativePath="..\panda\src\pnmimage\pnmbitio.cxx"></File>
-			</Filter>
-			<Filter Name="particlesystem">
-				<File RelativePath="..\panda\src\particlesystem\geomParticleRenderer.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\tangentRingEmitter.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\baseParticleFactory.I"></File>
-				<File RelativePath="..\panda\src\particlesystem\ringEmitter.I"></File>
-				<File RelativePath="..\panda\src\particlesystem\tangentRingEmitter.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\baseParticle.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\particleCommonFuncs.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\baseParticleRenderer.I"></File>
-				<File RelativePath="..\panda\src\particlesystem\orientedParticle.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\spriteParticleRenderer.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\discEmitter.I"></File>
-				<File RelativePath="..\panda\src\particlesystem\particleSystemManager.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\boxEmitter.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\zSpinParticleFactory.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\orientedParticleFactory.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\particleSystemManager.I"></File>
-				<File RelativePath="..\panda\src\particlesystem\zSpinParticle.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\rectangleEmitter.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\lineEmitter.I"></File>
-				<File RelativePath="..\panda\src\particlesystem\spriteParticleRenderer.I"></File>
-				<File RelativePath="..\panda\src\particlesystem\lineEmitter.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\ringEmitter.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\orientedParticleFactory.I"></File>
-				<File RelativePath="..\panda\src\particlesystem\geomParticleRenderer.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\colorInterpolationManager.I"></File>
-				<File RelativePath="..\panda\src\particlesystem\particleSystem.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\boxEmitter.I"></File>
-				<File RelativePath="..\panda\src\particlesystem\orientedParticleFactory.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\discEmitter.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\sphereVolumeEmitter.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\sphereSurfaceEmitter.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\pointParticle.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\orientedParticle.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\baseParticle.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\baseParticleFactory.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\lineEmitter.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\pointEmitter.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\arcEmitter.I"></File>
-				<File RelativePath="..\panda\src\particlesystem\particleSystemManager.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\baseParticle.I"></File>
-				<File RelativePath="..\panda\src\particlesystem\pointParticle.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\baseParticleEmitter.I"></File>
-				<File RelativePath="..\panda\src\particlesystem\sparkleParticleRenderer.I"></File>
-				<File RelativePath="..\panda\src\particlesystem\baseParticleEmitter.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\pointParticleFactory.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\baseParticleFactory.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\zSpinParticleFactory.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\arcEmitter.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\pointParticleFactory.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\colorInterpolationManager.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\particlefactories.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\particleSystem.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\tangentRingEmitter.I"></File>
-				<File RelativePath="..\panda\src\particlesystem\pointParticleRenderer.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\config_particlesystem.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\rectangleEmitter.I"></File>
-				<File RelativePath="..\panda\src\particlesystem\ringEmitter.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\baseParticleRenderer.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\zSpinParticle.I"></File>
-				<File RelativePath="..\panda\src\particlesystem\spriteParticleRenderer.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\particlesystem_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\particlesystem_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\orientedParticle.I"></File>
-				<File RelativePath="..\panda\src\particlesystem\config_particlesystem.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\baseParticleEmitter.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\colorInterpolationManager.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\zSpinParticleFactory.I"></File>
-				<File RelativePath="..\panda\src\particlesystem\sphereSurfaceEmitter.I"></File>
-				<File RelativePath="..\panda\src\particlesystem\sparkleParticleRenderer.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\particleSystem.I"></File>
-				<File RelativePath="..\panda\src\particlesystem\particlesystem_composite.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\sphereVolumeEmitter.I"></File>
-				<File RelativePath="..\panda\src\particlesystem\arcEmitter.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\lineParticleRenderer.I"></File>
-				<File RelativePath="..\panda\src\particlesystem\zSpinParticle.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\lineParticleRenderer.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\particles.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\emitters.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\sphereVolumeEmitter.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\pointEmitter.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\pointParticleRenderer.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\sphereSurfaceEmitter.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\pointEmitter.I"></File>
-				<File RelativePath="..\panda\src\particlesystem\rectangleEmitter.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\pointParticleRenderer.I"></File>
-				<File RelativePath="..\panda\src\particlesystem\boxEmitter.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\baseParticleRenderer.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\geomParticleRenderer.I"></File>
-				<File RelativePath="..\panda\src\particlesystem\sparkleParticleRenderer.h"></File>
-				<File RelativePath="..\panda\src\particlesystem\discEmitter.cxx"></File>
-				<File RelativePath="..\panda\src\particlesystem\lineParticleRenderer.cxx"></File>
-			</Filter>
-			<Filter Name="pgraphnodes">
-				<File RelativePath="..\panda\src\pgraphnodes\lightNode.cxx"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\fadeLodNode.I"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\selectiveChildNode.cxx"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\sceneGraphAnalyzer.I"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\pgraphnodes_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\fadeLodNode.cxx"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\selectiveChildNode.I"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\uvScrollNode.cxx"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\lightNode.h"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\config_pgraphnodes.cxx"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\ambientLight.h"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\sequenceNode.I"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\lodNode.I"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\uvScrollNode.h"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\pointLight.cxx"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\callbackNode.cxx"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\sequenceNode.h"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\directionalLight.I"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\shaderGenerator.h"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\callbackNode.h"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\nodeCullCallbackData.h"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\sequenceNode.cxx"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\pgraphnodes_composite.cxx"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\selectiveChildNode.h"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\fadeLodNodeData.cxx"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\config_pgraphnodes.h"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\ambientLight.I"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\switchNode.cxx"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\ambientLight.cxx"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\directionalLight.cxx"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\switchNode.h"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\pointLight.h"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\shaderGenerator.I"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\lightLensNode.cxx"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\fadeLodNode.h"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\lodNodeType.h"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\lightLensNode.h"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\nodeCullCallbackData.I"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\fadeLodNodeData.h"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\pointLight.I"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\lodNodeType.cxx"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\spotlight.I"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\sceneGraphAnalyzer.h"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\sceneGraphAnalyzer.cxx"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\shaderGenerator.cxx"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\switchNode.I"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\lodNode.h"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\directionalLight.h"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\nodeCullCallbackData.cxx"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\lightLensNode.I"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\lodNode.cxx"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\uvScrollNode.I"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\spotlight.cxx"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\lightNode.I"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\pgraphnodes_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\callbackNode.I"></File>
-				<File RelativePath="..\panda\src\pgraphnodes\spotlight.h"></File>
-			</Filter>
-			<Filter Name="nativenet">
-				<File RelativePath="..\panda\src\nativenet\socket_fdset.h"></File>
-				<File RelativePath="..\panda\src\nativenet\socket_base.h"></File>
-				<File RelativePath="..\panda\src\nativenet\socket_udp.h"></File>
-				<File RelativePath="..\panda\src\nativenet\time_general.h"></File>
-				<File RelativePath="..\panda\src\nativenet\buffered_datagramconnection.cxx"></File>
-				<File RelativePath="..\panda\src\nativenet\socket_udp_incoming.cxx"></File>
-				<File RelativePath="..\panda\src\nativenet\socket_tcp.cxx"></File>
-				<File RelativePath="..\panda\src\nativenet\time_base.h"></File>
-				<File RelativePath="..\panda\src\nativenet\buffered_datagramwriter.h"></File>
-				<File RelativePath="..\panda\src\nativenet\socket_udp_outgoing.h"></File>
-				<File RelativePath="..\panda\src\nativenet\nativenet_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\nativenet\buffered_datagramreader.h"></File>
-				<File RelativePath="..\panda\src\nativenet\socket_ip.cxx"></File>
-				<File RelativePath="..\panda\src\nativenet\time_span.h"></File>
-				<File RelativePath="..\panda\src\nativenet\socket_portable.h"></File>
-				<File RelativePath="..\panda\src\nativenet\socket_tcp_listen.h"></File>
-				<File RelativePath="..\panda\src\nativenet\socket_udp_outgoing.cxx"></File>
-				<File RelativePath="..\panda\src\nativenet\config_nativenet.cxx"></File>
-				<File RelativePath="..\panda\src\nativenet\socket_address.h"></File>
-				<File RelativePath="..\panda\src\nativenet\socket_udp_incoming.h"></File>
-				<File RelativePath="..\panda\src\nativenet\socket_tcp.h"></File>
-				<File RelativePath="..\panda\src\nativenet\buffered_datagramconnection.h"></File>
-				<File RelativePath="..\panda\src\nativenet\socket_tcp_listen.cxx"></File>
-				<File RelativePath="..\panda\src\nativenet\buffered_datagramreader.i"></File>
-				<File RelativePath="..\panda\src\nativenet\ringbuffer.i"></File>
-				<File RelativePath="..\panda\src\nativenet\membuffer.h"></File>
-				<File RelativePath="..\panda\src\nativenet\time_accumulator.h"></File>
-				<File RelativePath="..\panda\src\nativenet\socket_selector.h"></File>
-				<File RelativePath="..\panda\src\nativenet\socket_ip.h"></File>
-				<File RelativePath="..\panda\src\nativenet\membuffer.i"></File>
-				<File RelativePath="..\panda\src\nativenet\time_clock.h"></File>
-				<File RelativePath="..\panda\src\nativenet\config_nativenet.h"></File>
-				<File RelativePath="..\panda\src\nativenet\socket_udp.cxx"></File>
-				<File RelativePath="..\panda\src\nativenet\ringbuffer.h"></File>
-				<File RelativePath="..\panda\src\nativenet\time_out.h"></File>
-			</Filter>
-			<Filter Name="physics">
-				<File RelativePath="..\panda\src\physics\baseForce.I"></File>
-				<File RelativePath="..\panda\src\physics\linearUserDefinedForce.I"></File>
-				<File RelativePath="..\panda\src\physics\angularVectorForce.h"></File>
-				<File RelativePath="..\panda\src\physics\angularEulerIntegrator.h"></File>
-				<File RelativePath="..\panda\src\physics\linearCylinderVortexForce.cxx"></File>
-				<File RelativePath="..\panda\src\physics\physical.cxx"></File>
-				<File RelativePath="..\panda\src\physics\angularVectorForce.cxx"></File>
-				<File RelativePath="..\panda\src\physics\linearVectorForce.h"></File>
-				<File RelativePath="..\panda\src\physics\physics_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\physics\linearVectorForce.cxx"></File>
-				<File RelativePath="..\panda\src\physics\linearIntegrator.h"></File>
-				<File RelativePath="..\panda\src\physics\angularForce.cxx"></File>
-				<File RelativePath="..\panda\src\physics\physicsObjectCollection.I"></File>
-				<File RelativePath="..\panda\src\physics\linearFrictionForce.cxx"></File>
-				<File RelativePath="..\panda\src\physics\linearNoiseForce.h"></File>
-				<File RelativePath="..\panda\src\physics\linearDistanceForce.I"></File>
-				<File RelativePath="..\panda\src\physics\linearCylinderVortexForce.I"></File>
-				<File RelativePath="..\panda\src\physics\angularIntegrator.cxx"></File>
-				<File RelativePath="..\panda\src\physics\linearRandomForce.I"></File>
-				<File RelativePath="..\panda\src\physics\physicsCollisionHandler.I"></File>
-				<File RelativePath="..\panda\src\physics\config_physics.cxx"></File>
-				<File RelativePath="..\panda\src\physics\baseForce.h"></File>
-				<File RelativePath="..\panda\src\physics\linearSourceForce.h"></File>
-				<File RelativePath="..\panda\src\physics\linearForce.I"></File>
-				<File RelativePath="..\panda\src\physics\linearControlForce.cxx"></File>
-				<File RelativePath="..\panda\src\physics\linearFrictionForce.h"></File>
-				<File RelativePath="..\panda\src\physics\linearDistanceForce.h"></File>
-				<File RelativePath="..\panda\src\physics\linearSinkForce.h"></File>
-				<File RelativePath="..\panda\src\physics\physicsManager.I"></File>
-				<File RelativePath="..\panda\src\physics\forceNode.I"></File>
-				<File RelativePath="..\panda\src\physics\physicsCollisionHandler.cxx"></File>
-				<File RelativePath="..\panda\src\physics\physicsManager.h"></File>
-				<File RelativePath="..\panda\src\physics\physicsCollisionHandler.h"></File>
-				<File RelativePath="..\panda\src\physics\actorNode.cxx"></File>
-				<File RelativePath="..\panda\src\physics\physics_composite.cxx"></File>
-				<File RelativePath="..\panda\src\physics\forces.h"></File>
-				<File RelativePath="..\panda\src\physics\linearRandomForce.h"></File>
-				<File RelativePath="..\panda\src\physics\linearCylinderVortexForce.h"></File>
-				<File RelativePath="..\panda\src\physics\forceNode.cxx"></File>
-				<File RelativePath="..\panda\src\physics\baseIntegrator.h"></File>
-				<File RelativePath="..\panda\src\physics\linearSinkForce.cxx"></File>
-				<File RelativePath="..\panda\src\physics\baseIntegrator.cxx"></File>
-				<File RelativePath="..\panda\src\physics\forceNode.h"></File>
-				<File RelativePath="..\panda\src\physics\physical.h"></File>
-				<File RelativePath="..\panda\src\physics\physicsObjectCollection.h"></File>
-				<File RelativePath="..\panda\src\physics\baseIntegrator.I"></File>
-				<File RelativePath="..\panda\src\physics\physicsObject.I"></File>
-				<File RelativePath="..\panda\src\physics\linearUserDefinedForce.cxx"></File>
-				<File RelativePath="..\panda\src\physics\linearSourceForce.cxx"></File>
-				<File RelativePath="..\panda\src\physics\linearIntegrator.cxx"></File>
-				<File RelativePath="..\panda\src\physics\baseForce.cxx"></File>
-				<File RelativePath="..\panda\src\physics\linearVectorForce.I"></File>
-				<File RelativePath="..\panda\src\physics\linearNoiseForce.I"></File>
-				<File RelativePath="..\panda\src\physics\linearDistanceForce.cxx"></File>
-				<File RelativePath="..\panda\src\physics\physical.I"></File>
-				<File RelativePath="..\panda\src\physics\physicsObjectCollection.cxx"></File>
-				<File RelativePath="..\panda\src\physics\physicalNode.I"></File>
-				<File RelativePath="..\panda\src\physics\physicsManager.cxx"></File>
-				<File RelativePath="..\panda\src\physics\angularForce.h"></File>
-				<File RelativePath="..\panda\src\physics\physicsObject.cxx"></File>
-				<File RelativePath="..\panda\src\physics\linearFrictionForce.I"></File>
-				<File RelativePath="..\panda\src\physics\linearControlForce.h"></File>
-				<File RelativePath="..\panda\src\physics\linearUserDefinedForce.h"></File>
-				<File RelativePath="..\panda\src\physics\linearJitterForce.cxx"></File>
-				<File RelativePath="..\panda\src\physics\linearForce.cxx"></File>
-				<File RelativePath="..\panda\src\physics\linearJitterForce.h"></File>
-				<File RelativePath="..\panda\src\physics\physics_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\physics\linearNoiseForce.cxx"></File>
-				<File RelativePath="..\panda\src\physics\linearForce.h"></File>
-				<File RelativePath="..\panda\src\physics\physicsObject.h"></File>
-				<File RelativePath="..\panda\src\physics\linearRandomForce.cxx"></File>
-				<File RelativePath="..\panda\src\physics\actorNode.I"></File>
-				<File RelativePath="..\panda\src\physics\actorNode.h"></File>
-				<File RelativePath="..\panda\src\physics\physicalNode.cxx"></File>
-				<File RelativePath="..\panda\src\physics\angularEulerIntegrator.cxx"></File>
-				<File RelativePath="..\panda\src\physics\linearEulerIntegrator.cxx"></File>
-				<File RelativePath="..\panda\src\physics\test_physics.cxx"></File>
-				<File RelativePath="..\panda\src\physics\config_physics.h"></File>
-				<File RelativePath="..\panda\src\physics\angularVectorForce.I"></File>
-				<File RelativePath="..\panda\src\physics\angularIntegrator.h"></File>
-				<File RelativePath="..\panda\src\physics\linearEulerIntegrator.h"></File>
-				<File RelativePath="..\panda\src\physics\linearControlForce.I"></File>
-				<File RelativePath="..\panda\src\physics\physicalNode.h"></File>
-			</Filter>
-			<Filter Name="pgui">
-				<File RelativePath="..\panda\src\pgui\pgSliderBarNotify.h"></File>
-				<File RelativePath="..\panda\src\pgui\pgTop.I"></File>
-				<File RelativePath="..\panda\src\pgui\pgFrameStyle.I"></File>
-				<File RelativePath="..\panda\src\pgui\pgMouseWatcherGroup.cxx"></File>
-				<File RelativePath="..\panda\src\pgui\pgMouseWatcherBackground.h"></File>
-				<File RelativePath="..\panda\src\pgui\pgScrollFrame.h"></File>
-				<File RelativePath="..\panda\src\pgui\pgSliderBar.cxx"></File>
-				<File RelativePath="..\panda\src\pgui\test_pgentry.cxx"></File>
-				<File RelativePath="..\panda\src\pgui\pgEntry.cxx"></File>
-				<File RelativePath="..\panda\src\pgui\pgMouseWatcherRegion.cxx"></File>
-				<File RelativePath="..\panda\src\pgui\pgMouseWatcherBackground.cxx"></File>
-				<File RelativePath="..\panda\src\pgui\pgEntry.I"></File>
-				<File RelativePath="..\panda\src\pgui\pgItemNotify.cxx"></File>
-				<File RelativePath="..\panda\src\pgui\pgButton.cxx"></File>
-				<File RelativePath="..\panda\src\pgui\pgui_composite.cxx"></File>
-				<File RelativePath="..\panda\src\pgui\pgItem.h"></File>
-				<File RelativePath="..\panda\src\pgui\pgMouseWatcherGroup.h"></File>
-				<File RelativePath="..\panda\src\pgui\pgMouseWatcherRegion.h"></File>
-				<File RelativePath="..\panda\src\pgui\pgSliderBarNotify.I"></File>
-				<File RelativePath="..\panda\src\pgui\pgSliderBar.I"></File>
-				<File RelativePath="..\panda\src\pgui\pgFrameStyle.h"></File>
-				<File RelativePath="..\panda\src\pgui\pgItem.I"></File>
-				<File RelativePath="..\panda\src\pgui\pgTop.cxx"></File>
-				<File RelativePath="..\panda\src\pgui\config_pgui.cxx"></File>
-				<File RelativePath="..\panda\src\pgui\pgCullTraverser.h"></File>
-				<File RelativePath="..\panda\src\pgui\pgItem.cxx"></File>
-				<File RelativePath="..\panda\src\pgui\pgScrollFrame.I"></File>
-				<File RelativePath="..\panda\src\pgui\pgSliderBarNotify.cxx"></File>
-				<File RelativePath="..\panda\src\pgui\pgSliderBar.h"></File>
-				<File RelativePath="..\panda\src\pgui\pgItemNotify.h"></File>
-				<File RelativePath="..\panda\src\pgui\pgMouseWatcherParameter.cxx"></File>
-				<File RelativePath="..\panda\src\pgui\pgWaitBar.h"></File>
-				<File RelativePath="..\panda\src\pgui\pgMouseWatcherParameter.I"></File>
-				<File RelativePath="..\panda\src\pgui\pgVirtualFrame.h"></File>
-				<File RelativePath="..\panda\src\pgui\pgFrameStyle.cxx"></File>
-				<File RelativePath="..\panda\src\pgui\pgMouseWatcherParameter.h"></File>
-				<File RelativePath="..\panda\src\pgui\pgButton.h"></File>
-				<File RelativePath="..\panda\src\pgui\pgWaitBar.cxx"></File>
-				<File RelativePath="..\panda\src\pgui\pgMouseWatcherGroup.I"></File>
-				<File RelativePath="..\panda\src\pgui\pgWaitBar.I"></File>
-				<File RelativePath="..\panda\src\pgui\pgCullTraverser.cxx"></File>
-				<File RelativePath="..\panda\src\pgui\pgTop.h"></File>
-				<File RelativePath="..\panda\src\pgui\pgItemNotify.I"></File>
-				<File RelativePath="..\panda\src\pgui\pgVirtualFrame.I"></File>
-				<File RelativePath="..\panda\src\pgui\pgCullTraverser.I"></File>
-				<File RelativePath="..\panda\src\pgui\pgButtonNotify.I"></File>
-				<File RelativePath="..\panda\src\pgui\pgEntry.h"></File>
-				<File RelativePath="..\panda\src\pgui\pgVirtualFrame.cxx"></File>
-				<File RelativePath="..\panda\src\pgui\pgui_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\pgui\pgButton.I"></File>
-				<File RelativePath="..\panda\src\pgui\pgButtonNotify.cxx"></File>
-				<File RelativePath="..\panda\src\pgui\pgui_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\pgui\config_pgui.h"></File>
-				<File RelativePath="..\panda\src\pgui\pgMouseWatcherRegion.I"></File>
-				<File RelativePath="..\panda\src\pgui\pgScrollFrame.cxx"></File>
-				<File RelativePath="..\panda\src\pgui\pgButtonNotify.h"></File>
-			</Filter>
-			<Filter Name="iphone">
-				<File RelativePath="..\panda\src\iphone\pview_delegate.h"></File>
-				<File RelativePath="..\panda\src\iphone\config_iphone.h"></File>
-			</Filter>
-			<Filter Name="device">
-				<File RelativePath="..\panda\src\device\virtualMouse.h"></File>
-				<File RelativePath="..\panda\src\device\clientBase.h"></File>
-				<File RelativePath="..\panda\src\device\device_composite2.cxx"></File>
-				<File RelativePath="..\panda\src\device\clientTrackerDevice.I"></File>
-				<File RelativePath="..\panda\src\device\buttonNode.I"></File>
-				<File RelativePath="..\panda\src\device\mouseAndKeyboard.cxx"></File>
-				<File RelativePath="..\panda\src\device\trackerData.h"></File>
-				<File RelativePath="..\panda\src\device\clientBase.I"></File>
-				<File RelativePath="..\panda\src\device\clientDevice.cxx"></File>
-				<File RelativePath="..\panda\src\device\clientDevice.I"></File>
-				<File RelativePath="..\panda\src\device\trackerNode.h"></File>
-				<File RelativePath="..\panda\src\device\config_device.cxx"></File>
-				<File RelativePath="..\panda\src\device\config_device.h"></File>
-				<File RelativePath="..\panda\src\device\clientBase.cxx"></File>
-				<File RelativePath="..\panda\src\device\virtualMouse.cxx"></File>
-				<File RelativePath="..\panda\src\device\clientAnalogDevice.h"></File>
-				<File RelativePath="..\panda\src\device\trackerData.I"></File>
-				<File RelativePath="..\panda\src\device\clientDialDevice.cxx"></File>
-				<File RelativePath="..\panda\src\device\clientAnalogDevice.I"></File>
-				<File RelativePath="..\panda\src\device\clientButtonDevice.I"></File>
-				<File RelativePath="..\panda\src\device\device_composite1.cxx"></File>
-				<File RelativePath="..\panda\src\device\clientButtonDevice.h"></File>
-				<File RelativePath="..\panda\src\device\dialNode.h"></File>
-				<File RelativePath="..\panda\src\device\clientButtonDevice.cxx"></File>
-				<File RelativePath="..\panda\src\device\buttonNode.h"></File>
-				<File RelativePath="..\panda\src\device\clientDialDevice.I"></File>
-				<File RelativePath="..\panda\src\device\analogNode.I"></File>
-				<File RelativePath="..\panda\src\device\clientTrackerDevice.cxx"></File>
-				<File RelativePath="..\panda\src\device\clientDevice.h"></File>
-				<File RelativePath="..\panda\src\device\mouseAndKeyboard.h"></File>
-				<File RelativePath="..\panda\src\device\device_composite.cxx"></File>
-				<File RelativePath="..\panda\src\device\trackerData.cxx"></File>
-				<File RelativePath="..\panda\src\device\trackerNode.cxx"></File>
-				<File RelativePath="..\panda\src\device\clientTrackerDevice.h"></File>
-				<File RelativePath="..\panda\src\device\clientDialDevice.h"></File>
-				<File RelativePath="..\panda\src\device\dialNode.I"></File>
-				<File RelativePath="..\panda\src\device\trackerNode.I"></File>
-				<File RelativePath="..\panda\src\device\analogNode.h"></File>
-				<File RelativePath="..\panda\src\device\buttonNode.cxx"></File>
-				<File RelativePath="..\panda\src\device\dialNode.cxx"></File>
-				<File RelativePath="..\panda\src\device\clientAnalogDevice.cxx"></File>
-				<File RelativePath="..\panda\src\device\analogNode.cxx"></File>
-			</Filter>
-		</Filter>
-		<Filter Name="pandatool">
-			<Filter Name="mayaegg">
-				<File RelativePath="..\pandatool\src\mayaegg\mayaToEggConverter.cxx"></File>
-				<File RelativePath="..\pandatool\src\mayaegg\mayaEggGroupUserData.cxx"></File>
-				<File RelativePath="..\pandatool\src\mayaegg\config_mayaegg.h"></File>
-				<File RelativePath="..\pandatool\src\mayaegg\mayaegg_composite1.cxx"></File>
-				<File RelativePath="..\pandatool\src\mayaegg\mayaEggLoader.cxx"></File>
-				<File RelativePath="..\pandatool\src\mayaegg\mayaNodeTree.h"></File>
-				<File RelativePath="..\pandatool\src\mayaegg\mayaEggGroupUserData.h"></File>
-				<File RelativePath="..\pandatool\src\mayaegg\mayaNodeTree.cxx"></File>
-				<File RelativePath="..\pandatool\src\mayaegg\mayaEggGroupUserData.I"></File>
-				<File RelativePath="..\pandatool\src\mayaegg\mayaEggLoader.h"></File>
-				<File RelativePath="..\pandatool\src\mayaegg\mayaNodeDesc.h"></File>
-				<File RelativePath="..\pandatool\src\mayaegg\mayaNodeDesc.cxx"></File>
-				<File RelativePath="..\pandatool\src\mayaegg\mayaToEggConverter.h"></File>
-				<File RelativePath="..\pandatool\src\mayaegg\config_mayaegg.cxx"></File>
-				<File RelativePath="..\pandatool\src\mayaegg\mayaBlendDesc.cxx"></File>
-				<File RelativePath="..\pandatool\src\mayaegg\mayaBlendDesc.h"></File>
-			</Filter>
-			<Filter Name="xfileegg">
-				<File RelativePath="..\pandatool\src\xfileegg\xFileNormal.h"></File>
-				<File RelativePath="..\pandatool\src\xfileegg\xFileMaker.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfileegg\xFileMaterial.h"></File>
-				<File RelativePath="..\pandatool\src\xfileegg\xFileMesh.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfileegg\xFileMesh.h"></File>
-				<File RelativePath="..\pandatool\src\xfileegg\xFileAnimationSet.I"></File>
-				<File RelativePath="..\pandatool\src\xfileegg\xFileToEggConverter.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfileegg\xFileMaterial.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfileegg\xFileVertexPool.h"></File>
-				<File RelativePath="..\pandatool\src\xfileegg\xFileAnimationSet.h"></File>
-				<File RelativePath="..\pandatool\src\xfileegg\xFileVertex.h"></File>
-				<File RelativePath="..\pandatool\src\xfileegg\xFileAnimationSet.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfileegg\xFileNormal.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfileegg\xFileVertex.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfileegg\xFileToEggConverter.h"></File>
-				<File RelativePath="..\pandatool\src\xfileegg\xFileMaker.h"></File>
-				<File RelativePath="..\pandatool\src\xfileegg\xFileFace.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfileegg\xFileFace.h"></File>
-				<File RelativePath="..\pandatool\src\xfileegg\xfileegg_composite1.cxx"></File>
-			</Filter>
-			<Filter Name="egg-mkfont">
-				<File RelativePath="..\pandatool\src\egg-mkfont\rangeIterator.I"></File>
-				<File RelativePath="..\pandatool\src\egg-mkfont\rangeDescription.I"></File>
-				<File RelativePath="..\pandatool\src\egg-mkfont\rangeDescription.h"></File>
-				<File RelativePath="..\pandatool\src\egg-mkfont\egg-mkfont_composite1.cxx"></File>
-				<File RelativePath="..\pandatool\src\egg-mkfont\eggMakeFont.h"></File>
-				<File RelativePath="..\pandatool\src\egg-mkfont\rangeIterator.cxx"></File>
-				<File RelativePath="..\pandatool\src\egg-mkfont\rangeDescription.cxx"></File>
-				<File RelativePath="..\pandatool\src\egg-mkfont\eggMakeFont.cxx"></File>
-				<File RelativePath="..\pandatool\src\egg-mkfont\rangeIterator.h"></File>
-			</Filter>
-			<Filter Name="progbase">
-				<File RelativePath="..\pandatool\src\progbase\programBase.h"></File>
-				<File RelativePath="..\pandatool\src\progbase\programBase.I"></File>
-				<File RelativePath="..\pandatool\src\progbase\withOutputFile.h"></File>
-				<File RelativePath="..\pandatool\src\progbase\progbase_composite1.cxx"></File>
-				<File RelativePath="..\pandatool\src\progbase\programBase.cxx"></File>
-				<File RelativePath="..\pandatool\src\progbase\wordWrapStreamBuf.h"></File>
-				<File RelativePath="..\pandatool\src\progbase\wordWrapStream.cxx"></File>
-				<File RelativePath="..\pandatool\src\progbase\wordWrapStreamBuf.I"></File>
-				<File RelativePath="..\pandatool\src\progbase\wordWrapStream.h"></File>
-				<File RelativePath="..\pandatool\src\progbase\withOutputFile.I"></File>
-				<File RelativePath="..\pandatool\src\progbase\withOutputFile.cxx"></File>
-				<File RelativePath="..\pandatool\src\progbase\wordWrapStreamBuf.cxx"></File>
-				<File RelativePath="..\pandatool\src\progbase\test_prog.cxx"></File>
-			</Filter>
-			<Filter Name="eggcharbase">
-				<File RelativePath="..\pandatool\src\eggcharbase\eggMatrixTablePointer.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggSliderData.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggJointPointer.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggcharbase_composite1.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggCharacterCollection.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggCharacterData.I"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggMatrixTablePointer.h"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggJointPointer.I"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggJointNodePointer.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggCharacterData.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggJointPointer.h"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\config_eggcharbase.h"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggBackPointer.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggVertexPointer.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggVertexPointer.h"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggCharacterDb.h"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggBackPointer.h"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggComponentData.h"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggSliderData.I"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggJointData.h"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggCharacterFilter.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggCharacterCollection.h"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggSliderData.h"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggJointNodePointer.h"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggCharacterDb.I"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggCharacterData.h"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggSliderPointer.h"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggComponentData.I"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggSliderPointer.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggJointData.I"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggCharacterFilter.h"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggJointData.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggScalarTablePointer.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggCharacterDb.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggScalarTablePointer.h"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggCharacterCollection.I"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\config_eggcharbase.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggcharbase\eggComponentData.cxx"></File>
-			</Filter>
-			<Filter Name="eggbase">
-				<File RelativePath="..\pandatool\src\eggbase\somethingToEgg.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggbase\eggBase.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggbase\eggConverter.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggbase\eggFilter.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggbase\eggConverter.h"></File>
-				<File RelativePath="..\pandatool\src\eggbase\eggMakeSomething.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggbase\eggbase_composite1.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggbase\eggWriter.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggbase\eggMultiBase.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggbase\eggReader.h"></File>
-				<File RelativePath="..\pandatool\src\eggbase\eggMultiFilter.h"></File>
-				<File RelativePath="..\pandatool\src\eggbase\eggMultiFilter.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggbase\eggMakeSomething.h"></File>
-				<File RelativePath="..\pandatool\src\eggbase\eggWriter.h"></File>
-				<File RelativePath="..\pandatool\src\eggbase\eggReader.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggbase\eggFilter.h"></File>
-				<File RelativePath="..\pandatool\src\eggbase\eggSingleBase.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggbase\eggToSomething.h"></File>
-				<File RelativePath="..\pandatool\src\eggbase\eggMultiBase.h"></File>
-				<File RelativePath="..\pandatool\src\eggbase\eggSingleBase.h"></File>
-				<File RelativePath="..\pandatool\src\eggbase\somethingToEgg.h"></File>
-				<File RelativePath="..\pandatool\src\eggbase\eggBase.h"></File>
-				<File RelativePath="..\pandatool\src\eggbase\eggToSomething.cxx"></File>
-			</Filter>
-			<Filter Name="converter">
-				<File RelativePath="..\pandatool\src\converter\somethingToEggConverter.I"></File>
-				<File RelativePath="..\pandatool\src\converter\somethingToEggConverter.h"></File>
-				<File RelativePath="..\pandatool\src\converter\somethingToEggConverter.cxx"></File>
-			</Filter>
-			<Filter Name="lwoprogs">
-				<File RelativePath="..\pandatool\src\lwoprogs\lwoToEgg.h"></File>
-				<File RelativePath="..\pandatool\src\lwoprogs\lwoToEgg.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwoprogs\lwoScan.h"></File>
-				<File RelativePath="..\pandatool\src\lwoprogs\lwoScan.cxx"></File>
-			</Filter>
-			<Filter Name="pandatoolbase">
-				<File RelativePath="..\pandatool\src\pandatoolbase\animationConvert.cxx"></File>
-				<File RelativePath="..\pandatool\src\pandatoolbase\pathReplace.I"></File>
-				<File RelativePath="..\pandatool\src\pandatoolbase\config_pandatoolbase.cxx"></File>
-				<File RelativePath="..\pandatool\src\pandatoolbase\pathReplace.h"></File>
-				<File RelativePath="..\pandatool\src\pandatoolbase\pandatoolsymbols.h"></File>
-				<File RelativePath="..\pandatool\src\pandatoolbase\animationConvert.h"></File>
-				<File RelativePath="..\pandatool\src\pandatoolbase\distanceUnit.cxx"></File>
-				<File RelativePath="..\pandatool\src\pandatoolbase\config_pandatoolbase.h"></File>
-				<File RelativePath="..\pandatool\src\pandatoolbase\pandatoolbase.cxx"></File>
-				<File RelativePath="..\pandatool\src\pandatoolbase\pathReplace.cxx"></File>
-				<File RelativePath="..\pandatool\src\pandatoolbase\pathStore.h"></File>
-				<File RelativePath="..\pandatool\src\pandatoolbase\pathStore.cxx"></File>
-				<File RelativePath="..\pandatool\src\pandatoolbase\distanceUnit.h"></File>
-				<File RelativePath="..\pandatool\src\pandatoolbase\pandatoolbase.h"></File>
-				<File RelativePath="..\pandatool\src\pandatoolbase\pandatoolbase_composite1.cxx"></File>
-			</Filter>
-			<Filter Name="imagebase">
-				<File RelativePath="..\pandatool\src\imagebase\imageFilter.h"></File>
-				<File RelativePath="..\pandatool\src\imagebase\imageWriter.cxx"></File>
-				<File RelativePath="..\pandatool\src\imagebase\imageWriter.h"></File>
-				<File RelativePath="..\pandatool\src\imagebase\imageWriter.I"></File>
-				<File RelativePath="..\pandatool\src\imagebase\imageBase.h"></File>
-				<File RelativePath="..\pandatool\src\imagebase\imageFilter.cxx"></File>
-				<File RelativePath="..\pandatool\src\imagebase\imagebase_composite1.cxx"></File>
-				<File RelativePath="..\pandatool\src\imagebase\imageReader.cxx"></File>
-				<File RelativePath="..\pandatool\src\imagebase\imageReader.h"></File>
-				<File RelativePath="..\pandatool\src\imagebase\imageBase.cxx"></File>
-			</Filter>
-			<Filter Name="text-stats">
-				<File RelativePath="..\pandatool\src\text-stats\textMonitor.h"></File>
-				<File RelativePath="..\pandatool\src\text-stats\textStats.h"></File>
-				<File RelativePath="..\pandatool\src\text-stats\textMonitor.cxx"></File>
-				<File RelativePath="..\pandatool\src\text-stats\textMonitor.I"></File>
-				<File RelativePath="..\pandatool\src\text-stats\textStats.cxx"></File>
-			</Filter>
-			<Filter Name="flt">
-				<File RelativePath="..\pandatool\src\flt\fltPackedColor.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltTransformRecord.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltMesh.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\config_flt.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltTransformRotateAboutPoint.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltVertex.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltMeshPrimitive.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltLocalVertexPool.I"></File>
-				<File RelativePath="..\pandatool\src\flt\fltInstanceRef.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltMesh.I"></File>
-				<File RelativePath="..\pandatool\src\flt\fltRecord.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltGroup.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltTransformRotateAboutEdge.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltLightSourceDefinition.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltRecordWriter.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltRecord.I"></File>
-				<File RelativePath="..\pandatool\src\flt\fltGroup.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltVectorRecord.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltUnsupportedRecord.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltFace.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltGeometry.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltBead.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltVertex.I"></File>
-				<File RelativePath="..\pandatool\src\flt\fltTexture.h"></File>
-				<File RelativePath="..\pandatool\src\flt\config_flt.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltPackedColor.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltMeshPrimitive.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltGeometry.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltHeader.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltRecordReader.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltTransformGeneralMatrix.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltRecordWriter.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltVertex.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltExternalReference.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltEyepoint.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltInstanceRef.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltTrackplane.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltRecord.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltLocalVertexPool.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltTransformPut.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltTransformRotateAboutPoint.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltBeadID.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltCurve.I"></File>
-				<File RelativePath="..\pandatool\src\flt\fltGeometry.I"></File>
-				<File RelativePath="..\pandatool\src\flt\fltLOD.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltOpcode.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltRecordReader.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltCurve.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltUnsupportedRecord.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltBead.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltObject.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltBeadID.h"></File>
-				<File RelativePath="..\pandatool\src\flt\flt_composite1.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltInstanceDefinition.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltExternalReference.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltTexture.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltLOD.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltTransformRotateScale.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltHeader.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltPackedColor.I"></File>
-				<File RelativePath="..\pandatool\src\flt\fltCurve.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltTransformRotateAboutEdge.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltLocalVertexPool.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltLightSourceDefinition.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltTransformScale.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltVertexList.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltMeshPrimitive.I"></File>
-				<File RelativePath="..\pandatool\src\flt\fltMaterial.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltTransformGeneralMatrix.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltVectorRecord.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltTransformScale.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltTransformRotateScale.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltTransformTranslate.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltVertexList.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltInstanceDefinition.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltTrackplane.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltTransformPut.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltObject.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltOpcode.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltEyepoint.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltFace.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltFace.I"></File>
-				<File RelativePath="..\pandatool\src\flt\fltTransformTranslate.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltTransformRecord.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltError.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltError.h"></File>
-				<File RelativePath="..\pandatool\src\flt\fltMaterial.cxx"></File>
-				<File RelativePath="..\pandatool\src\flt\fltMesh.h"></File>
-			</Filter>
-			<Filter Name="vrml">
-				<File RelativePath="..\pandatool\src\vrml\standard_nodes.cxx"></File>
-				<File RelativePath="..\pandatool\src\vrml\vrmlNode.h"></File>
-				<File RelativePath="..\pandatool\src\vrml\vrmlParser.h"></File>
-				<File RelativePath="..\pandatool\src\vrml\parse_vrml.h"></File>
-				<File RelativePath="..\pandatool\src\vrml\vrmlNodeType.h"></File>
-				<File RelativePath="..\pandatool\src\vrml\vrmlNode.cxx"></File>
-				<File RelativePath="..\pandatool\src\vrml\vrmlParserDefs.h"></File>
-				<File RelativePath="..\pandatool\src\vrml\vrmlLexerDefs.h"></File>
-				<File RelativePath="..\pandatool\src\vrml\vrmlLexer.cxx"></File>
-				<File RelativePath="..\pandatool\src\vrml\vrmlParser.cxx"></File>
-				<File RelativePath="..\pandatool\src\vrml\standardNodes.wrl.pz.c"></File>
-				<File RelativePath="..\pandatool\src\vrml\standard_nodes.h"></File>
-				<File RelativePath="..\pandatool\src\vrml\parse_vrml.cxx"></File>
-				<File RelativePath="..\pandatool\src\vrml\standardNodes.wrl.c"></File>
-				<File RelativePath="..\pandatool\src\vrml\vrmlNodeType.cxx"></File>
-			</Filter>
-			<Filter Name="ptloader">
-				<File RelativePath="..\pandatool\src\ptloader\config_ptloader.cxx"></File>
-				<File RelativePath="..\pandatool\src\ptloader\loaderFileTypePandatool.cxx"></File>
-				<File RelativePath="..\pandatool\src\ptloader\config_ptloader.h"></File>
-				<File RelativePath="..\pandatool\src\ptloader\loaderFileTypePandatool.h"></File>
-			</Filter>
-			<Filter Name="imageprogs">
-				<File RelativePath="..\pandatool\src\imageprogs\imageTrans.h"></File>
-				<File RelativePath="..\pandatool\src\imageprogs\imageTransformColors.cxx"></File>
-				<File RelativePath="..\pandatool\src\imageprogs\imageTransformColors.h"></File>
-				<File RelativePath="..\pandatool\src\imageprogs\imageResize.h"></File>
-				<File RelativePath="..\pandatool\src\imageprogs\imageFixHiddenColor.I"></File>
-				<File RelativePath="..\pandatool\src\imageprogs\imageResize.cxx"></File>
-				<File RelativePath="..\pandatool\src\imageprogs\imageFixHiddenColor.cxx"></File>
-				<File RelativePath="..\pandatool\src\imageprogs\imageInfo.h"></File>
-				<File RelativePath="..\pandatool\src\imageprogs\imageFixHiddenColor.h"></File>
-				<File RelativePath="..\pandatool\src\imageprogs\imageTransformColors.I"></File>
-				<File RelativePath="..\pandatool\src\imageprogs\imageTrans.cxx"></File>
-				<File RelativePath="..\pandatool\src\imageprogs\imageInfo.cxx"></File>
-				<File RelativePath="..\pandatool\src\imageprogs\imageResize.I"></File>
-			</Filter>
-			<Filter Name="fltprogs">
-				<File RelativePath="..\pandatool\src\fltprogs\fltToEgg.cxx"></File>
-				<File RelativePath="..\pandatool\src\fltprogs\eggToFlt.cxx"></File>
-				<File RelativePath="..\pandatool\src\fltprogs\fltTrans.h"></File>
-				<File RelativePath="..\pandatool\src\fltprogs\fltInfo.h"></File>
-				<File RelativePath="..\pandatool\src\fltprogs\fltInfo.cxx"></File>
-				<File RelativePath="..\pandatool\src\fltprogs\fltTrans.cxx"></File>
-				<File RelativePath="..\pandatool\src\fltprogs\fltToEgg.h"></File>
-				<File RelativePath="..\pandatool\src\fltprogs\eggToFlt.h"></File>
-			</Filter>
-			<Filter Name="fltegg">
-				<File RelativePath="..\pandatool\src\fltegg\fltToEggConverter.I"></File>
-				<File RelativePath="..\pandatool\src\fltegg\fltToEggLevelState.I"></File>
-				<File RelativePath="..\pandatool\src\fltegg\fltToEggLevelState.cxx"></File>
-				<File RelativePath="..\pandatool\src\fltegg\fltToEggConverter.cxx"></File>
-				<File RelativePath="..\pandatool\src\fltegg\fltToEggConverter.h"></File>
-				<File RelativePath="..\pandatool\src\fltegg\fltToEggLevelState.h"></File>
-			</Filter>
-			<Filter Name="eggprogs">
-				<File RelativePath="..\pandatool\src\eggprogs\eggRetargetAnim.h"></File>
-				<File RelativePath="..\pandatool\src\eggprogs\eggTrans.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggprogs\eggRetargetAnim.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggprogs\eggTrans.h"></File>
-				<File RelativePath="..\pandatool\src\eggprogs\eggRename.h"></File>
-				<File RelativePath="..\pandatool\src\eggprogs\eggRename.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggprogs\eggCrop.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggprogs\eggTopstrip.h"></File>
-				<File RelativePath="..\pandatool\src\eggprogs\eggTextureCards.h"></File>
-				<File RelativePath="..\pandatool\src\eggprogs\eggMakeTube.h"></File>
-				<File RelativePath="..\pandatool\src\eggprogs\eggMakeTube.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggprogs\eggCrop.h"></File>
-				<File RelativePath="..\pandatool\src\eggprogs\eggTopstrip.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggprogs\eggListTextures.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggprogs\eggToC.h"></File>
-				<File RelativePath="..\pandatool\src\eggprogs\eggTextureCards.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggprogs\eggToC.cxx"></File>
-				<File RelativePath="..\pandatool\src\eggprogs\eggListTextures.h"></File>
-			</Filter>
-			<Filter Name="maya">
-				<File RelativePath="..\pandatool\src\maya\mayaApi.h"></File>
-				<File RelativePath="..\pandatool\src\maya\mayaShaders.h"></File>
-				<File RelativePath="..\pandatool\src\maya\post_maya_include.h"></File>
-				<File RelativePath="..\pandatool\src\maya\maya_composite1.cxx"></File>
-				<File RelativePath="..\pandatool\src\maya\config_maya.h"></File>
-				<File RelativePath="..\pandatool\src\maya\maya_funcs.cxx"></File>
-				<File RelativePath="..\pandatool\src\maya\mayaShader.cxx"></File>
-				<File RelativePath="..\pandatool\src\maya\mayaShader.h"></File>
-				<File RelativePath="..\pandatool\src\maya\maya_funcs.h"></File>
-				<File RelativePath="..\pandatool\src\maya\mayaShaders.cxx"></File>
-				<File RelativePath="..\pandatool\src\maya\pre_maya_include.h"></File>
-				<File RelativePath="..\pandatool\src\maya\mayaShaderColorDef.h"></File>
-				<File RelativePath="..\pandatool\src\maya\maya_funcs.I"></File>
-				<File RelativePath="..\pandatool\src\maya\mayaApi.cxx"></File>
-				<File RelativePath="..\pandatool\src\maya\mayaShaderColorDef.cxx"></File>
-				<File RelativePath="..\pandatool\src\maya\config_maya.cxx"></File>
-			</Filter>
-			<Filter Name="lwoegg">
-				<File RelativePath="..\pandatool\src\lwoegg\cLwoPolygons.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwoegg\cLwoClip.h"></File>
-				<File RelativePath="..\pandatool\src\lwoegg\cLwoSurface.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwoegg\lwoToEggConverter.h"></File>
-				<File RelativePath="..\pandatool\src\lwoegg\cLwoSurfaceBlock.h"></File>
-				<File RelativePath="..\pandatool\src\lwoegg\cLwoPoints.I"></File>
-				<File RelativePath="..\pandatool\src\lwoegg\cLwoPolygons.I"></File>
-				<File RelativePath="..\pandatool\src\lwoegg\cLwoSurfaceBlock.I"></File>
-				<File RelativePath="..\pandatool\src\lwoegg\cLwoSurfaceBlockTMap.I"></File>
-				<File RelativePath="..\pandatool\src\lwoegg\cLwoClip.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwoegg\lwoegg_composite1.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwoegg\cLwoLayer.h"></File>
-				<File RelativePath="..\pandatool\src\lwoegg\cLwoLayer.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwoegg\cLwoSurfaceBlockTMap.h"></File>
-				<File RelativePath="..\pandatool\src\lwoegg\cLwoSurfaceBlock.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwoegg\cLwoPoints.h"></File>
-				<File RelativePath="..\pandatool\src\lwoegg\cLwoSurfaceBlockTMap.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwoegg\cLwoLayer.I"></File>
-				<File RelativePath="..\pandatool\src\lwoegg\cLwoClip.I"></File>
-				<File RelativePath="..\pandatool\src\lwoegg\cLwoPoints.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwoegg\cLwoSurface.h"></File>
-				<File RelativePath="..\pandatool\src\lwoegg\lwoToEggConverter.I"></File>
-				<File RelativePath="..\pandatool\src\lwoegg\cLwoPolygons.h"></File>
-				<File RelativePath="..\pandatool\src\lwoegg\cLwoSurface.I"></File>
-				<File RelativePath="..\pandatool\src\lwoegg\lwoToEggConverter.cxx"></File>
-			</Filter>
-			<Filter Name="dxfprogs">
-				<File RelativePath="..\pandatool\src\dxfprogs\eggToDXF.cxx"></File>
-				<File RelativePath="..\pandatool\src\dxfprogs\eggToDXFLayer.cxx"></File>
-				<File RelativePath="..\pandatool\src\dxfprogs\dxfToEgg.cxx"></File>
-				<File RelativePath="..\pandatool\src\dxfprogs\dxfToEgg.h"></File>
-				<File RelativePath="..\pandatool\src\dxfprogs\dxfPoints.cxx"></File>
-				<File RelativePath="..\pandatool\src\dxfprogs\eggToDXF.h"></File>
-				<File RelativePath="..\pandatool\src\dxfprogs\eggToDXFLayer.h"></File>
-				<File RelativePath="..\pandatool\src\dxfprogs\dxfPoints.h"></File>
-			</Filter>
-			<Filter Name="daeegg">
-				<File RelativePath="..\pandatool\src\daeegg\pre_fcollada_include.h"></File>
-				<File RelativePath="..\pandatool\src\daeegg\daeToEggConverter.cxx"></File>
-				<File RelativePath="..\pandatool\src\daeegg\fcollada_utils.h"></File>
-				<File RelativePath="..\pandatool\src\daeegg\daeCharacter.h"></File>
-				<File RelativePath="..\pandatool\src\daeegg\daeegg_composite1.cxx"></File>
-				<File RelativePath="..\pandatool\src\daeegg\config_daeegg.cxx"></File>
-				<File RelativePath="..\pandatool\src\daeegg\daeMaterials.h"></File>
-				<File RelativePath="..\pandatool\src\daeegg\daeMaterials.cxx"></File>
-				<File RelativePath="..\pandatool\src\daeegg\daeToEggConverter.h"></File>
-				<File RelativePath="..\pandatool\src\daeegg\config_daeegg.h"></File>
-				<File RelativePath="..\pandatool\src\daeegg\daeCharacter.cxx"></File>
-			</Filter>
-			<Filter Name="daeprogs">
-				<File RelativePath="..\pandatool\src\daeprogs\eggToDAE.h"></File>
-				<File RelativePath="..\pandatool\src\daeprogs\eggToDAE.cxx"></File>
-				<File RelativePath="..\pandatool\src\daeprogs\daeToEgg.cxx"></File>
-				<File RelativePath="..\pandatool\src\daeprogs\daeToEgg.h"></File>
-			</Filter>
-			<Filter Name="win-stats">
-				<File RelativePath="..\pandatool\src\win-stats\winStatsLabelStack.cxx"></File>
-				<File RelativePath="..\pandatool\src\win-stats\winStatsStripChart.cxx"></File>
-				<File RelativePath="..\pandatool\src\win-stats\winStatsMonitor.cxx"></File>
-				<File RelativePath="..\pandatool\src\win-stats\winStats.cxx"></File>
-				<File RelativePath="..\pandatool\src\win-stats\winStatsChartMenu.cxx"></File>
-				<File RelativePath="..\pandatool\src\win-stats\winStatsGraph.cxx"></File>
-				<File RelativePath="..\pandatool\src\win-stats\winstats_composite1.cxx"></File>
-				<File RelativePath="..\pandatool\src\win-stats\winStatsLabel.h"></File>
-				<File RelativePath="..\pandatool\src\win-stats\winStatsChartMenu.h"></File>
-				<File RelativePath="..\pandatool\src\win-stats\winStatsLabelStack.h"></File>
-				<File RelativePath="..\pandatool\src\win-stats\winStatsGraph.h"></File>
-				<File RelativePath="..\pandatool\src\win-stats\winStatsMonitor.h"></File>
-				<File RelativePath="..\pandatool\src\win-stats\winStats.h"></File>
-				<File RelativePath="..\pandatool\src\win-stats\winStatsPianoRoll.h"></File>
-				<File RelativePath="..\pandatool\src\win-stats\winStatsMonitor.I"></File>
-				<File RelativePath="..\pandatool\src\win-stats\winStatsStripChart.h"></File>
-				<File RelativePath="..\pandatool\src\win-stats\winStatsPianoRoll.cxx"></File>
-				<File RelativePath="..\pandatool\src\win-stats\winStatsServer.cxx"></File>
-				<File RelativePath="..\pandatool\src\win-stats\winStatsMenuId.h"></File>
-				<File RelativePath="..\pandatool\src\win-stats\winStatsLabel.cxx"></File>
-				<File RelativePath="..\pandatool\src\win-stats\winStatsServer.h"></File>
-			</Filter>
-			<Filter Name="dxfegg">
-				<File RelativePath="..\pandatool\src\dxfegg\dxfToEggConverter.cxx"></File>
-				<File RelativePath="..\pandatool\src\dxfegg\dxfToEggLayer.cxx"></File>
-				<File RelativePath="..\pandatool\src\dxfegg\dxfToEggConverter.h"></File>
-				<File RelativePath="..\pandatool\src\dxfegg\dxfToEggLayer.h"></File>
-			</Filter>
-			<Filter Name="maxprogs">
-				<File RelativePath="..\pandatool\src\maxprogs\maxImportRes.h"></File>
-				<File RelativePath="..\pandatool\src\maxprogs\maxEggImport.cxx"></File>
-			</Filter>
-			<Filter Name="egg-palettize">
-				<File RelativePath="..\pandatool\src\egg-palettize\eggPalettize.h"></File>
-				<File RelativePath="..\pandatool\src\egg-palettize\txaFileFilter.cxx"></File>
-				<File RelativePath="..\pandatool\src\egg-palettize\eggPalettize.cxx"></File>
-				<File RelativePath="..\pandatool\src\egg-palettize\txaFileFilter.h"></File>
-				<File RelativePath="..\pandatool\src\egg-palettize\txaFileFilter.I"></File>
-			</Filter>
-			<Filter Name="bam">
-				<File RelativePath="..\pandatool\src\bam\eggToBam.h"></File>
-				<File RelativePath="..\pandatool\src\bam\bamToEgg.cxx"></File>
-				<File RelativePath="..\pandatool\src\bam\bamInfo.cxx"></File>
-				<File RelativePath="..\pandatool\src\bam\eggToBam.cxx"></File>
-				<File RelativePath="..\pandatool\src\bam\bamToEgg.h"></File>
-				<File RelativePath="..\pandatool\src\bam\bamInfo.h"></File>
-			</Filter>
-			<Filter Name="miscprogs">
-				<File RelativePath="..\pandatool\src\miscprogs\binToC.h"></File>
-				<File RelativePath="..\pandatool\src\miscprogs\binToC.cxx"></File>
-			</Filter>
-			<Filter Name="mayaprogs">
-				<File RelativePath="..\pandatool\src\mayaprogs\mayaPview.h"></File>
-				<File RelativePath="..\pandatool\src\mayaprogs\config_mayaloader.cxx"></File>
-				<File RelativePath="..\pandatool\src\mayaprogs\mayaPview.cxx"></File>
-				<File RelativePath="..\pandatool\src\mayaprogs\mayaToEgg_client.h"></File>
-				<File RelativePath="..\pandatool\src\mayaprogs\blend_test.cxx"></File>
-				<File RelativePath="..\pandatool\src\mayaprogs\mayaToEgg_server.h"></File>
-				<File RelativePath="..\pandatool\src\mayaprogs\eggToMaya.h"></File>
-				<File RelativePath="..\pandatool\src\mayaprogs\mayaSavePview.h"></File>
-				<File RelativePath="..\pandatool\src\mayaprogs\mayaToEgg_server.cxx"></File>
-				<File RelativePath="..\pandatool\src\mayaprogs\eggToMaya.cxx"></File>
-				<File RelativePath="..\pandatool\src\mayaprogs\normal_test.cxx"></File>
-				<File RelativePath="..\pandatool\src\mayaprogs\mayaSavePview.cxx"></File>
-				<File RelativePath="..\pandatool\src\mayaprogs\mayaToEgg.cxx"></File>
-				<File RelativePath="..\pandatool\src\mayaprogs\mayaToEgg.h"></File>
-				<File RelativePath="..\pandatool\src\mayaprogs\mayaWrapper.cxx"></File>
-				<File RelativePath="..\pandatool\src\mayaprogs\mayapath.cxx"></File>
-				<File RelativePath="..\pandatool\src\mayaprogs\mayaToEgg_client.cxx"></File>
-				<File RelativePath="..\pandatool\src\mayaprogs\mayaEggImport.cxx"></File>
-			</Filter>
-			<Filter Name="vrmlprogs">
-				<File RelativePath="..\pandatool\src\vrmlprogs\vrmlToEgg.cxx"></File>
-				<File RelativePath="..\pandatool\src\vrmlprogs\vrmlToEgg.h"></File>
-				<File RelativePath="..\pandatool\src\vrmlprogs\vrmlTrans.h"></File>
-				<File RelativePath="..\pandatool\src\vrmlprogs\vrmlTrans.cxx"></File>
-			</Filter>
-			<Filter Name="egg-optchar">
-				<File RelativePath="..\pandatool\src\egg-optchar\eggOptcharUserData.cxx"></File>
-				<File RelativePath="..\pandatool\src\egg-optchar\config_egg_optchar.cxx"></File>
-				<File RelativePath="..\pandatool\src\egg-optchar\eggOptcharUserData.I"></File>
-				<File RelativePath="..\pandatool\src\egg-optchar\vertexMembership.I"></File>
-				<File RelativePath="..\pandatool\src\egg-optchar\eggOptchar.cxx"></File>
-				<File RelativePath="..\pandatool\src\egg-optchar\vertexMembership.cxx"></File>
-				<File RelativePath="..\pandatool\src\egg-optchar\config_egg_optchar.h"></File>
-				<File RelativePath="..\pandatool\src\egg-optchar\eggOptchar.h"></File>
-				<File RelativePath="..\pandatool\src\egg-optchar\eggOptcharUserData.h"></File>
-				<File RelativePath="..\pandatool\src\egg-optchar\vertexMembership.h"></File>
-			</Filter>
-			<Filter Name="pstatserver">
-				<File RelativePath="..\pandatool\src\pstatserver\pStatThreadData.h"></File>
-				<File RelativePath="..\pandatool\src\pstatserver\pStatListener.h"></File>
-				<File RelativePath="..\pandatool\src\pstatserver\pStatGraph.h"></File>
-				<File RelativePath="..\pandatool\src\pstatserver\pStatMonitor.h"></File>
-				<File RelativePath="..\pandatool\src\pstatserver\pStatViewLevel.I"></File>
-				<File RelativePath="..\pandatool\src\pstatserver\pStatThreadData.cxx"></File>
-				<File RelativePath="..\pandatool\src\pstatserver\pStatServer.h"></File>
-				<File RelativePath="..\pandatool\src\pstatserver\pStatReader.h"></File>
-				<File RelativePath="..\pandatool\src\pstatserver\pStatViewLevel.h"></File>
-				<File RelativePath="..\pandatool\src\pstatserver\pStatPianoRoll.I"></File>
-				<File RelativePath="..\pandatool\src\pstatserver\pStatStripChart.h"></File>
-				<File RelativePath="..\pandatool\src\pstatserver\pStatPianoRoll.h"></File>
-				<File RelativePath="..\pandatool\src\pstatserver\pStatView.cxx"></File>
-				<File RelativePath="..\pandatool\src\pstatserver\pstatserver_composite1.cxx"></File>
-				<File RelativePath="..\pandatool\src\pstatserver\pStatViewLevel.cxx"></File>
-				<File RelativePath="..\pandatool\src\pstatserver\pStatMonitor.I"></File>
-				<File RelativePath="..\pandatool\src\pstatserver\pStatListener.cxx"></File>
-				<File RelativePath="..\pandatool\src\pstatserver\pStatStripChart.cxx"></File>
-				<File RelativePath="..\pandatool\src\pstatserver\pStatPianoRoll.cxx"></File>
-				<File RelativePath="..\pandatool\src\pstatserver\pStatClientData.h"></File>
-				<File RelativePath="..\pandatool\src\pstatserver\pStatServer.cxx"></File>
-				<File RelativePath="..\pandatool\src\pstatserver\pStatGraph.I"></File>
-				<File RelativePath="..\pandatool\src\pstatserver\pStatGraph.cxx"></File>
-				<File RelativePath="..\pandatool\src\pstatserver\pStatMonitor.cxx"></File>
-				<File RelativePath="..\pandatool\src\pstatserver\pStatStripChart.I"></File>
-				<File RelativePath="..\pandatool\src\pstatserver\pStatThreadData.I"></File>
-				<File RelativePath="..\pandatool\src\pstatserver\pStatReader.cxx"></File>
-				<File RelativePath="..\pandatool\src\pstatserver\pStatView.h"></File>
-				<File RelativePath="..\pandatool\src\pstatserver\pStatView.I"></File>
-				<File RelativePath="..\pandatool\src\pstatserver\pStatClientData.cxx"></File>
-			</Filter>
-			<Filter Name="gtk-stats">
-				<File RelativePath="..\pandatool\src\gtk-stats\gtkStatsLabel.cxx"></File>
-				<File RelativePath="..\pandatool\src\gtk-stats\gtkStatsGraph.cxx"></File>
-				<File RelativePath="..\pandatool\src\gtk-stats\gtkStatsMonitor.I"></File>
-				<File RelativePath="..\pandatool\src\gtk-stats\gtkStatsGraph.h"></File>
-				<File RelativePath="..\pandatool\src\gtk-stats\gtkStatsMonitor.cxx"></File>
-				<File RelativePath="..\pandatool\src\gtk-stats\gtkStatsStripChart.cxx"></File>
-				<File RelativePath="..\pandatool\src\gtk-stats\gtkStats.cxx"></File>
-				<File RelativePath="..\pandatool\src\gtk-stats\gtkStatsStripChart.h"></File>
-				<File RelativePath="..\pandatool\src\gtk-stats\gtkStatsPianoRoll.h"></File>
-				<File RelativePath="..\pandatool\src\gtk-stats\gtkStatsServer.cxx"></File>
-				<File RelativePath="..\pandatool\src\gtk-stats\gtkStatsLabel.h"></File>
-				<File RelativePath="..\pandatool\src\gtk-stats\gtkStatsMenuId.h"></File>
-				<File RelativePath="..\pandatool\src\gtk-stats\gtkStatsLabelStack.h"></File>
-				<File RelativePath="..\pandatool\src\gtk-stats\gtkStatsPianoRoll.cxx"></File>
-				<File RelativePath="..\pandatool\src\gtk-stats\gtkstats_composite1.cxx"></File>
-				<File RelativePath="..\pandatool\src\gtk-stats\gtkStatsChartMenu.cxx"></File>
-				<File RelativePath="..\pandatool\src\gtk-stats\gtkStats.h"></File>
-				<File RelativePath="..\pandatool\src\gtk-stats\gtkStatsMonitor.h"></File>
-				<File RelativePath="..\pandatool\src\gtk-stats\gtkStatsChartMenu.h"></File>
-				<File RelativePath="..\pandatool\src\gtk-stats\gtkStatsLabelStack.cxx"></File>
-				<File RelativePath="..\pandatool\src\gtk-stats\gtkStatsServer.h"></File>
-			</Filter>
-			<Filter Name="xfile">
-				<File RelativePath="..\pandatool\src\xfile\xFile.I"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileDataDef.I"></File>
-				<File RelativePath="..\pandatool\src\xfile\standard_templates.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileArrayDef.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileNode.I"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileDataNodeReference.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFile.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileDataNodeTemplate.h"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileTemplate.I"></File>
-				<File RelativePath="..\pandatool\src\xfile\xLexerDefs.h"></File>
-				<File RelativePath="..\pandatool\src\xfile\windowsGuid.h"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileNode.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileDataNode.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileDataNodeTemplate.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileDataObjectArray.I"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileTemplate.h"></File>
-				<File RelativePath="..\pandatool\src\xfile\config_xfile.h"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileDataObjectInteger.I"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileDataObjectDouble.I"></File>
-				<File RelativePath="..\pandatool\src\xfile\standardTemplates.x.pz.c"></File>
-				<File RelativePath="..\pandatool\src\xfile\xLexer.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileDataNodeTemplate.I"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileArrayDef.I"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileDataObjectDouble.h"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileDataObjectInteger.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileParseData.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileDataObjectArray.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileDataNode.I"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileDataObjectArray.h"></File>
-				<File RelativePath="..\pandatool\src\xfile\windowsGuid.I"></File>
-				<File RelativePath="..\pandatool\src\xfile\windowsGuid.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileDataObject.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileParseData.h"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileDataObject.I"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileDataObjectInteger.h"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileDataNode.h"></File>
-				<File RelativePath="..\pandatool\src\xfile\xParser.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileDataDef.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileDataObjectString.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileDataNodeReference.I"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileNode.h"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileParseData.I"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileTemplate.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfile\config_xfile.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileArrayDef.h"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileDataNodeReference.h"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileDataObjectDouble.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfile\xfile_composite1.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfile\xParser.h"></File>
-				<File RelativePath="..\pandatool\src\xfile\standard_templates.h"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileDataObjectString.I"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileDataObjectString.h"></File>
-				<File RelativePath="..\pandatool\src\xfile\standardTemplates.x.c"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFile.h"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileDataObject.h"></File>
-				<File RelativePath="..\pandatool\src\xfile\xFileDataDef.h"></File>
-				<File RelativePath="..\pandatool\src\xfile\xParserDefs.h"></File>
-			</Filter>
-			<Filter Name="egg-qtess">
-				<File RelativePath="..\pandatool\src\egg-qtess\subdivSegment.cxx"></File>
-				<File RelativePath="..\pandatool\src\egg-qtess\qtessGlobals.h"></File>
-				<File RelativePath="..\pandatool\src\egg-qtess\config_egg_qtess.h"></File>
-				<File RelativePath="..\pandatool\src\egg-qtess\qtessSurface.h"></File>
-				<File RelativePath="..\pandatool\src\egg-qtess\qtessInputFile.h"></File>
-				<File RelativePath="..\pandatool\src\egg-qtess\isoPlacer.h"></File>
-				<File RelativePath="..\pandatool\src\egg-qtess\qtessInputFile.cxx"></File>
-				<File RelativePath="..\pandatool\src\egg-qtess\qtessGlobals.cxx"></File>
-				<File RelativePath="..\pandatool\src\egg-qtess\qtessInputEntry.I"></File>
-				<File RelativePath="..\pandatool\src\egg-qtess\qtessSurface.cxx"></File>
-				<File RelativePath="..\pandatool\src\egg-qtess\eggQtess.h"></File>
-				<File RelativePath="..\pandatool\src\egg-qtess\qtessInputFile.I"></File>
-				<File RelativePath="..\pandatool\src\egg-qtess\qtessSurface.I"></File>
-				<File RelativePath="..\pandatool\src\egg-qtess\subdivSegment.h"></File>
-				<File RelativePath="..\pandatool\src\egg-qtess\config_egg_qtess.cxx"></File>
-				<File RelativePath="..\pandatool\src\egg-qtess\egg-qtess_composite1.cxx"></File>
-				<File RelativePath="..\pandatool\src\egg-qtess\isoPlacer.cxx"></File>
-				<File RelativePath="..\pandatool\src\egg-qtess\isoPlacer.I"></File>
-				<File RelativePath="..\pandatool\src\egg-qtess\qtessInputEntry.h"></File>
-				<File RelativePath="..\pandatool\src\egg-qtess\qtessInputEntry.cxx"></File>
-				<File RelativePath="..\pandatool\src\egg-qtess\subdivSegment.I"></File>
-				<File RelativePath="..\pandatool\src\egg-qtess\eggQtess.cxx"></File>
-			</Filter>
-			<Filter Name="vrmlegg">
-				<File RelativePath="..\pandatool\src\vrmlegg\vrmlAppearance.h"></File>
-				<File RelativePath="..\pandatool\src\vrmlegg\indexedFaceSet.h"></File>
-				<File RelativePath="..\pandatool\src\vrmlegg\vrmlToEggConverter.cxx"></File>
-				<File RelativePath="..\pandatool\src\vrmlegg\indexedFaceSet.cxx"></File>
-				<File RelativePath="..\pandatool\src\vrmlegg\vrmlToEggConverter.h"></File>
-				<File RelativePath="..\pandatool\src\vrmlegg\vrmlAppearance.cxx"></File>
-			</Filter>
-			<Filter Name="palettizer">
-				<File RelativePath="..\pandatool\src\palettizer\paletteGroups.h"></File>
-				<File RelativePath="..\pandatool\src\palettizer\eggFile.cxx"></File>
-				<File RelativePath="..\pandatool\src\palettizer\omitReason.cxx"></File>
-				<File RelativePath="..\pandatool\src\palettizer\filenameUnifier.h"></File>
-				<File RelativePath="..\pandatool\src\palettizer\palettizer.cxx"></File>
-				<File RelativePath="..\pandatool\src\palettizer\textureReference.cxx"></File>
-				<File RelativePath="..\pandatool\src\palettizer\pal_string_utils.cxx"></File>
-				<File RelativePath="..\pandatool\src\palettizer\palettizer.h"></File>
-				<File RelativePath="..\pandatool\src\palettizer\sourceTextureImage.cxx"></File>
-				<File RelativePath="..\pandatool\src\palettizer\pal_string_utils.h"></File>
-				<File RelativePath="..\pandatool\src\palettizer\textureRequest.h"></File>
-				<File RelativePath="..\pandatool\src\palettizer\texturePosition.h"></File>
-				<File RelativePath="..\pandatool\src\palettizer\destTextureImage.h"></File>
-				<File RelativePath="..\pandatool\src\palettizer\paletteGroup.cxx"></File>
-				<File RelativePath="..\pandatool\src\palettizer\paletteImage.h"></File>
-				<File RelativePath="..\pandatool\src\palettizer\paletteImage.cxx"></File>
-				<File RelativePath="..\pandatool\src\palettizer\textureRequest.cxx"></File>
-				<File RelativePath="..\pandatool\src\palettizer\texturePlacement.cxx"></File>
-				<File RelativePath="..\pandatool\src\palettizer\eggFile.h"></File>
-				<File RelativePath="..\pandatool\src\palettizer\texturePlacement.h"></File>
-				<File RelativePath="..\pandatool\src\palettizer\texturePosition.cxx"></File>
-				<File RelativePath="..\pandatool\src\palettizer\txaFile.cxx"></File>
-				<File RelativePath="..\pandatool\src\palettizer\sourceTextureImage.h"></File>
-				<File RelativePath="..\pandatool\src\palettizer\palettizer_composite1.cxx"></File>
-				<File RelativePath="..\pandatool\src\palettizer\textureMemoryCounter.h"></File>
-				<File RelativePath="..\pandatool\src\palettizer\palettePage.cxx"></File>
-				<File RelativePath="..\pandatool\src\palettizer\txaFile.h"></File>
-				<File RelativePath="..\pandatool\src\palettizer\omitReason.h"></File>
-				<File RelativePath="..\pandatool\src\palettizer\txaLine.h"></File>
-				<File RelativePath="..\pandatool\src\palettizer\textureReference.h"></File>
-				<File RelativePath="..\pandatool\src\palettizer\textureProperties.h"></File>
-				<File RelativePath="..\pandatool\src\palettizer\imageFile.cxx"></File>
-				<File RelativePath="..\pandatool\src\palettizer\txaLine.cxx"></File>
-				<File RelativePath="..\pandatool\src\palettizer\textureProperties.cxx"></File>
-				<File RelativePath="..\pandatool\src\palettizer\palettePage.h"></File>
-				<File RelativePath="..\pandatool\src\palettizer\config_palettizer.cxx"></File>
-				<File RelativePath="..\pandatool\src\palettizer\textureMemoryCounter.cxx"></File>
-				<File RelativePath="..\pandatool\src\palettizer\filenameUnifier.cxx"></File>
-				<File RelativePath="..\pandatool\src\palettizer\textureImage.cxx"></File>
-				<File RelativePath="..\pandatool\src\palettizer\config_palettizer.h"></File>
-				<File RelativePath="..\pandatool\src\palettizer\paletteGroups.cxx"></File>
-				<File RelativePath="..\pandatool\src\palettizer\destTextureImage.cxx"></File>
-				<File RelativePath="..\pandatool\src\palettizer\paletteGroup.h"></File>
-				<File RelativePath="..\pandatool\src\palettizer\textureImage.h"></File>
-				<File RelativePath="..\pandatool\src\palettizer\imageFile.h"></File>
-			</Filter>
-			<Filter Name="dxf">
-				<File RelativePath="..\pandatool\src\dxf\dxf_composite1.cxx"></File>
-				<File RelativePath="..\pandatool\src\dxf\dxfLayer.h"></File>
-				<File RelativePath="..\pandatool\src\dxf\dxfVertex.cxx"></File>
-				<File RelativePath="..\pandatool\src\dxf\dxfLayerMap.cxx"></File>
-				<File RelativePath="..\pandatool\src\dxf\dxfFile.cxx"></File>
-				<File RelativePath="..\pandatool\src\dxf\dxfLayer.cxx"></File>
-				<File RelativePath="..\pandatool\src\dxf\dxfFile.h"></File>
-				<File RelativePath="..\pandatool\src\dxf\dxfLayerMap.h"></File>
-				<File RelativePath="..\pandatool\src\dxf\dxfVertex.h"></File>
-			</Filter>
-			<Filter Name="maxegg">
-				<File RelativePath="..\pandatool\src\maxegg\maxOptionsDialog.cxx"></File>
-				<File RelativePath="..\pandatool\src\maxegg\maxEggLoader.h"></File>
-				<File RelativePath="..\pandatool\src\maxegg\maxNodeDesc.h"></File>
-				<File RelativePath="..\pandatool\src\maxegg\maxNodeDesc.cxx"></File>
-				<File RelativePath="..\pandatool\src\maxegg\maxEgg.cxx"></File>
-				<File RelativePath="..\pandatool\src\maxegg\maxResource.h"></File>
-				<File RelativePath="..\pandatool\src\maxegg\maxEggLoader.cxx"></File>
-				<File RelativePath="..\pandatool\src\maxegg\maxEgg.h"></File>
-				<File RelativePath="..\pandatool\src\maxegg\maxNodeTree.cxx"></File>
-				<File RelativePath="..\pandatool\src\maxegg\maxOptionsDialog.h"></File>
-				<File RelativePath="..\pandatool\src\maxegg\maxNodeTree.h"></File>
-				<File RelativePath="..\pandatool\src\maxegg\maxegg_composite1.cxx"></File>
-				<File RelativePath="..\pandatool\src\maxegg\maxToEggConverter.h"></File>
-				<File RelativePath="..\pandatool\src\maxegg\maxToEggConverter.cxx"></File>
-			</Filter>
-			<Filter Name="lwo">
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceBlockTMap.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\iffId.I"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoPolygonTags.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoPolygons.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoVertexMap.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\iffGenericChunk.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\iffInputFile.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceBlock.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoHeader.I"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoHeader.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceBlock.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceColor.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoClip.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoLayer.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceSmoothingAngle.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoChunk.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoLayer.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceParameter.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurface.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceBlockWrap.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceParameter.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoChunk.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceBlockProjection.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\iffId.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceBlockImage.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceBlockOpacity.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurface.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceSidedness.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoBoundingBox.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceBlockRefObj.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoPolygons.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceBlockRepeat.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoGroupChunk.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoClip.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceBlockChannel.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoStillImage.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceBlockTransform.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoGroupChunk.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceBlockHeader.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoInputFile.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\config_lwo.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\test_lwo.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoVertexMap.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceBlockProjection.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\iffChunk.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceBlockVMapName.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceBlockChannel.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoPoints.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\iffInputFile.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoDiscontinuousVertexMap.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceBlockRefObj.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceBlockAxis.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoTags.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceBlockTransform.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoBoundingBox.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoPoints.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceSmoothingAngle.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoStillImage.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceSidedness.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwo_composite1.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceBlockVMapName.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoInputFile.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceBlockTMap.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoInputFile.I"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoTags.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\iffGenericChunk.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceBlockEnabled.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceBlockRepeat.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceBlockCoordSys.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\config_lwo.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceBlockEnabled.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceBlockAxis.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceBlockHeader.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\iffChunk.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoHeader.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoDiscontinuousVertexMap.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceBlockOpacity.cxx"></File>
-				<File RelativePath="..\pandatool\src\lwo\iffId.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceColor.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoPolygonTags.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceBlockWrap.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\iffInputFile.I"></File>
-				<File RelativePath="..\pandatool\src\lwo\iffGenericChunk.I"></File>
-				<File RelativePath="..\pandatool\src\lwo\iffChunk.I"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceBlockImage.h"></File>
-				<File RelativePath="..\pandatool\src\lwo\lwoSurfaceBlockCoordSys.cxx"></File>
-			</Filter>
-			<Filter Name="xfileprogs">
-				<File RelativePath="..\pandatool\src\xfileprogs\eggToX.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfileprogs\xFileTrans.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfileprogs\xFileToEgg.cxx"></File>
-				<File RelativePath="..\pandatool\src\xfileprogs\xFileTrans.h"></File>
-				<File RelativePath="..\pandatool\src\xfileprogs\eggToX.h"></File>
-				<File RelativePath="..\pandatool\src\xfileprogs\xFileToEgg.h"></File>
-			</Filter>
-		</Filter>
-		<Filter Name="direct">
-			<Filter Name="directbase">
-				<File RelativePath="..\direct\src\directbase\ppython.cxx"></File>
-				<File RelativePath="..\direct\src\directbase\directbase.cxx"></File>
-				<File RelativePath="..\direct\src\directbase\directsymbols.h"></File>
-				<File RelativePath="..\direct\src\directbase\directbase.h"></File>
-			</Filter>
-			<Filter Name="dcparse">
-				<File RelativePath="..\direct\src\dcparse\dcparse.cxx"></File>
-			</Filter>
-			<Filter Name="interval">
-				<File RelativePath="..\direct\src\interval\cConstrainPosHprInterval.h"></File>
-				<File RelativePath="..\direct\src\interval\cConstraintInterval.I"></File>
-				<File RelativePath="..\direct\src\interval\cLerpAnimEffectInterval.h"></File>
-				<File RelativePath="..\direct\src\interval\cConstrainHprInterval.I"></File>
-				<File RelativePath="..\direct\src\interval\cConstrainTransformInterval.cxx"></File>
-				<File RelativePath="..\direct\src\interval\cMetaInterval.cxx"></File>
-				<File RelativePath="..\direct\src\interval\cIntervalManager.h"></File>
-				<File RelativePath="..\direct\src\interval\showInterval.h"></File>
-				<File RelativePath="..\direct\src\interval\config_interval.h"></File>
-				<File RelativePath="..\direct\src\interval\cLerpNodePathInterval.h"></File>
-				<File RelativePath="..\direct\src\interval\cLerpAnimEffectInterval.cxx"></File>
-				<File RelativePath="..\direct\src\interval\cLerpAnimEffectInterval.I"></File>
-				<File RelativePath="..\direct\src\interval\cMetaInterval.I"></File>
-				<File RelativePath="..\direct\src\interval\cConstrainTransformInterval.I"></File>
-				<File RelativePath="..\direct\src\interval\hideInterval.cxx"></File>
-				<File RelativePath="..\direct\src\interval\cInterval.h"></File>
-				<File RelativePath="..\direct\src\interval\hideInterval.I"></File>
-				<File RelativePath="..\direct\src\interval\interval_composite1.cxx"></File>
-				<File RelativePath="..\direct\src\interval\cIntervalManager.cxx"></File>
-				<File RelativePath="..\direct\src\interval\showInterval.I"></File>
-				<File RelativePath="..\direct\src\interval\cMetaInterval.h"></File>
-				<File RelativePath="..\direct\src\interval\cLerpInterval.cxx"></File>
-				<File RelativePath="..\direct\src\interval\cConstrainTransformInterval.h"></File>
-				<File RelativePath="..\direct\src\interval\cConstrainPosInterval.h"></File>
-				<File RelativePath="..\direct\src\interval\cLerpInterval.I"></File>
-				<File RelativePath="..\direct\src\interval\cIntervalManager.I"></File>
-				<File RelativePath="..\direct\src\interval\cConstrainPosHprInterval.cxx"></File>
-				<File RelativePath="..\direct\src\interval\cConstraintInterval.cxx"></File>
-				<File RelativePath="..\direct\src\interval\showInterval.cxx"></File>
-				<File RelativePath="..\direct\src\interval\cLerpInterval.h"></File>
-				<File RelativePath="..\direct\src\interval\interval_composite.cxx"></File>
-				<File RelativePath="..\direct\src\interval\hideInterval.h"></File>
-				<File RelativePath="..\direct\src\interval\cConstrainPosHprInterval.I"></File>
-				<File RelativePath="..\direct\src\interval\lerp_helpers.h"></File>
-				<File RelativePath="..\direct\src\interval\config_interval.cxx"></File>
-				<File RelativePath="..\direct\src\interval\cConstrainPosInterval.I"></File>
-				<File RelativePath="..\direct\src\interval\cInterval.I"></File>
-				<File RelativePath="..\direct\src\interval\cConstrainPosInterval.cxx"></File>
-				<File RelativePath="..\direct\src\interval\cConstraintInterval.h"></File>
-				<File RelativePath="..\direct\src\interval\cInterval.cxx"></File>
-				<File RelativePath="..\direct\src\interval\waitInterval.cxx"></File>
-				<File RelativePath="..\direct\src\interval\waitInterval.h"></File>
-				<File RelativePath="..\direct\src\interval\cConstrainHprInterval.h"></File>
-				<File RelativePath="..\direct\src\interval\cConstrainHprInterval.cxx"></File>
-				<File RelativePath="..\direct\src\interval\cLerpNodePathInterval.cxx"></File>
-				<File RelativePath="..\direct\src\interval\waitInterval.I"></File>
-				<File RelativePath="..\direct\src\interval\cLerpNodePathInterval.I"></File>
-			</Filter>
-			<Filter Name="showbase">
-				<File RelativePath="..\direct\src\showbase\extend_frozen.c"></File>
-				<File RelativePath="..\direct\src\showbase\showBase.cxx"></File>
-				<File RelativePath="..\direct\src\showbase\showBase.h"></File>
-			</Filter>
-			<Filter Name="autorestart">
-				<File RelativePath="..\direct\src\autorestart\autorestart.c"></File>
-			</Filter>
-			<Filter Name="dcparser">
-				<File RelativePath="..\direct\src\dcparser\dcFile.h"></File>
-				<File RelativePath="..\direct\src\dcparser\dcArrayParameter.h"></File>
-				<File RelativePath="..\direct\src\dcparser\primeNumberGenerator.h"></File>
-				<File RelativePath="..\direct\src\dcparser\dcPackerCatalog.h"></File>
-				<File RelativePath="..\direct\src\dcparser\dcMolecularField.h"></File>
-				<File RelativePath="..\direct\src\dcparser\dcParser.cxx"></File>
-				<File RelativePath="..\direct\src\dcparser\dcLexerDefs.h"></File>
-				<File RelativePath="..\direct\src\dcparser\dcClass.I"></File>
-				<File RelativePath="..\direct\src\dcparser\dcKeyword.h"></File>
-				<File RelativePath="..\direct\src\dcparser\dcTypedef.cxx"></File>
-				<File RelativePath="..\direct\src\dcparser\dcPackData.cxx"></File>
-				<File RelativePath="..\direct\src\dcparser\dcPacker.cxx"></File>
-				<File RelativePath="..\direct\src\dcparser\dcKeyword.cxx"></File>
-				<File RelativePath="..\direct\src\dcparser\dcKeywordList.cxx"></File>
-				<File RelativePath="..\direct\src\dcparser\dcSwitchParameter.h"></File>
-				<File RelativePath="..\direct\src\dcparser\dcSubatomicType.cxx"></File>
-				<File RelativePath="..\direct\src\dcparser\dcFile.cxx"></File>
-				<File RelativePath="..\direct\src\dcparser\dcArrayParameter.cxx"></File>
-				<File RelativePath="..\direct\src\dcparser\dcPacker.h"></File>
-				<File RelativePath="..\direct\src\dcparser\dcindent.cxx"></File>
-				<File RelativePath="..\direct\src\dcparser\dcClass.h"></File>
-				<File RelativePath="..\direct\src\dcparser\dcParserDefs.h"></File>
-				<File RelativePath="..\direct\src\dcparser\dcClass.cxx"></File>
-				<File RelativePath="..\direct\src\dcparser\dcindent.h"></File>
-				<File RelativePath="..\direct\src\dcparser\dcPacker.I"></File>
-				<File RelativePath="..\direct\src\dcparser\dcSwitch.h"></File>
-				<File RelativePath="..\direct\src\dcparser\dcLexer.cxx"></File>
-				<File RelativePath="..\direct\src\dcparser\dcParser.h"></File>
-				<File RelativePath="..\direct\src\dcparser\dcparser_composite1.cxx"></File>
-				<File RelativePath="..\direct\src\dcparser\dcParameter.h"></File>
-				<File RelativePath="..\direct\src\dcparser\hashGenerator.cxx"></File>
-				<File RelativePath="..\direct\src\dcparser\dcParameter.cxx"></File>
-				<File RelativePath="..\direct\src\dcparser\dcbase.h"></File>
-				<File RelativePath="..\direct\src\dcparser\dcparser_composite.cxx"></File>
-				<File RelativePath="..\direct\src\dcparser\dcNumericRange.h"></File>
-				<File RelativePath="..\direct\src\dcparser\primeNumberGenerator.cxx"></File>
-				<File RelativePath="..\direct\src\dcparser\dcPackerCatalog.cxx"></File>
-				<File RelativePath="..\direct\src\dcparser\dcPackerInterface.I"></File>
-				<File RelativePath="..\direct\src\dcparser\dcSwitchParameter.cxx"></File>
-				<File RelativePath="..\direct\src\dcparser\dcparser_composite2.cxx"></File>
-				<File RelativePath="..\direct\src\dcparser\dcDeclaration.cxx"></File>
-				<File RelativePath="..\direct\src\dcparser\dcPackerInterface.cxx"></File>
-				<File RelativePath="..\direct\src\dcparser\dcTypedef.h"></File>
-				<File RelativePath="..\direct\src\dcparser\dcClassParameter.h"></File>
-				<File RelativePath="..\direct\src\dcparser\dcField.I"></File>
-				<File RelativePath="..\direct\src\dcparser\dcPackerCatalog.I"></File>
-				<File RelativePath="..\direct\src\dcparser\dcAtomicField.I"></File>
-				<File RelativePath="..\direct\src\dcparser\dcAtomicField.cxx"></File>
-				<File RelativePath="..\direct\src\dcparser\dcKeywordList.h"></File>
-				<File RelativePath="..\direct\src\dcparser\dcmsgtypes.h"></File>
-				<File RelativePath="..\direct\src\dcparser\dcPython.h"></File>
-				<File RelativePath="..\direct\src\dcparser\dcPackData.I"></File>
-				<File RelativePath="..\direct\src\dcparser\dcSwitch.cxx"></File>
-				<File RelativePath="..\direct\src\dcparser\dcAtomicField.h"></File>
-				<File RelativePath="..\direct\src\dcparser\dcClassParameter.cxx"></File>
-				<File RelativePath="..\direct\src\dcparser\dcMolecularField.cxx"></File>
-				<File RelativePath="..\direct\src\dcparser\dcSimpleParameter.cxx"></File>
-				<File RelativePath="..\direct\src\dcparser\dcNumericRange.I"></File>
-				<File RelativePath="..\direct\src\dcparser\dcSimpleParameter.h"></File>
-				<File RelativePath="..\direct\src\dcparser\hashGenerator.h"></File>
-				<File RelativePath="..\direct\src\dcparser\dcFile.I"></File>
-				<File RelativePath="..\direct\src\dcparser\dcField.h"></File>
-				<File RelativePath="..\direct\src\dcparser\dcPackerInterface.h"></File>
-				<File RelativePath="..\direct\src\dcparser\dcField.cxx"></File>
-				<File RelativePath="..\direct\src\dcparser\dcPackData.h"></File>
-				<File RelativePath="..\direct\src\dcparser\dcSubatomicType.h"></File>
-				<File RelativePath="..\direct\src\dcparser\dcDeclaration.h"></File>
-			</Filter>
-			<Filter Name="motiontrail">
-				<File RelativePath="..\direct\src\motiontrail\config_motiontrail.cxx"></File>
-				<File RelativePath="..\direct\src\motiontrail\cMotionTrail.cxx"></File>
-				<File RelativePath="..\direct\src\motiontrail\cMotionTrail.h"></File>
-				<File RelativePath="..\direct\src\motiontrail\config_motiontrail.h"></File>
-			</Filter>
-			<Filter Name="heapq">
-				<File RelativePath="..\direct\src\heapq\heapq.cxx"></File>
-			</Filter>
-			<Filter Name="directdServer">
-				<File RelativePath="..\direct\src\directdServer\directdClient.cxx"></File>
-				<File RelativePath="..\direct\src\directdServer\directdServer.h"></File>
-				<File RelativePath="..\direct\src\directdServer\directdClient.h"></File>
-				<File RelativePath="..\direct\src\directdServer\directdServer.cxx"></File>
-			</Filter>
-			<Filter Name="directd">
-				<File RelativePath="..\direct\src\directd\directd.cxx"></File>
-				<File RelativePath="..\direct\src\directd\directd.h"></File>
-			</Filter>
-			<Filter Name="dxml">
-				<File RelativePath="..\direct\src\dxml\config_dxml.cxx"></File>
-				<File RelativePath="..\direct\src\dxml\config_dxml.h"></File>
-			</Filter>
-			<Filter Name="distributed">
-				<File RelativePath="..\direct\src\distributed\cDistributedSmoothNodeBase.cxx"></File>
-				<File RelativePath="..\direct\src\distributed\cConnectionRepository.cxx"></File>
-				<File RelativePath="..\direct\src\distributed\config_distributed.cxx"></File>
-				<File RelativePath="..\direct\src\distributed\cDistributedSmoothNodeBase.h"></File>
-				<File RelativePath="..\direct\src\distributed\cConnectionRepository.I"></File>
-				<File RelativePath="..\direct\src\distributed\cConnectionRepository.h"></File>
-				<File RelativePath="..\direct\src\distributed\cDistributedSmoothNodeBase.I"></File>
-				<File RelativePath="..\direct\src\distributed\config_distributed.h"></File>
-			</Filter>
-			<Filter Name="deadrec">
-				<File RelativePath="..\direct\src\deadrec\config_deadrec.h"></File>
-				<File RelativePath="..\direct\src\deadrec\deadrec_composite.cxx"></File>
-				<File RelativePath="..\direct\src\deadrec\config_deadrec.cxx"></File>
-				<File RelativePath="..\direct\src\deadrec\smoothMover.I"></File>
-				<File RelativePath="..\direct\src\deadrec\smoothMover.cxx"></File>
-				<File RelativePath="..\direct\src\deadrec\deadrec_composite1.cxx"></File>
-				<File RelativePath="..\direct\src\deadrec\smoothMover.h"></File>
-			</Filter>
-		</Filter>
-		<Filter Name="contrib">
-			<Filter Name="ai">
-				<File RelativePath="..\contrib\src\ai\aiNode.h"></File>
-				<File RelativePath="..\contrib\src\ai\aiCharacter.cxx"></File>
-				<File RelativePath="..\contrib\src\ai\flock.cxx"></File>
-				<File RelativePath="..\contrib\src\ai\aiBehaviors.h"></File>
-				<File RelativePath="..\contrib\src\ai\wander.cxx"></File>
-				<File RelativePath="..\contrib\src\ai\meshNode.cxx"></File>
-				<File RelativePath="..\contrib\src\ai\ai_composite.cxx"></File>
-				<File RelativePath="..\contrib\src\ai\evade.cxx"></File>
-				<File RelativePath="..\contrib\src\ai\wander.h"></File>
-				<File RelativePath="..\contrib\src\ai\seek.cxx"></File>
-				<File RelativePath="..\contrib\src\ai\globals.h"></File>
-				<File RelativePath="..\contrib\src\ai\aiPathFinder.h"></File>
-				<File RelativePath="..\contrib\src\ai\aiGlobals.h"></File>
-				<File RelativePath="..\contrib\src\ai\config_ai.cxx"></File>
-				<File RelativePath="..\contrib\src\ai\aiWorld.h"></File>
-				<File RelativePath="..\contrib\src\ai\evade.h"></File>
-				<File RelativePath="..\contrib\src\ai\obstacleAvoidance.h"></File>
-				<File RelativePath="..\contrib\src\ai\aiCharacter.h"></File>
-				<File RelativePath="..\contrib\src\ai\pursue.cxx"></File>
-				<File RelativePath="..\contrib\src\ai\pathFind.h"></File>
-				<File RelativePath="..\contrib\src\ai\flock.h"></File>
-				<File RelativePath="..\contrib\src\ai\config_ai.h"></File>
-				<File RelativePath="..\contrib\src\ai\obstacleAvoidance.cxx"></File>
-				<File RelativePath="..\contrib\src\ai\aiWorld.cxx"></File>
-				<File RelativePath="..\contrib\src\ai\pathFollow.h"></File>
-				<File RelativePath="..\contrib\src\ai\flee.h"></File>
-				<File RelativePath="..\contrib\src\ai\seek.h"></File>
-				<File RelativePath="..\contrib\src\ai\aiPathFinder.cxx"></File>
-				<File RelativePath="..\contrib\src\ai\ai_composite1.cxx"></File>
-				<File RelativePath="..\contrib\src\ai\aiNode.cxx"></File>
-				<File RelativePath="..\contrib\src\ai\arrival.h"></File>
-				<File RelativePath="..\contrib\src\ai\pathFollow.cxx"></File>
-				<File RelativePath="..\contrib\src\ai\pathFind.cxx"></File>
-				<File RelativePath="..\contrib\src\ai\pursue.h"></File>
-				<File RelativePath="..\contrib\src\ai\aiBehaviors.cxx"></File>
-				<File RelativePath="..\contrib\src\ai\arrival.cxx"></File>
-				<File RelativePath="..\contrib\src\ai\meshNode.h"></File>
-				<File RelativePath="..\contrib\src\ai\flee.cxx"></File>
-			</Filter>
-			<Filter Name="contribbase">
-				<File RelativePath="..\contrib\src\contribbase\contribsymbols.h"></File>
-				<File RelativePath="..\contrib\src\contribbase\contribbase.h"></File>
-			</Filter>
-		</Filter>
-	</Files>
-	<Globals>
-	</Globals>
-</VisualStudioProject>

+ 72 - 21
makepanda/makepandacore.py

@@ -135,7 +135,7 @@ CONFLICTING_FILES=["dtool/src/dtoolutil/pandaVersion.h",
                    "dtool/src/dtoolutil/checkPandaVersion.h",
                    "dtool/src/dtoolutil/checkPandaVersion.cxx",
                    "dtool/src/prc/prc_parameters.h",
-                   "panda/src/speedtree/speedtree_parameters.h",
+                   "contrib/src/speedtree/speedtree_parameters.h",
                    "direct/src/plugin/p3d_plugin_config.h",
                    "direct/src/plugin_activex/P3DActiveX.rc",
                    "direct/src/plugin_npapi/nppanda3d.rc",
@@ -2038,16 +2038,25 @@ def SdkLocatePython(prefer_thirdparty_python=False):
     abiflags = getattr(sys, 'abiflags', '')
 
     if GetTarget() == 'windows':
-        sdkdir = GetThirdpartyBase() + "/win-python"
-        sdkdir += "%d.%d" % sys.version_info[:2]
+        if PkgHasCustomLocation("PYTHON"):
+            # Check our custom location instead (--python-libdir, --python-incdir)
+            sdkdir = FindOptDirectory("PYTHON")
 
-        if GetOptimize() <= 2:
-            sdkdir += "-dbg"
-        if GetTargetArch() == 'x64':
-            sdkdir += "-x64"
+            if sdkdir is None:
+                exit("Could not find a Python installation using these command line options.")
+        else:
+            sdkdir = GetThirdpartyBase() + "/win-python"
+            sdkdir += "%d.%d" % sys.version_info[:2]
+
+            if GetOptimize() <= 2:
+                sdkdir += "-dbg"
+            if GetTargetArch() == 'x64':
+                sdkdir += "-x64"
 
+        sdkdir = sdkdir.replace('\\', '/')
         SDK["PYTHON"] = sdkdir
-        SDK["PYTHONEXEC"] = SDK["PYTHON"].replace('\\', '/') + "/python"
+        SDK["PYTHONEXEC"] = SDK["PYTHON"] + "/python"
+
         if (GetOptimize() <= 2):
             SDK["PYTHONEXEC"] += "_d.exe"
         else:
@@ -2058,9 +2067,11 @@ def SdkLocatePython(prefer_thirdparty_python=False):
 
         # Determine which version it is by checking which dll is in the directory.
         if (GetOptimize() <= 2):
-            py_dlls = glob.glob(SDK["PYTHON"] + "/python[0-9][0-9]_d.dll")
+            py_dlls = glob.glob(SDK["PYTHON"] + "/python[0-9][0-9]_d.dll") + \
+                      glob.glob(SDK["PYTHON"] + "/python[0-9][0-9][0-9]_d.dll")
         else:
-            py_dlls = glob.glob(SDK["PYTHON"] + "/python[0-9][0-9].dll")
+            py_dlls = glob.glob(SDK["PYTHON"] + "/python[0-9][0-9].dll") + \
+                      glob.glob(SDK["PYTHON"] + "/python[0-9][0-9][0-9].dll")
 
         if len(py_dlls) == 0:
             exit("Could not find the Python dll in %s." % (SDK["PYTHON"]))
@@ -2068,24 +2079,29 @@ def SdkLocatePython(prefer_thirdparty_python=False):
             exit("Found multiple Python dlls in %s." % (SDK["PYTHON"]))
 
         py_dll = os.path.basename(py_dlls[0])
-        ver = py_dll[6] + "." + py_dll[7]
+        py_dllver = py_dll.strip(".DHLNOPTY_dhlnopty")
+        ver = py_dllver[0] + '.' + py_dllver[1:]
 
         SDK["PYTHONVERSION"] = "python" + ver
         os.environ["PYTHONHOME"] = SDK["PYTHON"]
 
-        if sys.version[:3] != ver:
-            Warn("running makepanda with Python %s, but building Panda3D with Python %s." % (sys.version[:3], ver))
+        running_ver = '%d.%d' % sys.version_info[:2]
+        if ver != running_ver:
+            Warn("running makepanda with Python %s, but building Panda3D with Python %s." % (running_ver, ver))
 
     elif CrossCompiling() or (prefer_thirdparty_python and os.path.isdir(os.path.join(GetThirdpartyDir(), "python"))):
         tp_python = os.path.join(GetThirdpartyDir(), "python")
 
         if GetTarget() == 'darwin':
-            py_libs = glob.glob(tp_python + "/lib/libpython[0-9].[0-9].dylib")
+            py_libs = glob.glob(tp_python + "/lib/libpython[0-9].[0-9].dylib") + \
+                      glob.glob(tp_python + "/lib/libpython[0-9].[0-9][0-9].dylib")
         else:
-            py_libs = glob.glob(tp_python + "/lib/libpython[0-9].[0-9].so")
+            py_libs = glob.glob(tp_python + "/lib/libpython[0-9].[0-9].so") + \
+                      glob.glob(tp_python + "/lib/libpython[0-9].[0-9][0-9].so")
 
         if len(py_libs) == 0:
-            py_libs = glob.glob(tp_python + "/lib/libpython[0-9].[0-9].a")
+            py_libs = glob.glob(tp_python + "/lib/libpython[0-9].[0-9].a") + \
+                      glob.glob(tp_python + "/lib/libpython[0-9].[0-9][0-9].a")
 
         if len(py_libs) == 0:
             exit("Could not find the Python library in %s." % (tp_python))
@@ -2093,7 +2109,8 @@ def SdkLocatePython(prefer_thirdparty_python=False):
             exit("Found multiple Python libraries in %s." % (tp_python))
 
         py_lib = os.path.basename(py_libs[0])
-        SDK["PYTHONVERSION"] = "python" + py_lib[9] + "." + py_lib[11]
+        py_libver = py_lib.strip('.abdhilnopsty')
+        SDK["PYTHONVERSION"] = "python" + py_libver
         SDK["PYTHONEXEC"] = tp_python + "/bin/" + SDK["PYTHONVERSION"]
         SDK["PYTHON"] = tp_python + "/include/" + SDK["PYTHONVERSION"]
 
@@ -2139,9 +2156,9 @@ def SdkLocatePython(prefer_thirdparty_python=False):
             exit("Host Python version (%s) must be the same as target Python version (%s)!" % (host_version, SDK["PYTHONVERSION"]))
 
     if GetVerbose():
-        print("Using Python %s build located at %s" % (SDK["PYTHONVERSION"][6:9], SDK["PYTHON"]))
+        print("Using Python %s build located at %s" % (SDK["PYTHONVERSION"][6:], SDK["PYTHON"]))
     else:
-        print("Using Python %s" % (SDK["PYTHONVERSION"][6:9]))
+        print("Using Python %s" % (SDK["PYTHONVERSION"][6:]))
 
 def SdkLocateVisualStudio(version=(10,0)):
     if (GetHost() != "windows"): return
@@ -2737,6 +2754,40 @@ def LibDirectory(opt, dir):
 def FrameworkDirectory(opt, dir):
     FRAMEWORKDIRECTORIES.append((opt, dir))
 
+def FindIncDirectory(opt):
+    # Find the include directory associated with this module
+    for mod, dir in INCDIRECTORIES:
+        if mod == opt:
+            return os.path.abspath(dir)
+
+def FindLibDirectory(opt):
+    # Find the library directory associated with this module
+    for mod, dir in LIBDIRECTORIES:
+        if mod == opt:
+            return os.path.abspath(dir)
+
+def FindOptDirectory(opt):
+    # Find the common directory associated with this module
+    # using the include and library directories as a guide
+    include_dir = FindIncDirectory(opt)
+    lib_dir = FindLibDirectory(opt)
+
+    if include_dir and lib_dir:
+        # The module's common directory is the common prefix of
+        # its include and library directory
+        common_dir = os.path.commonprefix([include_dir, lib_dir])
+
+        if common_dir:
+            return os.path.abspath(common_dir)
+    elif include_dir:
+        # The module's common directory is the parent of the include
+        # directory
+        return os.path.abspath(os.path.join(include_dir, os.pardir))
+    elif lib_dir:
+        # The module's common directory is the parent of the library
+        # directory
+        return os.path.abspath(os.path.join(lib_dir, os.pardir))
+
 def LibName(opt, name):
     # Check to see if the lib file actually exists for the thirdparty library given
     # Are we a thirdparty library?
@@ -3352,7 +3403,7 @@ def GetCurrentPythonVersionInfo():
 
     from distutils.sysconfig import get_python_lib
     return {
-        "version": SDK["PYTHONVERSION"][6:9],
+        "version": SDK["PYTHONVERSION"][6:].rstrip('dmu'),
         "soabi": GetPythonABI(),
         "ext_suffix": GetExtensionSuffix(),
         "executable": sys.executable,
@@ -3380,7 +3431,7 @@ def UpdatePythonVersionInfoFile(new_info):
                version_info["soabi"] == new_info["soabi"] or \
                not os.path.isfile(core_pyd) or \
                version_info["version"].split(".", 1)[0] == "2" or \
-               version_info["version"] in ("3.0", "3.1", "3.2", "3.3", "3.4"):
+               version_info["version"] in ("3.0", "3.1", "3.2", "3.3", "3.4", "3.5"):
                 json_data.remove(version_info)
 
     if not PkgSkip("PYTHON"):

+ 28 - 40
makepanda/makewheel.py

@@ -126,6 +126,9 @@ def is_fat_file(path):
            open(path, 'rb').read(4) in (b'\xCA\xFE\xBA\xBE', b'\xBE\xBA\xFE\xCA',
                                         b'\xCA\xFE\xBA\xBF', b'\xBF\xBA\xFE\xCA')
 
+def get_python_ext_module_dir():
+    import _ctypes
+    return os.path.dirname(_ctypes.__file__)
 
 if sys.platform in ('win32', 'cygwin'):
     is_executable = is_exe_file
@@ -697,8 +700,8 @@ def makewheel(version, output_dir, target_info):
         if not locate_binary("patchelf"):
             raise Exception("patchelf is required when building a Linux wheel.")
 
-    if sys.version_info < (3, 5):
-        raise Exception("Python 3.5 is required to produce a wheel.")
+    if sys.version_info < (3, 6):
+        raise Exception("Python 3.6 is required to produce a wheel.")
 
     platform = target_info.platform_tag
 
@@ -732,6 +735,7 @@ def makewheel(version, output_dir, target_info):
         libs_dir = join(output_dir, "bin")
     else:
         libs_dir = join(output_dir, "lib")
+    ext_mod_dir = get_python_ext_module_dir()
     license_src = "LICENSE"
     readme_src = "README.md"
 
@@ -762,8 +766,8 @@ def makewheel(version, output_dir, target_info):
     whl = WheelFile('panda3d', version, target_info)
     whl.lib_path = [libs_dir]
 
-    if target_info.sys_platform == 'win32':
-        whl.lib_path.append(join(output_dir, "python", "DLLs"))
+    if sys.platform == "win32":
+        whl.lib_path.append(ext_mod_dir)
 
     if target_info.platform_tag.startswith("manylinux"):
         # On manylinux1, we pick up all libraries except for the ones specified
@@ -777,6 +781,26 @@ def makewheel(version, output_dir, target_info):
 
         whl.ignore_deps.update(MANYLINUX_LIBS)
 
+    # Add libpython for deployment.
+    if sys.platform in ('win32', 'cygwin'):
+        pylib_name = 'python{0}{1}.dll'.format(*sys.version_info)
+        pylib_path = os.path.join(get_config_var('BINDIR'), pylib_name)
+    elif sys.platform == 'darwin':
+        pylib_name = 'libpython{0}.{1}.dylib'.format(*sys.version_info)
+        pylib_path = os.path.join(get_config_var('LIBDIR'), pylib_name)
+    else:
+        pylib_name = get_config_var('LDLIBRARY')
+        pylib_arch = get_config_var('MULTIARCH')
+        libdir = get_config_var('LIBDIR')
+        if pylib_arch and os.path.exists(os.path.join(libdir, pylib_arch, pylib_name)):
+            pylib_path = os.path.join(libdir, pylib_arch, pylib_name)
+        else:
+            pylib_path = os.path.join(libdir, pylib_name)
+
+    # If Python was linked statically, we don't need to include this.
+    if not pylib_name.endswith('.a'):
+        whl.write_file('deploy_libs/' + pylib_name, pylib_path)
+
     # Add the trees with Python modules.
     whl.write_directory('direct', direct_dir)
 
@@ -911,42 +935,6 @@ if __debug__:
     whl.write_file(info_dir + '/README.md', readme_src)
     whl.write_file_data(info_dir + '/top_level.txt', 'direct\npanda3d\npandac\npanda3d_tools\n')
 
-    # Add libpython for deployment
-    if target_info.sys_platform in ('win32', 'cygwin'):
-        pylib_name = 'python{0}{1}.dll'.format(*sys.version_info)
-        pylib_path = os.path.join(get_config_var('BINDIR'), pylib_name)
-    elif target_info.sys_platform == 'darwin':
-        pylib_name = 'libpython{0}.{1}.dylib'.format(*sys.version_info)
-        pylib_path = os.path.join(get_config_var('LIBDIR'), pylib_name)
-    elif target_info.sys_platform == 'ios':
-        archs = ['arm64', 'x86_64']
-        arch = ''
-        for arch_str in archs:
-            if arch_str in target_info.platform_tag:
-                arch = arch_str
-                break
-            else:
-                raise Exception('Platform string does not specify one of ' + archs)
-
-        python_dir = target_info.python_root
-        pylib_name = ''
-        for filename in os.listdir(python_dir):
-            if os.path.isfile(os.path.join(python_dir, filename)) and 'libpython' in filename:
-                pylib_name = filename
-        pylib_path = join(python_dir, pylib_name)
-    else:
-        pylib_name = get_config_var('LDLIBRARY')
-        pylib_arch = get_config_var('MULTIARCH')
-        libdir = get_config_var('LIBDIR')
-        if pylib_arch and os.path.exists(os.path.join(libdir, pylib_arch, pylib_name)):
-            pylib_path = os.path.join(libdir, pylib_arch, pylib_name)
-        else:
-            pylib_path = os.path.join(libdir, pylib_name)
-
-    # If Python was linked statically, we don't need to include this.
-    if not pylib_name.endswith('.a'):
-        whl.write_file('deploy_libs/' + pylib_name, pylib_path)
-
     whl.close()
 
 

+ 5 - 7
panda/src/audio/audioManager.h

@@ -106,13 +106,11 @@ PUBLISHED:
   virtual void set_volume(PN_stdfloat volume) = 0;
   virtual PN_stdfloat get_volume() const = 0;
 
-/*
- * Turn the manager on or off.  If you play a sound while the manager is
- * inactive, it won't start.  If you deactivate the manager while sounds are
- * playing, they'll stop.  If you activate the manager while looping sounds
- * are playing (those that have a loop_count of zero), they will start playing
- * from the beginning of their loop.  inits to true.
- */
+  // Turn the manager on or off.  If you play a sound while the manager is
+  // inactive, it won't start.  If you deactivate the manager while sounds are
+  // playing, they'll stop.  If you activate the manager while looping sounds
+  // are playing (those that have a loop_count of zero), they will start
+  // playing from the beginning of their loop.  Defaults to true.
   virtual void set_active(bool flag) = 0;
   virtual bool get_active() const = 0;
 

+ 3 - 3
panda/src/audio/audioSound.cxx

@@ -71,8 +71,8 @@ get_3d_max_distance() const {
  */
 PN_stdfloat AudioSound::
 get_speaker_mix(int speaker) {
-    // intentionally blank
-    return 0.0;
+  // intentionally blank
+  return 0.0;
 }
 
 /**
@@ -80,7 +80,7 @@ get_speaker_mix(int speaker) {
  */
 void AudioSound::
 set_speaker_mix(PN_stdfloat frontleft, PN_stdfloat frontright, PN_stdfloat center, PN_stdfloat sub, PN_stdfloat backleft, PN_stdfloat backright, PN_stdfloat sideleft, PN_stdfloat  sideright) {
-    // intentionally blank
+  // intentionally blank
 }
 
 /**

+ 1 - 1
panda/src/audio/audioSound.h

@@ -108,7 +108,7 @@ PUBLISHED:
   virtual void set_3d_max_distance(PN_stdfloat dist);
   virtual PN_stdfloat get_3d_max_distance() const;
 
-  // *_speaker_mix is for use with FMOD.
+  // speaker_mix is for use with FMOD.
   virtual PN_stdfloat get_speaker_mix(int speaker);
   virtual void set_speaker_mix(PN_stdfloat frontleft, PN_stdfloat frontright, PN_stdfloat center, PN_stdfloat sub, PN_stdfloat backleft, PN_stdfloat backright, PN_stdfloat sideleft, PN_stdfloat  sideright);
 

+ 3 - 3
panda/src/audiotraits/fmodAudioManager.h

@@ -62,8 +62,8 @@
  * of the code.
  */
 
-#ifndef __FMOD_AUDIO_MANAGER_H__
-#define __FMOD_AUDIO_MANAGER_H__
+#ifndef FMODAUDIOMANAGER_H
+#define FMODAUDIOMANAGER_H
 
 // First the includes.
 #include "pandabase.h"
@@ -212,4 +212,4 @@ private:
 EXPCL_FMOD_AUDIO AudioManager *Create_FmodAudioManager();
 
 
-#endif /* __FMOD_AUDIO_MANAGER_H__ */
+#endif /* FMODAUDIOMANAGER_H */

+ 50 - 38
panda/src/audiotraits/fmodAudioSound.cxx

@@ -123,50 +123,62 @@ FmodAudioSound(AudioManager *manager, VirtualFile *file, bool positional) {
           << "Reading " << _file_name << " into memory (" << sound_info.length
           << " bytes)\n";
       }
+      result =
+        _manager->_system->createSound(name_or_data, flags, &sound_info, &_sound);
+    }
+    else {
+      result = FMOD_ERR_FILE_BAD;
+
+      if (file->get_system_info(info)) {
+        // The file exists on disk (or it's part of a multifile that exists on
+        // disk), so we can have FMod read the file directly.  This is also
+        // safe, because FMod uses its own IO operations that don't involve
+        // Panda, so this can safely happen in an FMod thread.
+        os_filename = info.get_filename().to_os_specific();
+        name_or_data = os_filename.c_str();
+        sound_info.fileoffset = (unsigned int)info.get_start();
+        sound_info.length = (unsigned int)info.get_size();
+        flags |= FMOD_CREATESTREAM;
+        if (fmodAudio_cat.is_debug()) {
+          fmodAudio_cat.debug()
+            << "Streaming " << _file_name << " from disk (" << name_or_data
+            << ", " << sound_info.fileoffset << ", " << sound_info.length << ")\n";
+        }
 
-    } else if (file->get_system_info(info)) {
-      // The file exists on disk (or it's part of a multifile that exists on
-      // disk), so we can have FMod read the file directly.  This is also
-      // safe, because FMod uses its own IO operations that don't involve
-      // Panda, so this can safely happen in an FMod thread.
-      os_filename = info.get_filename().to_os_specific();
-      name_or_data = os_filename.c_str();
-      sound_info.fileoffset = (unsigned int)info.get_start();
-      sound_info.length = (unsigned int)info.get_size();
-      flags |= FMOD_CREATESTREAM;
-      if (fmodAudio_cat.is_debug()) {
-        fmodAudio_cat.debug()
-          << "Streaming " << _file_name << " from disk (" << name_or_data
-          << ", " << sound_info.fileoffset << ", " << sound_info.length << ")\n";
+        result =
+          _manager->_system->createSound(name_or_data, flags, &sound_info, &_sound);
       }
 
-    } else {
-#if defined(HAVE_THREADS) && !defined(SIMPLE_THREADS)
-      // Otherwise, if the Panda threading system is compiled in, we can
-      // assign callbacks to read the file through the VFS.
-      name_or_data = (const char *)file;
-      sound_info.length = (unsigned int)info.get_size();
-      sound_info.useropen = open_callback;
-      sound_info.userclose = close_callback;
-      sound_info.userread = read_callback;
-      sound_info.userseek = seek_callback;
-      flags |= FMOD_CREATESTREAM;
-      if (fmodAudio_cat.is_debug()) {
-        fmodAudio_cat.debug()
-          << "Streaming " << _file_name << " from disk using callbacks\n";
-      }
+      // If FMOD can't directly read the file (eg. if Panda is locking it for
+      // write, or it's compressed) we have to use the callback interface.
+      if (result == FMOD_ERR_FILE_BAD) {
+  #if defined(HAVE_THREADS) && !defined(SIMPLE_THREADS)
+        // Otherwise, if the Panda threading system is compiled in, we can
+        // assign callbacks to read the file through the VFS.
+        name_or_data = (const char *)file;
+        sound_info.fileoffset = 0;
+        sound_info.length = (unsigned int)info.get_size();
+        sound_info.useropen = open_callback;
+        sound_info.userclose = close_callback;
+        sound_info.userread = read_callback;
+        sound_info.userseek = seek_callback;
+        flags |= FMOD_CREATESTREAM;
+        if (fmodAudio_cat.is_debug()) {
+          fmodAudio_cat.debug()
+            << "Streaming " << _file_name << " from disk using callbacks\n";
+        }
+        result =
+          _manager->_system->createSound(name_or_data, flags, &sound_info, &_sound);
 
-#else  // HAVE_THREADS && !SIMPLE_THREADS
-      // Without threads, we can't safely read this file.
-      name_or_data = "";
+  #else  // HAVE_THREADS && !SIMPLE_THREADS
+        // Without threads, we can't safely read this file.
+        name_or_data = "";
 
-      fmodAudio_cat.warning()
-        << "Cannot stream " << _file_name << "; file is not literally on disk.\n";
-#endif
+        fmodAudio_cat.warning()
+          << "Cannot stream " << _file_name << "; file is not literally on disk.\n";
+  #endif
+      }
     }
-
-    result =
-      _manager->_system->createSound(name_or_data, flags, &sound_info, &_sound);
   }
 
   if (result != FMOD_OK) {

+ 3 - 3
panda/src/audiotraits/openalAudioManager.h

@@ -10,8 +10,8 @@
  * @author Ben Buchwald <[email protected]>
  */
 
-#ifndef __OPENAL_AUDIO_MANAGER_H__
-#define __OPENAL_AUDIO_MANAGER_H__
+#ifndef OPENALAUDIOMANAGER_H
+#define OPENALAUDIOMANAGER_H
 
 #include "pandabase.h"
 
@@ -242,4 +242,4 @@ private:
 
 EXPCL_OPENAL_AUDIO AudioManager *Create_OpenALAudioManager();
 
-#endif /* __OPENAL_AUDIO_MANAGER_H__ */
+#endif /* OPENALAUDIOMANAGER_H */

+ 2 - 0
panda/src/audiotraits/openalAudioSound.cxx

@@ -832,6 +832,8 @@ set_active(bool active) {
           // ...we're pausing a looping sound.
           _paused=true;
         }
+        // Store off the current time so we can resume from where we paused.
+        _start_time = get_time();
         stop();
       }
     }

+ 3 - 3
panda/src/audiotraits/openalAudioSound.h

@@ -10,8 +10,8 @@
  * @author Ben Buchwald <[email protected]>
  */
 
-#ifndef __OPENAL_AUDIO_SOUND_H__
-#define __OPENAL_AUDIO_SOUND_H__
+#ifndef OPENALAUDIOSOUND_H
+#define OPENALAUDIOSOUND_H
 
 #include "pandabase.h"
 
@@ -209,4 +209,4 @@ private:
 
 #include "openalAudioSound.I"
 
-#endif /* __OPENAL_AUDIO_SOUND_H__ */
+#endif /* __OPENALAUDIOSOUND_H__ */

+ 3 - 3
panda/src/bullet/bulletAllHitsRayResult.h

@@ -11,8 +11,8 @@
  * @date 2010-02-21
  */
 
-#ifndef __BULLET_ALL_HITS_RAY_RESULT_H__
-#define __BULLET_ALL_HITS_RAY_RESULT_H__
+#ifndef BULLETALLHITSRAYRESULT_H
+#define BULLETALLHITSRAYRESULT_H
 
 #include "pandabase.h"
 
@@ -98,4 +98,4 @@ private:
 
 #include "bulletAllHitsRayResult.I"
 
-#endif // __BULLET_ALL_HITS_RAY_RESULT_H__
+#endif // BULLETALLHITSRAYRESULT_H

+ 3 - 3
panda/src/bullet/bulletBaseCharacterControllerNode.h

@@ -11,8 +11,8 @@
  * @date 2010-11-21
  */
 
-#ifndef __BULLET_BASE_CHARACTER_CONTROLLER_NODE_H__
-#define __BULLET_BASE_CHARACTER_CONTROLLER_NODE_H__
+#ifndef BULLETBASECHARACTERCONTROLLERNODE_H
+#define BULLETBASECHARACTERCONTROLLERNODE_H
 
 #include "pandabase.h"
 
@@ -69,4 +69,4 @@ private:
 
 #include "bulletBaseCharacterControllerNode.I"
 
-#endif // __BULLET_BASE_CHARACTER_CONTROLLER_NODE_H__
+#endif // BULLETBASECHARACTERCONTROLLERNODE_H

Някои файлове не бяха показани, защото твърде много файлове са промени