d (Stage 1)
d (Notes)
(41 intermediate revisions by 2 users not shown)
Riadok 2: Riadok 2:
 
__TOC__
 
__TOC__
  
Lecture Monday 9:50 M-XII Exercise Thursday  8:10  F1-248
+
Lecture Monday 12:20 M-IX
  
 
=== Grading ===
 
=== Grading ===
Riadok 30: Riadok 30:
 
** Fx = 0-59
 
** Fx = 0-59
  
*[https://docs.google.com/spreadsheets/d/1TKC519o6aFbJKbWSV8v7Dc8lzeSsAPiFkXT0iG3okO0/edit?usp=sharing '''VIEW RESULTS''']
+
*[https://docs.google.com/spreadsheets/d/1m3P4yNiR0lHi4LzQU4QmCui0QJ2w_rgtEq8hWr_9ODI/edit?usp=sharing '''VIEW RESULTS''']
  
 
=== Oral Examination ===
 
=== Oral Examination ===
Riadok 41: Riadok 41:
  
 
=== Useful links ===  
 
=== Useful links ===  
*http://xxx.lanl.gov/abs/cs/9909001
+
*[https://arxiv.org/abs/cs/9909001 '''Emerging Challenges in Computational Topology''']
 
+
  
 
----
 
----
Riadok 114: Riadok 113:
 
guide: [[Adam_Riecicky|Adam Riečický]]
 
guide: [[Adam_Riecicky|Adam Riečický]]
  
Thursday 8:10 in F1-248
+
Wednesdays at 8:10 in F1-248
  
 
[https://drive.google.com/open?id=1aGF4CQpUXwsCBW8t6RUlCVGZQvreSBQdyZfCDTsT-t0 Intro slides]
 
[https://drive.google.com/open?id=1aGF4CQpUXwsCBW8t6RUlCVGZQvreSBQdyZfCDTsT-t0 Intro slides]
Riadok 121: Riadok 120:
  
 
; Evaluation
 
; Evaluation
: 80p - Practical Modelling Project ( 2 x 40p )
+
: 50 pts - Project Stage 1: Modeling
: 20p - Technique Description (compulsory)
+
: 50 pts - Project Stage 2: Rendering
  
== Semester Outline ==
+
== Notes ==
  
For help see [https://dai.fmph.uniba.sk/upload/4/47/BlenderControls.pdf Blender Shortcuts and Controls]
+
=== 24.9. Blender Basics ===
 +
''Please fill out [https://forms.gle/H9QKSacFy2ViHp9cA Blender experience questionare].''
  
=== 27.9. Blender Basics ===
+
Warm-up and get familiar with the interface.
Warm up and get familiar with the interface.
+
  
''Please fill out [https://drive.google.com/open?id=1_zO9HB_eJ_u0HkgUegX5DNV58J850vLN1-N45TV3cS4 Blender experience questionare].''
+
=== 30.9. Mesh Modelling Fundamentals ===
 
+
Trying out mesh edit mode and editing tools.
=== 4.10. Mesh Modelling Fundamentals ===
+
; Practical home assignment [2 bonus points]
Try out mesh edit mode and editing tools.
+
: Pick two furniture objects from [https://www.ikea.com/sk/sk/catalog/categories/departments/living_room/series/12202/ IKEA LIATORP living room series].
; Practical home assignment
+
: Pick two or more furniture objects from [https://www.ikea.com/sk/sk/catalog/categories/departments/living_room/series/12202/ IKEA LIATORP living room series].
+
 
: Model them using techniques learned on exercise.
 
: Model them using techniques learned on exercise.
: Send .blend file at ''adam.riecicky@fmph.uniba.sk'' until 23:59 7.10.2018 with finished objects to earn 2 bonus points.
+
: Send ''.blend'' file with finished objects and reference images at ''adam.riecicky@fmph.uniba.sk''.
 +
: '''Deadline: Tuesday 6.10. 23:59'''
 +
 
 +
=== 7.10. Mesh Smoothing and Modifiers ===
 +
: Understanding Blender modifiers. Subdivision surface modifier vs subdivision tool, mirror modifier, array modifier.
 +
 
 +
=== 14.11. Curve Modelling ===
 +
: What are curves and why should we care
 +
: Giving thickness, swiping and screwing curves in Blender to create procedural polygonal surfaces
 +
 
 +
=== 21.10. Metaballs (Blobby objects) and CSG ===
 +
: What are blobby objects, how are they used and what are they good for
 +
: What is Constructive solid geometry (CSG) and how it can be modelled in Blender
 +
: Examples of CSG objects [http://pymesh.readthedocs.io/en/latest/_images/csg_tree.png], [https://www.researchgate.net/profile/Balazs_Csikos/publication/226357801/figure/fig1/AS:302314666643456@1449088841618/Figure-1-Example-of-a-CSG-tree.png], [https://www.usenix.org/legacy/event/usenix05/tech/freenix/full_papers/kirsch/kirsch_html/img/dice.png]
 +
 
 +
=== 28.10. Sculpting ===
 +
: Using sculpting tools in Blender
 +
 
 +
=== 4.11. Material and Lighting Basics ===
 +
: Type of light sources, realistic light objects
 +
: Role of normal vectors in shading
 +
: Using node editor to set up materials
 +
: IOR parameter for transparent materials [https://pixelandpoly.com/ior.html]
 +
 
 +
=== 11.11. UVs and Textures ===
 +
: Multiple materials on a single mesh
 +
: Editing UVs
 +
: Creating textures - types of textures
 +
 
 +
; Pages with some awesome textures for your models:
 +
: [https://www.textures.com/ Textures.com]
 +
: [https://freepbr.com/ FreePBR.com]
 +
 
 +
=== 25.11. HDR and Environment Mapping ===
 +
: Understanding colors and radiance
 +
: Environment maps
 +
: Compositing editor and editing images
 +
 
 +
; Pages with some awesome HDR environment maps for your scenes:
 +
: [https://hdrihaven.com/ HDRI Haven]
 +
 
 +
<!---
  
=== 11.10. HDR and Environment Mapping ===
 
; Understanding colors and radiance
 
 
: Representing values in HDR file format  
 
: Representing values in HDR file format  
 
: Computing green component from input radiance (using Simpsons 1/3 rule)
 
: Computing green component from input radiance (using Simpsons 1/3 rule)
 
: You can search for Simpsons 1/3 rule in a book [https://www.researchgate.net/publication/256681458_Numericka_matematika_pre_informatika_Riesene_priklady_v_programe_MATHEMATICA Numeric Mathematics] on page 104 (123 in pdf)
 
: You can search for Simpsons 1/3 rule in a book [https://www.researchgate.net/publication/256681458_Numericka_matematika_pre_informatika_Riesene_priklady_v_programe_MATHEMATICA Numeric Mathematics] on page 104 (123 in pdf)
 
; Practices in Blender
 
: Download [https://www.hdri-hub.com/ HDR environment maps] from the web
 
: Creation of elemental materials and applying environment maps   
 
: A problem of HDR environment maps and how to fix them?
 
: Introduction to node editor
 
  
=== 18.10. Mesh smoothing and Modifiers ===
 
; Understanding Blender modifiers
 
: Subdivision surface modifier vs simple subdivision tool
 
: Array modifier versus multiple object/mesh instances
 
: How to model tin can easily?
 
  
=== 25.10. Blobby objects (Metaballs) ===
+
=== 6.12. Final Touches ===
What are blobby objects, how are they used and what are they good for  
+
; More textures
 +
: Procedural textures
 +
: Normal and bump mapping
 +
: Displacement textures
 +
 
 +
; Scene setup
 +
: Importing downloaded models
 +
: Managing complex scenes
 +
 
 +
=== 13.12. Preparation for Exam ===
 +
Practicing assignments and techniques which may appear on the final term
 +
[https://docs.google.com/presentation/d/1F-nwmuqi5R66bYKcI81hmszFXMvjRLS1GCCPzMBonQs/edit?usp=sharing Slides]
 +
--->
  
 
== Project ==
 
== Project ==
  
The project is focused on practicing techniques of modeling and rendering learned on exercises. It is split into two stages evaluated separately throughout the semester.
+
The project is focused on practicing techniques of modelling and rendering learned on exercises. It is split into two stages evaluated separately throughout the semester.
 +
 
 +
Note: Accomplishing bonus tasks grant you an additional points, but cannot get you over the maximum of 100p from exercises.
  
 
=== Stage 1 ===
 
=== Stage 1 ===
'''''Deadline on Sunday 18.11.2016 at 23:59'''''
+
'''''Deadline on Sunday 15.11.2020 at 23:59'''''
 +
 
 +
Goal of this project stage is to create models for interior "room" scene.
  
 
; Assignment
 
; Assignment
: Choose 1 object from each modeling category:  
+
: Find reference images for objects and model them using learned techniques.
 +
: Create 2 objects from each modelling category:  
 
:: ''Simple Polygonal'': apple, lamp, book, chair, etc.
 
:: ''Simple Polygonal'': apple, lamp, book, chair, etc.
 
:: ''Curve'': light bulb, vine glass, candle holder, corkscrew, etc.
 
:: ''Curve'': light bulb, vine glass, candle holder, corkscrew, etc.
 +
: Create 1 object from each modelling category:
 
:: ''CSG'': mug, ashtray, bowl, etc.
 
:: ''CSG'': mug, ashtray, bowl, etc.
 
:: ''Blobby'': candle, toy (teddy bear, dino, ...),  etc.
 
:: ''Blobby'': candle, toy (teddy bear, dino, ...),  etc.
: Find reference images for objects and model them using learned techniques.
+
 
: Make a final render of each model.
+
+
 
; Evaluation
 
; Evaluation
: Use correct modeling techniques for each model category (10p)
+
: Use correct modelling techniques for each model category (20p)
 
:: ''Simple Polygonal'': extrusion, inset, loop cutting...
 
:: ''Simple Polygonal'': extrusion, inset, loop cutting...
 
:: ''Curve'': curves, screw modifier...
 
:: ''Curve'': curves, screw modifier...
 
:: ''CSG'': boolean modifier, parenting, object hiding...  
 
:: ''CSG'': boolean modifier, parenting, object hiding...  
 
:: ''Blobby'': metaballs, negative influence...
 
:: ''Blobby'': metaballs, negative influence...
: Complexity of selected reference and modeled detail (5p)
+
: Complexity of selected reference and modelled detail (15p)
: Editing friendliness - not applied modifiers, low polygon count (5p)
+
: Editing friendliness - not applied modifiers, low polygon count (10p)
: HDR environment map with correct values for the sun (10p)
+
: Basic material on each model and shadow receiver plane for final renders (5p)
+
 
: Aesthetic of created models - proportions, realism, etc. (5p)
 
: Aesthetic of created models - proportions, realism, etc. (5p)
  
 
; Submission
 
; Submission
: Before modeling create folder named "mrt_p1_[your name]" and place all files inside that folder.  
+
: Before modelling create folder named "mrt_p1_[your name]" and place all files inside that folder.  
: Each model should be located on a separate layer
+
: Each model should be located in a separate collection
: Folder should contain '''ONLY ONE''' blend file, object reference images, and HDR environment map
+
: Folder should contain '''ONLY ONE''' blend file and object reference images
 
: Pack folder to archive (zip/7z/rar) and send to ''adam.riecicky@fmph.uniba.sk'' with subject "MRT Project 1"  
 
: Pack folder to archive (zip/7z/rar) and send to ''adam.riecicky@fmph.uniba.sk'' with subject "MRT Project 1"  
 
<!--
 
  
 
=== Stage 2 ===
 
=== Stage 2 ===
'''''Deadline on Sunday 12.12.2016 at 23:59'''''
+
'''''Deadline on Sunday 5.1.2020 at 23:59'''''
 
+
''Create a realistically rendered image of a complex scene using '''at least 2''' of your models (the others can be downloaded). Apply textures and materials to all of these models by yourself. Scene examples: beach, snowy mountain town, a room, city street, a forest, desert, etc...''
+
  
 +
; Assignment
 +
: Make a believable ''interior scene'' of a room by your imagination. You should use models created for the previous project stage, and create some new ones, or use any [http://tf3dm.com publicly available models]. All materials should be designed by yourself using the node editor.
 +
 
; Evaluation
 
; Evaluation
: Create uv coordinates and textures for at least 3 models.
+
: Create custom UV mapping for 3 complex models. (12p)
: Use '''Blender Cycles''' renderer and use emission material instead of light objects.
+
: Correctly set up materials for the entire scene (10p)
: Use at least one of each: bump map, displacement map, specular map.
+
: HDR environment map (5p)
: Create one representative rendered image of your scene.
+
: Textures used to control at least 4 material parameters (5p)
 +
: Used at least 2 procedural textures (5p)
 +
: Used displacement map (5p)
 +
: Scene logically separated into collections (3p)
 +
: Aesthetics and believability of final renders (5p)
 +
: ''Bonus: Use 2 textures edited/created by yourself. (2p)''
 +
: ''Bonus: Use compositing node editor to create final touches to renders: bloom, color and contrast adjustments, etc. (3p)''
  
 
; Submission
 
; Submission
: Follow the rules from Project 01 assignment (do not forget to add rendered image).
+
: Before modeling create a folder named "mrt_p2_[your name]" and place all files inside that folder.  
 
+
: Folder should contain '''ONLY ONE''' blend file and all required resources as well as final renders.
=== EXCERCISE MATERIALS ===
+
: Create a text file in a folder and write down notes - which models are yours, which UV coordinates you created, which textures you edited/created, etc, to distinguish what was downloaded and what was made by yourself.
==== F-rep, Blobby objects, CSG ====
+
: Pack folder to archive (zip/7z/rar) and send to ''adam.riecicky@fmph.uniba.sk'' with subject "MRT Project 2"
* Examples of F-rep [http://hyperfun.org/FRep/ http://hyperfun.org/FRep/]
+
* Blobby objects and CSG examples [http://pymesh.readthedocs.io/en/latest/_images/csg_tree.png], [https://www.researchgate.net/profile/Balazs_Csikos/publication/226357801/figure/fig1/AS:302314666643456@1449088841618/Figure-1-Example-of-a-CSG-tree.png], [https://www.usenix.org/legacy/event/usenix05/tech/freenix/full_papers/kirsch/kirsch_html/img/dice.png]
+
 
+
<!--
+
=== HOME WORK ===
+
* Assignment of homework: [[https://dai.fmph.uniba.sk/upload/8/8b/MRT2016_DU.pdf pdf]]
+
* '''Deadline is monday lesson 7.11.2016'''
+
* RGB to HSL color space conversion:
+
** read more about color spaces in book (e.g. Moderní počítačová grafika)
+
** use [http://www.rapidtables.com/convert/color/rgb-to-hsl.htm RapidTables] website for online conversion and formulas ([http://www.niwa.nu/2013/05/math-behind-colorspace-conversions-rgb-hsl/ detailed calculation])
+
 
+
-->
+

Verzia zo dňa a času 00:51, 25. november 2020

Modelling and Rendering Techniques (Course Materials)

Lecture Monday 12:20 M-IX

Grading

No make-up exams will be given for missed tests. All the assignments should be turn in by the designated due date. To pass this course all the course requirements must be SATISFACTORILY completed > 30% of each problem set.

What you Need to Pass

  • Attend lessons. One missed +0 points. 2 missed 0 points, 3 missed 0 points, 4 and more is Fx.
  • Project and exercise (mandatory, 50 points).
  • Solve all homework problems (mandatory each one >=30%, 20 points)
  • Pass final term (mandatory, 10 points) You will need to solve several problems discussed during lessons.
  • Pass oral/written exam: (optional, +20 points) If you feel you are better, convince me !
  • Summary
    • Attendance = 0 or -100 (Fx)
    • Homework = +20..7 or +6..0 (Fx)
    • Project = +50..0
    • Mid term = +10..0
    • Final term = +20..0
    • Oral/written exam = +20..0
  • Grades
    • A = 92-100
    • B = 84-91
    • C = 76-83
    • D = 68-75
    • E = 60-67
    • Fx = 0-59

Oral Examination

To the oral examination all the above requirements must be SATISFACTORILY completed.

Materials to read

  • Michael Henle, "A Combinatorial Introduction to Topology"
  • J. O'Rourke, "Computational Geometry in C"
  • IA. T. Fomenko and T. L. Kunii, "Topological Modeling for Visualization"

Useful links


Lesson01 "Human visual system, Illusions"

Lecture notes: pdf, Color theory: pdf

Reading(prepare 3 questions and the core idea of article): R. Ďurikovič and K. Kolchin. Physically-based model of photographic effects for night and day scenes, Journal of Three Dimensional Images, 3D Forum Society, vol. 15, No.4, pages 119-124, 2001. [pdf]

Lesson02 "Photographic Effects, HDR and Tone Mapping"

Lecture notes: pdf

Reading evaluation.

Lesson03 "Three dimensional modeling"

Lecture notes: pdf

Demo animation: R. Ďurikovič, K. Kaneda, and H. Yamashita. Dynamic contour: a texture approach and contour operations. The Visual Computer, 11(6), pages 277-289, May 1995. [pdf]

Lesson04 "Three dimensional transformations"

Lecture notes: pdf

Demo animation: R. Ďurikovič, K. Kaneda, and H. Yamashita. Imaging and modelling from serial microscopic sections for the study of anatomy. Medical & Biological Engineering & Computing, 36(5), pages 276-284, 1998. [pdf]

Lesson05 "Representation of solids"

Lecture notes: pdf

Midterm 1 + questions from the following articles.

Demo animation: Roman Ďurikovič, Silvester Czanner, Julius Parulek and Miloš Šrámek. Heterogeneous modeling of biological organs and organ growth. In book: Alexander Pasko, Valery Adzhiev, and Peter Comninos. LNCS 4889: Heterogeneous Objects Modeling and Applications. Springer Press, Berlin, 2008. [pdf]

Lesson06 "Functional representation"

Lecture notes: pdf

R. Ďurikovič. Growth simulation of digestive system using function representation and skeleton dynamics, International Journal on Shape Modeling, vol. 10, No.1, pages 31-49, World Scientific Publishing Company, Singapore, 2004.[pdf]

Lesson07 "Test (midterm) 2"

Demo animation: Roman Ďurikovič and Zuzana Kúkelová. Sketch-based modelling system with convolution and variational implicit surfaces, Journal of the Applied Mathematics, Statistics and Informatics, University of Saint Cyril and Metod Press, Trnava, Slovakia, vol. 4, No.1, pages 101-108, 2008. [pdf]

Lesson08 "Computational topology of polygonal surfaces"

Lecture notes: pdf

Demo animation: Y. Wakabayashi and R. Ďurikovič. Modeling bonsai tree using positional information, Joint Convention Record of Tohoku Chapter of the Electrical and Information Engineers, No. 2I19, Yonezawa, Japan, pages 341, 2002.[pdf]

Lesson09 "Applied computational topology"

Lecture notes: pdf

Solving problems 7P 1~7

Lesson10 "Surface classification via topological surgery"

Lecture notes: pdf

Lesson11 "Surface classification via topological surgery II"

Lecture notes: pdf

Solving problems 8P 1~4

Lesson12 "Aliasing, Antialiasing"

Lecture notes: pdf

Lesson13 "Last lecture"

Final exam!


Exercises

guide: Adam Riečický

Wednesdays at 8:10 in F1-248

Intro slides

The exercises will be focused on the practical approach of modeling and rendering using Blender. The evaluation consists of two projects covering exercised techniques.

Evaluation
50 pts - Project Stage 1: Modeling
50 pts - Project Stage 2: Rendering

Notes

24.9. Blender Basics

Please fill out Blender experience questionare.

Warm-up and get familiar with the interface.

30.9. Mesh Modelling Fundamentals

Trying out mesh edit mode and editing tools.

Practical home assignment [2 bonus points]
Pick two furniture objects from IKEA LIATORP living room series.
Model them using techniques learned on exercise.
Send .blend file with finished objects and reference images at adam.riecicky@fmph.uniba.sk.
Deadline: Tuesday 6.10. 23:59

7.10. Mesh Smoothing and Modifiers

Understanding Blender modifiers. Subdivision surface modifier vs subdivision tool, mirror modifier, array modifier.

14.11. Curve Modelling

What are curves and why should we care
Giving thickness, swiping and screwing curves in Blender to create procedural polygonal surfaces

21.10. Metaballs (Blobby objects) and CSG

What are blobby objects, how are they used and what are they good for
What is Constructive solid geometry (CSG) and how it can be modelled in Blender
Examples of CSG objects [1], [2], [3]

28.10. Sculpting

Using sculpting tools in Blender

4.11. Material and Lighting Basics

Type of light sources, realistic light objects
Role of normal vectors in shading
Using node editor to set up materials
IOR parameter for transparent materials [4]

11.11. UVs and Textures

Multiple materials on a single mesh
Editing UVs
Creating textures - types of textures
Pages with some awesome textures for your models
Textures.com
FreePBR.com

25.11. HDR and Environment Mapping

Understanding colors and radiance
Environment maps
Compositing editor and editing images
Pages with some awesome HDR environment maps for your scenes
HDRI Haven


Project

The project is focused on practicing techniques of modelling and rendering learned on exercises. It is split into two stages evaluated separately throughout the semester.

Note: Accomplishing bonus tasks grant you an additional points, but cannot get you over the maximum of 100p from exercises.

Stage 1

Deadline on Sunday 15.11.2020 at 23:59

Goal of this project stage is to create models for interior "room" scene.

Assignment
Find reference images for objects and model them using learned techniques.
Create 2 objects from each modelling category:
Simple Polygonal: apple, lamp, book, chair, etc.
Curve: light bulb, vine glass, candle holder, corkscrew, etc.
Create 1 object from each modelling category:
CSG: mug, ashtray, bowl, etc.
Blobby: candle, toy (teddy bear, dino, ...), etc.
Evaluation
Use correct modelling techniques for each model category (20p)
Simple Polygonal: extrusion, inset, loop cutting...
Curve: curves, screw modifier...
CSG: boolean modifier, parenting, object hiding...
Blobby: metaballs, negative influence...
Complexity of selected reference and modelled detail (15p)
Editing friendliness - not applied modifiers, low polygon count (10p)
Aesthetic of created models - proportions, realism, etc. (5p)
Submission
Before modelling create folder named "mrt_p1_[your name]" and place all files inside that folder.
Each model should be located in a separate collection
Folder should contain ONLY ONE blend file and object reference images
Pack folder to archive (zip/7z/rar) and send to adam.riecicky@fmph.uniba.sk with subject "MRT Project 1"

Stage 2

Deadline on Sunday 5.1.2020 at 23:59

Assignment
Make a believable interior scene of a room by your imagination. You should use models created for the previous project stage, and create some new ones, or use any publicly available models. All materials should be designed by yourself using the node editor.
Evaluation
Create custom UV mapping for 3 complex models. (12p)
Correctly set up materials for the entire scene (10p)
HDR environment map (5p)
Textures used to control at least 4 material parameters (5p)
Used at least 2 procedural textures (5p)
Used displacement map (5p)
Scene logically separated into collections (3p)
Aesthetics and believability of final renders (5p)
Bonus: Use 2 textures edited/created by yourself. (2p)
Bonus: Use compositing node editor to create final touches to renders: bloom, color and contrast adjustments, etc. (3p)
Submission
Before modeling create a folder named "mrt_p2_[your name]" and place all files inside that folder.
Folder should contain ONLY ONE blend file and all required resources as well as final renders.
Create a text file in a folder and write down notes - which models are yours, which UV coordinates you created, which textures you edited/created, etc, to distinguish what was downloaded and what was made by yourself.
Pack folder to archive (zip/7z/rar) and send to adam.riecicky@fmph.uniba.sk with subject "MRT Project 2"