# PtWorldPos Precision Bug

**URL:** <https://forums.developer.nvidia.com/t/ptworldpos-precision-bug/305256>\
**Category:** Synthetic Data Generation (SDG)\
**Created:** [August 31, 2024, 7:30am UTC](https://forums.developer.nvidia.com/t/ptworldpos-precision-bug/305256 "2024-08-31T07:30:53Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![josiah7](https://sea2.discourse-cdn.com/nvidia/user_avatar/forums.developer.nvidia.com/josiah7/32/282383_2.png) [@josiah7](https://forums.developer.nvidia.com/u/josiah7)\
**Post date:** [August 31, 2024, 7:30am UTC](https://forums.developer.nvidia.com/t/ptworldpos-precision-bug/305256/1 "2024-08-31T07:30:53Z")

</div>

The PtWorldPos AOV precision drops significantly as it moves away from the origin. Possibly due to it being half float but I’m not entirely sure why. See code and screenshots bellow.

The difference between these two images is only the sphere’s and camera’s placement in the scene. The first is from the origin with the sphere centered. The second the sphere and camera is moved to [-500, 500, 500].

Please take a look and let me know if I am incorrect or if there is a fix for this as it makes this aov unusable.

![Capture_1](https://global.discourse-cdn.com/nvidia/original/4X/b/6/0/b603ee3fdd25ed6cf081357566b8cc12ccf0ce9c.png)  
 ![Capture_2](https://global.discourse-cdn.com/nvidia/original/4X/d/8/5/d85e15270d371d3984f007c95bb36d250d12ce10.png)

```auto
import omni
import omni.isaac.core.utils.stage as stage_utils

import omni.replicator.core as rep
import numpy as np

await stage_utils.create_new_stage_async()

distance = 500
cube_scale = 5

camera = rep.create.camera(position=(-distance + 10, distance, distance), rotation=(0, 0, 0), focal_length=20, projection_type="pinhole")
sphere = rep.create.sphere(position=(-distance, distance, distance), scale=cube_scale)
rp = rep.create.render_product(camera, (512, 512))

rep.settings.set_render_pathtraced()

world_position = rep.annotators.get("PtWorldPos")
world_position.attach(rp)

await rep.orchestrator.step_async()

ray_world_pos_data = world_position.get_data()

```

---

<div class="post-metadata">

**Author:** ![josiah7](https://sea2.discourse-cdn.com/nvidia/user_avatar/forums.developer.nvidia.com/josiah7/32/282383_2.png) [@josiah7](https://forums.developer.nvidia.com/u/josiah7)\
**Post date:** [August 31, 2024, 5:50pm UTC](https://forums.developer.nvidia.com/t/ptworldpos-precision-bug/305256/2 "2024-08-31T17:50:31Z")

</div>

Another bug. Enabling `depth32BitAov` will destroy the depth aov. Seems like 32 to 16 bit overflow?

![image](https://global.discourse-cdn.com/nvidia/original/4X/4/e/e/4eee562596e5d5f50d153121a3723f49bb9e4fb1.png)

![image](https://global.discourse-cdn.com/nvidia/original/4X/0/a/0/0a00e6a18548a65c6c930f026edfab68eca4d229.png)

```auto

import omni
import omni.isaac.core.utils.stage as stage_utils

import omni.replicator.core as rep
import numpy as np
import carb

await stage_utils.create_new_stage_async()

carb.settings.get_settings().set("/rtx/pathtracing/depth32BitAov", True)

distance = 500
cube_scale = 5

camera = rep.create.camera(position=(-distance + 10, distance, distance), rotation=(0, 0, 0), focal_length=20, projection_type="pinhole")
sphere = rep.create.sphere(position=(-distance, distance, distance), scale=cube_scale)
rp = rep.create.render_product(camera, (512, 512))

rep.settings.set_render_pathtraced() 

world_position = rep.annotators.get("PtZDepth", device="cpu")
world_position.attach(rp)

await rep.orchestrator.step_async()

ray_world_pos_data = world_position.get_data()

```

---

<div class="post-metadata">

**Author:** ![josiah7](https://sea2.discourse-cdn.com/nvidia/user_avatar/forums.developer.nvidia.com/josiah7/32/282383_2.png) [@josiah7](https://forums.developer.nvidia.com/u/josiah7)\
**Post date:** [August 31, 2024, 6:20pm UTC](https://forums.developer.nvidia.com/t/ptworldpos-precision-bug/305256/3 "2024-08-31T18:20:34Z")

</div>

I was able to “fix” the `PtZDepth` by re-registering it with the annotator registry however I would still classify this as a bug. I am still unable to find a solution to the first question about the `PtWorldPos` aov.

```auto

import omni
import omni.isaac.core.utils.stage as stage_utils

import omni.replicator.core as rep
import numpy as np
import carb
from omni.replicator.core.scripts.annotators import AnnotatorRegistry

await stage_utils.create_new_stage_async()

carb.settings.get_settings().set("/rtx/pathtracing/depth32BitAov", True)

AnnotatorRegistry.register_annotator_from_aov("PtZDepth", output_data_type=np.float32, output_channels=4)

distance = 500
cube_scale = 5

pos = (-distance, distance, distance)
camera = rep.create.camera(
    position=(pos[0] + 10, pos[1], pos[2]), rotation=(0, 0, 0), focal_length=20, projection_type="pinhole"
)
sphere = rep.create.sphere(position=pos, scale=cube_scale)
rp = rep.create.render_product(camera, (512, 512))

rep.settings.set_render_pathtraced()

depth_anon= rep.annotators.get("PtZDepth", device="cpu") # PtZDepth
depth_anon.attach(rp)

await rep.orchestrator.step_async()

depth_data = depth_anon.get_data()

```

---

<div class="post-metadata">

**Author:** ![josiah7](https://sea2.discourse-cdn.com/nvidia/user_avatar/forums.developer.nvidia.com/josiah7/32/282383_2.png) [@josiah7](https://forums.developer.nvidia.com/u/josiah7)\
**Post date:** [September 4, 2024, 6:39pm UTC](https://forums.developer.nvidia.com/t/ptworldpos-precision-bug/305256/4 "2024-09-04T18:39:21Z")

</div>

Bumping. Still haven’t found a solution to the first bug.

---

<div class="post-metadata">

**Author:** ![josiah7](https://sea2.discourse-cdn.com/nvidia/user_avatar/forums.developer.nvidia.com/josiah7/32/282383_2.png) [@josiah7](https://forums.developer.nvidia.com/u/josiah7)\
**Post date:** [September 26, 2024, 4:18pm UTC](https://forums.developer.nvidia.com/t/ptworldpos-precision-bug/305256/5 "2024-09-26T16:18:54Z")

</div>

Still no update on this. Seems like a serious bug.

---

<div class="post-metadata">

**Author:** ![josiah7](https://sea2.discourse-cdn.com/nvidia/user_avatar/forums.developer.nvidia.com/josiah7/32/282383_2.png) [@josiah7](https://forums.developer.nvidia.com/u/josiah7)\
**Post date:** [November 3, 2024, 10:48pm UTC](https://forums.developer.nvidia.com/t/ptworldpos-precision-bug/305256/7 "2024-11-03T22:48:05Z")

</div>

Can I get some confirmation if this is a bug or if there is some way to fix this?

---

<div class="post-metadata">

**Author:** ![rlei](https://sea2.discourse-cdn.com/nvidia/user_avatar/forums.developer.nvidia.com/rlei/32/431051_2.png) [@rlei](https://forums.developer.nvidia.com/u/rlei)\
**Post date:** [July 26, 2025, 8:41pm UTC](https://forums.developer.nvidia.com/t/ptworldpos-precision-bug/305256/8 "2025-07-26T20:41:57Z")

</div>

Bump! Trying to render world positions AOV for the Isaac Factory and getting

 ![image](https://global.discourse-cdn.com/nvidia/original/4X/a/9/f/a9f3ce067090a19646a155c5c4b5830bb0d20755.png)

That seems un-expected – any points in the right direction would be fantastic
