C++ SDK Reference  12.5
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
diguy_module_sim_physx.h
Go to the documentation of this file.
1 
2 /*
3  * Copyright (C) 1992-2013 Boston Dynamics
4  * ALL RIGHTS RESERVED.
5  *
6  * These coded instructions, statements, and computer programs
7  * contain unpublished proprietary information of Boston Dynamics
8  * and are protected by Copyright Laws of the United States.
9  * They may not be used, duplicated, or disclosed in any form, in
10  * whole or in part, without the prior written consent from Boston
11  * Dynamics.
12  *
13  * RESTRICTED RIGHTS LEGEND
14  * Use, duplication, or disclosure by the government is subject
15  * to restrictions as set forth in FAR 52.227.19(c)(2) or
16  * subparagraph (c)(1)(ii) of the Rights in Technical Data and
17  * Computer Software clause at DFARS 252.227-7013 and/or in
18  * similar or successor clauses in the FAR, or the DOD or NASA
19  * FAR Supplement, or to subparagraphs (c)(1) and (c)(2) of the
20  * Commercial Computer Software--Restricted Rights at 48 CFR
21  * 52.227-19, as applicable. Unpublished-rights reserved under
22  * the Copyright Laws of the United States.
23  * Contractor/Manufacturer is:
24  * Boston Dynamics/78 Fourth Avenue/Waltham MA 02451.
25  */
26 
27 /*********************************************************************
28  **
29  *t DI-Guy API, PhysX Simulation Module
30  */
31 
32 #ifndef __diguy_module_sim_physx_H
33 #define __diguy_module_sim_physx_H
34 
35 extern "C" {
36 
37 #include <declspec_diguy.h>
38 
39 
40 /*****************************************************************************
41  **
42  *2 Init Structure
43  **
44  **
45  */
46 
47 typedef struct diguyModuleSimPhysXInit
48 {
50  :
51  physx_px_physics(NULL),
52  physx_px_scene(NULL),
53  ground_plane_z(0.0f),
55  {}
56 
57  /*l
58  *b Description:
59  **
60  ** An optional pointer to an physx::PxPhysics object, if the module should
61  ** use an already existing PhysX session. If NULL DI-Guy will create
62  ** a new session.
63  */
64  void* physx_px_physics;
65 
66  /*l
67  *b Description:
68  **
69  ** An optional pointer to an physx::PxScene object, if the module should use
70  ** an already existing PhysX scene. If NULL DI-Guy will create a new
71  ** scene.
72  */
73  void* physx_px_scene;
74 
75  /*l
76  *b Description:
77  **
78  ** The initial altitude of a ground plane. If this value is set to
79  ** -10000.0 or lower no ground plane will be enabled.
80  */
81  float ground_plane_z;
82 
83  /*l
84  *b Description:
85  **
86  ** Set to 1 to enable a connection to the PhysX VRD debugger.
87  */
89 
91 
92 
93 /*****************************************************************************
94  **
95  *2 Functions
96  **
97  */
98 
99 /*l
100  *b Description:
101  **
102  ** This function tells DI-Guy that it should use the PhysX simulation
103  ** library for doing physics simulations on selected characters.
104  **
105  ** This function must be called after the main DI-Guy initialize call
106  ** (e.g., diguy_ogl_initialize()), and before any scenario is created.
107  **
108  ** The PhysX system software must be installed on any computer that will
109  ** use this module. The directory 3rdparty/physx under the DI-Guy
110  ** install directory has system software installed. Be sure to read the
111  ** README.TXT file!
112  **
113  ** See the "Physics Module Functions" section in the diguyApp
114  ** documentation for functions that affect the simulation system.
115  **
116  *b Returns:
117  **
118  ** 0 on success, -1 on failure
119  **
120  *b Example:
121  **
122  *e diguy_ogl_initialize(NULL);
123  *e
124  *e diguyModuleSimPhysXInit init;
125  *e init.ground_plane_z = 2.0f;
126  *e diguy_sim_physx_initialize(&init);
127  *e
128  *e diguyScenario* scenario = diguy_create_scenario();
129  */
130 BDI_DECLSPEC_diguy
132 
133 /*l
134  *b Description:
135  **
136  ** This function tells DI-Guy to shut down the PhysX simulation library
137  ** module.
138  **
139  *b Returns:
140  **
141  ** 0 on success, -1 on failure
142  **
143  */
144 BDI_DECLSPEC_diguy
146 
147 
148 } /* end extern "C" */
149 
150 #endif /* __diguy_module_sim_physx_H */
151 
152 
153 /*
154  * Copyright (C) 1992-2013 Boston Dynamics
155  * ALL RIGHTS RESERVED.
156  *
157  * These coded instructions, statements, and computer programs
158  * contain unpublished proprietary information of Boston Dynamics
159  * and are protected by Copyright Laws of the United States.
160  * They may not be used, duplicated, or disclosed in any form, in
161  * whole or in part, without the prior written consent from Boston
162  * Dynamics.
163  *
164  * RESTRICTED RIGHTS LEGEND
165  * Use, duplication, or disclosure by the government is subject
166  * to restrictions as set forth in FAR 52.227.19(c)(2) or
167  * subparagraph (c)(1)(ii) of the Rights in Technical Data and
168  * Computer Software clause at DFARS 252.227-7013 and/or in
169  * similar or successor clauses in the FAR, or the DOD or NASA
170  * FAR Supplement, or to subparagraphs (c)(1) and (c)(2) of the
171  * Commercial Computer Software--Restricted Rights at 48 CFR
172  * 52.227-19, as applicable. Unpublished-rights reserved under
173  * the Copyright Laws of the United States.
174  * Contractor/Manufacturer is:
175  * Boston Dynamics/78 Fourth Avenue/Waltham MA 02451.
176  */
177