Obsah
Seminars on Computer Graphics 2 (Summer 2014)
Rules / Info
- On every seminar we will implement selected problems/algorithms related to lessons. We will usually - not necessary start with a prearranged template downloadable from this site.
- As a programming language we will use C#. We will use Visual C# 2010 as development environment. Alternatively you can use MonoDevelop (Linux / Mac OSX) on your own machine.
- Attendance at seminars is optional but recommended.
- Seminars are conducted by
- Matej Hudak (subseth.mato@gmail.com)
- Schedule of seminars is
- Wed (17:20) - Room I-H3
- Other collaborators and authors: Juraj Onderik
Homeworks
- You can get max 100% per homework. Submission after deadline is for 0%.
- There is a min 50% of your final evaluation required for admission to final term.
- Additional activity can be awarder by max 10% of your final evaluation.
- Don't cheat - create instead. Any kind of cheating is punished by withholding 30% of your final evaluation for all involved students.
- As a homework, you will program what we could not finish during the exercise. Assignment and template will be downloadable from this site. See exercises.
- Homework must be submitted by email to cg2.2014.hw@gmail.com every week until the next Wednesday 17:20.
- Your submission email must have title in form 'ExNN' where NN is the number of exercise, eg. Ex05.
- It is required to submit zipped source code of your homework (preferably the whole solution). Do not send executable files. Homework without the source code is for 0%.
- Your code should be well formatted and commented. Titles of functions, classes, variables should be representative for their purpose. Homework without appropriate comments is for 0%.
- There are ~12 homeworks during the semester. This number can change due to holidays, tech. problems etc.
- Your Evaluation
Exercises
Exercise00 [19.02.2014] "Introduction"
- Motivation?
- Theory / Reading?
- Practice?
- Intro to c#?
- Visual c# 2010, c# 4.0 in a Nutshell
- Visual Shortcuts, SharpDevelop Short cuts
- Exercise "Vectors and Matrices" - CG1
Exercise01 [26.02.2014] "Ray Casting"
- Ray, you are not yet worthy to maintain the pixel color in the camera. I now take from you your origin, your direction and in the name of my father the Class I cast you out!
- Implement a camera class suitable for the ray casting method. As usual you should use a similar functionality as in the sample application. Application should specifically be able to:
- Render the scene (objects are movable).
- Move the camera in a 3D space.
- Change the camera's field of view (larger angle = more space to render), see Blender camera.
- Try to change the color of the intersected object due to distance from the camera
- '[2 bonus %]:
- Create a camera which will rotate around defined point P (target) along sphere with r = 1. You can use ideas from the Blender camera system and / or two-angle camera in openGL. Camera should use some sort of interactivity (2 angles) and targeted point P should be movable.
- Sample | Template
- Deadline: 12.3 - 17:20