Hey all i m applying for gsoc 2021, any feedback on my proposal is appreciated.
hoping to implement it
Profile
Name: Jishan Singh
Location: Punjab, India
Email: [email protected]
IRC: ringmaker
GitHub: jishansingh
Synopsis
Idea of the project is to improve workflow and using better approach for smoother geometry, These are improvements i propose
- Adaptive resolution, currently it is implemented using bezier handles sizes, using adaptive bezier it will have more points along curved corners, and less points along straight lines.
- Calculating Curve length and displaying it in ui.
- Bezier handle modify acc to other object
- Bezier workflow improvement
Benefits
Workflow with Curves will improve significantly and ui will be much simpler.Adaptive resolution will make geometry smoother and do it efficiently. Handles of curve could be set perpendicular to the object.
Deliverables
The project should be expected to include:
- Better resolution distribution in curves
- Viewing the curve’s length
- Modify bezier handles using center for reference
- Curve would be much smoother than before
Project Design
Adaptive resolution:
Adaptive resolution interface design is shown very well here
I plan on implementing it the same way, adding a boolean field for adaptive resolution, specified resolution will be adjusted. I’m using the approach discussed here. Author uses a much better approach to determine the flatness of the curve.
Length of Curve: Length of curve will be displayed upon clicking calculate curve length, it could be set to automatically be updated upon checking the boolean. It would calculate length with accuracy depending on resolution.
Reference center for bezier handles: With center for reference on bezier handles it will help making sector, handles will point perpendicular to line joining center on assignment and handles will be updated on changing center position, but once handles are unselected center will no longer update the handles. Also handles could be swapped using shortcut.
Bezier Workflow Improvement: Improvement in workflow of bezier tool as discussed here. Shortcuts to be added will be:
- Click to add new point
- Ctrl+click to remove(s) point
- Alt+click to add point with vector handle
- Ctrl+click on curve to make a cut
- On creation of new point, dragging the cursor will modify the handle
Project Schedule
Timeframe | Plans |
---|---|
June 7 - June 17 | Modify the bezier handle using freely movable center |
June 17 - July 2 | Adaptive resolution on curve |
July 3 - July 16 | Running test cases and debugging as this type of change could lead to many bugs, also prepare for evaluation |
July 17 - July 24 | Calculate Curve length, display in ui |
July 25 - August 5 | Bezier workflow improvement |
August 5 - August 16 | handling bugs, and documenting features |
Bio
I am a third-year undergraduate doing a Bachelor’s degree in Computer Science and Engineering at Indian Institute of Information and Technology(IIIT), allahabad. I have been a Blender user for about two years now, and I am familiar with modeling, sculpting, shading and basic tools. I have experience in C/C++ ,python(also used blender module) ,blender motivated me to look in the field of graphic programming so i started learning opengl, lightning equations, basic batching etc ([1],[2]). Then I started making some games from scratch, understanding that the same code is being copied again. I started making game engine ([3],[4]) from cherno tutorials, after which I started understanding the codebase of blender. I have submitted a patch ([1]) and worked on some issues (check profile).I didn’t work on many issues but I have good understanding of source code concerning this proposal and hope learning more while in gsoc.