Font Size: a A A

Design And Implementation Of A 3D Graphic Library Based On HTML5 WebGL

Posted on:2018-05-25Degree:MasterType:Thesis
Country:ChinaCandidate:L ChangFull Text:PDF
GTID:2348330542951589Subject:Software engineering
Abstract/Summary:PDF Full Text Request
WebGL(Web Graphics Library)technology allows front-end developers to draw 3D graphics in the HTML5 canvas window.Using WebGL directly to develop interactive 3D graphics applications is both complex and time-consuming.In order to make good use of WebGL,developers need to understand the details of WebGL and learn complex shader syntax.As a result,front-end developers typically use a WebGL-based library to develop 3D graphics applications,which is designed to provide developers with easy-to-use JavaScript APIs.So that developers can use these APIs to create beautiful 3D graphics without having to learn WebGL.Therefore,the main works of this thesis are:(1)Analyzing the existing WebGL-based 3D graphics libraries,designing most of the functionality of the 3D graphics library,providing the scene,camera,and renderer for the developer to draw the 3D graphics,using the hierarchical structure to organize the 3D graphics in the scene,using bone and the bones blending algorithm to deform 3D graphics,designing and implementing tweened animation for 3D graphics.(2)Solving the problem that most of the 3D graphics library do not handle graphics selection and collision as events,using rays to pick up 3D graphics and then generatingpick-up events,using the hierarchical bounding box algorithm for collision detection and then generating collision events,designing and implementing the 3D graphics library's own event handling mechanism.(3)Using the AABB hierarchical bounding box to improve the efficiency of detecting graphics selection and collision events,improving update method of the AABB hierarchical bounding box to further improve the efficiency of the algorithm.(4)Providing a way to load external model files so that developers can use complex 3D graphics.(5)Testing the functionality and performance of 3D graphics libraries.In this way,front-end developers can use the 3D graphics library to create or load three-dimensional graphics and control the transformation,deformation or animation of three-dimensional graphics.Developers can also use the event processing mechanism to develop interactive functions of 3D graphics applications.
Keywords/Search Tags:WebGL, 3D graphics library, Event driven, Collision detection
PDF Full Text Request
Related items