# C#: 2D nodes

Source: https://tweens.gd/csharp/nodes/2d/

Definitions for `CanvasItem`, `Node2D`, and the 2D node classes.

Each row pairs a definition with its shorthand method. Names ending in X, Y, Z, or Alpha write one component.

101 definitions: [CanvasItem](https://tweens.gd/csharp/nodes/2d/#canvasitem) · [Node2D](https://tweens.gd/csharp/nodes/2d/#node2d) · [AnimatedSprite2D](https://tweens.gd/csharp/nodes/2d/#animatedsprite2d) · [Camera2D](https://tweens.gd/csharp/nodes/2d/#camera2d) · [CanvasLayer](https://tweens.gd/csharp/nodes/2d/#canvaslayer) · [CanvasModulate](https://tweens.gd/csharp/nodes/2d/#canvasmodulate) · [CpuParticles2D](https://tweens.gd/csharp/nodes/2d/#cpuparticles2d) · [GpuParticles2D](https://tweens.gd/csharp/nodes/2d/#gpuparticles2d) · [Light2D](https://tweens.gd/csharp/nodes/2d/#light2d) · [Line2D](https://tweens.gd/csharp/nodes/2d/#line2d) · [Parallax2D](https://tweens.gd/csharp/nodes/2d/#parallax2d) · [PathFollow2D](https://tweens.gd/csharp/nodes/2d/#pathfollow2d) · [PointLight2D](https://tweens.gd/csharp/nodes/2d/#pointlight2d) · [Polygon2D](https://tweens.gd/csharp/nodes/2d/#polygon2d) · [Sprite2D](https://tweens.gd/csharp/nodes/2d/#sprite2d)

## CanvasItem

| Definition | Shorthand | Value |
| --- | --- | --- |
| `Tweens.Modulate` | `TweenModulate` | Color |
| `Tweens.ModulateAlpha` | `TweenModulateAlpha` | float |
| `Tweens.SelfModulate` | `TweenSelfModulate` | Color |
| `Tweens.SelfModulateAlpha` | `TweenSelfModulateAlpha` | float |

## Node2D

| Definition | Shorthand | Value |
| --- | --- | --- |
| `Tweens.GlobalPosition2D` | `TweenGlobalPosition` | Vector2 |
| `Tweens.GlobalPosition2DX` | `TweenGlobalPositionX` | float |
| `Tweens.GlobalPosition2DY` | `TweenGlobalPositionY` | float |
| `Tweens.GlobalRotation2D` | `TweenGlobalRotation` | float |
| `Tweens.GlobalScale2D` | `TweenGlobalScale` | Vector2 |
| `Tweens.GlobalScale2DX` | `TweenGlobalScaleX` | float |
| `Tweens.GlobalScale2DY` | `TweenGlobalScaleY` | float |
| `Tweens.GlobalSkew2D` | `TweenGlobalSkew` | float |
| `Tweens.Position2D` | `TweenPosition` | Vector2 |
| `Tweens.Position2DX` | `TweenPositionX` | float |
| `Tweens.Position2DY` | `TweenPositionY` | float |
| `Tweens.Rotation2D` | `TweenRotation` | float |
| `Tweens.Scale2D` | `TweenScale` | Vector2 |
| `Tweens.Scale2DX` | `TweenScaleX` | float |
| `Tweens.Scale2DY` | `TweenScaleY` | float |
| `Tweens.Skew2D` | `TweenSkew` | float |

## AnimatedSprite2D

| Definition | Shorthand | Value |
| --- | --- | --- |
| `Tweens.AnimatedSprite2DFrame` | `TweenFrame` | int |
| `Tweens.AnimatedSprite2DSpeedScale` | `TweenSpeedScale` | float |

## Camera2D

| Definition | Shorthand | Value |
| --- | --- | --- |
| `Tweens.Camera2DOffset` | `TweenOffset` | Vector2 |
| `Tweens.Camera2DOffsetX` | `TweenOffsetX` | float |
| `Tweens.Camera2DOffsetY` | `TweenOffsetY` | float |
| `Tweens.Camera2DZoom` | `TweenZoom` | Vector2 |
| `Tweens.Camera2DZoomX` | `TweenZoomX` | float |
| `Tweens.Camera2DZoomY` | `TweenZoomY` | float |

## CanvasLayer

| Definition | Shorthand | Value |
| --- | --- | --- |
| `Tweens.CanvasLayerOffset` | `TweenOffset` | Vector2 |
| `Tweens.CanvasLayerOffsetX` | `TweenOffsetX` | float |
| `Tweens.CanvasLayerOffsetY` | `TweenOffsetY` | float |
| `Tweens.CanvasLayerRotation` | `TweenRotation` | float |
| `Tweens.CanvasLayerScale` | `TweenScale` | Vector2 |
| `Tweens.CanvasLayerScaleX` | `TweenScaleX` | float |
| `Tweens.CanvasLayerScaleY` | `TweenScaleY` | float |

## CanvasModulate

| Definition | Shorthand | Value |
| --- | --- | --- |
| `Tweens.CanvasModulateColor` | `TweenColor` | Color |
| `Tweens.CanvasModulateColorAlpha` | `TweenColorAlpha` | float |

## CpuParticles2D

| Definition | Shorthand | Value |
| --- | --- | --- |
| `Tweens.CpuParticles2DColor` | `TweenColor` | Color |
| `Tweens.CpuParticles2DColorAlpha` | `TweenColorAlpha` | float |
| `Tweens.CpuParticles2DDirection` | `TweenDirection` | Vector2 |
| `Tweens.CpuParticles2DDirectionX` | `TweenDirectionX` | float |
| `Tweens.CpuParticles2DDirectionY` | `TweenDirectionY` | float |
| `Tweens.CpuParticles2DEmissionRectExtents` | `TweenEmissionRectExtents` | Vector2 |
| `Tweens.CpuParticles2DEmissionRectExtentsX` | `TweenEmissionRectExtentsX` | float |
| `Tweens.CpuParticles2DEmissionRectExtentsY` | `TweenEmissionRectExtentsY` | float |
| `Tweens.CpuParticles2DEmissionSphereRadius` | `TweenEmissionSphereRadius` | float |
| `Tweens.CpuParticles2DExplosiveness` | `TweenExplosiveness` | float |
| `Tweens.CpuParticles2DGravity` | `TweenGravity` | Vector2 |
| `Tweens.CpuParticles2DGravityX` | `TweenGravityX` | float |
| `Tweens.CpuParticles2DGravityY` | `TweenGravityY` | float |
| `Tweens.CpuParticles2DLifetime` | `TweenLifetime` | double |
| `Tweens.CpuParticles2DRandomness` | `TweenRandomness` | float |
| `Tweens.CpuParticles2DSpeedScale` | `TweenSpeedScale` | double |
| `Tweens.CpuParticles2DSpread` | `TweenSpread` | float |

## GpuParticles2D

| Definition | Shorthand | Value |
| --- | --- | --- |
| `Tweens.GpuParticles2DAmountRatio` | `TweenAmountRatio` | float |
| `Tweens.GpuParticles2DExplosiveness` | `TweenExplosiveness` | float |
| `Tweens.GpuParticles2DLifetime` | `TweenLifetime` | double |
| `Tweens.GpuParticles2DRandomness` | `TweenRandomness` | float |
| `Tweens.GpuParticles2DSpeedScale` | `TweenSpeedScale` | double |

## Light2D

| Definition | Shorthand | Value |
| --- | --- | --- |
| `Tweens.LightColor2D` | `TweenColor` | Color |
| `Tweens.LightEnergy2D` | `TweenEnergy` | float |
| `Tweens.Light2DShadowColor` | `TweenShadowColor` | Color |
| `Tweens.Light2DShadowColorAlpha` | `TweenShadowColorAlpha` | float |

## Line2D

| Definition | Shorthand | Value |
| --- | --- | --- |
| `Tweens.Line2DDefaultColor` | `TweenDefaultColor` | Color |
| `Tweens.Line2DDefaultColorAlpha` | `TweenDefaultColorAlpha` | float |
| `Tweens.Line2DWidth` | `TweenWidth` | float |

## Parallax2D

| Definition | Shorthand | Value |
| --- | --- | --- |
| `Tweens.Parallax2DAutoscroll` | `TweenAutoscroll` | Vector2 |
| `Tweens.Parallax2DAutoscrollX` | `TweenAutoscrollX` | float |
| `Tweens.Parallax2DAutoscrollY` | `TweenAutoscrollY` | float |
| `Tweens.Parallax2DScrollOffset` | `TweenScrollOffset` | Vector2 |
| `Tweens.Parallax2DScrollOffsetX` | `TweenScrollOffsetX` | float |
| `Tweens.Parallax2DScrollOffsetY` | `TweenScrollOffsetY` | float |
| `Tweens.Parallax2DScrollScale` | `TweenScrollScale` | Vector2 |
| `Tweens.Parallax2DScrollScaleX` | `TweenScrollScaleX` | float |
| `Tweens.Parallax2DScrollScaleY` | `TweenScrollScaleY` | float |

## PathFollow2D

| Definition | Shorthand | Value |
| --- | --- | --- |
| `Tweens.PathFollow2DHOffset` | `TweenHOffset` | float |
| `Tweens.PathFollow2DProgress` | `TweenProgress` | float |
| `Tweens.PathFollow2DProgressRatio` | `TweenProgressRatio` | float |
| `Tweens.PathFollow2DVOffset` | `TweenVOffset` | float |

## PointLight2D

| Definition | Shorthand | Value |
| --- | --- | --- |
| `Tweens.PointLight2DHeight` | `TweenHeight` | float |
| `Tweens.PointLight2DOffset` | `TweenOffset` | Vector2 |
| `Tweens.PointLight2DOffsetX` | `TweenOffsetX` | float |
| `Tweens.PointLight2DOffsetY` | `TweenOffsetY` | float |
| `Tweens.PointLight2DTextureScale` | `TweenTextureScale` | float |

## Polygon2D

| Definition | Shorthand | Value |
| --- | --- | --- |
| `Tweens.Polygon2DColor` | `TweenColor` | Color |
| `Tweens.Polygon2DColorAlpha` | `TweenColorAlpha` | float |
| `Tweens.Polygon2DOffset` | `TweenOffset` | Vector2 |
| `Tweens.Polygon2DOffsetX` | `TweenOffsetX` | float |
| `Tweens.Polygon2DOffsetY` | `TweenOffsetY` | float |
| `Tweens.Polygon2DTextureOffset` | `TweenTextureOffset` | Vector2 |
| `Tweens.Polygon2DTextureOffsetX` | `TweenTextureOffsetX` | float |
| `Tweens.Polygon2DTextureOffsetY` | `TweenTextureOffsetY` | float |
| `Tweens.Polygon2DTextureRotation` | `TweenTextureRotation` | float |
| `Tweens.Polygon2DTextureScale` | `TweenTextureScale` | Vector2 |
| `Tweens.Polygon2DTextureScaleX` | `TweenTextureScaleX` | float |
| `Tweens.Polygon2DTextureScaleY` | `TweenTextureScaleY` | float |

## Sprite2D

| Definition | Shorthand | Value |
| --- | --- | --- |
| `Tweens.Sprite2DFrame` | `TweenFrame` | int |
| `Tweens.Sprite2DOffset` | `TweenOffset` | Vector2 |
| `Tweens.Sprite2DOffsetX` | `TweenOffsetX` | float |
| `Tweens.Sprite2DOffsetY` | `TweenOffsetY` | float |
| `Tweens.Sprite2DRegionRect` | `TweenRegionRect` | Rect2 |

## Units and constraints

-   Rotation and skew use radians, and positions, sizes, and offsets use the Godot units of each property.
-   `Node2D` global scale and skew follow Godot’s parent-relative decomposition. Under a nonuniformly scaled parent they aren’t independent: changing skew can also change apparent scale. Axis definitions (`...X`, `...Y`) preserve the other components of the property they write, but not every derived transform component.
-   Particle `SpeedScale` and `Lifetime` are `double`, matching Godot’s properties. Emission parameters depend on the configured emitter modes and materials.
-   Path definitions require a `PathFollow2D` under a `Path2D` with a nonempty curve. `ProgressRatio` is normalized; `Progress` is a distance. The node still controls looping and wrapping.
-   Sprite `Frame` needs its sprite frames and animation set up first.
