Fix links to other SZMGR subjects
The other ones are probably still broken
This commit is contained in:
parent
f3a6fd9c7d
commit
dd3679b0a1
@ -16,7 +16,7 @@ description: "TODO"
|
|||||||
Blokový diagram je abstraktní, high-level popis fungování OpenGL [pv112](#pv112).
|
Blokový diagram je abstraktní, high-level popis fungování OpenGL [pv112](#pv112).
|
||||||
|
|
||||||
- **_Evaluators_** - aproximace křivek a povrchů
|
- **_Evaluators_** - aproximace křivek a povrchů
|
||||||
- **_Per-vertex operations_** - operace prováděné nad každým vrcholem - transformace, projekce z [model space do camera space](../modelovani-a-projekce), osvětlení jednotlivých vrcholů
|
- **_Per-vertex operations_** - operace prováděné nad každým vrcholem - transformace, projekce z [model space do camera space](../szp08_modelovani_a_projekce), osvětlení jednotlivých vrcholů
|
||||||
- **_Primitive assembly_** - sestavení primitiv (body, čáry, trojúhelníky) z vrcholů, projekce do screen space a ořezání
|
- **_Primitive assembly_** - sestavení primitiv (body, čáry, trojúhelníky) z vrcholů, projekce do screen space a ořezání
|
||||||
- **_Rasterization_** - převod primitiv na fragmenty (2D obdélníky s informací o barvě, hloubce, ...) a interpolace hodnot mezi vrcholy
|
- **_Rasterization_** - převod primitiv na fragmenty (2D obdélníky s informací o barvě, hloubce, ...) a interpolace hodnot mezi vrcholy
|
||||||
- **_Per-fragment operations_** - operace prováděné nad každým fragmentem a jejich uložení do frame bufferu - osvětlení, texturování, blending, testy (scissor, alpha, stencil, depth)
|
- **_Per-fragment operations_** - operace prováděné nad každým fragmentem a jejich uložení do frame bufferu - osvětlení, texturování, blending, testy (scissor, alpha, stencil, depth)
|
||||||
|
@ -227,7 +227,7 @@ Stíny jsou důležité, jelikož:
|
|||||||

|

|
||||||
|
|
||||||
> [!IMPORTANT]
|
> [!IMPORTANT]
|
||||||
> Shadow mapám se důkladně věnuje otázka [Renderování s využitím GPU](../renderovani-s-vyuzitim-gpu/)
|
> Shadow mapám se důkladně věnuje otázka [Renderování s využitím GPU](../vph07_gpu_rendering/)
|
||||||
|
|
||||||
- **Shadow volumes**\
|
- **Shadow volumes**\
|
||||||
Počítá stíny ve 3D. Shadow volume explicitně popisuje objem prostoru ve stínu nějakého polygonu.
|
Počítá stíny ve 3D. Shadow volume explicitně popisuje objem prostoru ve stínu nějakého polygonu.
|
||||||
|
@ -50,7 +50,7 @@ Pro řešení můžeme nyní využít Euler-Lagrangeovy rovnice. Pro funkcionál
|
|||||||
0 = u - f - \alpha \text{div}(\Psi'(\lvert \nabla u \rvert^2) \nabla u)
|
0 = u - f - \alpha \text{div}(\Psi'(\lvert \nabla u \rvert^2) \nabla u)
|
||||||
```
|
```
|
||||||
|
|
||||||
Nyní můžeme hezky vidět vztah k difuznímu filtrování (otázka [PGV10](../zpracovani_obrazu_pomoci_PDE)):
|
Nyní můžeme hezky vidět vztah k difuznímu filtrování (otázka [PGV10](../pgv10_zpracovani_obrazu_pomoci_pde)):
|
||||||
|
|
||||||
| | |
|
| | |
|
||||||
| ------------------------ | ------------------------------------------------------------------------------ |
|
| ------------------------ | ------------------------------------------------------------------------------ |
|
||||||
|
@ -282,7 +282,7 @@ Numerická diferenciace se využívá pro aproximaci differenciálních rovnic (
|
|||||||
Pokud známe hodnoty $f$ můžeme mezi nimi interpolovat pomocí Lagrangeova polynomu a derivovat ten, protože derivovat polynomy je jednoduché.
|
Pokud známe hodnoty $f$ můžeme mezi nimi interpolovat pomocí Lagrangeova polynomu a derivovat ten, protože derivovat polynomy je jednoduché.
|
||||||
|
|
||||||
> [!IMPORTANT]
|
> [!IMPORTANT]
|
||||||
> Lagrangeovu interpolaci řeší část otázky [Křivky a povrchy](../krivky-a-povrchy/).
|
> Lagrangeovu interpolaci řeší část otázky [Křivky a povrchy](../szp05_krivky_a_povrchy/).
|
||||||
|
|
||||||
- **Finite difference method**\
|
- **Finite difference method**\
|
||||||
Rodina metod numerické diferenciace, které využívají _konečné diference_. Tedy approximují limitu v definici derivace malými posuny ve vstupních hodnotách diferenciovaných funkcí. [finite-difference-method](#finite-difference-method)
|
Rodina metod numerické diferenciace, které využívají _konečné diference_. Tedy approximují limitu v definici derivace malými posuny ve vstupních hodnotách diferenciovaných funkcí. [finite-difference-method](#finite-difference-method)
|
||||||
|
@ -194,7 +194,7 @@ description: "TODO"
|
|||||||
### Modelování
|
### Modelování
|
||||||
|
|
||||||
> [!IMPORTANT]
|
> [!IMPORTANT]
|
||||||
> Tahle sekce má docela průnik s otázkou [Modelování 3D postav](../modelovani-3d-postav/).
|
> Tahle sekce má docela průnik s otázkou [Modelování 3D postav](../vph08_modelovani_3d_postav/).
|
||||||
|
|
||||||
- **Boundary representation model (B-rep)**\
|
- **Boundary representation model (B-rep)**\
|
||||||
Modelování objektů pomocí jejich hranic -- boundaries (hrany, stěny, atd.).
|
Modelování objektů pomocí jejich hranic -- boundaries (hrany, stěny, atd.).
|
||||||
@ -322,7 +322,7 @@ description: "TODO"
|
|||||||
### Změna struktury sítě
|
### Změna struktury sítě
|
||||||
|
|
||||||
> [!IMPORTANT]
|
> [!IMPORTANT]
|
||||||
> Modifikace meshů mají značný přesah do otázky [Křivky a povrchy](../krivky-a-povrchy/) a taky [Pokročilá počítačová grafika](../pokrocila-pocitacova-grafika/)
|
> Modifikace meshů mají značný přesah do otázky [Křivky a povrchy](../krivky-a-povrchy/) a taky [Pokročilá počítačová grafika](../vph01_pokrocila_grafika/)
|
||||||
|
|
||||||
- **Překlápění hrany / edge flip**\
|
- **Překlápění hrany / edge flip**\
|
||||||
Lokální změna, která nahradí hranu $(b,c)$ hranou $(a,d)$. Trojúhelníky $(a,b,c)$ a $(b,d,c)$ se stanou $(a,d,c)$ a $(a,b,d)$. [pa010-2021](#pa010-2021)
|
Lokální změna, která nahradí hranu $(b,c)$ hranou $(a,d)$. Trojúhelníky $(a,b,c)$ a $(b,d,c)$ se stanou $(a,d,c)$ a $(a,b,d)$. [pa010-2021](#pa010-2021)
|
||||||
|
@ -49,7 +49,7 @@ Tato rovnice udává množinu bodů, ze které se křivka nebo povrch sestává.
|
|||||||
> Výhodou implicitně zadaných ploch je kompaktnější reprezentace a jednodušší ray casting. Nicméně výpočty s nimi jsou časově náročné, takže se stejně nejdřív převádí na polygonové meshe -- _polygonizace_.
|
> Výhodou implicitně zadaných ploch je kompaktnější reprezentace a jednodušší ray casting. Nicméně výpočty s nimi jsou časově náročné, takže se stejně nejdřív převádí na polygonové meshe -- _polygonizace_.
|
||||||
|
|
||||||
> [!IMPORTANT]
|
> [!IMPORTANT]
|
||||||
> Tahle sekce přesahuje do [3D modelování a datové struktury](../3d-modelovani-a-datove-struktury/) -> _Implicitní reprezentace a modelování_.
|
> Tahle sekce přesahuje do [3D modelování a datové struktury](../szp04_3d_modelovani/) -> _Implicitní reprezentace a modelování_.
|
||||||
|
|
||||||
### Parametrická reprezentace
|
### Parametrická reprezentace
|
||||||
|
|
||||||
|
@ -155,7 +155,7 @@ description: "TODO"
|
|||||||
### Trénink
|
### Trénink
|
||||||
|
|
||||||
> [!IMPORTANT]
|
> [!IMPORTANT]
|
||||||
> Pro likelihood viz otázka [Statistika](../statistika/).
|
> Pro likelihood viz otázka [Statistika](../szp03_statistika/).
|
||||||
|
|
||||||
Neuronka je model, kde váhy neuronů jsou parametry. Při učení neuronek je naším cílem maximalizovat likelihood, jakožto míru toho, že naše síť sedí na "naměřená data", training set $\cal T$. Tomuhle přístupu se říká _maximum likelihood principle_.
|
Neuronka je model, kde váhy neuronů jsou parametry. Při učení neuronek je naším cílem maximalizovat likelihood, jakožto míru toho, že naše síť sedí na "naměřená data", training set $\cal T$. Tomuhle přístupu se říká _maximum likelihood principle_.
|
||||||
|
|
||||||
@ -277,7 +277,7 @@ Za předpokladu, že $E$ je squared error, pak:
|
|||||||
Neuronové sítě uzpůsobené ke zpracování obrazu. Místo násobení matic používají alespoň v jedné vrstvě konvoluci. Konvoluční sítě mají dva nové typy vrstev: _konvoluční_ a _pooling_, ale jinak se od klasických MLP moc neliší. Aktivace a trénink zůstavají v podstatě stejné. [cnn](#cnn)
|
Neuronové sítě uzpůsobené ke zpracování obrazu. Místo násobení matic používají alespoň v jedné vrstvě konvoluci. Konvoluční sítě mají dva nové typy vrstev: _konvoluční_ a _pooling_, ale jinak se od klasických MLP moc neliší. Aktivace a trénink zůstavají v podstatě stejné. [cnn](#cnn)
|
||||||
|
|
||||||
> [!IMPORTANT]
|
> [!IMPORTANT]
|
||||||
> Pro konvoluci viz otázka [Zpracování rastrového obrazu](../zpracovani-rastroveho-obrazu/).
|
> Pro konvoluci viz otázka [Zpracování rastrového obrazu](../szp09_zpracovani_obrazu/).
|
||||||
|
|
||||||
**Typical CNN by [Aphex34](https://commons.wikimedia.org/w/index.php?curid=45679374)**
|
**Typical CNN by [Aphex34](https://commons.wikimedia.org/w/index.php?curid=45679374)**
|
||||||
|
|
||||||
|
@ -207,7 +207,7 @@ Dijkstrův algoritmus lze optimalizovat, pokud nás zajímá jen nejkratší ces
|
|||||||
- Můžeme přidat _potenciál_ -- dodatečnou heuristickou váhu.
|
- Můžeme přidat _potenciál_ -- dodatečnou heuristickou váhu.
|
||||||
|
|
||||||
> [!IMPORTANT]
|
> [!IMPORTANT]
|
||||||
> Téhle variantě se říká A\* (A star). Věnuje se mu část otázky [Umělá inteligence v počítačových hrách](../umela-inteligence-v-pocitacovych-hrach/).
|
> Téhle variantě se říká A\* (A star). Věnuje se mu část otázky [Umělá inteligence v počítačových hrách](../vph06_ai_ve_hrach/).
|
||||||
|
|
||||||
## Kostry
|
## Kostry
|
||||||
|
|
||||||
|
@ -32,7 +32,7 @@ description: A guide in my new Starlight docs site.
|
|||||||
## MVP matice
|
## MVP matice
|
||||||
|
|
||||||
> [!IMPORTANT]
|
> [!IMPORTANT]
|
||||||
> Pro implementaci v OpenGL viz [Renderování s využitím GPU](../renderovani-s-vyuzitim-gpu/).
|
> Pro implementaci v OpenGL viz [Renderování s využitím GPU](../vph07_gpu_rendering/).
|
||||||
|
|
||||||
> [!WARNING]
|
> [!WARNING]
|
||||||
> Při zápisu matic bacha na to, jestli jsou row-major nebo column-major. Třeba v OpenGL to znamená, že se všechny matice píší v transponované podobě, jelikož OpenGL je column-major a v takovém pořádí jsou i parametery `mat2`, `mat3` a `mat4` V GLSL.
|
> Při zápisu matic bacha na to, jestli jsou row-major nebo column-major. Třeba v OpenGL to znamená, že se všechny matice píší v transponované podobě, jelikož OpenGL je column-major a v takovém pořádí jsou i parametery `mat2`, `mat3` a `mat4` V GLSL.
|
||||||
|
@ -105,7 +105,7 @@ Převod nelze vyjádřit v lineárním tvaru
|
|||||||
|
|
||||||
kde $T$ je práh. Pokud je $T$ konstanta, pak se jedná o _globální prahování_.
|
kde $T$ je práh. Pokud je $T$ konstanta, pak se jedná o _globální prahování_.
|
||||||
|
|
||||||
Prahování se pořádně věnuje otázka [Analýza rastrového obrazu](../analyza-rastroveho-obrazu/).
|
Prahování se pořádně věnuje otázka [Analýza rastrového obrazu](../szp10_analyza_obrazu/).
|
||||||
|
|
||||||
- **Paleta**\
|
- **Paleta**\
|
||||||
Můžeme použít funkci či vyhledávácí tabulku pro přemapování existujících hodnot v obrazu na jiné (viz barevné škály u vizualizací).
|
Můžeme použít funkci či vyhledávácí tabulku pro přemapování existujících hodnot v obrazu na jiné (viz barevné škály u vizualizací).
|
||||||
@ -267,7 +267,7 @@ Proces, kdy hledání _hran_ v obraze. Hrana je křivka, podél níž pixely vý
|
|||||||
- Hrany lze detekovat pomocí konvoluce.
|
- Hrany lze detekovat pomocí konvoluce.
|
||||||
|
|
||||||
> [!IMPORTANT]
|
> [!IMPORTANT]
|
||||||
> Numerické diferenciaci se věnuje otázka [Numerické metody](../numericke-metody/).
|
> Numerické diferenciaci se věnuje otázka [Numerické metody](../szp02_numericke_metody/).
|
||||||
|
|
||||||
### Podle první derivace (gradientu)
|
### Podle první derivace (gradientu)
|
||||||
|
|
||||||
@ -536,7 +536,7 @@ Samplování je převod spojitého signálu na diskrétní. [sampling](#sampling
|
|||||||
- Při nesplnění těchto podmínek vzniká aliasing.
|
- Při nesplnění těchto podmínek vzniká aliasing.
|
||||||
|
|
||||||
> [!TIP]
|
> [!TIP]
|
||||||
> Aliasingu se věnuje část otázky [Renderování s využitím GPU](../renderovani-s-vyuzitim-gpu/).
|
> Aliasingu se věnuje část otázky [Renderování s využitím GPU](../vph07_gpu_rendering/).
|
||||||
|
|
||||||
> [!TIP]
|
> [!TIP]
|
||||||
> Intuitivně je signál hromádka kopečků. Abychom poznali i ty nejužší kopečky -- s nejvyšší frekvencí -- musíme mít dostatečně jemné síto -- koukat na kopečky s dvakrát takovou frekvencí, abychom si všimli, že někde začíná a končí.
|
> Intuitivně je signál hromádka kopečků. Abychom poznali i ty nejužší kopečky -- s nejvyšší frekvencí -- musíme mít dostatečně jemné síto -- koukat na kopečky s dvakrát takovou frekvencí, abychom si všimli, že někde začíná a končí.
|
||||||
|
@ -163,7 +163,7 @@ Popis objektů je proces, při kterém se počítají vlastnosti segmentovaných
|
|||||||
Vlastnosti objektu nezávislé na jeho deformaci. Např. počet děr.
|
Vlastnosti objektu nezávislé na jeho deformaci. Např. počet děr.
|
||||||
|
|
||||||
> [!IMPORTANT]
|
> [!IMPORTANT]
|
||||||
> Pro topologické vlastnosti viz otázka [3D modelování a datové struktury](../3d-modelovani-a-datove-struktury/).
|
> Pro topologické vlastnosti viz otázka [3D modelování a datové struktury](../szp04_3d_modelovani/).
|
||||||
|
|
||||||
- **Ohraničující obdélník / bounding box**\
|
- **Ohraničující obdélník / bounding box**\
|
||||||
Nejmenší obdélník ohraničující objekt.
|
Nejmenší obdélník ohraničující objekt.
|
||||||
@ -230,7 +230,7 @@ Popis objektů je proces, při kterém se počítají vlastnosti segmentovaných
|
|||||||
Problém zařazení objektů do jedné z předem daných tříd.
|
Problém zařazení objektů do jedné z předem daných tříd.
|
||||||
|
|
||||||
> [!IMPORTANT]
|
> [!IMPORTANT]
|
||||||
> Detaily přístupů řešení klasifikace lze nalézt v otázce [Strojové učení](../strojove-uceni/).
|
> Detaily přístupů řešení klasifikace lze nalézt v otázce [Strojové učení](../szp06_strojove_uceni/).
|
||||||
|
|
||||||
- **Konstrukce formálního popisu / známý algoritmus**\
|
- **Konstrukce formálního popisu / známý algoritmus**\
|
||||||
Pokud lze napsat formální popis tříd, lze klasifikátor realizovat přímo pomocí programu.
|
Pokud lze napsat formální popis tříd, lze klasifikátor realizovat přímo pomocí programu.
|
||||||
|
@ -17,7 +17,7 @@ description: "TODO"
|
|||||||
3D objekty mohou být definované mnoha miliony polygony či výpočetně náročnými matematickými funkcemi. Pro renderování v reálném čase je tedy žádoucí je zjednodušit a přitom zachovat jejich vzhled -- aproximovat je.
|
3D objekty mohou být definované mnoha miliony polygony či výpočetně náročnými matematickými funkcemi. Pro renderování v reálném čase je tedy žádoucí je zjednodušit a přitom zachovat jejich vzhled -- aproximovat je.
|
||||||
|
|
||||||
> [!IMPORTANT]
|
> [!IMPORTANT]
|
||||||
> Aproximace objektů souvisí s collidery, kterým se částečně věnuje otázka [Grafické a fyzikální principy](../graficke-a-fyzikalni-principy/).
|
> Aproximace objektů souvisí s collidery, kterým se částečně věnuje otázka [Grafické a fyzikální principy](../vph02_graficke_a_fyzikalni_principy/).
|
||||||
|
|
||||||
### Redukce počtu polygonů
|
### Redukce počtu polygonů
|
||||||
|
|
||||||
@ -347,7 +347,7 @@ Stíny jsou důležité, jelikož:
|
|||||||

|

|
||||||
|
|
||||||
> [!IMPORTANT]
|
> [!IMPORTANT]
|
||||||
> Shadow mapám se důkladně věnuje otázka [Renderování s využitím GPU](../renderovani-s-vyuzitim-gpu/)
|
> Shadow mapám se důkladně věnuje otázka [Renderování s využitím GPU](../vph07_gpu_rendering/)
|
||||||
|
|
||||||
- **Shadow volumes**\
|
- **Shadow volumes**\
|
||||||
Počítá stíny ve 3D. Shadow volume explicitně popisuje objem prostoru ve stínu nějakého polygonu.
|
Počítá stíny ve 3D. Shadow volume explicitně popisuje objem prostoru ve stínu nějakého polygonu.
|
||||||
|
@ -222,7 +222,7 @@ Ray tracing jsou techniky, které trasují paprsky světla napříč scénou.
|
|||||||
## Fyzikální simulace
|
## Fyzikální simulace
|
||||||
|
|
||||||
> [!IMPORTANT]
|
> [!IMPORTANT]
|
||||||
> Renderování založenému na fyzikálních principech se věnuje část otázky [Pokročilá počítačová grafika](../pokrocila-pocitacova-grafika/).
|
> Renderování založenému na fyzikálních principech se věnuje část otázky [Pokročilá počítačová grafika](../vph01_pokrocila_grafika/).
|
||||||
|
|
||||||
- **Rigid body**\
|
- **Rigid body**\
|
||||||
Aproximace reálného fyzikálního tělesa. Předpokládá uniformní hostotu a **neřeší:**
|
Aproximace reálného fyzikálního tělesa. Předpokládá uniformní hostotu a **neřeší:**
|
||||||
|
@ -139,7 +139,7 @@ Games are not experiences, they are artifacts people play with while / to create
|
|||||||
Hry dovedou navodit řadu různých herních zážitků, které můžeme různými způsoby kategorizovat.
|
Hry dovedou navodit řadu různých herních zážitků, které můžeme různými způsoby kategorizovat.
|
||||||
|
|
||||||
> [!IMPORTANT]
|
> [!IMPORTANT]
|
||||||
> Herní zážitky souvisí s pojmem obtížnost, kterému se věnuje část otázky [Herní design II](../herni-design-ii/).
|
> Herní zážitky souvisí s pojmem obtížnost, kterému se věnuje část otázky [Herní design II](../vph04_herni_design_ii/).
|
||||||
|
|
||||||
==== LeBlanc’s Eight Kinds of Fun
|
==== LeBlanc’s Eight Kinds of Fun
|
||||||
|
|
||||||
@ -198,7 +198,7 @@ Něco známeho, povědomého pro hráče.
|
|||||||
Designér iterativně vytváří hrubé verze hry, které testuje a upravuje. Prototyp je osekaná verze hry, která obsahuje mechaniky, ale ne nutně grafiku. Prototyp lze využít k ověření herního designu - je hra zábavná?
|
Designér iterativně vytváří hrubé verze hry, které testuje a upravuje. Prototyp je osekaná verze hry, která obsahuje mechaniky, ale ne nutně grafiku. Prototyp lze využít k ověření herního designu - je hra zábavná?
|
||||||
|
|
||||||
> [!IMPORTANT]
|
> [!IMPORTANT]
|
||||||
> Testováním se více zabývá otázka [Herní design II](../herni-design-ii/).
|
> Testováním se více zabývá otázka [Herní design II](../vph04_herni_design_ii/).
|
||||||
|
|
||||||
== Game Designer
|
== Game Designer
|
||||||
|
|
||||||
|
@ -38,7 +38,7 @@ description: "TODO"
|
|||||||
## Souřadnicové systémy
|
## Souřadnicové systémy
|
||||||
|
|
||||||
> [!IMPORTANT]
|
> [!IMPORTANT]
|
||||||
> Tahle část otázky má značný překryv s otázkou [Modelování a projekce](../modelovani-a-projekce/).
|
> Tahle část otázky má značný překryv s otázkou [Modelování a projekce](../szp08_modelovani_a_projekce/).
|
||||||
|
|
||||||
**Coordinate Systems [coordinate-systems](#coordinate-systems)**
|
**Coordinate Systems [coordinate-systems](#coordinate-systems)**
|
||||||
|
|
||||||
@ -178,7 +178,7 @@ Při zvolání `glDraw*` se používá OpenGL pipeline, která se skládá z ně
|
|||||||
## Shadow mapy
|
## Shadow mapy
|
||||||
|
|
||||||
> [!IMPORTANT]
|
> [!IMPORTANT]
|
||||||
> Renderování stínů se věnuje také otázka [Pokročilá počítačová grafika](../pokrocila-pocitacova-grafika/).
|
> Renderování stínů se věnuje také otázka [Pokročilá počítačová grafika](../vph01_pokrocila_grafika/).
|
||||||
|
|
||||||
1. Vytvoř shadow mapu -- vyrenderuj scénu z pohledu světla a ulož hloubku do Z-bufferu.
|
1. Vytvoř shadow mapu -- vyrenderuj scénu z pohledu světla a ulož hloubku do Z-bufferu.
|
||||||
2. Stínování -- vyrenderuj scénu jako obvykle, ale aplikuj shadow mapu
|
2. Stínování -- vyrenderuj scénu jako obvykle, ale aplikuj shadow mapu
|
||||||
|
@ -80,7 +80,7 @@ description: "TODO"
|
|||||||
## Topologie a modifikace
|
## Topologie a modifikace
|
||||||
|
|
||||||
> [!TIP]
|
> [!TIP]
|
||||||
> Pro základní topologické pojmy viz [3D modelování a datové struktury](../3d-modelovani-a-datove-struktury/).
|
> Pro základní topologické pojmy viz [3D modelování a datové struktury](../szp04_3d_modelovani/).
|
||||||
|
|
||||||
- **Meshflow**\
|
- **Meshflow**\
|
||||||
Logické uspořádání hran a polygonů v mnohoúhelníkové síti.
|
Logické uspořádání hran a polygonů v mnohoúhelníkové síti.
|
||||||
@ -111,7 +111,7 @@ description: "TODO"
|
|||||||
Typický 3D model se skládá nejen z meshe, ale i z materiálů, které jsou v herních enginech typicky reprezentovány texturami (mapami).
|
Typický 3D model se skládá nejen z meshe, ale i z materiálů, které jsou v herních enginech typicky reprezentovány texturami (mapami).
|
||||||
|
|
||||||
> [!NOTE]
|
> [!NOTE]
|
||||||
> Typy map souvisí s _physically based rendering_ (PBR), kterému se částečně věnuje otázka [Pokročilá počítačová grafika](../pokrocila-pocitacova-grafika/).
|
> Typy map souvisí s _physically based rendering_ (PBR), kterému se částečně věnuje otázka [Pokročilá počítačová grafika](../vph01_pokrocila_grafika/).
|
||||||
|
|
||||||
- **UV unwrapping**\
|
- **UV unwrapping**\
|
||||||
Tvorba 2D reprezentace 3D modelu -- projekce jeho polygonů na 2D plochu. Toto mapování se posléze využívá při texturování. Proces zahrnuje označování _seams_ -- hran, podél kterých se bude model "rozřezávat". Nevhodná volba seams vede k deformaci textur.
|
Tvorba 2D reprezentace 3D modelu -- projekce jeho polygonů na 2D plochu. Toto mapování se posléze využívá při texturování. Proces zahrnuje označování _seams_ -- hran, podél kterých se bude model "rozřezávat". Nevhodná volba seams vede k deformaci textur.
|
||||||
|
55
transform-links.py
Normal file
55
transform-links.py
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
import os
|
||||||
|
|
||||||
|
TARGET_DIR = "src/content/docs/szmgr"
|
||||||
|
|
||||||
|
links = {
|
||||||
|
"zaklady_vizualizace": "PGV01_zaklady_vizualizace",
|
||||||
|
"metody_vizualizace": "PGV02_metody_vizualizace",
|
||||||
|
"zaklady_pocitatcove_grafiky": "PGV03_zaklady_pocitatcove_grafiky",
|
||||||
|
"geometricke_algoritmy": "PGV04_geometricke_algoritmy",
|
||||||
|
"deleni_prostoru_a_sceny": "PGV05_deleni_prostoru_a_sceny",
|
||||||
|
"vykreslovani_objemovych_dat": "PGV06_vykreslovani_objemovych_dat",
|
||||||
|
"modely_osvetleni": "PGV07_modely_osvetleni",
|
||||||
|
"real_time_rendering": "PGV08_real_time_rendering",
|
||||||
|
"minimalizace_energie": "PGV09_minimalizace_energie",
|
||||||
|
"zpracovani_obrazu_pomoci_PDE": "PGV10_zpracovani_obrazu_pomoci_PDE",
|
||||||
|
"algoritmy-a-datove-struktury": "SZP01_algoritmy",
|
||||||
|
"numericke-metody": "SZP02_numericke_metody",
|
||||||
|
"statistika": "SZP03_statistika",
|
||||||
|
"3d-modelovani-a-datove-struktury": "SZP04_3d_modelovani",
|
||||||
|
"krivky-a-povrchy": "SZP05_krivky_a_povrchy",
|
||||||
|
"strojove-uceni": "SZP06_strojove_uceni",
|
||||||
|
"grafy-a-grafove-algoritmy": "SZP07_grafy",
|
||||||
|
"modelovani-a-projekce": "SZP08_modelovani_a_projekce",
|
||||||
|
"zpracovani-rastroveho-obrazu": "SZP09_zpracovani_obrazu",
|
||||||
|
"analyza-rastroveho-obrazu": "SZP10_analyza_obrazu",
|
||||||
|
"graficke-principy-ve-vyvoji-her": "VPH01_graficke_principy_ve_vyvoji_her",
|
||||||
|
"pokrocila-pocitacova-grafika": "VPH01_pokrocila_grafika",
|
||||||
|
"fyzikalni-principy-ve-vyvoji her": "VPH02_fyzikalni_principy_ve_vyvoji_her",
|
||||||
|
"graficke-a-fyzikalni-principy": "VPH02_graficke_a_fyzikalni_principy",
|
||||||
|
"herni-design-i": "VPH03_herni_design_i",
|
||||||
|
"herni-design-ii": "VPH04_herni_design_ii",
|
||||||
|
"vyvoj-her": "VPH05_vyvoj_her",
|
||||||
|
"umela-inteligence-v-pocitacovych-hrach": "VPH06_ai_ve_hrach",
|
||||||
|
"renderovani-s-vyuzitim-gpu": "VPH07_gpu_rendering",
|
||||||
|
"modelovani-3d-postav": "VPH08_modelovani_3d_postav",
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
files = [f for f in os.listdir(TARGET_DIR) if f.endswith(".md")]
|
||||||
|
|
||||||
|
for f in files:
|
||||||
|
print(f"\t- {f}")
|
||||||
|
lines = []
|
||||||
|
with open(os.path.join(TARGET_DIR, f), "r") as file:
|
||||||
|
lines = file.readlines()
|
||||||
|
|
||||||
|
for i in range(len(lines) - 1):
|
||||||
|
l = lines[i]
|
||||||
|
for url in links.keys():
|
||||||
|
search = f"../{url}"
|
||||||
|
if search in l:
|
||||||
|
lines[i] = l.replace(search, f"../{links[url].lower()}")
|
||||||
|
|
||||||
|
with open(os.path.join(TARGET_DIR, f), "w") as file:
|
||||||
|
file.writelines(lines)
|
Loading…
Reference in New Issue
Block a user