讲解:CSI4130、Java、Java、GL Tutorials Statistics、、|

Winter 2020: CSI4130Assignment 1Due: Friday, March 6th, 2020, 11:00pm in Virtual CampusUniversity of Ottawa - Universit´e d’Ottawa1 Viewing and Multiple Viewports [10 in total]In this assignment, you will build an interactive animation of a scene shown from two viewpointsin two viewports. The basis of this assignment is Laboraory 5 - Object Loading and Viewing. Asin this laboratory, you will need to load an object file with materials and texture and displaythe object. This part will be largely the same as in the laboratory but see Question 1.3 forimprovements. The laboratory showed a rendering from the camera but in this assignment youwill need to show two views: one from the camera as usual and an orthographic view of the scene,camera and viewing volume. A similiar OpenGL 1.1 application can be found in Nate RobinsOpenGL tutors.This is an individual assignment. You are not allowed to use any other library except Three.jsand dat.gui.js.Figure 1: Sketch of Application based on Nate Robins Open GL Tutorials (Source code and modelavailable at https://user.xmission.com/˜nate/tutors.html)1.1 Two Viewports [4]Starting with the lab, add a second viewport to create a world view in addition to the camera view.Your world view needs to be always an orthographic view showing the camera, the loaded object1and all of the viewing volume. Note for this part of the assignment, you will not need to update yourworld view. You will find an example for using two camera views for two different viewports in theTHREE documentation in the camera example https://github.com/mrdoob/three.js/blob/master/examples/webgl camera.html.Note: Please do not add the animaCSI4130作业代写、代做Java语言作业、Java程序实验作业调试、代写GL Tutorials作业 代写留学生 Stion changing the viewing from the example.1.2 Viewing Volume [3]Add lines marking the viewing volume in the world view. Your lines must update based on theparameters set with the dat.gui interface. Make sure to change the world view such that it alwaysshows the complete viewing volume. The scene view will have to remain an orthographic view.Keep the a tight margin around the viewing volume (i.e., your scene view must adjust). Let theuser rotate the view around the center of the scene and vary the radius large enough such thatthe viewing volume, scene and camera always remain in view.1.3 Material and Texture Loading [3]Currently, the object is rendered with the default material and a hard-coded texture map. Thiswill obviously only work for a specific object file. Instead wavefront obj specify these parametersin a material file (extension *.mtl). This is a text file, see tiger.mtl. THREE has a built-inmaterial laoder, use it to properly load different textured and non-textured obj files. I providethree example obj files with this assignment. Your code has to work with these three files. Yourcode does not need to handle arbitrary obj files containing more than one object and/or manymaterial files.1.4 Bonus: User Interface [2]Give the user the option to drag the borders of the viewing volume to interactively set viewparameters.2 SubmissionYour assignment submission must consist of your Javascript and html file. As you are workingwith the current version of Three.js and dat.gui.js, you will not submit these.FilenamesceneViewer.jssceneViewer.htmlYou must submit the files listed above and no library files via Virtual Campus.2转自:http://www.3zuoye.com/contents/9/4821.html

你可能感兴趣的:(讲解:CSI4130、Java、Java、GL Tutorials Statistics、、|)