Post Another

Plugins + Scripts Post Another

Download [<1 MB]

Raycast Improvements​

Added a Raycast Start Distance slider to prevent the DOF raycast from hitting the possessed character's head collider while using Embody.

This allows you to ignore very close objects near the camera, helping the raycast focus on the surface you are actually looking at instead of your own head or face collider.

Also added a Raycast Update Rate option.

You can now choose from Every Frame, 90 Hz, 60 Hz, 30 Hz, 20 Hz, or 10 Hz to control how often the raycast is updated. Lower update rates can reduce raycast processing overhead in scenes with many colliders while keeping focus transitions smooth through continuous interpolation.





Post Another 3.6 — Depth of Field Guide​

Post Another 3.3 includes several internal improvements in addition to the expanded Depth of Field system.

The effect pipeline has been reorganized to reduce cases where results changed depending on the order in which effects or UI controls were enabled. Irregular performance spikes and inconsistent runtime behavior have also been improved.

A preset system has been added for saving and restoring effect configurations. Bloom 1 has been adjusted toward the visual style of the Unity 2018 PostMagic Bloom, while Bloom 2 Spark behavior has also been revised.

This guide focuses on the complete Depth of Field feature set.


1. Overview​

Post Another’s Depth of Field system simulates camera focus by keeping objects near the focus plane sharp while blurring areas in front of and behind it.

The following focus modes are available:

Manual
Selected Target
Center Raycast Spot
Marker + Raycast
AutoFocusPoint

Each mode uses a different method to determine focus distance. Choose the mode that best matches the scene setup and intended camera behavior.


2. Enabling Depth of Field​

DOF Enable​

Turns the entire Depth of Field effect on or off.

OFF
Depth of Field is disabled.

ON
Depth of Field is enabled.

When DOF is enabled, the focus distance is calculated according to the currently selected Focus Mode.


3. Focus Modes​

Manual​

Uses a fixed focus distance entered by the user.

Setting used:

DOF Focus Distance (m)

For example, setting Focus Distance to 1.5m keeps the focus plane approximately 1.5 meters from the camera.

The focus distance does not change automatically when the camera or subject moves.

Recommended Use Cases​

  • Fixed cameras
  • Static portrait framing
  • Screenshot composition
  • Scenes where one distance must remain sharp
  • Shots that do not require autofocus

Selected Target​

Uses a manually selected Atom, controller, or Transform as the focus target.

The following Target options are available:

Target Atom
Body RigidBody
Target Offset X
Target Offset Y
Target Offset Z

The plugin calculates the distance between the camera and the selected target position.

If the target moves, focus follows it automatically.

Person Atoms​

When a Person Atom is selected, body controllers such as the following may be available:

Head
Chest
Hip
Left Hand
Right Hand
Left Foot
Right Foot

The exact list depends on the FreeControllers available on the selected Person Atom.

Object Atoms​

For non-Person Atoms, the target list may include:

Object Root
Transforms inside the loaded asset

When using a CustomUnityAssetLoader Atom, individual Transforms inside the loaded asset may also be available.

Recommended Use Cases​

  • Tracking a character’s face
  • Tracking a hand or prop
  • Maintaining focus on a moving subject
  • Scenes where the creator wants to define the exact target manually

Center Raycast Spot​

Casts a ray from the center of the user’s view and focuses on the surface hit by the ray.

Screen center
→ Raycast
→ Collider surface
→ Focus at the hit distance

The raycast hit position is also used as the center of a circular Spot region.

The inside of the Spot follows the raycast focus distance. The area outside the Spot can receive additional blur depending on the Spot settings.

Features​

  • Immediately focuses on the object at the center of the screen
  • Does not require manual Atom selection
  • Uses the actual Collider surface position
  • Automatically ignores controller-gizmo Colliders
  • Includes short stabilization to reduce focus jumping near Collider boundaries

Recommended Use Cases​

  • First-person scenes
  • VR gaze-centered autofocus
  • Quickly emphasizing the object at the center of the screen
  • Interactive scenes where focus follows the user’s view

Marker + Raycast​

Combines the center-screen raycast with one or more MarkerPoint Atoms.

Unlike Center Raycast Spot, this mode does not use the raycast hit position itself as the final focus target.

Instead, the raycast is used to estimate what the user is aiming at, and the actual focus distance is taken from the most relevant MarkerPoint.

Center-screen raycast
→ Evaluate nearby MarkerPoint candidates
→ Select the most relevant MarkerPoint
→ Focus at the selected marker distance

This allows scene creators to define precise focus locations even when the visible surface or Collider shape is not ideal.


MarkerPoint Naming Rules​

The Atom UID must begin with:

MarkerPoint

The following names are valid:

MarkerPoint
MarkerPoint#1
MarkerPoint#2
MarkerPoint_Head
MarkerPoint_Eyes
MarkerPoint_LeftHand

Matching is case-insensitive.

The following names are also valid:

markerpoint
markerpoint#1
MARKERPOINT_HEAD

MarkerPoint must appear at the beginning of the UID.

The following names are not recognized:

MyMarkerPoint
Head_MarkerPoint
FocusMarkerPoint


How Marker Selection Works​

When the center raycast hits a Collider, MarkerPoint candidates are evaluated using the following factors:

Distance from the center of the screen
Distance from the raycast hit position
Difference between marker depth and raycast hit depth

The default internal weighting is:

Screen-center proximity: 60%
Hit-position proximity: 30%
Depth similarity: 10%

The highest-scoring marker is selected as the focus target.

Marker positions are not averaged or blended together. Only one MarkerPoint is used at a time.


When the Raycast Does Not Hit Anything​

A MarkerPoint can still be selected when no Collider is hit, as long as the marker is sufficiently close to the center of the screen.

In this case, screen-center proximity becomes the primary selection factor.

This allows Marker + Raycast to work with:

  • Markers placed in empty space
  • Objects without Colliders
  • Characters with incomplete Collider coverage
  • Empty Atoms used purely as focus references

Target-Switch Stabilization​

Stabilization is applied to prevent rapid focus switching between nearby markers.

A new target must score approximately 20% higher than the current target.

The new candidate must remain valid for approximately 0.1 seconds.

If the current target is briefly lost, the previous focus is held for approximately 0.2 seconds.

This reduces visible focus flicker when the camera moves across closely placed markers.


Recommended Use Cases​

  • Precise focus points for the face, eyes, or mouth
  • Focusing at a creator-defined point instead of the Collider surface
  • Automatically selecting between several body parts
  • VR gaze-centered autofocus
  • Scenes with separate markers for the head, hands, chest, props, or other important subjects

AutoFocusPoint​

Automatically searches the scene for an Atom with a specific UID and focuses on its position.

This mode is compatible with the AutoFocusPoint convention used by PostMagic scenes.


Exact Atom UID​

The recommended UID is exactly:

AutoFocusPoint

The plugin recognizes the following two exact UIDs:

AutoFocusPoint
AutoFousPoint

AutoFousPoint is supported as a compatibility spelling for older scenes that used the common typo.

Matching is case-insensitive.

The following names are therefore recognized:

autofocuspoint
AUTOFOCUSPOINT
Autofocuspoint

autofouspoint
AUTOFOUSPOINT

Additional characters are not supported.

The following names are not recognized:

AutoFocusPoint#1
AutoFocusPoint_Head
MyAutoFocusPoint
AutoFocusPoint2

Unlike Marker + Raycast, AutoFocusPoint does not use prefix matching. The full UID must match one of the supported names.

Always use the following name for new scenes:

AutoFocusPoint


AutoFocusPoint Position​

If the Atom contains a control storable, the control Transform is used.

If no control storable is available, the Atom’s mainController Transform is used.


Features​

  • Uses one automatic focus point in the scene
  • Compatible with existing PostMagic scenes
  • Does not require manual Target Atom selection
  • Rechecks periodically when the Atom is created after the plugin
  • Applies a distance-based minimum Focus Range to prevent very close targets from becoming too easy to blur

Recommended Use Cases​

  • Compatibility with existing PostMagic scenes
  • A single predefined autofocus position
  • Scenes with one main subject
  • Animating the AutoFocusPoint Atom with Timeline or another animation system

4. Optical Settings​

DOF Focus Distance (m)​

Sets the center focus distance.

Default:

1.5m

Range:

0.01m to 20m

In Manual mode, this value is used directly.

In automatic focus modes, it is replaced in real time by the calculated target distance.

It may also act as a fallback value when no automatic target has been found yet.


DOF Aperture (f-stop)​

Controls the simulated lens aperture.

Default:

5.0

Range:

0.5 to 32.0

Lower Values​

f/0.5
f/1.4
f/2.0

Lower aperture values produce:

  • Shallower depth of field
  • Stronger foreground and background blur
  • More pronounced portrait-style separation
  • Greater sensitivity to focus errors

Higher Values​

f/8
f/16
f/32

Higher aperture values produce:

  • Deeper depth of field
  • A wider sharp region
  • Weaker overall DOF

DOF Focal Length (mm)​

Sets the simulated lens focal length used for the DOF calculation.

Default:

70mm

Range:

10mm to 200mm

Higher values generally create stronger background separation at the same aperture.

Typical Examples​

20–35mm
Wide-angle appearance

50–85mm
General portrait range

100–200mm
Strong telephoto-style compression and background blur

This setting does not directly modify the camera’s actual Field of View. It is used only for the DOF calculation.


DOF Max Blur (px)​

Sets the maximum blur radius generated by the DOF effect.

Default:

12px

Range:

1px to 30px

Higher values produce stronger blur in areas far from the focus plane.

Very high values may increase:

  • Edge bleeding
  • Halos around hair
  • Artifacts around transparent materials
  • Visual discomfort in VR
  • GPU cost
A range of approximately 8–16px is generally suitable for normal use.


5. Target Settings​

Target Atom​

Selects the Atom used by Selected Target mode.

The popup lists Atom UIDs currently available in the scene.

A searchable selector is provided.


Body RigidBody​

Selects the controller or Transform inside the chosen Atom that will act as the actual focus point.

For Person Atoms, this list includes body controllers.

For object Atoms, it may include Object Root or internal asset Transforms.

This setting is mainly used by Selected Target mode.


DOF Target Offset X​

Applies a left/right offset relative to the selected target Transform.

Range:

-1.0m to 1.0m


DOF Target Offset Y​

Applies an up/down offset relative to the selected target Transform.

Range:

-1.0m to 1.0m


DOF Target Offset Z​

Applies a forward/backward offset relative to the selected target Transform.

Range:

-1.0m to 1.0m

Offsets are applied in the local orientation of the selected target Transform rather than in world coordinates.

For example, after selecting a Head controller, adjusting Offset Z can move the focus point closer to the eyes or the visible face surface.


Focus At View Center Now​

Performs a one-time raycast from the center of the current view and stores the hit distance as the Manual Focus Distance.

When pressed:

Center-screen raycast
→ Measure hit distance
→ Store the value in DOF Focus Distance
→ Switch Focus Mode to Manual

This is useful for quickly setting a fixed focus distance in a static shot.

It is not a continuous autofocus function.


DOF Status​

Displays the current DOF state.

Example status messages:

Disabled
Manual focus
Target: headControl
AutoFocusPoint target not found
Center Raycast Spot: no Collider hit
Center Raycast Spot: focusing skybox
Marker + Raycast: MarkerPoint#1
Marker + Raycast: no MarkerPoint* Atoms
Marker + Raycast: no marker near center


6. Focus Response​

DOF Focus Smooth (sec)​

Controls how quickly focus transitions to a newly calculated distance.

Default:

0.08 seconds

Range:

0 to 1 second

Value: 0​

Focus changes immediately.

Advantages:

  • Fast response
  • Precise target tracking
Disadvantages:

  • Small target movement may become visible as focus jitter
  • May feel uncomfortable in VR

Higher Values​

Higher values create slower and smoother focus transitions.

0.05–0.10
Fast and natural response

0.10–0.25
Smooth cinematic response

0.30 or higher
Deliberately slow rack focus


DOF Focus Range (m)​

Sets the distance range around the focus plane that remains protected from blur.

Default:

0.10m

Range:

0 to 1m

For example, with a focus distance of 1.5m and a Focus Range of 0.1m, the protected region is approximately:

1.4m to 1.6m

Higher values keep a wider region around the target sharp.


AutoFocusPoint and Marker + Raycast​

Point targets have no physical size.

To prevent very close point targets from becoming blurred too easily, AutoFocusPoint and Marker + Raycast apply an additional minimum Focus Range based on target distance.

This provides a more stable result during close-up shots even when the configured Focus Range is very small.


DOF Near Strength​

Controls blur strength for areas closer to the camera than the focus plane.

Default:

0.5

Range:

0 to 1

0
No foreground blur

1
Maximum foreground blur

Lower this value if hands or props in front of a character’s face become too heavily blurred.


DOF Far Strength​

Controls blur strength for areas behind the focus plane.

Default:

1.0

Range:

0 to 1

0
No background blur

1
Maximum background blur

For portrait-style shots, Far Strength is commonly set higher than Near Strength.


7. Center Raycast Spot Settings​

DOF Spot Radius​

Controls the radius of the circular sharp region on the screen.

Default:

0.12

Range:

0.01 to 0.5

Lower values create a smaller focused area around the screen center.

Higher values preserve a wider sharp region.

This option is mainly used by Center Raycast Spot mode.

Marker + Raycast does not use the circular Spot mask.


DOF Spot Feather​

Controls the softness of the transition around the Spot boundary.

Default:

0.06

Range:

0 to 0.5

Lower Values​

  • Sharper Spot boundary
  • Circular mask may become more visible

Higher Values​

  • Softer transition between the focused region and the surrounding blur
  • More natural gaze-centered emphasis

DOF Spot Outside Blur​

Controls the additional blur applied outside the Spot region.

Default:

0.65

Range:

0 to 1

Higher values make the area outside the center Spot more strongly blurred.

This setting creates a gaze-emphasis effect rather than a strictly physical lens simulation.


DOF Raycast Max Distance​

Sets the maximum distance checked by raycast focus modes.

Default:

100m

Range:

1m to 200m

Colliders beyond this distance are ignored.

This setting is used by:

Center Raycast Spot
Marker + Raycast


No Hit: Focus Skybox​

Controls what happens in Center Raycast Spot mode when the center ray does not hit a Collider.

OFF​

When no valid hit is found, the previous focus is held briefly and the Spot is then disabled.

ON​

When no valid hit is found, the focus distance moves toward the camera’s far clip plane.

The resulting appearance is:

Distant scenery and the skybox remain sharp.
Nearby foreground objects become blurred.

This does not directly detect or isolate skybox pixels.

Instead, it simulates focusing near infinity by moving the focus distance toward the far background.

This option is mainly intended for Center Raycast Spot mode.


DOF Raycast Debug Marker​

Displays the currently referenced raycast or marker position on screen.

Center Raycast Spot​

Displays the raycast hit position.

Marker + Raycast​

When the raycast hits a Collider:

Displays the raycast hit position.

When no Collider is hit but a MarkerPoint is selected:

Displays the selected MarkerPoint position.

The debug marker is only a visual reference. It does not activate the Center Raycast Spot circular focus mask in Marker + Raycast mode.


8. Marker + Raycast Settings​

DOF Marker Aim Radius​

Controls how far a MarkerPoint may be from the center of the screen while still being considered a valid candidate.

Default:

0.08

Range:

0.01 to 0.50

Lower Values​

  • Only markers very close to the screen center are selected
  • More precise aiming is required
  • Reduces accidental target selection

Higher Values​

  • Markers slightly away from the screen center may still be selected
  • More forgiving in VR
  • Nearby markers are more likely to compete with one another

Recommended Values​

Desktop precision aiming: 0.04–0.08
General use: 0.08–0.12
VR: 0.10–0.16


DOF Marker Hit Radius (m)​

Controls how close a MarkerPoint should be to the raycast hit position to be considered related to the hit object.

Default:

0.50m

Range:

0.05m to 3.0m

Markers closer to the hit position receive a higher score.

Recommended Values​

Eyes, face, hands: 0.15–0.35m
Upper body and character regions: 0.35–0.60m
Large objects: 0.60–1.20m

If the value is too high, markers for separate body areas such as the head and chest may both be treated as closely related.

If the value is too low, a marker may receive a poor score when it is slightly offset from the visible Collider surface.


DOF Marker Debug Info​

Displays detailed Marker + Raycast information in the DOF Status field.

When disabled, only the selected MarkerPoint UID is shown.

Marker + Raycast: MarkerPoint_Head

When enabled, additional information is displayed.

Marker + Raycast: MarkerPoint_Head
score 0.84
hit 1.27m headCollider

When no Collider is hit, the status indicates that the selection was based on screen-center proximity.

This option is useful when tuning Marker Aim Radius and Marker Hit Radius.


9. Reset DOF​

Restores the DOF settings to their default values.

Default values:

Focus Distance: 1.5m
Aperture: 5.0
Focal Length: 70mm
Max Blur: 12px
Near Strength: 0.5
Far Strength: 1.0
Focus Smooth: 0.08 seconds
Focus Range: 0.10m
Spot Radius: 0.12
Spot Feather: 0.06
Spot Outside Blur: 0.65
Raycast Max Distance: 100m
No Hit: Focus Skybox: OFF
Marker Aim Radius: 0.08
Marker Hit Radius: 0.50m
Target Offset X/Y/Z: 0

Reset DOF does not force DOF Enable or the currently selected Focus Mode to change.


10. Focus Mode Comparison​

Manual​

Focus source: User-entered distance
Automatic tracking: No
Collider required: No
Marker required: No

Selected Target​

Focus source: Selected Atom controller or Transform
Automatic tracking: Yes
Collider required: No
Marker required: No

Center Raycast Spot​

Focus source: Center-screen raycast hit position
Automatic tracking: Yes
Collider required: Yes
Circular Spot mask: Yes

Marker + Raycast​

Focus source: MarkerPoint selected using raycast relevance
Automatic tracking: Yes
Collider required: Optional, but improves selection accuracy
Marker required: MarkerPoint* Atom
Circular Spot mask: No

AutoFocusPoint​

Focus source: A single Atom with an exact supported UID
Automatic tracking: Yes
Collider required: No
Marker required: AutoFocusPoint Atom


11. Quick Setup Examples​

Fixed Face Tracking​

Focus Mode: Selected Target
Target Atom: Target Person
Body RigidBody: Head
Focus Smooth: 0.08
Focus Range: 0.10
Near Strength: 0.4
Far Strength: 1.0


Center-Screen Autofocus​

Focus Mode: Center Raycast Spot
Raycast Max Distance: 100m
Spot Radius: 0.12
Spot Feather: 0.06
Spot Outside Blur: 0.65


Skybox Focus​

Focus Mode: Center Raycast Spot
No Hit: Focus Skybox: ON

When looking at the sky, distant scenery remains sharp while nearby foreground objects become blurred.


MarkerPoint-Based Face and Hand Selection​

Add the following Atoms to the scene:

MarkerPoint_Head
MarkerPoint_LeftHand
MarkerPoint_RightHand

Suggested settings:

Focus Mode: Marker + Raycast
Marker Aim Radius: 0.08
Marker Hit Radius: 0.35m
Focus Smooth: 0.08

When the user looks near the face or hands, the most relevant MarkerPoint is selected automatically.


PostMagic-Compatible AutoFocusPoint​

Add an Empty Atom and set its UID exactly to:

AutoFocusPoint

Then select:

Focus Mode: AutoFocusPoint

The compatibility spelling AutoFousPoint also works, but new scenes should always use:

AutoFocusPoint


12. Notes and Limitations​

  • The recommended AutoFocusPoint UID is exactly AutoFocusPoint.
  • AutoFocusPoint does not use prefix matching.
  • AutoFocusPoint#1 is not recognized.
  • AutoFousPoint is supported only for compatibility with older scenes.
  • MarkerPoint UIDs must begin with MarkerPoint.
  • MarkerPoint matching is case-insensitive.
  • MarkerPoint Atoms do not require their own Colliders.
  • Center Raycast Spot requires a Collider to calculate a surface focus distance.
  • Controller-gizmo Colliders are excluded from raycast targeting.
  • Transparent objects and hair may receive imperfect DOF because of render order and depth-writing limitations.
  • Very high Focus Smooth values may cause focus to lag behind moving targets.
  • Very high Max Blur values may increase edge halos and bleeding.
  • Strong Near Blur combined with a very low Aperture may cause discomfort in VR.

13. Summary​

Manual
Uses a fixed user-entered focus distance.

Selected Target
Tracks a selected Atom controller or Transform.

Center Raycast Spot
Focuses on the Collider surface at the center of the screen.

Marker + Raycast
Uses the center raycast to select one MarkerPoint* Atom.

AutoFocusPoint
Automatically tracks a single Atom with the exact UID AutoFocusPoint.

Recommended AutoFocusPoint UID:

AutoFocusPoint

Compatibility typo:

AutoFousPoint

Marker + Raycast prefix:

MarkerPoint


Additional Improvements​

Alongside the new DOF features, this version also reorganizes the plugin’s internal effect pipeline.

Issues where certain effects could produce different results depending on the order in which they were enabled or adjusted in the UI have been improved. Irregular performance behavior, where runtime load could fluctuate even with the same settings, has also been addressed.

A new preset system has been added, allowing users to save and restore their current effect settings.

Bloom 1 has been refined toward a visual style similar to the Unity 2018 PostMagic Bloom, while the Spark rendering in Bloom 2 has also been revised.

Attachments

  • Desktop 2026.07.19 - 05.27.08.05.mp4
    15.1 MB
Use two LUTs.
Bloom 1 features.
Bloom 2 – Spark Light.
vignette
aa
I’ve fixed the issue where the water rig wasn’t displaying correctly.
There was an issue where the camera would occasionally stutter when moved.
My thanks to a1942y for reporting this.
Thanks to that, I discovered that an unnecessary scan was still running, and I was able to reduce frame drops by about 3%.

It also passed VR testing, and high-resolution shots taken with the SuperShot plugin work perfectly.
In large scenes, sometimes the asset bundles load later than the script.
When that happens, the script can miss the shader, causing the screen to turn pink.
To fix this, I added a coroutine that keeps the settings active until the shader is ready, then checks periodically until it finds it
once it does, it stops.
This eliminated the pink-screen issue.
I also replaced the pink error with a simple log message saying the shader wasn’t found.
Once the asset bundles finish loading, the shader is applied automatically, and even if the bundles are unloaded and reloaded, it reapplies itself automatically.
  • Same effect as Post Magic’s LUT


  • Reduced banding


  • SuperShot 8K quality
fhd
fhd.png


8k
8k.png



Of course, the flicker-reduction effect remains unchanged.

Attachments

  • 1760410142.png
    1760410142.png
    2.8 MB · Views: 0
Additional Options



I’ve added the editing features you’ll find in most camera apps.


What’s unchanged
To get a look similar to PostMagic with the LUT, adjust the Gamma settings as follows:
  • Gamma: 0.5
  • Gamma Pivot: 1.0

Vr Test


The issue with the render texture linked to the asset camera (like a smartphone view) is explained below.
problem solving


Discovered Issue


Issue 1
— In the Supershot preview, the effect isn’t showing.
(I used to think it was because I was lightly triggering it to save performance, but there was another reason: it wasn’t even assigned to the Supershot camera. I don’t know much about code, so this kind of thing happens to me a lot—but I’m not embarrassed. If I don’t know, I don’t know.)

Fix — If the effect still doesn’t show in the preview even with “Match PostMagic (LDR/…)” checked, toggle it off and back on.

Regardless of these issues, the effects are applied correctly to the final exported images.



Issue 2
— The effect isn’t applied correctly on mirrors.

Fix — Lower the mirror’s render queue value to 2500 or below.


Improvement
Fixed the flickering that could occur when the PostMagic Bloom effect was enabled.




If you’re focused on mirrors, and the Supershot preview, just remember:

  • Set the mirror’s render queue to 2500 or lower.
  • If the effect doesn’t appear in the Supershot preview, toggle “Match PostMagic (LDR/…)” off and back on.

Code drafting: ChatGPT.

+

It wasn’t intentional, but when PostMagic’s Bloom was on, some outfits would occasionally flicker.
If you simply keep Post Another enabled, the flicker disappears.
I discovered an issue where, in large scenes with delayed loading, you need to manually re-fetch assets if they're called before the asset bundles are loaded.
I’ve modified it so that the calls continue until both the shader and camera are found.

I realized there was an issue with the Levels feature. It stayed active even when the toggle was off.
On top of that, its color-limiting behavior negatively affected the LUT, so I had to remove it







I added bilinear filtering by referencing Post Magic.
Even so, when using the same LUT, the tones come out darker than in Post Magic.
You’ll need to adjust the Gamma and Gamma Pivot values to fix that. After that, while I can’t say it’s 100% identical to Post Magic’s LUT, it looks the same to me. (At least to my eyes…)




gamma 0.5
gamma pivot 1.0
Back
Top Bottom