d (→21.10. Metaballs (Blobby objects)) |
|||
(51 intermediate revisions by 3 users not shown) | |||
Riadok 1: | Riadok 1: | ||
= Modelling and Rendering Techniques (Course Materials) = | = Modelling and Rendering Techniques (Course Materials) = | ||
__TOC__ | __TOC__ | ||
− | |||
− | |||
=== Grading === | === Grading === | ||
Riadok 16: | Riadok 14: | ||
* Summary | * Summary | ||
** Attendance = 0 or -100 (Fx) | ** Attendance = 0 or -100 (Fx) | ||
− | ** Homework = + | + | ** Homework = +30..9 or +8..0 (Fx) |
** Project = +50..0 | ** Project = +50..0 | ||
− | |||
** Final term = +20..0 | ** Final term = +20..0 | ||
** Oral/written exam = +20..0 | ** Oral/written exam = +20..0 | ||
Riadok 30: | Riadok 27: | ||
** Fx = 0-59 | ** Fx = 0-59 | ||
− | *[https://docs.google.com/spreadsheets/d/ | + | *[https://docs.google.com/spreadsheets/d/1280-pmHEQPGruYpipa2Gwp3Gc6SElF_7IZ4DVogI9vg/edit?usp=sharing '''VIEW RESULTS'''] |
+ | *Teams homework and results [https://teams.microsoft.com/l/team/19%3a4a90d1f0430440f59bab933ecb4b291c%40thread.tacv2/conversations?groupId=094ff376-3963-4603-9944-779e10ed966a&tenantId=ce31478d-6e7a-4ce7-8670-a5b9d51884f9 '''Team'''] Code: dlvg3t4 | ||
=== Oral Examination === | === Oral Examination === | ||
Riadok 81: | Riadok 79: | ||
=== Lesson07 "Test (midterm) 2" === | === Lesson07 "Test (midterm) 2" === | ||
− | Demo animation: Roman Ďurikovič and Zuzana Kúkelová. Sketch-based modelling system with convolution and variational implicit surfaces, Journal | + | Demo animation: Roman Ďurikovič and Zuzana Kúkelová. Sketch-based modelling system with convolution and variational implicit surfaces, IADIS International Journal on Computer Science and Information Systems, vol. 2, No.1, pages 181-188, 2007, ISSN 1646-3692. |
[[https://www.researchgate.net/publication/228822592_SKETCH-BASED_MODELING_SYSTEM_WITH_CONVOLUTION_AND_VARIATIONAL_IMPLICIT_SURFACES pdf]] | [[https://www.researchgate.net/publication/228822592_SKETCH-BASED_MODELING_SYSTEM_WITH_CONVOLUTION_AND_VARIATIONAL_IMPLICIT_SURFACES pdf]] | ||
Riadok 111: | Riadok 109: | ||
= Exercises = | = Exercises = | ||
− | guide: [[ | + | guide: [[Daniel Kyselica|Daniel Kyselica]] |
+ | |||
+ | Thursday at 8:10 | ||
+ | ; Evaluation | ||
+ | : 50 pts | ||
+ | |||
+ | === Assignment === | ||
+ | * Problems from lecture notes: [[media:c-top08.pdf|pdf]] | ||
+ | * Deadline 6. 12. 23:59 | ||
+ | |||
+ | === 1. Color Theory === | ||
+ | Introduction to [https://docs.google.com/presentation/d/1sQtk0GDFzJWGG2kqfrR_IpozTwjkWwWy/edit?usp=sharing&ouid=105592092615152451370&rtpof=true&sd=true Color Handouts]. | ||
+ | |||
+ | === 2. Color Spectrum === | ||
+ | Computation of RGB values from color spectrium. | ||
+ | [https://docs.google.com/presentation/d/1dAyPvmZoAuNNPB5TXjbkAaaMtPyc_xRV/edit?usp=sharing&ouid=105592092615152451370&rtpof=true&sd=true Handouts]<br> | ||
+ | '''Assigment''' - Compute RGB Color of Black body at temperature (Deadline 7.10. 10:40) | ||
+ | * T = choose 3 random values between 1000 and 20 000 K | ||
+ | * Create program in any programing language or use excel | ||
+ | * Send corresponding color and RGB values | ||
+ | * [https://scipython.com/static/media/blog/colours/cie-cmf.txt cie-cmf table ] [[media:Course:cie.tsv|cie.tsv]] | ||
+ | * Use values from table for HDTV | ||
+ | |||
+ | [[media:Course:Riesenie.xlsm|Solution example]] | ||
+ | |||
+ | === 3. Blender basics === | ||
+ | Introduction to modeling and rendering software Blender | ||
+ | |||
+ | === 4 Mesh Modelling Fundamentals === | ||
+ | * Trying out mesh edit mode and editing tools | ||
+ | * Bending and twisting | ||
+ | * Model chess figure - bishop using mesh modeling teshnique | ||
+ | |||
+ | === 5 2D Orthogonal Projection === | ||
+ | * creating 3D cube in pygame | ||
+ | * use of orthogonal projection from 3D to 2D | ||
+ | * source: [[media:Course:projection.zip | projection.zip]] | ||
+ | |||
+ | === 6 2D Perspective Projection === | ||
+ | * use of 1-point perspective projection from 3D to 2D | ||
+ | * source: [[media:Course:perspective_projection.zip | projection.zip]] | ||
+ | * Try to create perspective projection [https://www.youtube.com/watch?v=vhrJBrQRucw&ab_channel=ChrisTralie video ], [http://sccg.sk/~madaras/slides/Fundamentals_CG&IP_02_Transformations.pdf slides] | ||
+ | |||
+ | === 7 Ray tracing === | ||
+ | * Introduction to ray tracing | ||
+ | * Implementation of Phong reflection model | ||
+ | * Simple scene with one object and one light | ||
+ | * Materials: | ||
+ | **[[media:Course:Assignment1.zip | assignment]] | ||
+ | **[http://sccg.sk/~madaras/slides/Fundamentals_CG&IP_09_Raycasting.pdf slides] | ||
+ | **[[media:Course:reflection_ray.png | reflection ray computation]] | ||
+ | **[https://en.wikipedia.org/wiki/Phong_reflection_model Phong reflection model] | ||
+ | |||
+ | === 8 Ray tracing: multiple object scene ==== | ||
+ | * Create scene with multiple objects | ||
+ | * Materials: | ||
+ | ** [[media:Course:Ray_tracing_multiple_object.pdf | slides]] | ||
+ | ** [[media:Course:Assignment2.zip | assignment2.zip]] | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | <!--- | ||
+ | === 3. Vectary === | ||
+ | * Introduction to [https://www.vectary.com/ vectary] | ||
+ | * Basic navigation | ||
+ | * Object mode | ||
+ | * Library | ||
+ | |||
+ | Assigment will be done during lesson. If someone cannot be present please contact me. | ||
+ | |||
+ | |||
+ | === 4 Mesh Modelling Fundamentals === | ||
+ | * Trying out mesh edit mode and editing tools | ||
+ | * Bending and twisting | ||
+ | * Model chess figure - bishop using mesh modeling teshnique | ||
+ | * deadline 21.10. 2021 10:40 | ||
+ | [[media:Course:tutorial_bishop.pdf| tutorial]] | ||
+ | |||
+ | |||
+ | === 5 Boolean modifiers === | ||
+ | * Modeling using boolean modifiers | ||
+ | |||
+ | === 6 Sculpting === | ||
+ | * sculpting | ||
+ | * [https://stephaneginier.com/sculptgl/ sculptgl] | ||
+ | |||
+ | === 7 Material and Lighting Basics === | ||
+ | * Type of light sources, realistic light objects | ||
+ | * Materials | ||
+ | |||
+ | === 8 Topology === | ||
+ | * Construction from polygons | ||
+ | * Euler characteristics | ||
+ | [[media:Course:cvicenie8.pdf| handouts]] | ||
+ | |||
+ | === 9 Fourier transform === | ||
+ | * [[media:Course:cvicenie9.pdf| handouts]] | ||
+ | * [https://colab.research.google.com/ colab] | ||
+ | * [[media:Course:assignment.ipynb| assignment.ipynb]] | ||
− | |||
[https://drive.google.com/open?id=1aGF4CQpUXwsCBW8t6RUlCVGZQvreSBQdyZfCDTsT-t0 Intro slides] | [https://drive.google.com/open?id=1aGF4CQpUXwsCBW8t6RUlCVGZQvreSBQdyZfCDTsT-t0 Intro slides] | ||
Riadok 150: | Riadok 246: | ||
: 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] | : 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] |
− | : | + | ---> |
− | : | + | <!--- |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | : Representing values in HDR file format | |
− | + | : 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) |
− | : | + | |
− | : | + | |
− | |||
=== 6.12. Final Touches === | === 6.12. Final Touches === | ||
Riadok 204: | Riadok 292: | ||
Practicing assignments and techniques which may appear on the final term | Practicing assignments and techniques which may appear on the final term | ||
[https://docs.google.com/presentation/d/1F-nwmuqi5R66bYKcI81hmszFXMvjRLS1GCCPzMBonQs/edit?usp=sharing Slides] | [https://docs.google.com/presentation/d/1F-nwmuqi5R66bYKcI81hmszFXMvjRLS1GCCPzMBonQs/edit?usp=sharing Slides] | ||
+ | ---> | ||
− | + | <!--- | |
− | + | ||
− | + | ||
== Project == | == Project == | ||
− | The project is focused on practicing techniques of | + | 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. | 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 | + | '''''Deadline on Sunday 15.11.2020 at 23:59''''' |
+ | |||
+ | Goal of this project stage is to create models for interior "room" scene. | ||
; Assignment | ; 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. | :: ''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. | ||
− | + | ||
− | + | ||
− | + | ||
; Evaluation | ; Evaluation | ||
− | : Use correct modelling techniques for each model category ( | + | : 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 modelled detail ( | + | : Complexity of selected reference and modelled detail (15p) |
− | : Editing friendliness - not applied modifiers, low polygon count | + | : Editing friendliness - not applied modifiers, low polygon count (10p) |
− | + | ||
− | + | ||
: Aesthetic of created models - proportions, realism, etc. (5p) | : Aesthetic of created models - proportions, realism, etc. (5p) | ||
Riadok 245: | Riadok 332: | ||
=== Stage 2 === | === Stage 2 === | ||
− | '''''Deadline on Sunday | + | '''''Deadline on Sunday 5.1.2020 at 23:59''''' |
; Assignment | ; Assignment | ||
− | : Make a believable ''interior scene'' of a room by your imagination. You | + | : 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 custom UV mapping for 3 complex models. ( | + | : Create custom UV mapping for 3 complex models. (12p) |
− | : Correctly set up materials (10p) | + | : Correctly set up materials for the entire scene (10p) |
+ | : HDR environment map (5p) | ||
: Textures used to control at least 4 material parameters (5p) | : Textures used to control at least 4 material parameters (5p) | ||
: Used at least 2 procedural textures (5p) | : Used at least 2 procedural textures (5p) | ||
: Used displacement map (5p) | : Used displacement map (5p) | ||
− | : Scene logically separated into | + | : Scene logically separated into collections (3p) |
− | : Aesthetics and believability of | + | : Aesthetics and believability of final renders (5p) |
− | : ''Bonus: Use | + | : ''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. ( | + | : ''Bonus: Use compositing node editor to create final touches to renders: bloom, color and contrast adjustments, etc. (3p)'' |
; Submission | ; Submission | ||
− | : Before modeling create folder named "mrt_p2_[your name]" and place all files inside that folder. | + | : 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. | : Folder should contain '''ONLY ONE''' blend file and all required resources as well as final renders. | ||
− | : Create a text file in a folder and | + | : 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" | : Pack folder to archive (zip/7z/rar) and send to ''adam.riecicky@fmph.uniba.sk'' with subject "MRT Project 2" | ||
---> | ---> |
Aktuálna revízia z 12:24, 22. august 2024
Modelling and Rendering Techniques (Course Materials)
Obsah
- 1 Modelling and Rendering Techniques (Course Materials)
- 1.1 Grading
- 1.2 What you Need to Pass
- 1.2.1 Oral Examination
- 1.2.2 Materials to read
- 1.2.3 Useful links
- 1.2.4 Lesson01 "Human visual system, Illusions"
- 1.2.5 Lesson02 "Photographic Effects, HDR and Tone Mapping"
- 1.2.6 Lesson03 "Three dimensional modeling"
- 1.2.7 Lesson04 "Three dimensional transformations"
- 1.2.8 Lesson05 "Representation of solids"
- 1.2.9 Lesson06 "Functional representation"
- 1.2.10 Lesson07 "Test (midterm) 2"
- 1.2.11 Lesson08 "Computational topology of polygonal surfaces"
- 1.2.12 Lesson09 "Applied computational topology"
- 1.2.13 Lesson10 "Surface classification via topological surgery"
- 1.2.14 Lesson11 "Surface classification via topological surgery II"
- 1.2.15 Lesson12 "Aliasing, Antialiasing"
- 1.2.16 Lesson13 "Last lecture"
- 2 Exercises
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 = +30..9 or +8..0 (Fx)
- Project = +50..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
- VIEW RESULTS
- Teams homework and results Team Code: dlvg3t4
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, IADIS International Journal on Computer Science and Information Systems, vol. 2, No.1, pages 181-188, 2007, ISSN 1646-3692. [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: Daniel Kyselica
Thursday at 8:10
- Evaluation
- 50 pts
Assignment
- Problems from lecture notes: pdf
- Deadline 6. 12. 23:59
1. Color Theory
Introduction to Color Handouts.
2. Color Spectrum
Computation of RGB values from color spectrium.
Handouts
Assigment - Compute RGB Color of Black body at temperature (Deadline 7.10. 10:40)
- T = choose 3 random values between 1000 and 20 000 K
- Create program in any programing language or use excel
- Send corresponding color and RGB values
- cie-cmf table cie.tsv
- Use values from table for HDTV
3. Blender basics
Introduction to modeling and rendering software Blender
4 Mesh Modelling Fundamentals
- Trying out mesh edit mode and editing tools
- Bending and twisting
- Model chess figure - bishop using mesh modeling teshnique
5 2D Orthogonal Projection
- creating 3D cube in pygame
- use of orthogonal projection from 3D to 2D
- source: projection.zip
6 2D Perspective Projection
- use of 1-point perspective projection from 3D to 2D
- source: projection.zip
- Try to create perspective projection video , slides
7 Ray tracing
- Introduction to ray tracing
- Implementation of Phong reflection model
- Simple scene with one object and one light
- Materials:
8 Ray tracing: multiple object scene =
- Create scene with multiple objects
- Materials: