User:AnkushKhandelwal/OpenGLRendering

From BRL-CAD
Revision as of 19:10, 11 March 2015 by AnkushKhandelwal (talk | contribs) (Created page with "'''OpenGL Framework''' Brief Description: The Objective of the project is to Re-factor and re-write the existing code of OpenSCAD preferably by implementing or using an existi...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

OpenGL Framework Brief Description: The Objective of the project is to Re-factor and re-write the existing code of OpenSCAD preferably by implementing or using an existing rendering/scenegraph framework for cleaner rendering code. This code can be imported to softwares like GLES2 which opens up more possibilities like WebGL and native support for ARM Linux platforms that usually only provide GLES2 implementation.

Personal Information

  • Name: Ankush Khandelwal
  • Email-address: ankush.rawat@gmail.com
  • IRC username: ank_95
  • Contact Number: +918886330979

Background Information

  • Pursuing Computer Science from IIIT Hyderabad, Hyderabad, Andhra Pradesh, India. Currently in 2nd year.
  • Worked in c, c++ and OpenGL 2/3.
  • Interested in Graphics and front-end development.
  • I am a Linux user and deeply interested in Open Source World.
  • I am familiar with git. Commit my work on git using github account(github.com/ankush1995).

Project Information

Title: Improve OpenGL Rendering

Brief Summary

  • The Main Objective of the project is to get a cleaner rendering code and also better support and better responsiveness for bigger models. The current rendering infrastructure of OpenSCAD is scattered around with various bits partially belonging to external packages (CGAL, OpenCSG)and the usage of OpenGL in many places degrade rendering performance of large models. Hence It is required to re-factor and re-write the existing infrastructure.

Detailed Description

  • For the above described project following features and task needs to be done.

Identify Goals and Requirements First and foremost task needs to be done is collecting info about existing OpenGL frameworks which have many advantages as well as disadvantages compared to OpenScad. By understanding them, we are able to identify what are the goals that needs to be achieved and also what problems can arise in meeting those goals. Here is some information https://github.com/openscad/openscad/wiki/Information-About-Other-Frameworks.

Creating or Selecting Scenegraph/Rendering Library The Goal of this library would be to provide rendering data structure to abstract buffer objects and also to manage Qt event mappings to camera. This Library will help to refactor internal OpenSCAD code instead of the current rendering used in OpenSCAD. The Rendering using the Library will be more simple and clean, it will be helpful for calling CGAL objects, Polyset objects and helper objects like axis display.

Spliting the OpenGL code in Different classes W need to split out the openGL code from the polyset classes and all other classes and make a different class or data structure and it is used directly. A patch has been submitted in which the OpenGL code is in one file and other renderin code is in another : https://github.com/openscad/openscad/pull/1249