Documentation ¶
Overview ¶
Package PhysicsBody2D provides methods for working with PhysicsBody2D object instances.
Index ¶
- type Advanced
- type Any
- type Instance
- func (self Instance) AddCollisionExceptionWith(body [1]gdclass.Node)
- func (self Instance) AsCanvasItem() CanvasItem.Instance
- func (self Instance) AsCollisionObject2D() CollisionObject2D.Instance
- func (self Instance) AsNode() Node.Instance
- func (self Instance) AsNode2D() Node2D.Instance
- func (self Instance) AsObject() [1]gd.Object
- func (self Instance) AsPhysicsBody2D() Instance
- func (self Instance) GetCollisionExceptions() [][1]gdclass.PhysicsBody2D
- func (self Instance) GetGravity() Vector2.XY
- func (self Instance) MoveAndCollide(motion Vector2.XY) [1]gdclass.KinematicCollision2D
- func (self Instance) RemoveCollisionExceptionWith(body [1]gdclass.Node)
- func (self Instance) TestMove(from Transform2D.OriginXY, motion Vector2.XY) bool
- func (self *Instance) UnsafePointer() unsafe.Pointer
- func (self Instance) Virtual(name string) reflect.Value
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Advanced ¶
type Advanced = class
Advanced exposes a 1:1 low-level instance of the class, undocumented, for those who know what they are doing.
type Instance ¶
type Instance [1]gdclass.PhysicsBody2D
[PhysicsBody2D] is an abstract base class for 2D game objects affected by physics. All 2D physics bodies inherit from it.
var Nil Instance
Nil is a nil/null instance of the class. Equivalent to the zero value.
func (Instance) AddCollisionExceptionWith ¶
Adds a body to the list of bodies that this body can't collide with.
func (Instance) AsCanvasItem ¶
func (self Instance) AsCanvasItem() CanvasItem.Instance
func (Instance) AsCollisionObject2D ¶
func (self Instance) AsCollisionObject2D() CollisionObject2D.Instance
func (Instance) AsPhysicsBody2D ¶
func (Instance) GetCollisionExceptions ¶
func (self Instance) GetCollisionExceptions() [][1]gdclass.PhysicsBody2D
Returns an array of nodes that were added as collision exceptions for this body.
func (Instance) GetGravity ¶
Returns the gravity vector computed from all sources that can affect the body, including all gravity overrides from [Area2D] nodes and the global world gravity.
func (Instance) MoveAndCollide ¶
func (self Instance) MoveAndCollide(motion Vector2.XY) [1]gdclass.KinematicCollision2D
Moves the body along the vector [param motion]. In order to be frame rate independent in [method Node._physics_process] or [method Node._process], [param motion] should be computed using [code]delta[/code]. Returns a [KinematicCollision2D], which contains information about the collision when stopped, or when touching another body along the motion. If [param test_only] is [code]true[/code], the body does not move but the would-be collision information is given. [param safe_margin] is the extra margin used for collision recovery (see [member CharacterBody2D.safe_margin] for more details). If [param recovery_as_collision] is [code]true[/code], any depenetration from the recovery phase is also reported as a collision; this is used e.g. by [CharacterBody2D] for improving floor detection during floor snapping.
func (Instance) RemoveCollisionExceptionWith ¶
Removes a body from the list of bodies that this body can't collide with.
func (Instance) TestMove ¶
Checks for collisions without moving the body. In order to be frame rate independent in [method Node._physics_process] or [method Node._process], [param motion] should be computed using [code]delta[/code]. Virtually sets the node's position, scale and rotation to that of the given [Transform2D], then tries to move the body along the vector [param motion]. Returns [code]true[/code] if a collision would stop the body from moving along the whole path. [param collision] is an optional object of type [KinematicCollision2D], which contains additional information about the collision when stopped, or when touching another body along the motion. [param safe_margin] is the extra margin used for collision recovery (see [member CharacterBody2D.safe_margin] for more details). If [param recovery_as_collision] is [code]true[/code], any depenetration from the recovery phase is also reported as a collision; this is useful for checking whether the body would [i]touch[/i] any other bodies.