Changeset 1281


Ignore:
Timestamp:
08/24/06 22:23:33 (18 years ago)
Author:
bittner
Message:

mlrt 16 ray tracing support

Location:
GTP/trunk/Lib/Vis/Preprocessing/src
Files:
21 edited

Legend:

Unmodified
Added
Removed
  • GTP/trunk/Lib/Vis/Preprocessing/src/Intersectable.h

    r1233 r1281  
    1313class BvhLeaf; 
    1414 
     15class Intersectable; 
     16struct Face; 
     17 
     18struct FaceParentInfo { 
     19  // intersectable 
     20  Intersectable *mObject; 
     21  // face index 
     22  int mFaceIndex; 
     23   
     24  FaceParentInfo(Intersectable *obj, 
     25                                 const int fi): 
     26        mObject(obj), 
     27        mFaceIndex(fi) 
     28  {} 
     29}; 
    1530 
    1631class Intersectable { 
  • GTP/trunk/Lib/Vis/Preprocessing/src/ObjParser.cpp

    r1272 r1281  
    128128 
    129129// HACK: associate mesh instances with triangles 
    130 void AssociateFacesWithInstance(MeshInstance *mi, vector<Intersectable *> &parents) 
    131 { 
    132         Mesh *mesh = mi->GetMesh(); 
    133  
    134         FaceContainer::const_iterator fit, fit_end = mesh->mFaces.end(); 
    135          
    136         for (fit = mesh->mFaces.begin(); fit != fit_end; ++ fit) 
    137         { 
    138         parents.push_back(mi); 
     130void AssociateFacesWithInstance(MeshInstance *mi, 
     131                                                                vector<FaceParentInfo> &parents) 
     132{ 
     133  Mesh *mesh = mi->GetMesh(); 
     134   
     135  FaceContainer::const_iterator fit, fit_end = mesh->mFaces.end(); 
     136  int i = 0; 
     137  for (fit = mesh->mFaces.begin(); fit != fit_end; ++ fit, i++) 
     138        { 
     139          parents.push_back(FaceParentInfo(mi, i)); 
    139140        } 
    140141} 
     
    144145                                                  SceneGraphNode **proot, 
    145146                                                  const bool loadPolygonsAsMeshes, 
    146                                                   vector<Intersectable *> *parents) 
     147                                                  vector<FaceParentInfo> *parents) 
    147148{ 
    148149        FILE *file; 
     
    192193                                         
    193194                                        if (parents)  
    194                                         { 
     195                                          { 
    195196                                                AssociateFacesWithInstance(mi, *parents); 
    196                                         } 
    197  
     197                                          } 
     198                                         
    198199                                        // reset tables 
    199200                                        hashTable.clear(); 
  • GTP/trunk/Lib/Vis/Preprocessing/src/ObjParser.h

    r1221 r1281  
    1818                                                 SceneGraphNode **root,  
    1919                                                 const bool loadPolygonsAsMeshes = false, 
    20                                                  vector<Intersectable *> *parents = NULL); 
     20                                                 vector<FaceParentInfo> *parents = NULL); 
    2121   
    2222}; 
  • GTP/trunk/Lib/Vis/Preprocessing/src/Parser.h

    r1221 r1281  
    55#include <vector> 
    66 
     7#include "Intersectable.h" 
    78 
    89namespace GtpVisibilityPreprocessor { 
     
    2021                                                 SceneGraphNode **root,  
    2122                                                 const bool loadPolygonsAsMeshes = false, 
    22                                                  std::vector<Intersectable *> *parents = NULL)  
     23                                                 std::vector<FaceParentInfo> *parents = NULL)  
    2324  {return false;}; 
    2425         
  • GTP/trunk/Lib/Vis/Preprocessing/src/PlyParser.cpp

    r1221 r1281  
    261261                                         SceneGraphNode **root, 
    262262                                         const bool loadPolygonsAsMeshes, 
    263                                          vector<Intersectable *> *parents) 
     263                                         vector<FaceParentInfo> *parents) 
    264264{ 
    265265  vector<string> filelist; 
  • GTP/trunk/Lib/Vis/Preprocessing/src/PlyParser.h

    r1221 r1281  
    1717                                 SceneGraphNode **root, 
    1818                                 const bool loadPolygonsAsMeshes = false, 
    19                                  vector<Intersectable *> *parents = NULL); 
     19                                 vector<FaceParentInfo> *parents = NULL); 
    2020 
    2121  bool ParseFile(const string filename, ViewCellsManager &viewCells) { return false; } 
  • GTP/trunk/Lib/Vis/Preprocessing/src/Preprocessor.cpp

    r1279 r1281  
    906906                tPoint[2] = pforg[2] + pfdir[2] * dist; 
    907907 
    908                 return mFaceParents[hittriangle]; 
     908                return mFaceParents[hittriangle].mObject; 
    909909        } 
    910910} 
     
    10131013 
    10141014 
     1015int 
     1016Preprocessor::ProcessRay( 
     1017                                                 Vector3 &viewPoint, 
     1018                                                 Vector3 &direction, 
     1019                                                 Intersectable *objectA, 
     1020                                                 Vector3 &pointA, 
     1021                                                 Vector3 &normalA, 
     1022                                                 Intersectable *objectB, 
     1023                                                 Vector3 &pointB, 
     1024                                                 Vector3 &normalB, 
     1025                                                 const float probability, 
     1026                                                 VssRayContainer &vssRays, 
     1027                                                 const AxisAlignedBox3 &box 
     1028                                                 ) 
     1029{ 
     1030  int hits=0; 
     1031 
     1032  if (objectA == NULL && objectB == NULL) 
     1033        return 0; 
     1034 
     1035  AxisAlignedBox3 sbox = box; 
     1036  sbox.Enlarge(Vector3(-Limits::Small)); 
     1037 
     1038   
     1039  if (!sbox.IsInside(viewPoint)) 
     1040        return 0; 
     1041 
     1042  if (objectA == NULL) { 
     1043        // compute intersection with the scene bounding box 
     1044        static Ray ray; 
     1045        SetupRay(ray, viewPoint, direction); 
     1046         
     1047        float tmin, tmax; 
     1048        if (box.ComputeMinMaxT(ray, &tmin, &tmax) && tmin < tmax) 
     1049          pointA = ray.Extrap(tmax); 
     1050        else 
     1051          return 0; 
     1052  } else { 
     1053        if (mDetectEmptyViewSpace) 
     1054          if (DotProd(normalA, direction) >= 0) { 
     1055                // discard the sample 
     1056                return 0; 
     1057          } 
     1058  } 
     1059 
     1060  if (objectB == NULL) { 
     1061        // compute intersection with the scene bounding box 
     1062        static Ray ray; 
     1063        SetupRay(ray, viewPoint, -direction); 
     1064 
     1065        float tmin, tmax; 
     1066        if (box.ComputeMinMaxT(ray, &tmin, &tmax) && tmin < tmax) 
     1067          pointB = ray.Extrap(tmax); 
     1068        else 
     1069          return 0; 
     1070  } else { 
     1071        if (mDetectEmptyViewSpace) 
     1072          if (DotProd(normalB, direction) <= 0) { 
     1073                // discard the sample 
     1074                return 0; 
     1075          } 
     1076  } 
     1077   
     1078  VssRay *vssRay  = NULL; 
     1079  bool validSample = (objectA != objectB); 
     1080  if (validSample) { 
     1081        if (objectA) { 
     1082          vssRay = new VssRay(pointB, 
     1083                                                  pointA, 
     1084                                                  objectB, 
     1085                                                  objectA, 
     1086                                                  mPass, 
     1087                                                  probability 
     1088                                                  ); 
     1089          vssRays.push_back(vssRay); 
     1090          hits ++; 
     1091        } 
     1092         
     1093        if (objectB) { 
     1094          vssRay = new VssRay(pointA, 
     1095                                                  pointB, 
     1096                                                  objectA, 
     1097                                                  objectB, 
     1098                                                  mPass, 
     1099                                                  probability 
     1100                                                  ); 
     1101          vssRays.push_back(vssRay); 
     1102          hits ++; 
     1103        } 
     1104  } 
     1105   
     1106  return hits; 
     1107} 
     1108 
     1109void 
     1110Preprocessor::CastRays16(const int index, 
     1111                                                 SimpleRayContainer &rays,  
     1112                                                 VssRayContainer &vssRays, 
     1113                                                 const AxisAlignedBox3 &sbox) 
     1114{ 
     1115  int i; 
     1116  int num = 16; 
     1117   
     1118  if (mRayCastMethod == INTEL_RAYCASTER) { 
     1119#ifdef GTP_INTERNAL 
     1120 
     1121  int forward_hit_triangles[16]; 
     1122  float forward_dist[16]; 
     1123 
     1124  int backward_hit_triangles[16]; 
     1125  float backward_dist[16]; 
     1126   
     1127  Vector3 min = sbox.Min(); 
     1128  Vector3 max = sbox.Max(); 
     1129   
     1130  for (i=0; i < num; i++) { 
     1131        mlrtaStoreRayAS16(&rays[index + i].mOrigin.x, 
     1132                                          &rays[index + i].mDirection.x, 
     1133                                          i); 
     1134  } 
     1135   
     1136   
     1137  mlrtaTraverseGroupAS16(&min.x, 
     1138                                                 &max.x, 
     1139                                                 forward_hit_triangles, 
     1140                                                 forward_dist); 
     1141 
     1142  for (i=0; i < num; i++) { 
     1143        Vector3 dir = -rays[index+i].mDirection; 
     1144        mlrtaStoreRayAS16(&rays[index+i].mOrigin.x, 
     1145                                          &dir.x, 
     1146                                          i); 
     1147  } 
     1148   
     1149   
     1150  mlrtaTraverseGroupAS16(&min.x, 
     1151                                                 &max.x, 
     1152                                                 backward_hit_triangles, 
     1153                                                 backward_dist); 
     1154   
     1155 
     1156  for (i=0; i < num; i++) { 
     1157        Intersectable *objectA = NULL, *objectB = NULL; 
     1158        Vector3 pointA, pointB; 
     1159        Vector3 normalA, normalB; 
     1160        if (forward_hit_triangles[i] !=-1 ) { 
     1161          objectA = mFaceParents[forward_hit_triangles[i]].mObject; 
     1162          // Get the normal of that face 
     1163          Mesh *mesh = ((MeshInstance *)objectA)->GetMesh(); 
     1164          normalA = mesh->GetFacePlane(mFaceParents[forward_hit_triangles[i]].mFaceIndex).mNormal; 
     1165          //-rays[index+i].mDirection; // $$ temporary 
     1166          pointA = rays[index+i].Extrap(forward_dist[i]); 
     1167        } 
     1168         
     1169        if (backward_hit_triangles[i]!=-1) { 
     1170          objectB = mFaceParents[backward_hit_triangles[i]].mObject; 
     1171          Mesh *mesh = ((MeshInstance *)objectB)->GetMesh(); 
     1172 
     1173          normalB = mesh->GetFacePlane(mFaceParents[backward_hit_triangles[i]].mFaceIndex).mNormal; 
     1174           
     1175          //      normalB = rays[index+i].mDirection; // $$ temporary 
     1176          pointB = rays[index+i].Extrap(-backward_dist[i]); 
     1177        } 
     1178         
     1179        ProcessRay(rays[index+i].mOrigin, 
     1180                           rays[index+i].mDirection, 
     1181                           objectA, pointA, normalA, 
     1182                           objectB, pointB, normalB, 
     1183                           rays[index+i].mPdf, 
     1184                           vssRays, 
     1185                           sbox 
     1186                           ); 
     1187  } 
     1188#endif 
     1189  } else { 
     1190 
     1191        for (i=index; i < index + num; i++) { 
     1192          CastRay(rays[i].mOrigin, 
     1193                          rays[i].mDirection, 
     1194                          rays[i].mPdf, 
     1195                          vssRays, 
     1196                          sbox); 
     1197        } 
     1198  } 
     1199   
     1200} 
     1201 
     1202void 
     1203Preprocessor::CastRays( 
     1204                                           SimpleRayContainer &rays, 
     1205                                           VssRayContainer &vssRays 
     1206                                           ) 
     1207{ 
     1208  long t1 = GetTime(); 
     1209  for (int i=0; i < rays.size(); ) { 
     1210        if (i + 16 < rays.size()) { 
     1211          CastRays16( 
     1212                                 i, 
     1213                                 rays, 
     1214                                 vssRays, 
     1215                                 mViewCellsManager->GetViewSpaceBox()); 
     1216          i += 16; 
     1217        } else { 
     1218          CastRay(rays[i].mOrigin, 
     1219                          rays[i].mDirection, 
     1220                          rays[i].mPdf, 
     1221                          vssRays, 
     1222                          mViewCellsManager->GetViewSpaceBox()); 
     1223          i++; 
     1224        } 
     1225        if (i % 10000 == 0) 
     1226          cout<<"."; 
     1227  } 
     1228 
     1229  long t2 = GetTime(); 
     1230   
     1231  cout<<2*rays.size()/(1e3*TimeDiff(t1, t2))<<"M rays/s"<<endl; 
     1232} 
     1233 
    10151234int Preprocessor::CastRay( 
    10161235                                                  const Vector3 &viewPoint, 
  • GTP/trunk/Lib/Vis/Preprocessing/src/Preprocessor.h

    r1279 r1281  
    146146   
    147147  virtual void CastRays(SimpleRayContainer &rays, 
    148                                                 VssRayContainer &vssRays) {}; 
     148                                                VssRayContainer &vssRays); 
    149149 
    150150  /** Returns a view cells manager with respect to the given name. 
     
    221221        void SetupRay(Ray &ray, const Vector3 &point, const Vector3 &direction); 
    222222 
    223         int CastInternalRay( 
    224                 const Vector3 &viewPoint, 
    225                 const Vector3 &direction, 
    226                 const float probability, 
    227                 VssRayContainer &vssRays, 
    228                 const AxisAlignedBox3 &box); 
    229  
    230         int CastIntelDoubleRay( 
    231                 const Vector3 &viewPoint, 
    232                 const Vector3 &direction, 
    233                 const float probability, 
    234                 VssRayContainer &vssRays, 
    235                 const AxisAlignedBox3 &box); 
    236  
    237         Intersectable *CastIntelSingleRay( 
    238                         const Vector3 &viewPoint, 
    239                         const Vector3 &direction, 
    240                         Vector3 &tPoint, 
    241                         const AxisAlignedBox3 &box); 
    242  
     223  int 
     224  ProcessRay( 
     225                         Vector3 &viewPoint, 
     226                         Vector3 &direction, 
     227                         Intersectable *objectA, 
     228                         Vector3 &pointA, 
     229                         Vector3 &normalA, 
     230                         Intersectable *objectB, 
     231                         Vector3 &pointB, 
     232                         Vector3 &normalB, 
     233                         const float probability, 
     234                         VssRayContainer &vssRays, 
     235                         const AxisAlignedBox3 &box); 
     236   
     237  int CastInternalRay( 
     238                                          const Vector3 &viewPoint, 
     239                                          const Vector3 &direction, 
     240                                          const float probability, 
     241                                          VssRayContainer &vssRays, 
     242                                          const AxisAlignedBox3 &box); 
     243   
     244  int CastIntelDoubleRay( 
     245                                                 const Vector3 &viewPoint, 
     246                                                 const Vector3 &direction, 
     247                                                 const float probability, 
     248                                                 VssRayContainer &vssRays, 
     249                                                 const AxisAlignedBox3 &box); 
     250   
     251  Intersectable *CastIntelSingleRay( 
     252                                                                        const Vector3 &viewPoint, 
     253                                                                        const Vector3 &direction, 
     254                                                                        Vector3 &tPoint, 
     255                                                                        const AxisAlignedBox3 &box); 
     256   
    243257  ///////////////////////// 
    244258 
     
    252266  RenderSimulator *mRenderSimulator; 
    253267 
    254   vector<Intersectable *> mFaceParents; 
     268   
     269  vector<FaceParentInfo> mFaceParents; 
     270   
    255271  GlRendererBuffer *renderer; 
    256272// matt: remove qt dependencies  
     
    258274  void EvalPvsStat(); 
    259275 
     276  protected: 
     277 
     278   
     279  void CastRays16(const int i, 
     280                                  SimpleRayContainer &rays,  
     281                                  VssRayContainer &vssRays, 
     282                                  const AxisAlignedBox3 &sbox); 
     283   
    260284}; 
    261285 
  • GTP/trunk/Lib/Vis/Preprocessing/src/Preprocessor.icproj

    r1272 r1281  
    55        Name="Preprocessor" 
    66        ProjectGUID="{E240C450-69B9-4B01-A6FD-88F9466A3A88}" 
    7         Keyword="Win32Proj" 
    87        VCNestedProjectGUID="{EABCE292-D598-4600-A1C9-2591E7D62FDA}" 
    9         VCNestedProjectFileName="Preprocessor.vcproj"> 
    10         <Platforms> 
    11                 <Platform  
    12                         Name="Win32"/> 
    13         </Platforms> 
     8        VCNestedProjectFileName="Preprocessor.vcproj" 
     9        Keyword="Win32Proj"> 
    1410        <Configurations> 
    1511                <Configuration  
     
    2218                                CharacterSet="2"/> 
    2319                        <Tool  
     20                                Name="DebugTool"/> 
     21                        <Tool  
    2422                                Name="CppCmplrTool" 
    2523                                Optimization="0" 
    2624                                AdditionalIncludeDirectories="..\include;..\src;..\..\..\..\..\..\NonGTP\Devil\include;..\..\..\..\..\..\NonGTP\Zlib\include;..\..\..\..\..\..\NonGTP\Xerces;..\..\..\..\..\..\NonGTP\Boost" 
    2725                                PreprocessorDefinitions="WIN32;_DEBUG;_LIB;" 
    28                                 MinimalRebuild="TRUE" 
     26                                MinimalRebuild="1" 
    2927                                BasicRuntimeChecks="3" 
    3028                                RuntimeLibrary="3" 
    31                                 RuntimeTypeInfo="TRUE" 
     29                                RuntimeTypeInfo="1" 
    3230                                UsePrecompiledHeader="0" 
    3331                                WarningLevel="3" 
    34                                 Detect64BitPortabilityProblems="TRUE" 
     32                                Detect64BitPortabilityProblems="1" 
    3533                                DebugInformationFormat="3"/> 
    3634                        <Tool  
     35                                Name="LinkerTool" 
     36                                DelayImpLib=""/> 
     37                        <Tool  
     38                                Name="LibrarianTool"/> 
     39                        <Tool  
     40                                Name="ResCmplrTool"/> 
     41                        <Tool  
     42                                Name="MidlCmplrTool"/> 
     43                        <Tool  
     44                                Name="BscMakeTool"/> 
     45                        <Tool  
     46                                Name="PreBuildEventTool"/> 
     47                        <Tool  
     48                                Name="PreLinkEventTool"/> 
     49                        <Tool  
     50                                Name="PostBuildEventTool"/> 
     51                        <Tool  
    3752                                Name="CustomTool"/> 
    3853                        <Tool  
    39                                 Name="LibrarianTool"/> 
    40                         <Tool  
    41                                 Name="MidlCmplrTool"/> 
    42                         <Tool  
    43                                 Name="PostBuildEventTool"/> 
    44                         <Tool  
    45                                 Name="PreBuildEventTool"/> 
    46                         <Tool  
    47                                 Name="PreLinkEventTool"/> 
    48                         <Tool  
    49                                 Name="ResCmplrTool"/> 
    50                         <Tool  
    51                                 Name="VCWebServiceProxyGeneratorTool"/> 
    52                         <Tool  
    53                                 Name="VCXMLDataGeneratorTool"/> 
    54                         <Tool  
    55                                 Name="VCManagedWrapperGeneratorTool"/> 
    56                         <Tool  
    57                                 Name="VCAuxiliaryManagedWrapperGeneratorTool"/> 
     54                                Name="CustomNodeTool"/> 
    5855                </Configuration> 
    5956                <Configuration  
     
    6663                                CharacterSet="2"/> 
    6764                        <Tool  
     65                                Name="DebugTool"/> 
     66                        <Tool  
    6867                                Name="CppCmplrTool" 
    6968                                Optimization="0" 
    7069                                InlineFunctionExpansion="0" 
    7170                                FavorSizeOrSpeed="0" 
    72                                 OptimizeForWindowsApplication="TRUE" 
     71                                OptimizeForWindowsApplication="1" 
    7372                                AdditionalIncludeDirectories="..\include;..\src;..\..\..\..\..\..\NonGTP\Devil\include;..\..\..\..\..\..\NonGTP\Zlib\include;..\..\..\..\..\..\NonGTP\Xerces;..\..\..\..\..\..\NonGTP\Boost" 
    7473                                PreprocessorDefinitions="WIN32;NDEBUG;_LIB" 
    75                                 ExceptionHandling="TRUE" 
     74                                ExceptionHandling="1" 
    7675                                RuntimeLibrary="2" 
    77                                 DisableLanguageExtensions="FALSE" 
    78                                 ForceConformanceInForLoopScope="FALSE" 
    79                                 RuntimeTypeInfo="TRUE" 
     76                                DisableLanguageExtensions="0" 
     77                                ForceConformanceInForLoopScope="0" 
     78                                RuntimeTypeInfo="1" 
    8079                                UsePrecompiledHeader="0" 
    8180                                WarningLevel="2" 
    82                                 Detect64BitPortabilityProblems="TRUE" 
     81                                Detect64BitPortabilityProblems="1" 
    8382                                DebugInformationFormat="3"/> 
    8483                        <Tool  
     84                                Name="LinkerTool" 
     85                                DelayImpLib=""/> 
     86                        <Tool  
     87                                Name="LibrarianTool"/> 
     88                        <Tool  
     89                                Name="ResCmplrTool"/> 
     90                        <Tool  
     91                                Name="MidlCmplrTool"/> 
     92                        <Tool  
     93                                Name="BscMakeTool"/> 
     94                        <Tool  
     95                                Name="PreBuildEventTool"/> 
     96                        <Tool  
     97                                Name="PreLinkEventTool"/> 
     98                        <Tool  
     99                                Name="PostBuildEventTool"/> 
     100                        <Tool  
    85101                                Name="CustomTool"/> 
    86102                        <Tool  
    87                                 Name="LibrarianTool"/> 
    88                         <Tool  
    89                                 Name="MidlCmplrTool"/> 
    90                         <Tool  
    91                                 Name="PostBuildEventTool"/> 
    92                         <Tool  
    93                                 Name="PreBuildEventTool"/> 
    94                         <Tool  
    95                                 Name="PreLinkEventTool"/> 
    96                         <Tool  
    97                                 Name="ResCmplrTool"/> 
    98                         <Tool  
    99                                 Name="VCWebServiceProxyGeneratorTool"/> 
    100                         <Tool  
    101                                 Name="VCXMLDataGeneratorTool"/> 
    102                         <Tool  
    103                                 Name="VCManagedWrapperGeneratorTool"/> 
    104                         <Tool  
    105                                 Name="VCAuxiliaryManagedWrapperGeneratorTool"/> 
     103                                Name="CustomNodeTool"/> 
    106104                </Configuration> 
    107105                <Configuration  
     
    114112                                CharacterSet="2"/> 
    115113                        <Tool  
     114                                Name="DebugTool"/> 
     115                        <Tool  
    116116                                Name="CppCmplrTool" 
    117                                 Optimization="3" 
    118                                 GlobalOptimizations="TRUE" 
     117                                Optimization="1000" 
     118                                GlobalOptimizations="0" 
    119119                                InlineFunctionExpansion="0" 
     120                                EnableIntrinsicFunctions="0" 
    120121                                FavorSizeOrSpeed="1" 
     122                                OmitFramePointers="1" 
     123                                EnableFiberSafeOptimizations="1" 
    121124                                OptimizeForProcessor="3" 
    122                                 OptimizeForWindowsApplication="TRUE" 
     125                                OptimizeForWindowsApplication="1" 
    123126                                AdditionalIncludeDirectories="..\include;&quot;$(QTDIR)\include\QtCore&quot;;&quot;$(QTDIR)\include\QtGui&quot;;&quot;$(QTDIR)\include&quot;;&quot;$(QTDIR)\include\QtOpenGl&quot;;..\src;..\..\..\..\..\..\NonGTP\Devil\include;..\..\..\..\..\..\NonGTP\Zlib\include;..\..\..\..\..\..\NonGTP\Xerces;..\..\..\..\..\..\NonGTP\Boost;..\..\Preprocessing\MultiLevelRayTracing" 
    124127                                PreprocessorDefinitions="WIN32;NDEBUG;_LIB;GTP_INTERNAL" 
    125                                 ExceptionHandling="TRUE" 
     128                                MinimalRebuild="1" 
     129                                ExceptionHandling="1" 
    126130                                RuntimeLibrary="2" 
    127                                 DisableLanguageExtensions="FALSE" 
    128                                 ForceConformanceInForLoopScope="FALSE" 
    129                                 RuntimeTypeInfo="TRUE" 
     131                                DisableLanguageExtensions="0" 
     132                                ForceConformanceInForLoopScope="0" 
     133                                RuntimeTypeInfo="1" 
    130134                                UsePrecompiledHeader="0" 
    131135                                WarningLevel="2" 
    132                                 Detect64BitPortabilityProblems="TRUE" 
    133                                 DebugInformationFormat="3"/> 
     136                                Detect64BitPortabilityProblems="1" 
     137                                DebugInformationFormat="3" 
     138                                UseProcExt="0" 
     139                                Parallelization="0"/> 
     140                        <Tool  
     141                                Name="LinkerTool" 
     142                                DelayImpLib=""/> 
     143                        <Tool  
     144                                Name="LibrarianTool"/> 
     145                        <Tool  
     146                                Name="ResCmplrTool"/> 
     147                        <Tool  
     148                                Name="MidlCmplrTool"/> 
     149                        <Tool  
     150                                Name="BscMakeTool"/> 
     151                        <Tool  
     152                                Name="PreBuildEventTool"/> 
     153                        <Tool  
     154                                Name="PreLinkEventTool"/> 
     155                        <Tool  
     156                                Name="PostBuildEventTool"/> 
    134157                        <Tool  
    135158                                Name="CustomTool"/> 
    136159                        <Tool  
    137                                 Name="LibrarianTool"/> 
    138                         <Tool  
    139                                 Name="MidlCmplrTool"/> 
    140                         <Tool  
    141                                 Name="PostBuildEventTool"/> 
    142                         <Tool  
    143                                 Name="PreBuildEventTool"/> 
    144                         <Tool  
    145                                 Name="PreLinkEventTool"/> 
    146                         <Tool  
    147                                 Name="ResCmplrTool"/> 
    148                         <Tool  
    149                                 Name="VCWebServiceProxyGeneratorTool"/> 
    150                         <Tool  
    151                                 Name="VCXMLDataGeneratorTool"/> 
    152                         <Tool  
    153                                 Name="VCManagedWrapperGeneratorTool"/> 
    154                         <Tool  
    155                                 Name="VCAuxiliaryManagedWrapperGeneratorTool"/> 
     160                                Name="CustomNodeTool"/> 
    156161                </Configuration> 
    157162                <Configuration  
     
    164169                                CharacterSet="2"/> 
    165170                        <Tool  
     171                                Name="DebugTool"/> 
     172                        <Tool  
    166173                                Name="CppCmplrTool" 
    167174                                Optimization="0" 
    168175                                InlineFunctionExpansion="0" 
    169176                                FavorSizeOrSpeed="0" 
    170                                 OptimizeForWindowsApplication="TRUE" 
     177                                OptimizeForWindowsApplication="1" 
    171178                                AdditionalIncludeDirectories="..\include;&quot;$(QTDIR)\include\QtCore&quot;;&quot;$(QTDIR)\include\QtGui&quot;;&quot;$(QTDIR)\include&quot;;&quot;$(QTDIR)\include\QtOpenGl&quot;;..\src;&quot;$(CG_INC_PATH)&quot;;..\..\..\..\..\..\NonGTP\Devil\include;..\..\..\..\..\..\NonGTP\Zlib\include;..\..\..\..\..\..\NonGTP\Xerces;&quot;$(BOOST_INCLUDE)&quot;;..\..\Preprocessing\MultiLevelRayTracing" 
    172179                                PreprocessorDefinitions="WIN32;NDEBUG;_LIB" 
    173                                 ExceptionHandling="TRUE" 
     180                                ExceptionHandling="1" 
    174181                                RuntimeLibrary="2" 
    175                                 DisableLanguageExtensions="FALSE" 
    176                                 ForceConformanceInForLoopScope="FALSE" 
    177                                 RuntimeTypeInfo="TRUE" 
     182                                DisableLanguageExtensions="0" 
     183                                ForceConformanceInForLoopScope="0" 
     184                                RuntimeTypeInfo="1" 
    178185                                UsePrecompiledHeader="0" 
    179186                                WarningLevel="2" 
    180                                 Detect64BitPortabilityProblems="TRUE" 
     187                                Detect64BitPortabilityProblems="1" 
    181188                                DebugInformationFormat="3"/> 
    182189                        <Tool  
     190                                Name="LinkerTool" 
     191                                DelayImpLib=""/> 
     192                        <Tool  
     193                                Name="LibrarianTool"/> 
     194                        <Tool  
     195                                Name="ResCmplrTool"/> 
     196                        <Tool  
     197                                Name="MidlCmplrTool"/> 
     198                        <Tool  
     199                                Name="BscMakeTool"/> 
     200                        <Tool  
     201                                Name="PreBuildEventTool"/> 
     202                        <Tool  
     203                                Name="PreLinkEventTool"/> 
     204                        <Tool  
     205                                Name="PostBuildEventTool"/> 
     206                        <Tool  
    183207                                Name="CustomTool"/> 
    184208                        <Tool  
    185                                 Name="LibrarianTool"/> 
    186                         <Tool  
    187                                 Name="MidlCmplrTool"/> 
    188                         <Tool  
    189                                 Name="PostBuildEventTool"/> 
    190                         <Tool  
    191                                 Name="PreBuildEventTool"/> 
    192                         <Tool  
    193                                 Name="PreLinkEventTool"/> 
    194                         <Tool  
    195                                 Name="ResCmplrTool"/> 
    196                         <Tool  
    197                                 Name="VCWebServiceProxyGeneratorTool"/> 
    198                         <Tool  
    199                                 Name="VCXMLDataGeneratorTool"/> 
    200                         <Tool  
    201                                 Name="VCManagedWrapperGeneratorTool"/> 
    202                         <Tool  
    203                                 Name="VCAuxiliaryManagedWrapperGeneratorTool"/> 
     209                                Name="CustomNodeTool"/> 
    204210                </Configuration> 
    205211                <Configuration  
     
    212218                                CharacterSet="2"/> 
    213219                        <Tool  
     220                                Name="DebugTool"/> 
     221                        <Tool  
    214222                                Name="CppCmplrTool" 
    215223                                Optimization="3" 
     
    217225                                FavorSizeOrSpeed="0" 
    218226                                OptimizeForProcessor="3" 
    219                                 OptimizeForWindowsApplication="TRUE" 
     227                                OptimizeForWindowsApplication="1" 
    220228                                AdditionalIncludeDirectories="..\src;..\..\..\..\..\..\NonGTP\Devil\include;..\..\..\..\..\..\NonGTP\Zlib\include;..\..\..\..\..\..\NonGTP\Xerces;..\..\..\..\..\..\NonGTP\Boost;..\MultiLevelRayTracing" 
    221229                                PreprocessorDefinitions="WIN32;NDEBUG;_LIB;GTP_INTERNAL" 
    222                                 ExceptionHandling="TRUE" 
     230                                ExceptionHandling="1" 
    223231                                RuntimeLibrary="2" 
    224                                 DisableLanguageExtensions="FALSE" 
    225                                 ForceConformanceInForLoopScope="FALSE" 
    226                                 RuntimeTypeInfo="TRUE" 
     232                                DisableLanguageExtensions="0" 
     233                                ForceConformanceInForLoopScope="0" 
     234                                RuntimeTypeInfo="1" 
    227235                                UsePrecompiledHeader="0" 
    228236                                WarningLevel="2" 
    229                                 Detect64BitPortabilityProblems="TRUE" 
     237                                Detect64BitPortabilityProblems="1" 
    230238                                DebugInformationFormat="3"/> 
    231239                        <Tool  
    232                                 Name="CustomTool"/> 
     240                                Name="LinkerTool" 
     241                                DelayImpLib=""/> 
    233242                        <Tool  
    234243                                Name="LibrarianTool" 
    235244                                OutputFile="../lib/Release/$(ProjectName).lib"/> 
    236245                        <Tool  
     246                                Name="ResCmplrTool"/> 
     247                        <Tool  
    237248                                Name="MidlCmplrTool"/> 
    238249                        <Tool  
     250                                Name="BscMakeTool"/> 
     251                        <Tool  
     252                                Name="PreBuildEventTool"/> 
     253                        <Tool  
     254                                Name="PreLinkEventTool"/> 
     255                        <Tool  
    239256                                Name="PostBuildEventTool"/> 
    240257                        <Tool  
    241                                 Name="PreBuildEventTool"/> 
    242                         <Tool  
    243                                 Name="PreLinkEventTool"/> 
    244                         <Tool  
    245                                 Name="ResCmplrTool"/> 
    246                         <Tool  
    247                                 Name="VCWebServiceProxyGeneratorTool"/> 
    248                         <Tool  
    249                                 Name="VCXMLDataGeneratorTool"/> 
    250                         <Tool  
    251                                 Name="VCManagedWrapperGeneratorTool"/> 
    252                         <Tool  
    253                                 Name="VCAuxiliaryManagedWrapperGeneratorTool"/> 
     258                                Name="CustomTool"/> 
     259                        <Tool  
     260                                Name="CustomNodeTool"/> 
    254261                </Configuration> 
    255262        </Configurations> 
    256         <References> 
    257         </References> 
    258263        <Files> 
    259                 <Filter  
    260                         Name="Source Files" 
    261                         Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx" 
    262                         UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"> 
    263                         <File  
    264                                 RelativePath="..\src\AxisAlignedBox3.cpp"> 
    265                         </File> 
    266                         <File  
    267                                 RelativePath="..\src\AxisAlignedBox3.h"> 
    268                         </File> 
    269                         <File  
    270                                 RelativePath="..\src\Beam.cpp"> 
    271                         </File> 
    272                         <File  
    273                                 RelativePath="..\src\Beam.h"> 
    274                         </File> 
    275                         <File  
    276                                 RelativePath="..\src\BoostPreprocessorThread.cpp"> 
    277                         </File> 
    278                         <File  
    279                                 RelativePath="..\src\BoostPreprocessorThread.h"> 
    280                         </File> 
    281                         <File  
    282                                 RelativePath="..\src\BoundingBoxConverter.h"> 
    283                         </File> 
    284                         <File  
    285                                 RelativePath=".\BvHierarchy.cpp"> 
    286                         </File> 
    287                         <File  
    288                                 RelativePath=".\BvHierarchy.h"> 
    289                         </File> 
    290                         <File  
    291                                 RelativePath="..\src\Camera.cpp"> 
    292                         </File> 
    293                         <File  
    294                                 RelativePath="..\src\Camera.h"> 
    295                         </File> 
    296                         <File  
    297                                 RelativePath="..\src\common.cpp"> 
    298                         </File> 
    299                         <File  
    300                                 RelativePath="..\src\common.h"> 
    301                         </File> 
    302                         <File  
    303                                 RelativePath="..\src\Containers.h"> 
    304                         </File> 
    305                         <File  
    306                                 RelativePath="..\src\dual_depth.cg"> 
    307                         </File> 
    308                         <File  
    309                                 RelativePath="..\src\Environment.cpp"> 
    310                         </File> 
    311                         <File  
    312                                 RelativePath="..\src\Environment.h"> 
    313                         </File> 
    314                         <File  
    315                                 RelativePath="..\src\ExactPreprocessor.cpp"> 
    316                         </File> 
    317                         <File  
    318                                 RelativePath="..\src\ExactPreprocessor.h"> 
    319                         </File> 
    320                         <File  
    321                                 RelativePath="..\src\Exporter.cpp"> 
    322                         </File> 
    323                         <File  
    324                                 RelativePath="..\src\Exporter.h"> 
    325                         </File> 
    326                         <File  
    327                                 RelativePath="..\src\FlexibleHeap.h"> 
    328                         </File> 
    329                         <File  
    330                                 RelativePath="..\src\glInterface.h"> 
    331                         </File> 
    332                         <File  
    333                                 RelativePath="..\src\GzBinFileInputStream.cpp"> 
    334                         </File> 
    335                         <File  
    336                                 RelativePath="..\src\GzBinFileInputStream.h"> 
    337                         </File> 
    338                         <File  
    339                                 RelativePath="..\src\GzFileInputSource.cpp"> 
    340                         </File> 
    341                         <File  
    342                                 RelativePath="..\src\GzFileInputSource.h"> 
    343                         </File> 
    344                         <File  
    345                                 RelativePath="..\src\gzstream.cpp"> 
    346                         </File> 
    347                         <File  
    348                                 RelativePath="..\src\gzstream.h"> 
    349                         </File> 
    350                         <File  
    351                                 RelativePath="..\src\Halton.cpp"> 
    352                         </File> 
    353                         <File  
    354                                 RelativePath="..\src\Halton.h"> 
    355                         </File> 
    356                         <File  
    357                                 RelativePath=".\HierarchyManager.cpp"> 
    358                         </File> 
    359                         <File  
    360                                 RelativePath=".\HierarchyManager.h"> 
    361                         </File> 
    362                         <File  
    363                                 RelativePath="..\src\Intersectable.h"> 
    364                         </File> 
    365                         <File  
    366                                 RelativePath="..\src\KdIntersectable.cpp"> 
    367                         </File> 
    368                         <File  
    369                                 RelativePath="..\src\KdIntersectable.h"> 
    370                         </File> 
    371                         <File  
    372                                 RelativePath="..\src\KdTree.cpp"> 
    373                         </File> 
    374                         <File  
    375                                 RelativePath="..\src\KdTree.h"> 
    376                         </File> 
    377                         <File  
    378                                 RelativePath="..\src\LogManager.cpp"> 
    379                         </File> 
    380                         <File  
    381                                 RelativePath="..\src\LogManager.h"> 
    382                         </File> 
    383                         <File  
    384                                 RelativePath="..\src\Material.cpp"> 
    385                         </File> 
    386                         <File  
    387                                 RelativePath="..\src\Material.h"> 
    388                         </File> 
    389                         <File  
    390                                 RelativePath="..\src\Matrix4x4.cpp"> 
    391                         </File> 
    392                         <File  
    393                                 RelativePath="..\src\Matrix4x4.h"> 
    394                         </File> 
    395                         <File  
    396                                 RelativePath="..\src\Mesh.cpp"> 
    397                         </File> 
    398                         <File  
    399                                 RelativePath="..\src\Mesh.h"> 
    400                         </File> 
    401                         <File  
    402                                 RelativePath="..\src\MeshKdTree.cpp"> 
    403                         </File> 
    404                         <File  
    405                                 RelativePath="..\src\MeshKdTree.h"> 
    406                         </File> 
    407                         <File  
    408                                 RelativePath="..\src\MutualVisibility.cpp"> 
    409                         </File> 
    410                         <File  
    411                                 RelativePath="..\src\MutualVisibility.h"> 
    412                         </File> 
    413                         <File  
    414                                 RelativePath="..\src\ObjParser.cpp"> 
    415                         </File> 
    416                         <File  
    417                                 RelativePath="..\src\ObjParser.h"> 
    418                         </File> 
    419                         <File  
    420                                 RelativePath="..\src\OcclusionQuery.cpp"> 
    421                         </File> 
    422                         <File  
    423                                 RelativePath="..\src\OcclusionQuery.h"> 
    424                         </File> 
    425                         <File  
    426                                 RelativePath=".\OspTree.cpp"> 
    427                         </File> 
    428                         <File  
    429                                 RelativePath=".\OspTree.h"> 
    430                         </File> 
    431                         <File  
    432                                 RelativePath="..\src\Parser.h"> 
    433                         </File> 
    434                         <File  
    435                                 RelativePath="..\src\Plane3.cpp"> 
    436                         </File> 
    437                         <File  
    438                                 RelativePath="..\src\Plane3.h"> 
    439                         </File> 
    440                         <File  
    441                                 RelativePath="..\src\ply.h"> 
    442                         </File> 
    443                         <File  
    444                                 RelativePath="..\src\plyfile.c"> 
    445                         </File> 
    446                         <File  
    447                                 RelativePath="..\src\PlyParser.cpp"> 
    448                         </File> 
    449                         <File  
    450                                 RelativePath="..\src\PlyParser.h"> 
    451                         </File> 
    452                         <File  
    453                                 RelativePath="..\src\Polygon3.cpp"> 
    454                         </File> 
    455                         <File  
    456                                 RelativePath="..\src\Polygon3.h"> 
    457                         </File> 
    458                         <File  
    459                                 RelativePath="..\src\Polytope.cpp"> 
    460                         </File> 
    461                         <File  
    462                                 RelativePath="..\src\Polytope.h"> 
    463                         </File> 
    464                         <File  
    465                                 RelativePath="..\src\Preprocessor.cpp"> 
    466                         </File> 
    467                         <File  
    468                                 RelativePath="..\src\Preprocessor.h"> 
    469                                 <FileConfiguration  
    470                                         Name="Release|Win32"> 
    471                                         <Tool  
    472                                                 Name="CustomTool" 
    473                                                 Description="" 
    474                                                 CommandLine="" 
    475                                                 Outputs=""/> 
    476                                 </FileConfiguration> 
    477                                 <FileConfiguration  
    478                                         Name="mlrt|Win32"> 
    479                                         <Tool  
    480                                                 Name="CustomTool" 
    481                                                 Description="" 
    482                                                 CommandLine="" 
    483                                                 Outputs=""/> 
    484                                 </FileConfiguration> 
    485                                 <FileConfiguration  
    486                                         Name="Release_Internal|Win32"> 
    487                                         <Tool  
    488                                                 Name="CustomTool" 
    489                                                 Description="" 
    490                                                 CommandLine="" 
    491                                                 Outputs=""/> 
    492                                 </FileConfiguration> 
    493                                 <FileConfiguration  
    494                                         Name="Release Internal|Win32"> 
    495                                         <Tool  
    496                                                 Name="CustomTool" 
    497                                                 Description="" 
    498                                                 CommandLine="" 
    499                                                 Outputs=""/> 
    500                                 </FileConfiguration> 
    501                         </File> 
    502                         <File  
    503                                 RelativePath="..\src\PreprocessorThread.cpp"> 
    504                         </File> 
    505                         <File  
    506                                 RelativePath="..\src\PreprocessorThread.h"> 
    507                                 <FileConfiguration  
    508                                         Name="Release|Win32"> 
    509                                         <Tool  
    510                                                 Name="CustomTool" 
    511                                                 Description="" 
    512                                                 CommandLine="" 
    513                                                 Outputs=""/> 
    514                                 </FileConfiguration> 
    515                                 <FileConfiguration  
    516                                         Name="mlrt|Win32"> 
    517                                         <Tool  
    518                                                 Name="CustomTool" 
    519                                                 Description="" 
    520                                                 CommandLine="" 
    521                                                 Outputs=""/> 
    522                                 </FileConfiguration> 
    523                                 <FileConfiguration  
    524                                         Name="Release_Internal|Win32"> 
    525                                         <Tool  
    526                                                 Name="CustomTool" 
    527                                                 Description="" 
    528                                                 CommandLine="" 
    529                                                 Outputs=""/> 
    530                                 </FileConfiguration> 
    531                                 <FileConfiguration  
    532                                         Name="Release Internal|Win32"> 
    533                                         <Tool  
    534                                                 Name="CustomTool" 
    535                                                 Description="" 
    536                                                 CommandLine="" 
    537                                                 Outputs=""/> 
    538                                 </FileConfiguration> 
    539                         </File> 
    540                         <File  
    541                                 RelativePath="..\src\Pvs.cpp"> 
    542                         </File> 
    543                         <File  
    544                                 RelativePath="..\src\Pvs.h"> 
    545                         </File> 
    546                         <File  
    547                                 RelativePath="..\src\Ray.cpp"> 
    548                         </File> 
    549                         <File  
    550                                 RelativePath="..\src\Ray.h"> 
    551                         </File> 
    552                         <File  
    553                                 RelativePath="..\src\RayInfo.cpp"> 
    554                         </File> 
    555                         <File  
    556                                 RelativePath="..\src\RayInfo.h"> 
    557                         </File> 
    558                         <File  
    559                                 RelativePath="..\src\Rectangle3.cpp"> 
    560                         </File> 
    561                         <File  
    562                                 RelativePath="..\src\Rectangle3.h"> 
    563                         </File> 
    564                         <File  
    565                                 RelativePath="..\src\RenderSampler.cpp"> 
    566                         </File> 
    567                         <File  
    568                                 RelativePath="..\src\RenderSampler.h"> 
    569                         </File> 
    570                         <File  
    571                                 RelativePath="..\src\RenderSimulator.cpp"> 
    572                         </File> 
    573                         <File  
    574                                 RelativePath="..\src\RenderSimulator.h"> 
    575                         </File> 
    576                         <File  
    577                                 RelativePath="..\src\ResourceManager.h"> 
    578                         </File> 
    579                         <File  
    580                                 RelativePath="..\src\RssPreprocessor.cpp"> 
    581                         </File> 
    582                         <File  
    583                                 RelativePath="..\src\RssPreprocessor.h"> 
    584                         </File> 
    585                         <File  
    586                                 RelativePath="..\src\RssTree.cpp"> 
    587                         </File> 
    588                         <File  
    589                                 RelativePath="..\src\RssTree.h"> 
    590                         </File> 
    591                         <File  
    592                                 RelativePath="..\src\SamplingPreprocessor.cpp"> 
    593                         </File> 
    594                         <File  
    595                                 RelativePath="..\src\SamplingPreprocessor.h"> 
    596                         </File> 
    597                         <File  
    598                                 RelativePath="..\src\SamplingStrategy.cpp"> 
    599                         </File> 
    600                         <File  
    601                                 RelativePath="..\src\SamplingStrategy.h"> 
    602                         </File> 
    603                         <File  
    604                                 RelativePath="..\src\SceneGraph.cpp"> 
    605                         </File> 
    606                         <File  
    607                                 RelativePath="..\src\SceneGraph.h"> 
    608                         </File> 
    609                         <File  
    610                                 RelativePath="..\src\Statistics.h"> 
    611                         </File> 
    612                         <File  
    613                                 RelativePath=".\SubdivisionCandidate.h"> 
    614                         </File> 
    615                         <File  
    616                                 RelativePath="..\src\Tetrahedron3.cpp"> 
    617                         </File> 
    618                         <File  
    619                                 RelativePath="..\src\Tetrahedron3.h"> 
    620                         </File> 
    621                         <File  
    622                                 RelativePath="..\src\Triangle3.cpp"> 
    623                         </File> 
    624                         <File  
    625                                 RelativePath="..\src\Triangle3.h"> 
    626                         </File> 
    627                         <File  
    628                                 RelativePath="..\src\UnigraphicsParser.cpp"> 
    629                         </File> 
    630                         <File  
    631                                 RelativePath="..\src\UnigraphicsParser.h"> 
    632                         </File> 
    633                         <File  
    634                                 RelativePath="..\src\Vector3.cpp"> 
    635                         </File> 
    636                         <File  
    637                                 RelativePath="..\src\Vector3.h"> 
    638                         </File> 
    639                         <File  
    640                                 RelativePath="..\src\ViewCell.cpp"> 
    641                         </File> 
    642                         <File  
    643                                 RelativePath="..\src\ViewCell.h"> 
    644                         </File> 
    645                         <File  
    646                                 RelativePath="..\src\ViewCellBsp.cpp"> 
    647                         </File> 
    648                         <File  
    649                                 RelativePath="..\src\ViewCellBsp.h"> 
    650                         </File> 
    651                         <File  
    652                                 RelativePath="..\src\ViewCellsManager.cpp"> 
    653                         </File> 
    654                         <File  
    655                                 RelativePath="..\src\ViewCellsManager.h"> 
    656                         </File> 
    657                         <File  
    658                                 RelativePath="..\src\ViewCellsParser.cpp"> 
    659                         </File> 
    660                         <File  
    661                                 RelativePath="..\src\ViewCellsParser.h"> 
    662                         </File> 
    663                         <File  
    664                                 RelativePath="..\src\ViewCellsParserXerces.h"> 
    665                         </File> 
    666                         <File  
    667                                 RelativePath="..\src\VrmlExporter.cpp"> 
    668                         </File> 
    669                         <File  
    670                                 RelativePath="..\src\VrmlExporter.h"> 
    671                         </File> 
    672                         <File  
    673                                 RelativePath="..\src\VspBspTree.cpp"> 
    674                         </File> 
    675                         <File  
    676                                 RelativePath="..\src\VspBspTree.h"> 
    677                         </File> 
    678                         <File  
    679                                 RelativePath=".\VspTree.cpp"> 
    680                         </File> 
    681                         <File  
    682                                 RelativePath=".\VspTree.h"> 
    683                         </File> 
    684                         <File  
    685                                 RelativePath="..\src\VssPreprocessor.cpp"> 
    686                         </File> 
    687                         <File  
    688                                 RelativePath="..\src\VssPreprocessor.h"> 
    689                         </File> 
    690                         <File  
    691                                 RelativePath="..\src\VssRay.cpp"> 
    692                         </File> 
    693                         <File  
    694                                 RelativePath="..\src\VssRay.h"> 
    695                         </File> 
    696                         <File  
    697                                 RelativePath="..\src\VssTree.cpp"> 
    698                         </File> 
    699                         <File  
    700                                 RelativePath="..\src\VssTree.h"> 
    701                         </File> 
    702                         <File  
    703                                 RelativePath="..\src\X3dExporter.cpp"> 
    704                         </File> 
    705                         <File  
    706                                 RelativePath="..\src\X3dExporter.h"> 
    707                         </File> 
    708                         <File  
    709                                 RelativePath="..\src\X3dParser.cpp"> 
    710                         </File> 
    711                         <File  
    712                                 RelativePath="..\src\X3dParser.h"> 
    713                         </File> 
    714                         <File  
    715                                 RelativePath="..\src\X3dParserXerces.h"> 
    716                         </File> 
    717                 </Filter> 
    718                 <Filter  
    719                         Name="Header Files" 
    720                         Filter="h;hpp;hxx;hm;inl;inc;xsd" 
    721                         UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"> 
    722                         <File  
    723                                 RelativePath="..\include\AxisAlignedBox3.h"> 
    724                         </File> 
    725                         <File  
    726                                 RelativePath="..\include\Containers.h"> 
    727                         </File> 
    728                         <File  
    729                                 RelativePath="..\include\ExactPreprocessor.h"> 
    730                         </File> 
    731                         <File  
    732                                 RelativePath="..\include\KdTree.h"> 
    733                         </File> 
    734                         <File  
    735                                 RelativePath="..\include\Mesh.h"> 
    736                         </File> 
    737                         <File  
    738                                 RelativePath="..\include\Plane3.h"> 
    739                         </File> 
    740                         <File  
    741                                 RelativePath="..\include\Preprocessor.h"> 
    742                         </File> 
    743                         <File  
    744                                 RelativePath="..\include\SamplingPreprocessor.h"> 
    745                         </File> 
    746                         <File  
    747                                 RelativePath="..\include\SceneGraph.h"> 
    748                         </File> 
    749                         <File  
    750                                 RelativePath="..\include\Vector3.h"> 
    751                         </File> 
    752                         <File  
    753                                 RelativePath="..\include\ViewCell.h"> 
    754                         </File> 
    755                 </Filter> 
    756                 <Filter  
    757                         Name="Renderer" 
    758                         Filter=""> 
    759                         <File  
    760                                 RelativePath="..\src\GlRenderer.cpp"> 
    761                         </File> 
    762                         <File  
    763                                 RelativePath="..\src\GlRenderer.h"> 
    764                         </File> 
    765                         <File  
    766                                 RelativePath="..\src\Renderer.cpp"> 
    767                         </File> 
    768                         <File  
    769                                 RelativePath="..\src\Renderer.h"> 
    770                         </File> 
    771                 </Filter> 
    772                 <File  
    773                         RelativePath=".\VTune\Preprocessor.vpj"> 
     264                <File  
     265                        RelativePath=".\AxisAlignedBox3.cpp"/> 
     266                <File  
     267                        RelativePath=".\AxisAlignedBox3.h"/> 
     268                <File  
     269                        RelativePath=".\Beam.cpp"/> 
     270                <File  
     271                        RelativePath=".\Beam.h"/> 
     272                <File  
     273                        RelativePath=".\BoostPreprocessorThread.cpp"/> 
     274                <File  
     275                        RelativePath=".\BoostPreprocessorThread.h"/> 
     276                <File  
     277                        RelativePath=".\BoundingBoxConverter.h"/> 
     278                <File  
     279                        RelativePath=".\BvHierarchy.cpp"/> 
     280                <File  
     281                        RelativePath=".\BvHierarchy.h"/> 
     282                <File  
     283                        RelativePath=".\Camera.cpp"/> 
     284                <File  
     285                        RelativePath=".\Camera.h"/> 
     286                <File  
     287                        RelativePath=".\common.cpp"/> 
     288                <File  
     289                        RelativePath=".\common.h"/> 
     290                <File  
     291                        RelativePath=".\Containers.h"/> 
     292                <File  
     293                        RelativePath=".\dual_depth.cg"/> 
     294                <File  
     295                        RelativePath=".\Environment.cpp"/> 
     296                <File  
     297                        RelativePath=".\Environment.h"/> 
     298                <File  
     299                        RelativePath=".\ExactPreprocessor.cpp"/> 
     300                <File  
     301                        RelativePath=".\ExactPreprocessor.h"/> 
     302                <File  
     303                        RelativePath=".\Exporter.cpp"/> 
     304                <File  
     305                        RelativePath=".\Exporter.h"/> 
     306                <File  
     307                        RelativePath=".\FlexibleHeap.h"/> 
     308                <File  
     309                        RelativePath=".\glInterface.h"/> 
     310                <File  
     311                        RelativePath=".\GzBinFileInputStream.cpp"/> 
     312                <File  
     313                        RelativePath=".\GzBinFileInputStream.h"/> 
     314                <File  
     315                        RelativePath=".\GzFileInputSource.cpp"/> 
     316                <File  
     317                        RelativePath=".\GzFileInputSource.h"/> 
     318                <File  
     319                        RelativePath=".\gzstream.cpp"/> 
     320                <File  
     321                        RelativePath=".\gzstream.h"/> 
     322                <File  
     323                        RelativePath=".\Halton.cpp"/> 
     324                <File  
     325                        RelativePath=".\Halton.h"/> 
     326                <File  
     327                        RelativePath=".\HierarchyManager.cpp"/> 
     328                <File  
     329                        RelativePath=".\HierarchyManager.h"/> 
     330                <File  
     331                        RelativePath=".\Intersectable.h"/> 
     332                <File  
     333                        RelativePath=".\KdIntersectable.cpp"/> 
     334                <File  
     335                        RelativePath=".\KdIntersectable.h"/> 
     336                <File  
     337                        RelativePath=".\KdTree.cpp"/> 
     338                <File  
     339                        RelativePath=".\KdTree.h"/> 
     340                <File  
     341                        RelativePath=".\LogManager.cpp"/> 
     342                <File  
     343                        RelativePath=".\LogManager.h"/> 
     344                <File  
     345                        RelativePath=".\Material.cpp"/> 
     346                <File  
     347                        RelativePath=".\Material.h"/> 
     348                <File  
     349                        RelativePath=".\Matrix4x4.cpp"/> 
     350                <File  
     351                        RelativePath=".\Matrix4x4.h"/> 
     352                <File  
     353                        RelativePath=".\Mesh.cpp"/> 
     354                <File  
     355                        RelativePath=".\Mesh.h"/> 
     356                <File  
     357                        RelativePath=".\MeshKdTree.cpp"/> 
     358                <File  
     359                        RelativePath=".\MeshKdTree.h"/> 
     360                <File  
     361                        RelativePath=".\MutualVisibility.cpp"/> 
     362                <File  
     363                        RelativePath=".\MutualVisibility.h"/> 
     364                <File  
     365                        RelativePath=".\ObjParser.cpp"/> 
     366                <File  
     367                        RelativePath=".\ObjParser.h"/> 
     368                <File  
     369                        RelativePath=".\OcclusionQuery.cpp"/> 
     370                <File  
     371                        RelativePath=".\OcclusionQuery.h"/> 
     372                <File  
     373                        RelativePath=".\OspTree.cpp"/> 
     374                <File  
     375                        RelativePath=".\OspTree.h"/> 
     376                <File  
     377                        RelativePath=".\Parser.h"/> 
     378                <File  
     379                        RelativePath=".\Plane3.cpp"/> 
     380                <File  
     381                        RelativePath=".\Plane3.h"/> 
     382                <File  
     383                        RelativePath=".\ply.h"/> 
     384                <File  
     385                        RelativePath=".\plyfile.c"/> 
     386                <File  
     387                        RelativePath=".\PlyParser.cpp"/> 
     388                <File  
     389                        RelativePath=".\PlyParser.h"/> 
     390                <File  
     391                        RelativePath=".\Polygon3.cpp"/> 
     392                <File  
     393                        RelativePath=".\Polygon3.h"/> 
     394                <File  
     395                        RelativePath=".\Polytope.cpp"/> 
     396                <File  
     397                        RelativePath=".\Polytope.h"/> 
     398                <File  
     399                        RelativePath=".\Preprocessor.cpp"/> 
     400                <File  
     401                        RelativePath=".\Preprocessor.h"> 
     402                        <FileConfiguration  
     403                                Name="Release|Win32"> 
     404                                <Tool  
     405                                        Name="CustomTool" 
     406                                        Description="" 
     407                                        CommandLine="" 
     408                                        Outputs=""/> 
     409                        </FileConfiguration> 
     410                        <FileConfiguration  
     411                                Name="mlrt|Win32"> 
     412                                <Tool  
     413                                        Name="CustomTool" 
     414                                        Description="" 
     415                                        CommandLine="" 
     416                                        Outputs=""/> 
     417                        </FileConfiguration> 
     418                        <FileConfiguration  
     419                                Name="Release_Internal|Win32"> 
     420                                <Tool  
     421                                        Name="CustomTool" 
     422                                        Description="" 
     423                                        CommandLine="" 
     424                                        Outputs=""/> 
     425                        </FileConfiguration> 
     426                        <FileConfiguration  
     427                                Name="Release Internal|Win32"> 
     428                                <Tool  
     429                                        Name="CustomTool" 
     430                                        Description="" 
     431                                        CommandLine="" 
     432                                        Outputs=""/> 
     433                        </FileConfiguration> 
    774434                </File> 
     435                <File  
     436                        RelativePath=".\PreprocessorThread.cpp"/> 
     437                <File  
     438                        RelativePath=".\PreprocessorThread.h"> 
     439                        <FileConfiguration  
     440                                Name="Release|Win32"> 
     441                                <Tool  
     442                                        Name="CustomTool" 
     443                                        Description="" 
     444                                        CommandLine="" 
     445                                        Outputs=""/> 
     446                        </FileConfiguration> 
     447                        <FileConfiguration  
     448                                Name="mlrt|Win32"> 
     449                                <Tool  
     450                                        Name="CustomTool" 
     451                                        Description="" 
     452                                        CommandLine="" 
     453                                        Outputs=""/> 
     454                        </FileConfiguration> 
     455                        <FileConfiguration  
     456                                Name="Release_Internal|Win32"> 
     457                                <Tool  
     458                                        Name="CustomTool" 
     459                                        Description="" 
     460                                        CommandLine="" 
     461                                        Outputs=""/> 
     462                        </FileConfiguration> 
     463                        <FileConfiguration  
     464                                Name="Release Internal|Win32"> 
     465                                <Tool  
     466                                        Name="CustomTool" 
     467                                        Description="" 
     468                                        CommandLine="" 
     469                                        Outputs=""/> 
     470                        </FileConfiguration> 
     471                </File> 
     472                <File  
     473                        RelativePath=".\Pvs.cpp"/> 
     474                <File  
     475                        RelativePath=".\Pvs.h"/> 
     476                <File  
     477                        RelativePath=".\Ray.cpp"/> 
     478                <File  
     479                        RelativePath=".\Ray.h"/> 
     480                <File  
     481                        RelativePath=".\RayInfo.cpp"/> 
     482                <File  
     483                        RelativePath=".\RayInfo.h"/> 
     484                <File  
     485                        RelativePath=".\Rectangle3.cpp"/> 
     486                <File  
     487                        RelativePath=".\Rectangle3.h"/> 
     488                <File  
     489                        RelativePath=".\RenderSampler.cpp"/> 
     490                <File  
     491                        RelativePath=".\RenderSampler.h"/> 
     492                <File  
     493                        RelativePath=".\RenderSimulator.cpp"/> 
     494                <File  
     495                        RelativePath=".\RenderSimulator.h"/> 
     496                <File  
     497                        RelativePath=".\ResourceManager.h"/> 
     498                <File  
     499                        RelativePath=".\RssPreprocessor.cpp"/> 
     500                <File  
     501                        RelativePath=".\RssPreprocessor.h"/> 
     502                <File  
     503                        RelativePath=".\RssTree.cpp"/> 
     504                <File  
     505                        RelativePath=".\RssTree.h"/> 
     506                <File  
     507                        RelativePath=".\SamplingPreprocessor.cpp"/> 
     508                <File  
     509                        RelativePath=".\SamplingPreprocessor.h"/> 
     510                <File  
     511                        RelativePath=".\SamplingStrategy.cpp"/> 
     512                <File  
     513                        RelativePath=".\SamplingStrategy.h"/> 
     514                <File  
     515                        RelativePath=".\SceneGraph.cpp"/> 
     516                <File  
     517                        RelativePath=".\SceneGraph.h"/> 
     518                <File  
     519                        RelativePath=".\Statistics.h"/> 
     520                <File  
     521                        RelativePath=".\SubdivisionCandidate.h"/> 
     522                <File  
     523                        RelativePath=".\Tetrahedron3.cpp"/> 
     524                <File  
     525                        RelativePath=".\Tetrahedron3.h"/> 
     526                <File  
     527                        RelativePath=".\Triangle3.cpp"/> 
     528                <File  
     529                        RelativePath=".\Triangle3.h"/> 
     530                <File  
     531                        RelativePath=".\UnigraphicsParser.cpp"/> 
     532                <File  
     533                        RelativePath=".\UnigraphicsParser.h"/> 
     534                <File  
     535                        RelativePath=".\Vector3.cpp"/> 
     536                <File  
     537                        RelativePath=".\Vector3.h"/> 
     538                <File  
     539                        RelativePath=".\ViewCell.cpp"/> 
     540                <File  
     541                        RelativePath=".\ViewCell.h"/> 
     542                <File  
     543                        RelativePath=".\ViewCellBsp.cpp"/> 
     544                <File  
     545                        RelativePath=".\ViewCellBsp.h"/> 
     546                <File  
     547                        RelativePath=".\ViewCellsManager.cpp"/> 
     548                <File  
     549                        RelativePath=".\ViewCellsManager.h"/> 
     550                <File  
     551                        RelativePath=".\ViewCellsParser.cpp"/> 
     552                <File  
     553                        RelativePath=".\ViewCellsParser.h"/> 
     554                <File  
     555                        RelativePath=".\ViewCellsParserXerces.h"/> 
     556                <File  
     557                        RelativePath=".\VrmlExporter.cpp"/> 
     558                <File  
     559                        RelativePath=".\VrmlExporter.h"/> 
     560                <File  
     561                        RelativePath=".\VspBspTree.cpp"/> 
     562                <File  
     563                        RelativePath=".\VspBspTree.h"/> 
     564                <File  
     565                        RelativePath=".\VspTree.cpp"/> 
     566                <File  
     567                        RelativePath=".\VspTree.h"/> 
     568                <File  
     569                        RelativePath=".\VssPreprocessor.cpp"/> 
     570                <File  
     571                        RelativePath=".\VssPreprocessor.h"/> 
     572                <File  
     573                        RelativePath=".\VssRay.cpp"/> 
     574                <File  
     575                        RelativePath=".\VssRay.h"/> 
     576                <File  
     577                        RelativePath=".\VssTree.cpp"/> 
     578                <File  
     579                        RelativePath=".\VssTree.h"/> 
     580                <File  
     581                        RelativePath=".\X3dExporter.cpp"/> 
     582                <File  
     583                        RelativePath=".\X3dExporter.h"/> 
     584                <File  
     585                        RelativePath=".\X3dParser.cpp"/> 
     586                <File  
     587                        RelativePath=".\X3dParser.h"/> 
     588                <File  
     589                        RelativePath=".\X3dParserXerces.h"/> 
     590                <File  
     591                        RelativePath="..\include\AxisAlignedBox3.h"/> 
     592                <File  
     593                        RelativePath="..\include\Containers.h"/> 
     594                <File  
     595                        RelativePath="..\include\ExactPreprocessor.h"/> 
     596                <File  
     597                        RelativePath="..\include\KdTree.h"/> 
     598                <File  
     599                        RelativePath="..\include\Mesh.h"/> 
     600                <File  
     601                        RelativePath="..\include\Plane3.h"/> 
     602                <File  
     603                        RelativePath="..\include\Preprocessor.h"/> 
     604                <File  
     605                        RelativePath="..\include\SamplingPreprocessor.h"/> 
     606                <File  
     607                        RelativePath="..\include\SceneGraph.h"/> 
     608                <File  
     609                        RelativePath="..\include\Vector3.h"/> 
     610                <File  
     611                        RelativePath="..\include\ViewCell.h"/> 
     612                <File  
     613                        RelativePath=".\GlRenderer.cpp"/> 
     614                <File  
     615                        RelativePath=".\GlRenderer.h"/> 
     616                <File  
     617                        RelativePath=".\Renderer.cpp"/> 
     618                <File  
     619                        RelativePath=".\Renderer.h"/> 
     620                <File  
     621                        RelativePath=".\vtune\Preprocessor.vpj"/> 
    775622        </Files> 
    776         <Globals> 
    777         </Globals> 
    778623</VisualStudioProject> 
    779624 
  • GTP/trunk/Lib/Vis/Preprocessing/src/Preprocessor.vcproj

    r1272 r1281  
    107107                        <Tool 
    108108                                Name="VCCLCompilerTool" 
    109                                 Optimization="3" 
    110                                 GlobalOptimizations="TRUE" 
     109                                Optimization="2" 
     110                                GlobalOptimizations="FALSE" 
    111111                                InlineFunctionExpansion="0" 
     112                                EnableIntrinsicFunctions="FALSE" 
    112113                                FavorSizeOrSpeed="1" 
     114                                OmitFramePointers="TRUE" 
     115                                EnableFiberSafeOptimizations="TRUE" 
    113116                                OptimizeForProcessor="3" 
    114117                                OptimizeForWindowsApplication="TRUE" 
    115118                                AdditionalIncludeDirectories="..\include;&quot;$(QTDIR)\include\QtCore&quot;;&quot;$(QTDIR)\include\QtGui&quot;;&quot;$(QTDIR)\include&quot;;&quot;$(QTDIR)\include\QtOpenGl&quot;;..\src;..\..\..\..\..\..\NonGTP\Devil\include;..\..\..\..\..\..\NonGTP\Zlib\include;..\..\..\..\..\..\NonGTP\Xerces;..\..\..\..\..\..\NonGTP\Boost;..\..\Preprocessing\MultiLevelRayTracing" 
    116119                                PreprocessorDefinitions="WIN32;NDEBUG;_LIB;GTP_INTERNAL" 
     120                                MinimalRebuild="TRUE" 
    117121                                ExceptionHandling="TRUE" 
    118122                                RuntimeLibrary="2" 
  • GTP/trunk/Lib/Vis/Preprocessing/src/Ray.h

    r1199 r1281  
    317317  SimpleRay(const Vector3 &o, const Vector3 &d, const float p=1.0f): 
    318318        mOrigin(o), mDirection(d), mPdf(p) {} 
     319 
     320  Vector3 Extrap(const float t) { 
     321        return mOrigin + mDirection * t; 
     322  } 
    319323}; 
    320324 
  • GTP/trunk/Lib/Vis/Preprocessing/src/RssPreprocessor.cpp

    r1272 r1281  
    7979} 
    8080 
    81 void 
    82 RssPreprocessor::CastRays( 
    83                                                   SimpleRayContainer &rays, 
    84                                                   VssRayContainer &vssRays 
    85                                                   ) 
    86 { 
    87   for (int i=0; i < rays.size(); i++) { 
    88         CastRay(rays[i].mOrigin, 
    89                         rays[i].mDirection, 
    90                         rays[i].mPdf, 
    91                         vssRays, 
    92                         mViewCellsManager->GetViewSpaceBox()); 
    93         if (i % 10000 == 0) 
    94           cout<<"."; 
    95   } 
    96   cout<<endl; 
    97 } 
    9881 
    9982 
  • GTP/trunk/Lib/Vis/Preprocessing/src/RssPreprocessor.h

    r1251 r1281  
    6767  virtual bool BuildBspTree() { return false; } 
    6868   
    69   void 
    70   CastRays( 
    71                    SimpleRayContainer &rays, 
    72                    VssRayContainer &vssRays 
    73                    ); 
    7469 
    7570  bool 
  • GTP/trunk/Lib/Vis/Preprocessing/src/TestPreprocessor.icproj

    r1272 r1281  
    55        Name="TestPreprocessor" 
    66        ProjectGUID="{2BF1B1A6-D665-472B-B1B1-E172512D66C1}" 
    7         Keyword="Win32Proj" 
    87        VCNestedProjectGUID="{69BC58F0-C7EB-4B43-B782-B6F047EF0528}" 
    9         VCNestedProjectFileName="TestPreprocessor.vcproj"> 
    10         <Platforms> 
    11                 <Platform  
    12                         Name="Win32"/> 
    13         </Platforms> 
     8        VCNestedProjectFileName="TestPreprocessor.vcproj" 
     9        Keyword="Win32Proj"> 
    1410        <Configurations> 
    1511                <Configuration  
     
    2117                                ConfigurationType="1" 
    2218                                CharacterSet="2"/> 
     19                        <Tool  
     20                                Name="DebugTool"/> 
    2321                        <Tool  
    2422                                Name="CppCmplrTool" 
     
    2624                                AdditionalIncludeDirectories="..\include;..\src;..\..\..\..\..\..\NonGTP\Devil\include;..\..\..\..\..\..\NonGTP\Zlib\include;..\..\..\..\..\..\NonGTP\Xerces;..\..\..\..\..\..\NonGTP\Boost" 
    2725                                PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE" 
    28                                 MinimalRebuild="TRUE" 
     26                                MinimalRebuild="1" 
    2927                                BasicRuntimeChecks="3" 
    3028                                RuntimeLibrary="3" 
    3129                                UsePrecompiledHeader="0" 
    3230                                WarningLevel="3" 
    33                                 Detect64BitPortabilityProblems="TRUE" 
     31                                Detect64BitPortabilityProblems="1" 
    3432                                DebugInformationFormat="4"/> 
    3533                        <Tool  
    36                                 Name="CustomTool"/> 
    37                         <Tool  
    38                                 Name="LinkerTool" 
     34                                Name="LinkerTool" 
     35                                DelayImpLib="" 
    3936                                AdditionalDependencies="xerces-c_2D.lib zdll.lib zziplibd.lib devil.lib glut32.lib OpenGL32.Lib glu32.lib Preprocessor.lib glew32.lib" 
    4037                                OutputFile="$(OutDir)/Preprocessor.exe" 
    4138                                LinkIncremental="2" 
    4239                                AdditionalLibraryDirectories="..\include;..\src\GL;&quot;..\lib\$(ConfigurationName)&quot;;..\..\..\..\..\..\NonGTP\Boost\lib;..\..\..\..\..\..\NonGTP\Xerces\xercesc\lib;..\..\..\..\..\..\NonGTP\Zlib\lib;..\..\..\..\..\..\NonGTP\Devil\lib" 
    43                                 GenerateDebugInformation="TRUE" 
     40                                GenerateDebugInformation="1" 
    4441                                ProgramDatabaseFile="$(OutDir)/TestPreprocessor.pdb" 
    4542                                SubSystem="1" 
    4643                                TargetMachine="1"/> 
    4744                        <Tool  
    48                                 Name="MidlCmplrTool"/> 
    49                         <Tool  
    50                                 Name="PostBuildEventTool"/> 
    51                         <Tool  
    52                                 Name="PreBuildEventTool"/> 
    53                         <Tool  
    54                                 Name="PreLinkEventTool"/> 
    55                         <Tool  
    56                                 Name="ResCmplrTool"/> 
    57                         <Tool  
    58                                 Name="VCWebServiceProxyGeneratorTool"/> 
    59                         <Tool  
    60                                 Name="VCXMLDataGeneratorTool"/> 
    61                         <Tool  
    62                                 Name="VCWebDeploymentTool"/> 
    63                         <Tool  
    64                                 Name="VCManagedWrapperGeneratorTool"/> 
    65                         <Tool  
    66                                 Name="VCAuxiliaryManagedWrapperGeneratorTool"/> 
     45                                Name="LibrarianTool"/> 
     46                        <Tool  
     47                                Name="ResCmplrTool"/> 
     48                        <Tool  
     49                                Name="MidlCmplrTool"/> 
     50                        <Tool  
     51                                Name="BscMakeTool"/> 
     52                        <Tool  
     53                                Name="PreBuildEventTool"/> 
     54                        <Tool  
     55                                Name="PreLinkEventTool"/> 
     56                        <Tool  
     57                                Name="PostBuildEventTool"/> 
     58                        <Tool  
     59                                Name="CustomTool"/> 
     60                        <Tool  
     61                                Name="CustomNodeTool"/> 
    6762                </Configuration> 
    6863                <Configuration  
     
    7469                                ConfigurationType="1" 
    7570                                CharacterSet="2"/> 
     71                        <Tool  
     72                                Name="DebugTool"/> 
    7673                        <Tool  
    7774                                Name="CppCmplrTool" 
     
    8077                                PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE" 
    8178                                RuntimeLibrary="2" 
    82                                 RuntimeTypeInfo="TRUE" 
    83                                 UsePrecompiledHeader="0" 
    84                                 WarningLevel="3" 
    85                                 Detect64BitPortabilityProblems="TRUE" 
     79                                RuntimeTypeInfo="1" 
     80                                UsePrecompiledHeader="0" 
     81                                WarningLevel="3" 
     82                                Detect64BitPortabilityProblems="1" 
    8683                                DebugInformationFormat="3"/> 
    8784                        <Tool  
    88                                 Name="CustomTool"/> 
    89                         <Tool  
    90                                 Name="LinkerTool" 
     85                                Name="LinkerTool" 
     86                                DelayImpLib="" 
    9187                                AdditionalDependencies="xerces-c_2.lib glew32.lib zdll.lib zziplib.lib devil.lib glut32.lib OpenGL32.Lib glu32.lib Preprocessor.lib" 
    9288                                OutputFile="$(OutDir)/Preprocessor.exe" 
    9389                                LinkIncremental="1" 
    9490                                AdditionalLibraryDirectories="..\src\GL;..\lib\release;..\..\..\..\..\..\NonGTP\Boost\lib;..\..\..\..\..\..\NonGTP\Xerces\xercesc\lib;..\..\..\..\..\..\NonGTP\Zlib\lib;..\..\..\..\..\..\NonGTP\Devil\lib" 
    95                                 GenerateDebugInformation="FALSE" 
     91                                GenerateDebugInformation="0" 
    9692                                SubSystem="1" 
    9793                                OptimizeReferences="2" 
     
    10096                                FixedBaseAddress="1"/> 
    10197                        <Tool  
    102                                 Name="MidlCmplrTool"/> 
    103                         <Tool  
    104                                 Name="PostBuildEventTool"/> 
    105                         <Tool  
    106                                 Name="PreBuildEventTool"/> 
    107                         <Tool  
    108                                 Name="PreLinkEventTool"/> 
    109                         <Tool  
    110                                 Name="ResCmplrTool"/> 
    111                         <Tool  
    112                                 Name="VCWebServiceProxyGeneratorTool"/> 
    113                         <Tool  
    114                                 Name="VCXMLDataGeneratorTool"/> 
    115                         <Tool  
    116                                 Name="VCWebDeploymentTool"/> 
    117                         <Tool  
    118                                 Name="VCManagedWrapperGeneratorTool"/> 
    119                         <Tool  
    120                                 Name="VCAuxiliaryManagedWrapperGeneratorTool"/> 
     98                                Name="LibrarianTool"/> 
     99                        <Tool  
     100                                Name="ResCmplrTool"/> 
     101                        <Tool  
     102                                Name="MidlCmplrTool"/> 
     103                        <Tool  
     104                                Name="BscMakeTool"/> 
     105                        <Tool  
     106                                Name="PreBuildEventTool"/> 
     107                        <Tool  
     108                                Name="PreLinkEventTool"/> 
     109                        <Tool  
     110                                Name="PostBuildEventTool"/> 
     111                        <Tool  
     112                                Name="CustomTool"/> 
     113                        <Tool  
     114                                Name="CustomNodeTool"/> 
    121115                </Configuration> 
    122116                <Configuration  
     
    129123                                CharacterSet="2"/> 
    130124                        <Tool  
     125                                Name="DebugTool"/> 
     126                        <Tool  
    131127                                Name="CppCmplrTool" 
    132128                                Optimization="3" 
    133                                 GlobalOptimizations="TRUE" 
     129                                GlobalOptimizations="0" 
    134130                                FavorSizeOrSpeed="1" 
    135131                                OptimizeForProcessor="3" 
     
    137133                                PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;GTP_INTERNAL" 
    138134                                RuntimeLibrary="2" 
    139                                 RuntimeTypeInfo="TRUE" 
    140                                 UsePrecompiledHeader="0" 
    141                                 WarningLevel="3" 
    142                                 Detect64BitPortabilityProblems="TRUE" 
     135                                RuntimeTypeInfo="1" 
     136                                UsePrecompiledHeader="0" 
     137                                WarningLevel="3" 
     138                                Detect64BitPortabilityProblems="1" 
    143139                                DebugInformationFormat="3"/> 
    144140                        <Tool  
    145                                 Name="CustomTool"/> 
    146                         <Tool  
    147                                 Name="LinkerTool" 
     141                                Name="LinkerTool" 
     142                                DelayImpLib="" 
    148143                                AdditionalDependencies="xerces-c_2.lib glew32.lib zdll.lib zziplib.lib devil.lib glut32.lib OpenGL32.Lib glu32.lib cg.lib cgGL.lib Preprocessor.lib RTWorld.lib RTScene.lib" 
    149144                                OutputFile="$(OutDir)/Preprocessor.exe" 
    150145                                LinkIncremental="1" 
    151146                                AdditionalLibraryDirectories="..\src\mlrt;&quot;$(CG_LIB_PATH)&quot;;..\src\GL;..\..\..\..\..\..\NonGTP\Boost\lib;..\..\..\..\..\..\NonGTP\Xerces\xercesc\lib;..\..\..\..\..\..\NonGTP\Zlib\lib;..\..\..\..\..\..\NonGTP\Devil\lib;..\..\Preprocessing\MultiLevelRayTracing\RTScene\Release;..\..\Preprocessing\MultiLevelRayTracing\RTWorld\Release" 
    152                                 GenerateDebugInformation="FALSE" 
     147                                GenerateDebugInformation="0" 
    153148                                SubSystem="1" 
    154149                                OptimizeReferences="2" 
     
    157152                                FixedBaseAddress="1"/> 
    158153                        <Tool  
    159                                 Name="MidlCmplrTool"/> 
    160                         <Tool  
    161                                 Name="PostBuildEventTool"/> 
    162                         <Tool  
    163                                 Name="PreBuildEventTool"/> 
    164                         <Tool  
    165                                 Name="PreLinkEventTool"/> 
    166                         <Tool  
    167                                 Name="ResCmplrTool"/> 
    168                         <Tool  
    169                                 Name="VCWebServiceProxyGeneratorTool"/> 
    170                         <Tool  
    171                                 Name="VCXMLDataGeneratorTool"/> 
    172                         <Tool  
    173                                 Name="VCWebDeploymentTool"/> 
    174                         <Tool  
    175                                 Name="VCManagedWrapperGeneratorTool"/> 
    176                         <Tool  
    177                                 Name="VCAuxiliaryManagedWrapperGeneratorTool"/> 
     154                                Name="LibrarianTool"/> 
     155                        <Tool  
     156                                Name="ResCmplrTool"/> 
     157                        <Tool  
     158                                Name="MidlCmplrTool"/> 
     159                        <Tool  
     160                                Name="BscMakeTool"/> 
     161                        <Tool  
     162                                Name="PreBuildEventTool"/> 
     163                        <Tool  
     164                                Name="PreLinkEventTool"/> 
     165                        <Tool  
     166                                Name="PostBuildEventTool"/> 
     167                        <Tool  
     168                                Name="CustomTool"/> 
     169                        <Tool  
     170                                Name="CustomNodeTool"/> 
    178171                </Configuration> 
    179172                <Configuration  
     
    185178                                ConfigurationType="1" 
    186179                                CharacterSet="2"/> 
     180                        <Tool  
     181                                Name="DebugTool"/> 
    187182                        <Tool  
    188183                                Name="CppCmplrTool" 
     
    191186                                PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;GTP_INTERNAL" 
    192187                                RuntimeLibrary="2" 
    193                                 RuntimeTypeInfo="TRUE" 
    194                                 UsePrecompiledHeader="0" 
    195                                 WarningLevel="3" 
    196                                 Detect64BitPortabilityProblems="TRUE" 
     188                                RuntimeTypeInfo="1" 
     189                                UsePrecompiledHeader="0" 
     190                                WarningLevel="3" 
     191                                Detect64BitPortabilityProblems="1" 
    197192                                DebugInformationFormat="3"/> 
    198193                        <Tool  
    199                                 Name="CustomTool"/> 
    200                         <Tool  
    201                                 Name="LinkerTool" 
     194                                Name="LinkerTool" 
     195                                DelayImpLib="" 
    202196                                AdditionalDependencies="xerces-c_2.lib glew32.lib zdll.lib zziplib.lib devil.lib glut32.lib OpenGL32.Lib glu32.lib Preprocessor.lib RTScene.lib RTWorld.lib" 
    203197                                OutputFile="../bin/release/Preprocessor.exe" 
    204198                                LinkIncremental="1" 
    205199                                AdditionalLibraryDirectories="..\src\GL;..\lib\release;..\..\Preprocessing\lib\release;..\..\..\..\..\..\NonGTP\Boost\lib;..\..\..\..\..\..\NonGTP\Xerces\xercesc\lib;..\..\..\..\..\..\NonGTP\Zlib\lib;..\..\..\..\..\..\NonGTP\Devil\lib;..\MultiLevelRayTracing\RTScene\Release;..\MultiLevelRayTracing\RTWorld\Release" 
    206                                 GenerateDebugInformation="FALSE" 
     200                                GenerateDebugInformation="0" 
    207201                                SubSystem="1" 
    208202                                OptimizeReferences="2" 
     
    211205                                FixedBaseAddress="1"/> 
    212206                        <Tool  
    213                                 Name="MidlCmplrTool"/> 
    214                         <Tool  
    215                                 Name="PostBuildEventTool"/> 
    216                         <Tool  
    217                                 Name="PreBuildEventTool"/> 
    218                         <Tool  
    219                                 Name="PreLinkEventTool"/> 
    220                         <Tool  
    221                                 Name="ResCmplrTool"/> 
    222                         <Tool  
    223                                 Name="VCWebServiceProxyGeneratorTool"/> 
    224                         <Tool  
    225                                 Name="VCXMLDataGeneratorTool"/> 
    226                         <Tool  
    227                                 Name="VCWebDeploymentTool"/> 
    228                         <Tool  
    229                                 Name="VCManagedWrapperGeneratorTool"/> 
    230                         <Tool  
    231                                 Name="VCAuxiliaryManagedWrapperGeneratorTool"/> 
     207                                Name="LibrarianTool"/> 
     208                        <Tool  
     209                                Name="ResCmplrTool"/> 
     210                        <Tool  
     211                                Name="MidlCmplrTool"/> 
     212                        <Tool  
     213                                Name="BscMakeTool"/> 
     214                        <Tool  
     215                                Name="PreBuildEventTool"/> 
     216                        <Tool  
     217                                Name="PreLinkEventTool"/> 
     218                        <Tool  
     219                                Name="PostBuildEventTool"/> 
     220                        <Tool  
     221                                Name="CustomTool"/> 
     222                        <Tool  
     223                                Name="CustomNodeTool"/> 
    232224                </Configuration> 
    233225        </Configurations> 
    234         <References> 
    235         </References> 
    236226        <Files> 
    237                 <Filter  
    238                         Name="Source Files" 
    239                         Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx" 
    240                         UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"> 
    241                         <File  
    242                                 RelativePath="..\src\main.cpp"> 
    243                         </File> 
    244                 </Filter> 
    245                 <Filter  
    246                         Name="Header Files" 
    247                         Filter="h;hpp;hxx;hm;inl;inc;xsd" 
    248                         UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"> 
    249                 </Filter> 
    250                 <Filter  
    251                         Name="Resource Files" 
    252                         Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx" 
    253                         UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"> 
    254                 </Filter> 
    255227                <File  
    256                         RelativePath=".\VTune\TestPreprocessor.vpj"> 
    257                 </File> 
     228                        RelativePath=".\main.cpp"/> 
     229                <File  
     230                        RelativePath=".\vtune\TestPreprocessor.vpj"/> 
    258231        </Files> 
    259         <Globals> 
    260         </Globals> 
    261232</VisualStudioProject> 
    262233 
  • GTP/trunk/Lib/Vis/Preprocessing/src/TestPreprocessor.vcproj

    r1272 r1281  
    123123                                Name="VCCLCompilerTool" 
    124124                                Optimization="3" 
    125                                 GlobalOptimizations="TRUE" 
     125                                GlobalOptimizations="FALSE" 
    126126                                FavorSizeOrSpeed="1" 
    127127                                OptimizeForProcessor="3" 
  • GTP/trunk/Lib/Vis/Preprocessing/src/UnigraphicsParser.cpp

    r1221 r1281  
    4343bool 
    4444UnigraphicsParser::ParseFile(const string filename, 
    45                             SceneGraphNode **proot, 
    46                                 const bool loadPolygonsAsMeshes, 
    47                                  vector<Intersectable *> *parents) 
     45                                                        SceneGraphNode **proot, 
     46                                                        const bool loadPolygonsAsMeshes, 
     47                                                         vector<FaceParentInfo> *parents) 
    4848{ 
    4949  map<string, Vector3, ltstr> vht; // hash table for vectors 
  • GTP/trunk/Lib/Vis/Preprocessing/src/UnigraphicsParser.h

    r1221 r1281  
    1818                                                 SceneGraphNode **root,  
    1919                                                 const bool loadPolygonsAsMeshes = false, 
    20                                                  vector<Intersectable *> *parents = NULL); 
     20                                                 vector<FaceParentInfo> *parents = NULL); 
    2121   
    2222}; 
  • GTP/trunk/Lib/Vis/Preprocessing/src/VssPreprocessor.cpp

    r1264 r1281  
    6060 
    6161 
    62 void 
    63 VssPreprocessor::CastRays( 
    64                                                   SimpleRayContainer &rays, 
    65                                                   VssRayContainer &vssRays 
    66                                                   ) 
    67 { 
    68         const AxisAlignedBox3 box =  mViewSpaceBox ? *mViewSpaceBox : mKdTree->GetBox(); 
    69          
    70 #if 1 
    71         SimpleRayContainer::const_iterator rit, rit_end = rays.end(); 
    72         for (rit = rays.begin(); rit != rit_end; ++ rit) 
    73         { 
    74                 CastRay((*rit).mOrigin, (*rit).mDirection, 1, vssRays, box); 
    75         } 
    76 #else 
    77         for (int i = 0; i < rays.size(); i += 16) 
    78         { 
    79                 CastRay(rays[i].mOrigin, rays[i].mDirection, vssRays, box); 
    80         } 
    81  
    82 #endif 
    83 } 
    84  
    85  
    86 void VssPreprocessor::CastRays16(SimpleRayContainer &rays,  
    87                                                                  VssRayContainer &vssRays, 
    88                                                                  const AxisAlignedBox3 &sbox) 
    89 { 
    90 #ifdef GTP_INTERNAL 
    91 /* 
    92         mlrtaStoreRayAS16(const float* pforg, const float* pfdir, int j); 
    93  
    94  
    95         // input parameters 
    96         const RTVec3f& org = *reinterpret_cast<const RTVec3f*> (pforg); 
    97         const RTVec3f& rd  = *reinterpret_cast<const RTVec3f*> (pfdir); 
    98  
    99         int ri = j/4; 
    100         int ci = j%4; 
    101         *((float*)&ibp4.ray4X[ri].m_origin.t[0] + ci) = org[0]; 
    102         *((float*)&ibp4.ray4X[ri].m_origin.t[1] + ci) = org[1]; 
    103         *((float*)&ibp4.ray4X[ri].m_origin.t[2] + ci) = org[2]; 
    104  
    105         *((float*)&ibp4.ray4X[ri].m_direction.t[0] + ci) = rd[0]; 
    106         *((float*)&ibp4.ray4X[ri].m_direction.t[1] + ci) = rd[1]; 
    107         *((float*)&ibp4.ray4X[ri].m_direction.t[2] + ci) = rd[2]; 
    108  
    109         mlrtaTraverseGroupAS16(const float* bbmin, const float* bbmax, int* hit_triangles, float* dist);*/ 
    110 #endif 
    111 } 
     62 
     63 
    11264 
    11365 
  • GTP/trunk/Lib/Vis/Preprocessing/src/VssPreprocessor.h

    r1251 r1281  
    5454                           ); 
    5555         
    56   void CastRays(SimpleRayContainer &rays, VssRayContainer &vssRays); 
    5756 
    5857  bool 
     
    9493  bool mTestBeamSampling; 
    9594 
    96 protected: 
    97                  
    98   
    99  
    100         void CastRays16(SimpleRayContainer &rays,  
    101                                         VssRayContainer &vssRays, 
    102                                         const AxisAlignedBox3 &sbox); 
    10395}; 
    10496 
  • GTP/trunk/Lib/Vis/Preprocessing/src/X3dParser.cpp

    r1272 r1281  
    657657                                         SceneGraphNode **root, 
    658658                                         const bool loadPolygonsAsMeshes, 
    659                                          vector<Intersectable *> *parents) 
     659                                         vector<FaceParentInfo> *parents) 
    660660{ 
    661661  // Initialize the XML4C system 
  • GTP/trunk/Lib/Vis/Preprocessing/src/X3dParser.h

    r1221 r1281  
    1616   
    1717        bool ParseFile( 
    18                 const string filename,  
    19                 SceneGraphNode **root,  
    20                 const bool loadPolygonsAsMeshes = false, 
    21                 vector<Intersectable *> *parents = NULL); 
     18                                   const string filename,  
     19                                   SceneGraphNode **root,  
     20                                   const bool loadPolygonsAsMeshes = false, 
     21                                   vector<FaceParentInfo> *parents = NULL); 
    2222 
    2323        bool ParseFile(const string filename, ViewCellsManager &viewCells); 
Note: See TracChangeset for help on using the changeset viewer.