---
title: SKFieldNode
framework: spritekit
role: symbol
role_heading: Class
path: spritekit/skfieldnode
---

# SKFieldNode

A node that applies physics effects to nearby nodes.

## Declaration

```swift
class SKFieldNode
```

## Mentioned in

Getting Started with Physics Adding Physics Fields to a Scene

## Overview

Overview There are many different kinds of field nodes that can be created, each with different effects. The SKFieldNode section lists the field types you can create using SpriteKit, including a type that allows you to apply custom forces to physics bodies. Instantiate the appropriate kind of field node and then add it to the scene’s node tree. When the scene simulates physics effects, a field node applies its effect to a physics body so long as the following are true: The field node is in the scene’s node tree. The field node’s isEnabled property is true. The physics body is attached to a node that is in the scene’s node tree. The physics body is located inside the field node’s region (see region). The physics body is not located inside the region of another field node whose isExclusive property is set to true. A logical AND operation between the field node’s categoryBitMask property and the physics body’s fieldBitMask property results in a nonzero value. tip: While it is useful to know that SpriteKit measures items in the International System of Units, the precise numbers are not that important. It doesn’t matter much whether your rocket ship weights 1 kilogram or 1,000,000 kilograms, as long as the mass is consistent with other physics values used in the game. Often, proportions are more important than the actual values being used.

## Topics

### Getting Started with Field Nodes

- [Adding Physics Fields to a Scene](spritekit/adding-physics-fields-to-a-scene.md)

### Creating Field Nodes

- [dragField()](spritekit/skfieldnode/dragfield().md)
- [electricField()](spritekit/skfieldnode/electricfield().md)
- [linearGravityField(withVector:)](spritekit/skfieldnode/lineargravityfield(withvector:).md)
- [magneticField()](spritekit/skfieldnode/magneticfield().md)
- [noiseField(withSmoothness:animationSpeed:)](spritekit/skfieldnode/noisefield(withsmoothness:animationspeed:).md)
- [radialGravityField()](spritekit/skfieldnode/radialgravityfield().md)
- [springField()](spritekit/skfieldnode/springfield().md)
- [turbulenceField(withSmoothness:animationSpeed:)](spritekit/skfieldnode/turbulencefield(withsmoothness:animationspeed:).md)
- [velocityField(with:)](spritekit/skfieldnode/velocityfield(with:).md)
- [velocityField(withVector:)](spritekit/skfieldnode/velocityfield(withvector:).md)
- [vortexField()](spritekit/skfieldnode/vortexfield().md)
- [customField(evaluationBlock:)](spritekit/skfieldnode/customfield(evaluationblock:).md)
- [SKFieldForceEvaluator](spritekit/skfieldforceevaluator.md)

### Determining Which Physics Bodies Are Affected by the Field

- [isEnabled](spritekit/skfieldnode/isenabled.md)
- [isExclusive](spritekit/skfieldnode/isexclusive.md)
- [region](spritekit/skfieldnode/region.md)
- [minimumRadius](spritekit/skfieldnode/minimumradius.md)
- [categoryBitMask](spritekit/skfieldnode/categorybitmask.md)

### Configuring the Strength of the Field

- [strength](spritekit/skfieldnode/strength.md)
- [falloff](spritekit/skfieldnode/falloff.md)

### Configuring Other Field Properties

- [animationSpeed](spritekit/skfieldnode/animationspeed.md)
- [smoothness](spritekit/skfieldnode/smoothness.md)
- [direction](spritekit/skfieldnode/direction.md)
- [texture](spritekit/skfieldnode/texture.md)

## Relationships

### Inherits From

- [SKNode](spritekit/sknode.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSCoding](foundation/nscoding.md)
- [NSCopying](foundation/nscopying.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)
- [NSSecureCoding](foundation/nssecurecoding.md)
- [NSStandardKeyBindingResponding](appkit/nsstandardkeybindingresponding.md)
- [NSTouchBarProvider](appkit/nstouchbarprovider.md)
- [NSUserActivityRestoring](appkit/nsuseractivityrestoring.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)
- [UIActivityItemsConfigurationProviding](uikit/uiactivityitemsconfigurationproviding.md)
- [UICoordinateSpace](uikit/uicoordinatespace.md)
- [UIFocusEnvironment](uikit/uifocusenvironment.md)
- [UIFocusItem](uikit/uifocusitem.md)
- [UIFocusItemContainer](uikit/uifocusitemcontainer.md)
- [UIPasteConfigurationSupporting](uikit/uipasteconfigurationsupporting.md)
- [UIResponderStandardEditActions](uikit/uiresponderstandardeditactions.md)
- [UIUserActivityRestoring](uikit/uiuseractivityrestoring.md)

## See Also

### Physics Simulation

- [Getting Started with Physics](spritekit/getting-started-with-physics.md)
- [SKPhysicsWorld](spritekit/skphysicsworld.md)
- [SKPhysicsBody](spritekit/skphysicsbody.md)
- [SKPhysicsContact](spritekit/skphysicscontact.md)
- [SKPhysicsContactDelegate](spritekit/skphysicscontactdelegate.md)
