# VR sculpting

## Sculpting feature

In VR-BESO, the sculpting system can create a preferred structural design based purely on subjective preferences. The system is launched after clicking the ‘[Draw](/vr-beso/gui/modeling-page.md)’ button on the ‘[Modeling](/vr-beso/gui/modeling-page.md)’ panel. A cubic workspace of  2m x 2m x 2m around the user is created, as shown in Fig. 1(a). Then, the space is divided into 256 voxels, where users can use a sculpting brush to draw 3D models. The sculpting tool has a spherical brush stroke in front of the right-hand controller, as shown in Fig. 1(b). The stroke size can be adjusted by manipulating the thumbstick on the right-hand controller. When the user presses the right index trigger, a spherical geometry is generated at the stroke by calculating a signed distance field (SDF) and executing the Marching Cubes (MC) algorithm \[1,2]. Furthermore, holding the right index trigger while waving the controller produces a tubular geometry that traces the moving path. By using the sculpting brush, users can intuitively and flexibly draw their preferred 3D models. More implementation details of the sculpting brush can be found in \[3,4]. The related buttons can be found in the '[Modeling](/vr-beso/gui/modeling-page.md)' page.

<figure><img src="/files/p6c6J9PR4uKQhFYFPFwp" alt=""><figcaption><p>Fig. 1. (a) Visualization of the workspace and (b) the sculpting operations.</p></figcaption></figure>

## I/O feature

In addition to modeling in VR-BESO, the sculpting system supports users in importing or exporting 3D models. The importing feature can read complex geometries from external computer-aided design (CAD) software. This can help users improve work efficiency and enhance modeling flexibility. The imported models are initially employed to calculate an SDF within the workspace, which is subsequently used to reconstruct an editable model via the MC algorithm \[1]. Moreover, users can export the sculpted models or the optimal topologies to the desktop computer. This enables users to further improve the output model in external CAD software. The related buttons can be found in the '[Modeling](/vr-beso/gui/modeling-page.md)' page.

## References

\[1] W. E. Lorensen and H. E. Cline. “Marching cubes: A high resolution 3D surface construction algorithm,” *ACM SIGGRAPH Computer Graphics*, vol. 21, pp. 163–169, 1987. (DOI: 10.1145/37402.37422)

\[2] M. Botsch, L. Kobbelt, M. Pauly, P. Alliez and B. Lévy, *Polygon Mesh Processing*, CRC Press, 2010.

\[1] C. W. Chen, M. C. Hu, W. T. Chu and J. C. Chen, “A real-time sculpting and terrain generation system for interactive content creation,” *IEEE Access*, vol. 9, pp. 114914–114928, 2021. (DOI: 10.1109/ACCESS.2021.3105417)

\[2] T. A. Galyean and J. F. Hughes, “Sculpting: an interactive volumetric modelling technique,” in *Proceedings of the 18th Annual Conference on Computer Graphics and Interactive Techniques, Jul. 28–Aug. 2, 1991*, pp. 267–274. (DOI: 10.1145/122718.122747)


---

# Agent Instructions: 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:

```
GET https://albertlidesign.gitbook.io/vr-beso/tutorial/vr-sculpting.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
