00001 // 00002 // Redistribution and use in source and binary forms, with or without 00003 // modification, are permitted provided that the following conditions 00004 // are met: 00005 // * Redistributions of source code must retain the above copyright 00006 // notice, this list of conditions and the following disclaimer. 00007 // * Redistributions in binary form must reproduce the above copyright 00008 // notice, this list of conditions and the following disclaimer in the 00009 // documentation and/or other materials provided with the distribution. 00010 // * Neither the name of NVIDIA CORPORATION nor the names of its 00011 // contributors may be used to endorse or promote products derived 00012 // from this software without specific prior written permission. 00013 // 00014 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS ``AS IS'' AND ANY 00015 // EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 00016 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 00017 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 00018 // CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 00019 // EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 00020 // PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 00021 // PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 00022 // OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 00023 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 00024 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 00025 // 00026 // Copyright (c) 2008-2018 NVIDIA Corporation. All rights reserved. 00027 // Copyright (c) 2004-2008 AGEIA Technologies, Inc. All rights reserved. 00028 // Copyright (c) 2001-2004 NovodeX AG. All rights reserved. 00029 00030 00031 #ifndef PX_PHYSICS_NX_DEBUG_VISUALIZATION_PARAMETER 00032 #define PX_PHYSICS_NX_DEBUG_VISUALIZATION_PARAMETER 00033 00034 #include "foundation/PxPreprocessor.h" 00035 00040 #if !PX_DOXYGEN 00041 namespace physx 00042 { 00043 #endif 00044 00045 /* 00046 NOTE: Parameters should NOT be conditionally compiled out. Even if a particular feature is not available. 00047 Otherwise the parameter values get shifted about and the numeric values change per platform. This causes problems 00048 when trying to serialize parameters. 00049 00050 New parameters should also be added to the end of the list for this reason. Also make sure to update 00051 eNUM_VALUES, which should be one higher than the maximum value in the enum. 00052 */ 00053 00062 struct PxVisualizationParameter 00063 { 00064 enum Enum 00065 { 00066 /* RigidBody-related parameters */ 00067 00093 eSCALE, 00094 00095 00099 eWORLD_AXES, 00100 00101 /* Body visualizations */ 00102 00108 eBODY_AXES, 00109 00119 eBODY_MASS_AXES, 00120 00126 eBODY_LIN_VELOCITY, 00127 00133 eBODY_ANG_VELOCITY, 00134 00135 00141 eDEPRECATED_BODY_JOINT_GROUPS, 00142 00143 /* Contact visualisations */ 00144 00148 eCONTACT_POINT, 00149 00153 eCONTACT_NORMAL, 00154 00158 eCONTACT_ERROR, 00159 00163 eCONTACT_FORCE, 00164 00165 00171 eACTOR_AXES, 00172 00173 00177 eCOLLISION_AABBS, 00178 00184 eCOLLISION_SHAPES, 00185 00191 eCOLLISION_AXES, 00192 00196 eCOLLISION_COMPOUNDS, 00197 00203 eCOLLISION_FNORMALS, 00204 00210 eCOLLISION_EDGES, 00211 00215 eCOLLISION_STATIC, 00216 00220 eCOLLISION_DYNAMIC, 00221 00225 eDEPRECATED_COLLISION_PAIRS, 00226 00230 eJOINT_LOCAL_FRAMES, 00231 00235 eJOINT_LIMITS, 00236 00237 00238 /* ParticleSystem visualizations */ 00239 00243 ePARTICLE_SYSTEM_POSITION, 00244 00248 ePARTICLE_SYSTEM_VELOCITY, 00249 00253 ePARTICLE_SYSTEM_COLLISION_NORMAL, 00254 00258 ePARTICLE_SYSTEM_BOUNDS, 00259 00263 ePARTICLE_SYSTEM_GRID, 00264 00268 ePARTICLE_SYSTEM_BROADPHASE_BOUNDS, 00269 00273 ePARTICLE_SYSTEM_MAX_MOTION_DISTANCE, 00274 00278 eCULL_BOX, 00279 00283 eCLOTH_VERTICAL, 00287 eCLOTH_HORIZONTAL, 00291 eCLOTH_BENDING, 00295 eCLOTH_SHEARING, 00299 eCLOTH_VIRTUAL_PARTICLES, 00300 00304 eMBP_REGIONS, 00305 00309 eNUM_VALUES, 00310 00311 eFORCE_DWORD = 0x7fffffff 00312 }; 00313 }; 00314 00315 #if !PX_DOXYGEN 00316 } // namespace physx 00317 #endif 00318 00320 #endif