---
title: SCNFieldForceEvaluator
framework: scenekit
role: symbol
role_heading: Type Alias
path: scenekit/scnfieldforceevaluator
---

# SCNFieldForceEvaluator

The signature for a block that SceneKit calls to determine the effect of a custom field on an object.

## Declaration

```swift
typealias SCNFieldForceEvaluator = (SCNVector3, SCNVector3, Float, Float, TimeInterval) -> SCNVector3
```

## Discussion

Discussion You use this type of block to create a custom physics field with the customField(evaluationBlock:) method. SceneKit calls your block once for each object in the field’s area of effect, on each step of the physics simulation. note: By default, one simulation step occurs for each frame rendered. For example, if your view renders at 60 frames per second and three bodies are in the field’s area of effect, SceneKit runs your block 180 times per second. To avoid reduced rendering performance, take care not to perform extensive computation in this block. The block takes the following parameters: Your block uses these parameters to compute and return an SCNVector3 force vector, which SceneKit then applies to the object affected by the field.

## See Also

### Constants

- [SCNPhysicsFieldScope](scenekit/scnphysicsfieldscope.md)
