# Create Custom Meshes

> Learn how to create custom meshes in Babylon.js.

Source: https://doc.babylonjs.com/features/featuresDeepDive/mesh/creation/custom

## Custom Meshes

Of course, there will be times when the meshes already available in Babylon.js do not serve your needs. In this case, you can develop your own meshes from vertex data. Vertex data requires a list of vertices and indices to show how the vertices are formed into triangular facets to build the mesh. For lighting, material, and texture, you will need to provide vertex normals, colors, and uv values. When the existing meshes partially meet your needs, you can obtain their vertex data and update it, provided you create the mesh with the update option set to true in the first place.

## Pages in this section

- [Create Custom Meshes From Scratch](https://doc.babylonjs.com/features/featuresDeepDive/mesh/creation/custom/custom.md): Learn how to create custom meshes in Babylon.js.
- [Updating Vertices](https://doc.babylonjs.com/features/featuresDeepDive/mesh/creation/custom/updatingVertices.md): Learn how to update vertices of a mesh in Babylon.js.
- [Vertex Normals](https://doc.babylonjs.com/features/featuresDeepDive/mesh/creation/custom/vertexNormals.md): Learn all about vertex normals in Babylon.js.
