Occlusion Aware Surface Processing
User-guided surface selection operations which are straightforward in a plane become challenging on non-strictly convex surfaces because of self-occlusions. Since the occlusions change with the view, users have to alternate between moving to an unobstructed view and performing those operations.
We propose a method that enables operations like selecting or cutting in a single view, by mapping a user drawn screen space curve as a continuous projection onto the object’s surface, unaffected by occlusions, to guarantee a seamless manifold cut.
The algorithm is already implemented, and the student will have access to the source code. Only the following tasks remain:
1- Implement a GUI for the demo, using QT libraries.
2- Adding texture painting feature.
3- Implement an acceleration structure, and use ray tracing instead of rasterization to project the 2D curve on the 3D surface.
4- Convert the program into a blender or Maya plugin.
The student will choose one of Tasks 1 and 4. Tasks 2 and 3 are up to discussion.
- Knowledge of English language (source code comments and final report should be in English)
- Knowledge of C++
- Knowledge of GLSL
- Knowledge of Qt