COMP3811: Computer Graphics Coursework 2 Interactive Animated Scenes with OpenGL Due Date: 23 December 2021, 5 pm Marc de Kamps November 11, 2021 Marking This coursework determines your mark for 70 %. In case of second attempt it will be capped to the appropriate mark. Technical Assistance Reasonable questions about running OpenGL on the lab machines or feng-linux will be answered during office hours. Whatever platform you use, it is strongly recommended that occasionaly compile and run on the lab machines or feng-linux. Submission Instruction and Note on Plagiarism Submission should be done through the VLE by the due date. Submissions through the SSO will be ignored and result in 0 marks. Your submission should be in a single tar file that contains a report and source code. Ideally, source should must be provided with a Makefile and must compile and run on feng-linux. Where this is not possible, you should record a video demonstrating aspects of your coursework, and be prepared to provide a demo, showcasing your solution. The report is basis for assessment, with the source code as supporting evidence for asser- tions made in the report. Answer all the questions and provide the explanations that are asked for. Refer to your code in explanations, but do not provide answers like: ’see source code’. You are allowed to discuss ideas with colleagues. You must program independently and not base your submission on any other code than was provided during the tutorials, and textures which are in a tar file called textures.tar, which is located in the coursework 2 folder on the VLE, the same folder which contains this specification. Changing variable names in someone else’s code is not a good idea. Creation of an Interactive Animated Scene using OpenGL Using Qt’s QGLWidget you will create an application that demonstrates the ability to render visual scenes using OpenGL. 1 You are free to use GLFW instead of Qt. Take into consideration that GLFW is not a GUI toolkit and does not provide means to draw UI elements out of the box. Therefore, you will need to find a different way to provide the required UI interaction elements. The ”Dear ImGui” library is a reasonable alternative, however this should nevertheless be considered an advanced choice that will result in extra work for you. You are free, within some limits, to create a scene of your choice. Assessment will be based on the sophistication of the scene and scene elements as well as possibilities for user interaction. The scheme below sets out minimum requirements that must be met for grading in certain bands. Grading within a band is assessed on: coding style and commenting, explanation of the design choices and implementation in the report, and visual impact. • 40%-50%: You must create a visual scene that demonstrates a reasonable complexity through instancing. Examples could be a group of buildings, constructed from cubes, body shapes con- structed from cylinders and spheres and a combination thereof. Light and material properties must be chosen that allow specular and diffusive light contributions to be recognised. You are allowed to use glut objects. The report must explain your design. Your scene must deviate substantially from the simple scenes that were provided during the tutorials. • 50%-60%: Your scene must fulfil all requirements for the 40%-50% band. Your scene must contain at least one element of user interaction, for example, a slider to manipulate viewing angles or a dialog box to set material or light properties. • 60%-70%: Your scene must fulfil all requirements for the lower bands, as well as contain an element of animation, for example rotating or spinning objects. The scene must contain at least one convex object that you have constructed from polygons. The scene must contain texture mapping. Some texture images will be provided in a tar file that will be present with the coursework brief. The ones that are provided must be used, but you are free to add your own. • 70%-100%: Your scene must fulfil all requirements for the lower bands and contain an object that requires hierarchical modelling and displays motion in some of its parts. This object itself must move in a circular path through the scene. You must use various elements of user interaction, for example controls to set the radius or speed of the object, dialog boxes to control material properties, etc. Interaction purely by mouse of keyboard does not qualify as one of these elements. [100 marks] These bandings are indicative In marking we assess whether the elements are present in your cousework and assign them a score. We will also rate how creative you were in applying these elements and apply a reweighting that somewhat favours inventive and creative use of them in your coursework (look and feel). The exact weighting coeefficients will be on the feedback sheet. [100 marks total] 2
欢迎咨询51作业君