This shows you the differences between two versions of the page.
| egc:laboratoare:bonusmodeleproprii [2022/10/11 18:25] bogdan.vasile2211 [Modele proprii în OpenGL] | egc:laboratoare:bonusmodeleproprii [2023/01/03 00:07] (current) bogdan.vasile2211 [Arta în jocuri] | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ===== Modele proprii în OpenGL ===== | ===== Modele proprii în OpenGL ===== | ||
| <note important> | <note important> | ||
| - | Se pot prezenta **maxim 2 teme** în cadrul unui laborator de prezentare. \\ | + | **ATENȚIE!** | 
| - | Nu lăsați prezentarea temelor pe ultimele săptămâni. | + | |
| + | Folosirea modelelor proprii în aplicațiile de la teme **NU** poate înlocui geometria creată din cod! | ||
| + | |||
| + | Tehnica explicată aici poate fi folosită **DOAR** unde este specificat în mod special că este permisă această libertate! | ||
| </note>  | </note>  | ||
| Line 14: | Line 17: | ||
| {{ :egc:teme:bonus_modele_complexmesh.jpg?500 | }} | {{ :egc:teme:bonus_modele_complexmesh.jpg?500 | }} | ||
| - | <note>**Câteva** dintre aceste aplicațiile care există și sunt folosite de profesioniști pentru dezvoltarea de jocuri: | + | <note>**Câteva** dintre aceste aplicații care există și sunt folosite de profesioniști pentru dezvoltarea de jocuri: | 
| * Modelare ([[https://www.blender.org/|Blender]], [[https://www.autodesk.com/products/maya/overview?term=1-YEAR&tab=subscription&plc=MAYA|Autodesk Maya]], [[https://www.autodesk.com/products/3ds-max/overview?term=1-YEAR&tab=subscription|Autodesk 3ds Max]]) | * Modelare ([[https://www.blender.org/|Blender]], [[https://www.autodesk.com/products/maya/overview?term=1-YEAR&tab=subscription&plc=MAYA|Autodesk Maya]], [[https://www.autodesk.com/products/3ds-max/overview?term=1-YEAR&tab=subscription|Autodesk 3ds Max]]) | ||
| - | * Sculptare ([[https://pixologic.com/|ZBrush]]) | + | * Sculptare ([[https://pixologic.com/|ZBrush]], [[https://www.blender.org/|Blender]]) | 
| * Texturare ([[https://www.adobe.com/products/substance3d-painter.html|Adobe Substance 3D Painter]], [[https://www.adobe.com/ro/products/photoshop.html|Adobe Photoshop]]) | * Texturare ([[https://www.adobe.com/products/substance3d-painter.html|Adobe Substance 3D Painter]], [[https://www.adobe.com/ro/products/photoshop.html|Adobe Photoshop]]) | ||
| * Animații ([[https://www.blender.org/|Blender]], [[https://www.autodesk.com/products/maya/overview?term=1-YEAR&tab=subscription&plc=MAYA|Autodesk Maya]]) | * Animații ([[https://www.blender.org/|Blender]], [[https://www.autodesk.com/products/maya/overview?term=1-YEAR&tab=subscription&plc=MAYA|Autodesk Maya]]) | ||
| Line 28: | Line 31: | ||
| Sunt mai multe formate de mesh-uri pe care framework-ul le poate folosi (precum FBX sau OBJ), iar aici o să folosim o aplicație 3D pentru a obține corect aceste formate, mai exact **Blender**. | Sunt mai multe formate de mesh-uri pe care framework-ul le poate folosi (precum FBX sau OBJ), iar aici o să folosim o aplicație 3D pentru a obține corect aceste formate, mai exact **Blender**. | ||
| + | <note tip> | ||
| + | **Hint:** subiectul mapării texturilor pe geometrie este acoperit în [[https://ocw.cs.pub.ro/courses/egc/laboratoare/09|laboratorul 9]]. | ||
| + | |||
| + | Metoda prezentată mai jos folosește în spate aceleași noțiuni explicate acolo. | ||
| + | </note> | ||
| {{ :egc:teme:bonus_modele_blenderlogo.png?300 | }} | {{ :egc:teme:bonus_modele_blenderlogo.png?300 | }} | ||
| Line 92: | Line 100: | ||
| {{ :egc:teme:blender_export_1.gif?direct&500 |}} | {{ :egc:teme:blender_export_1.gif?direct&500 |}} | ||
| - | * În panoul de export FBX, trebuie bifate 2 opțiuni în partea dreaptă pentru a putea folosi ușor modelul în framework: **Path Mode**-ul trebuie să fie trecut pe **Copy** (în loc de **Auto** cum este default) și mai jos bifat **Selected Objects**. La final, alegeți calea unde vreți să fie exportat modelul, numele acestuia și apăsați pe butonul de jos de **Export FBX**. Asta o să creeze în acel folder: 1 fișier .fbx (**ghost.fbx** în cazul acestui demo) și un alt folder al cărui nume va fi numele modelului urmat de .fbm (**ghost.fbm** aici). În acest folder o să fie salvată imaginea inițială pe care o folosește plane-ul pe post de textură. | + | * În panoul de export FBX, trebuie bifate 2 opțiuni în partea dreaptă pentru a putea folosi ușor modelul în framework: **Path Mode**-ul trebuie să fie trecut pe **Copy** (în loc de **Auto** cum este default) și mai jos bifat **Selected Objects**. La final, alegeți calea unde vreți să fie exportat modelul, numele acestuia și apăsați pe butonul de jos de **Export FBX**. Asta o să creeze în acel folder: un fișier .fbx (**ghost.fbx** în cazul acestui demo) și un alt folder al cărui nume va fi numele modelului urmat de .fbm (**ghost.fbm** aici). În acest folder o să fie salvată imaginea inițială pe care o folosește plane-ul pe post de textură. | 
| {{ :egc:teme:blender_export_2.gif?direct&500 |}} | {{ :egc:teme:blender_export_2.gif?direct&500 |}} | ||
| Line 122: | Line 130: | ||
| glViewport(0, 0, window->props.resolution.x, window->props.resolution.y); | glViewport(0, 0, window->props.resolution.x, window->props.resolution.y); | ||
| - | RenderMesh(meshes["ghost"], glm::vec3(0.f, 0.f, 0.f)); | + | RenderMesh(meshes["ghost"], glm::vec3(0.f)); | 
| } | } | ||
| Line 134: | Line 142: | ||
| {{ :egc:teme:blender_tut_final.png?500 | }} | {{ :egc:teme:blender_tut_final.png?500 | }} | ||
| - | <note>Dacă apar probleme în afișarea modelul respectiv dar ați urmat exact pașii de mai sus, verificați **Scale**-ul la care se folosește acesta în framework. Sunt șanse ca acesta să fie prea mic sau prea mare. | + | <note>Dacă apar probleme în afișarea modelului respectiv dar ați urmat exact pașii de mai sus, verificați **Scale**-ul la care se folosește acesta în framework: sunt șanse să fie prea mic sau prea mare. | 
| </note> | </note> | ||
| - | ==== Adăugarea de modele 3D ==== | ||
| - | (TODO) | ||