top of page
Writer's pictureDrew Nelson

Manual Mesh Manipulation and Texture Operations

Updated: Dec 16, 2020

In this project, I tackle on allowing users manipulate a mesh and the texture displayed on the mesh. The user is given the option to select between two different rendering types - a standard square mesh and a cylinder. For both types, users can dynamically specify the dimension (or resolution) of the mesh. The vertex positions and triangles are all determined at runtime.


Mesh Manipulation

To alter the mesh, users are able to manipulate each vertex that makes the up overall mesh. The higher the resolution of the mesh, the more vertices the user can control.


As the vertices are operated on, the normals of each triangle are recalculated to provide accurate lighting on the texture.


These same concepts also apply the cylinder. However, only one vertex on each level of the cylinder can be modified. This provides "sweeping" motion on the cylinder. This could be used to help define particular shapes based of an initial cylinder object (e.g. a travel mug, a drinking cup, etc.).



Additionally, the degrees in which the cylinder is enclosed (or wrapped) was also added as a control for the user. This simple addition can help show how improving the resolution of the cylinder can give us a more "defined" cylinder due to the increased number of edges it can use to create a circle.


Texture Manipulation

To verify the understanding of vertex translation, rotation, and scaling; manipulation of the texture was required. Controls were added to the scene which allow us to: translate the texture as if it were being moved along a surface and repeated, rotate the texture as if it were rotating on the y-axis, and scale the texture to grow/shrink the image.


A short demo of the project can be seen here:


Languages and Tools Used:

Unity3D and C#


42 views0 comments

Recent Posts

See All

댓글


bottom of page