> For the complete documentation index, see [llms.txt](https://universgen.gitbook.io/shader-world/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://universgen.gitbook.io/shader-world/fundamentals/kick-start/get-height-anywhere.md).

# Get Height anywhere

After selecting the Shader World you want to request, simply send a set of points with the X and Y coordinates you want to precisely know the height of, and assign a callback function that will be called upon processing.

You can request up to 25 points at a time right now, but this number could be exposed for futher customization. It means almost 25 points per frame in the best case scenario, which at 30/60fps respectively means a best case scenario of  750/1500 samples per seconds.

With 4 control points for a boat, updating at 30 FPS, it would means over a hundred boats at the same time.

&#x20;If you intend to request points from multiple sources, you would have to centralize those sources before interacting with Shader World, as you can only have one callback assigned.

An alternative would be to replace this callback system by a set of [TOptional ](https://docs.unrealengine.com/4.27/en-US/API/Runtime/Core/Misc/TOptional/)variables, which would be a drastic change from the current system, merely adding a layer of book keeping of requests.

<figure><img src="/files/6NwriZA5uKuTaLG4gWsu" alt=""><figcaption><p>Blueprint callable function to retrieve height anywhere</p></figcaption></figure>

An example of height request can be found on the reference demo map, if you open the *BP\_read* actor which is requesting height from the water surface over 30 times per second.

<figure><img src="/files/KOWMtEPVHiNgIO9SXkeY" alt=""><figcaption><p>BP_read Actor from the reference demo map</p></figcaption></figure>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://universgen.gitbook.io/shader-world/fundamentals/kick-start/get-height-anywhere.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
