Documentation
¶
Overview ¶
A node that provides a polygon shape to a graphics.gd/classdb/CollisionObject2D parent and allows to edit it. The polygon can be concave or convex. This can give a detection shape to an graphics.gd/classdb/Area2D, turn graphics.gd/classdb/PhysicsBody2D into a solid object, or give a hollow shape to a graphics.gd/classdb/StaticBody2D.
Warning: A non-uniformly scaled graphics.gd/classdb/CollisionPolygon2D will likely not behave as expected. Make sure to keep its scale the same on all axes and adjust its polygon instead.
Index ¶
- type Advanced
- type Any
- type BuildMode
- type Extension
- type ID
- type Instance
- func (self Instance) AsCanvasItem() CanvasItem.Instance
- func (self Instance) AsCollisionPolygon2D() Instance
- func (self Instance) AsNode() Node.Instance
- func (self Instance) AsNode2D() Node2D.Instance
- func (self Instance) AsObject() [1]gd.Object
- func (self Instance) BuildMode() BuildMode
- func (self Instance) Disabled() bool
- func (self Instance) ID() ID
- func (self Instance) OneWayCollision() bool
- func (self Instance) OneWayCollisionMargin() Float.X
- func (self Instance) Polygon() []Vector2.XY
- func (self Instance) SetBuildMode(value BuildMode)
- func (self Instance) SetDisabled(value bool)
- func (self *Instance) SetObject(obj [1]gd.Object) bool
- func (self Instance) SetOneWayCollision(value bool)
- func (self Instance) SetOneWayCollisionMargin(value Float.X)
- func (self Instance) SetPolygon(value []Vector2.XY)
- 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 BuildMode ¶
type BuildMode int //gd:CollisionPolygon2D.BuildMode
const ( // Collisions will include the polygon and its contained area. In this mode the node has the same effect as several [graphics.gd/classdb/ConvexPolygonShape2D] nodes, one for each convex shape in the convex decomposition of the polygon (but without the overhead of multiple nodes). BuildSolids BuildMode = 0 // Collisions will only include the polygon edges. In this mode the node has the same effect as a single [graphics.gd/classdb/ConcavePolygonShape2D] made of segments, with the restriction that each segment (after the first one) starts where the previous one ends, and the last one ends where the first one starts (forming a closed but hollow polygon). BuildSegments BuildMode = 1 )
type Extension ¶
Extension can be embedded in a new struct to create an extension of this class. T should be the type that is embedding this Extension
func (*Extension[T]) AsCanvasItem ¶
func (self *Extension[T]) AsCanvasItem() CanvasItem.Instance
func (*Extension[T]) AsCollisionPolygon2D ¶
type ID ¶
ID is a typed object ID (reference) to an instance of this class, use it to store references to objects with unknown lifetimes, as an ID will not panic on use if the underlying object has been destroyed.
type Instance ¶
type Instance [1]gdclass.CollisionPolygon2D
Instance of the class with convieniently typed arguments and results.
var Nil Instance
Nil is a nil/null instance of the class. Equivalent to the zero value.
func (Instance) AsCanvasItem ¶
func (self Instance) AsCanvasItem() CanvasItem.Instance