Peter Young
Visualisation Research Group

3D Graphics and Virtual Reality

Lecture Notes


  1. Information
  2. VRML Browsers
  3. VRML Editing Tools
  4. Cool VRML worlds from the practicals
  5. Lecture Notes
  6. Lecture Slides
  7. Overview Lecture Slides
  8. Practical classes
  9. Example exam questions
  10. VRML97 Specification
  11. VRML Examples and GLView download
  12. Course Evaluation
  13. Download this web page for offline viewing
  14. Revision History

This excellent Cartman VRML model was created for practical 3 by Tim Saunders using nothing but primitive objects, standard transformations and careful selection of materials and colour. Soon to be abducted by aliens in a joint venture between Tim and Chris Schofield which will appear in the new coolworlds gallery over christmas.

Can everyone please email me the worlds they have created in the practicals, I will upload the best of them to the new coolworlds gallery. Send your files (including any textures or inlined files) to before the end of term.


These pages provide information and resources for the first year course on 3D computer graphics and virtual reality. The course consists of six lectures and should include at least two practical classes and an exam question (that is, as far as I am aware!). You should not need to buy any books for this course as all the material covered will be included in the lecture notes. If you do want to find out more information on the subject, you can find suitable references in Lecture 1. If you want to contact me for any reason, either about the lectures or a more general interest in the subject, then see my contact information.

VRML Browsers

A lot of people have asked me where they can download a VRML browser to try out some of the examples etc. The best place to look is the VRML repository which is at This contains a big list of all the various VRML utilities you can download (free or otherwise).

The VRML browser which was used for demonstrations in the lectures, GLView by Holger Grahn, is now freely available from This file has also been mirrored locally, details below. Alternatively, Superscape Ltd Have released the latest version of their excellent Viscape browser. Originally this only supported their proprietary VRT/SVR format but it now also supports VRML. You can download this from Please note that you will more than likely see some difference in VRML worlds when viewing on different browsers. If you want to play safe then use GLView as this should give you exactly what you see in the lectures. A lot of browsers position you differently on world load-up, so if you get a blank screen or a mess when you know the VRML world should work, try moving around a little or moving backwards - this often helps.

VRML Editing Tools

I have been asked many times about the availability of graphical editing tools for VRML. Up until now, I have had no real suggestions for a good, freely available system. However, I have recently been shown a program called SPAZZ which appears to be a good, user-friendly editing package for VRML. It is also currently free - though is only a beta version at the moment, so has an expiry date, however a reinstall of the latest version should solve this problem when the time comes. You can get further information on the Spazz home page, at Alternatively, a local copy of the installation (as of 16/12/98) is also available. This file is approximately 3.8Mb in size.

On another note, a few people mentioned that they hated to use Notepad for editing their VRML worlds. Well, an excellent text editor which I use is called Programmer's File Editor (PFE for short) and is freely available. I strongly recommend this for any text-based editing. You can get the latest version of PFE from the PFE Homepage.

Cool VRML worlds from the practicals

One of the practicals allowed people to create whatever VRML model they wanted. I only expected some nice simple worlds that demonstrated you understood the basic principles of VRML.... some people just couldn't resist showing off though :-)

This course was run twice in 1998, once in February 98 and again near December 98. The February course only had two practical sessions, and the students did not have any software such as GLView available on IT service machines. Hence the practical consisted of me wandering round with a laptop checking VRML worlds, most of which were being viewed for the first time. So some of the results were really excellent considering. The second course run in December was lucky to have an extra practical session, and also GLView installed on the much improved IT service PCs. This meant that a lot more could be done in the practicals, and this is reflected in the much larger number of excellent VRML worlds produced.

You can view thumbnails, screenshots, the source code and the actual VRML files by following these links:

Lecture Notes

In order to make printing a bit more eco-friendly (and so you dont end up spending loads of money on pages), I have created a set of postscript files which will print the lecture notes with 2 pages to each A4 sheet. These are linked below, but you will need to use the following instructions to print them.

To print these files you will have to use the IT service's UNIX system (yuck!). Download the appropriate file first, then unzip by typing, for example, gunzip You can now send the postscript file to one of the printers using a command like, lp -d lasercy1 If you first want to have a look to see what they are before printing them, then type ghostview

HTML Lecture Slides

N.B. The lecture slides section has been totally redesigned and is now using Microsoft Powerpoint97's nifty HTML export feature. Makes a nice job of them too!

Overview Lecture Slides (postscript)

The following files are all gzipped postscript files. Each contains the appropriate lecture slides printed with 6 slides per page (so only a couple of pages each). N.B. I havent had a chance to try these myself! They printed OK on the departmental printer, but I haven't tried them on the IT service printers (Win95 doesnt like postscript so there may be a problem!). If anyone finds a problem with these files then please let me know.

To print these files you will have to use the IT service's UNIX system (yuck!). Download the appropriate file first, then unzip by typing, for example, gunzip You can now send the postscript file to one of the printers using a command like, lp -d lasercy1

Hopefully this should work, but if it doesnt please let me know.

Practical classes

There will be three practical classes for this course. These practicals should begin in the week starting on Thursday 19th November. The first practical will consist of a number of questions covering the content of lectures 1, 2 and 3. The last two practicals will be implementing some small VRML scenes. It would be very useful if you bring any notes you need to practucals. However, since you can always get them from the web page this shouldnt be a problem.

Practical 1 (Novemeber 98)

This will include various questions on the material covered in lectures 1, 2 and 3. The aim of this practical is to prepare you for any questions which may be asked in the exam. The worksheet for practical 1 is now available. The hand-in deadline is the beginning of the following practical.

If your interested, I have uploaded an set of example answers for the practical 1 question sheet. Note that for some of these questions, there are other answers possible which are equally correct.

Practical 2 (Novemeber 98)

This practical will provide an introduction to VRML, allow you to experiment with various settings, and to become comfortable with the controls for the VRML browser. It will also provide planning for further work creating VRML worlds or models in practical 3. The worksheet for practical 2 is now available. Also, there are no hidden answers for this one for you sneaky buggers to find (you know who you are! BTW core was an early version with some errors in it - thats why i didnt upload it properly!).

Practical 3 (Novemeber 98)

This practical will be used to implement and complete your chosen 3D model or VRML scene. The worksheet for practical 3 is now available.

If anyone is interested, here are the practicals which were run last year. Practical 1 this year, and last year are almost identical. The example answers from practical 1 last year should prove very useful in answering the questions again this year.

Practical 1 (Last year)

This will include various questions on the material covered in lectures 1, 2 and 3. The aim of this practical is to prepare you for any questions which may be asked in the exam. The worksheet for practical 1 is now available. The hand-in deadline is the start of your practical in week 18.

If your interested, I have uploaded an set of example answers for the practical 1 question sheet. Note that for some of these questions, there are other answers possible which are equally correct.

Practical 2 (Last year)

This practical will cover both VRML and an example exam question. Please see the Practical Sheet for details of your VRML assignment. Note that you should have completed the work on the practical sheet before the practical session. The actual session will be used to evaluate your work and help with any problems you had, but also for you to try the example exam questions if you like. Please don't leave the work until the practical session.

Example exam questions

I've created two example exam questions for you to try if you want to. Note that I have made these questions deliberatly a bit harder so don't panic if there is too much! The example answers to these questions are also available. Finally, I have uploaded the June 1998 exam and Summer 1998 resit exam papers, with answers. These are real exams so should give you a better idea of what is expected of you.

VRML97 Specification

I have installed a local copy of the VRML97 specification which should be useful to you for the work in Practical 2. Alternatively, if you want to take the specification for your home computer then you can download the full ZIP file.

VRML Examples

As requested, I have uploaded all the VRML examples I used in the lectures so you can have a look at them yourselves. Note that some of the examples for lectures 2 and 3 may not be commented as well as the later lecture examples (seeing as you wern't going to see the code in those lectures).

You may need to download the files before opening them in your VRML browser, depending on how the web server and your local machine are setup. NOTE: A lot of VRML browsers do not fully implement teh VRML specification so some of these examples may not work in certain browsers. All of these have been designed to work, and do work, with GLView. Some library files which I created and are used by some examples may also be missing - I will sort this out ASAP.

I have also installed a local copy of the GLView browser by Holger Grahn, which is now freely available from The local copy can be downloaded in 2 flavours, a GL Version and a Direct 3D version. Also available is the OpenGL DLLs which may be needed for the GL version under windows95.

Course Evaluation

This course was first run in February/March early this year. In the last of the six lectures some course evaluation questionnaires were handed out and filled in by the class. The results for the Febuary 1998 evaluation are posted here in case anyone is interested.

A summary of the December 1998 evaluation for the second run of this lecture course is also available.

Download this web page for offline viewing

Someone asked... so I provided. I've zipped up the entire contents of these web pages (except for the VRML specification and any linked downloads) so that you can take them home for offline viewing on your own PCs. I've split the zip into two sections so they will fit easily on floppy disks. You will need both for a complete set, though you can get away with just the first file, if you dont want the slides. To use - just unzip both files into a single, new directory on your pc. Then look for index.html inside that directory.

Please Note : This zip file was created on 1st December 1998, so will not show any updates after that date.

Download file 1 which contains everything except the lecture slides.

Download file 2 which contains just the lecture slides.

Revision history

05/01/99 - Added in CoolWorlds for december 98.
05/01/99 - Reorganised coolworlds, moved them to seperate pages
16/12/98 - Added links to Spazz and PFE in Editing tools section
09/12/98 - Uploaded example answers for practical 1
09/12/98 - Uploaded course evaluation summary
03/12/98 - Added in Cartman image by Tim Saunders
01/12/98 - Uploaded Practical 3 Worksheet
01/12/98 - Created zipped versions of web page for download
25/11/98 - Uploaded Practical 2 Worksheet
17/11/98 - Uploaded Practical 1 Worksheet.
02/11/98 - Uploaded course evaluation responses from Feb98 lectures.
23/10/98 - Added the June98 and summer resit exams, with answers.
23/10/98 - Created 2-page per sheet postscript files for notes.
23/10/98 - Updated contact information in lecture 1 notes.
30/03/98 - Added the example answers for practical 1.
16/03/98 - Made a gallery of the excellent VRML worlds handed in for practical 2.
16/03/98 - Uploaded answers for the two example exam questions.
07/03/98 - Uploaded two example exam questions.
03/03/98 - Uploaded a split-disk version of the GLView program.
02/03/98 - Practical 1 Worksheet is available.
26/02/98 - Practical 2 Worksheet is available.
26/02/98 - Added in information about the practicals.
26/02/98 - Uploaded the VRML97 Specification document.
26/02/98 - Uploaded VRML examples from lectures (and GLView demo installation).
25/02/98 - Lecture 6 slides added.
24/02/98 - Lecture 6 notes added.
18/02/98 - Lecture 5 slides added.
17/02/98 - Lecture 5 notes added.
13/02/98 - Lecture 4 slides added.
10/02/98 - Lecture 4 notes added (dont be scared - its easy really!)
04/02/98 - Lecture 3 slides added and lecture 1 and 2 slides redesigned.
03/02/98 - Lecture 3 notes updated - error in previous notes.
02/02/98 - Lecture 3 notes added.
28/01/98 - Lecture 2 slides added.
26/01/98 - Lecture 1 slides added.
26/01/98 - Images in lecture 1 notes have been fixed (applies to server only).
26/01/98 - Lecture 2 notes have been added.

This page is maintained by Peter Young, please send any comments to (

Last updated: Wednesday, 16 December 1998.