14 #ifndef __BULLET_CHARACTER_CONTROLLER_NODE_H__ 15 #define __BULLET_CHARACTER_CONTROLLER_NODE_H__ 34 const char *name=
"character");
37 void set_linear_movement(
const LVector3 &velocity,
bool is_local);
38 void set_angular_movement(PN_stdfloat omega);
42 void set_gravity(PN_stdfloat gravity);
43 PN_stdfloat get_gravity()
const;
45 void set_fall_speed(PN_stdfloat fall_speed);
46 void set_jump_speed(PN_stdfloat jump_speed);
47 void set_max_jump_height(PN_stdfloat max_jump_height);
49 void set_max_slope(PN_stdfloat max_slope);
50 PN_stdfloat get_max_slope()
const;
52 void set_use_ghost_sweep_test(
bool value);
54 bool is_on_ground()
const;
55 bool can_jump()
const;
58 MAKE_PROPERTY(shape, get_shape);
59 MAKE_PROPERTY(gravity, get_gravity, set_gravity);
60 MAKE_PROPERTY(max_slope, get_max_slope, set_max_slope);
61 MAKE_PROPERTY(on_ground, is_on_ground);
64 INLINE
virtual btPairCachingGhostObject *get_ghost()
const;
65 INLINE
virtual btCharacterControllerInterface *get_character()
const;
67 virtual void do_sync_p2b(PN_stdfloat dt,
int num_substeps);
68 virtual void do_sync_b2p();
71 virtual void transform_changed();
79 btKinematicCharacterController *_character;
80 btPairCachingGhostObject *_ghost;
84 LVector3 _linear_movement;
85 bool _linear_movement_is_local;
86 PN_stdfloat _angular_movement;
88 void do_transform_changed();
94 static void init_type() {
95 BulletBaseCharacterControllerNode::init_type();
97 BulletBaseCharacterControllerNode::get_class_type());
100 return get_class_type();
104 return get_class_type();
113 #endif // __BULLET_CHARACTER_CONTROLLER_NODE_H__
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
void register_type(TypeHandle &type_handle, const std::string &name)
This inline function is just a convenient way to call TypeRegistry::register_type(),...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
TypeHandle is the identifier used to differentiate C++ class types.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.