The wiki page is under active construction, expect bugs.

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
statnice:bakalar:b0b39pgr [2025/05/27 12:55] – [4. Phongův osvětlovací model] zapleka3statnice:bakalar:b0b39pgr [2025/05/27 13:08] (current) zapleka3
Line 129: Line 129:
 **Cube mapping** je dnes standard díky své univerzálnosti a podpoře dynamických odrazů v real-time grafice. **Cube mapping** je dnes standard díky své univerzálnosti a podpoře dynamických odrazů v real-time grafice.
  
- 
-. 
- 
-. 
 ===== 2. Programování pomocí shaderů ===== ===== 2. Programování pomocí shaderů =====
  
Line 230: Line 226:
     \[     \[
     R_z(\theta) = \begin{bmatrix} \cos\theta & -\sin\theta & 0 & 0 \\ \sin\theta & \cos\theta & 0 & 0 \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \end{bmatrix}     R_z(\theta) = \begin{bmatrix} \cos\theta & -\sin\theta & 0 & 0 \\ \sin\theta & \cos\theta & 0 & 0 \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \end{bmatrix}
-    \] +    \]   
-  * . +
-  * .    +
   * **Škálování:**   * **Škálování:**
     \[     \[
Line 292: Line 286:
   O_y = y \frac{h}{2} + \frac{h}{2}    O_y = y \frac{h}{2} + \frac{h}{2} 
   \]   \]
-   
- 
- 
-. 
- 
-. 
- 
-. 
- 
-. 
- 
-. 
- 
-. 
- 
-. 
- 
-. 
- 
-. 
- 
-. 
- 
-. 
- 
-. 
  
 ==== 5. Souřadné systémy a jejich transformace ==== ==== 5. Souřadné systémy a jejich transformace ====
Line 400: Line 368:
     * **Použití kvaternionů místo Eulerových úhlů.**     * **Použití kvaternionů místo Eulerových úhlů.**
  
-. 
- 
-. 
- 
-. 
- 
-. 
- 
-. 
- 
-. 
- 
-. 
 ==== 8. Interpolace translace a rotace ==== ==== 8. Interpolace translace a rotace ====
  
Line 638: Line 593:
  
 === 6.1 Směrové světlo (Directional Light) === === 6.1 Směrové světlo (Directional Light) ===
-{{:statnice:bakalar:pasted:20250312-142740.png?300}}+{{:statnice:bakalar:pasted:20250312-142740.png?200}}
   * Má pouze **směr**, ne polohu.   * Má pouze **směr**, ne polohu.
   * Neztrácí intenzitu s rostoucí vzdáleností (žádná atenuace).   * Neztrácí intenzitu s rostoucí vzdáleností (žádná atenuace).
Line 646: Line 601:
     \]     \]
   * Vektor světla \( \vec{l} \) je normalizovaný směr ke světelnému zdroji.   * Vektor světla \( \vec{l} \) je normalizovaný směr ke světelnému zdroji.
-  +
 === 6.2 Bodové světlo (Point Light) === === 6.2 Bodové světlo (Point Light) ===
-{{:statnice:bakalar:pasted:20250312-143033.png?300}}+{{:statnice:bakalar:pasted:20250312-143033.png?200}}
   * Má konkrétní **pozici** ve scéně.   * Má konkrétní **pozici** ve scéně.
   * Intenzita klesá se vzdáleností (atenuace).   * Intenzita klesá se vzdáleností (atenuace).
Line 665: Line 620:
  
 === 6.3 Reflektor (Spotlight) === === 6.3 Reflektor (Spotlight) ===
-{{:statnice:bakalar:pasted:20250312-143714.png?300}}+{{:statnice:bakalar:pasted:20250312-143714.png?200}}
   * Bodové světlo s **kuželovým vyzařováním**.   * Bodové světlo s **kuželovým vyzařováním**.
   * Bere v úvahu **směr reflektoru** a **úhel kužele**.   * Bere v úvahu **směr reflektoru** a **úhel kužele**.
Line 737: Line 692:
   * **Spojitost mezi segmenty** je klíčová pro zachování vizuálně plynulého tvaru celé křivky.   * **Spojitost mezi segmenty** je klíčová pro zachování vizuálně plynulého tvaru celé křivky.
  
-{{:statnice:bakalar:pasted:20250527-122115.png?300}}+{{:statnice:bakalar:pasted:20250527-122115.png?200}}
 {{:statnice:bakalar:pasted:20250527-122139.png?130}} {{:statnice:bakalar:pasted:20250527-122139.png?130}}
  
 === Parametrická spojitost (C) === === Parametrická spojitost (C) ===
  
-{{:statnice:bakalar:pasted:20250527-122227.png?300}}+{{:statnice:bakalar:pasted:20250527-122227.png?200}}
  
 Zohledňuje **směr i velikost** derivací (rychlost, zrychlení). Pokud je parametrická spojitost splněna, je zaručena i geometrická spojitost. Zohledňuje **směr i velikost** derivací (rychlost, zrychlení). Pokud je parametrická spojitost splněna, je zaručena i geometrická spojitost.
Line 790: Line 745:
   * Zajišťuje hladké přechody mezi body s parametrickou spojitostí **C1**.   * Zajišťuje hladké přechody mezi body s parametrickou spojitostí **C1**.
   * Velmi často se používá při animacích pohybu kamery, objektů nebo částic podél cesty definované body.   * Velmi často se používá při animacích pohybu kamery, objektů nebo částic podél cesty definované body.
- 
  
 ==== 4. Aproximační křivky ==== ==== 4. Aproximační křivky ====
Line 802: Line 756:
 {{:statnice:bakalar:pasted:20250527-122908.png?200}} {{:statnice:bakalar:pasted:20250527-122908.png?200}}
  
-{{:statnice:bakalar:pasted:20250527-122951.png?200}}+{{:statnice:bakalar:pasted:20250527-122951.png?150}}
  
 Křivka definovaná pomocí Bernsteinových polynomů: Křivka definovaná pomocí Bernsteinových polynomů:
Line 847: Line 801:
   * Umožňuje rozdělit křivku na dvě menší v libovolném parametru \( t \).     * Umožňuje rozdělit křivku na dvě menší v libovolném parametru \( t \).  
   * Používá se při adaptivním vykreslování a vektorových editorech.     * Používá se při adaptivním vykreslování a vektorových editorech.  
-  * {{:statnice:bakalar:pasted:20250514-224932.png}} 
  
 **Rozdíl:** de Casteljau algoritmus přímo počítá body Bézierovy křivky a umožňuje její stabilní dělení. **Rozdíl:** de Casteljau algoritmus přímo počítá body Bézierovy křivky a umožňuje její stabilní dělení.
Line 863: Line 816:
 {{:statnice:bakalar:pasted:20250527-122925.png?200}} {{:statnice:bakalar:pasted:20250527-122925.png?200}}
  
-{{:statnice:bakalar:pasted:20250527-123148.png?200}}+{{:statnice:bakalar:pasted:20250527-123148.png?150}}
  
 Speciální případ uniformního kubického B-Spline: Speciální případ uniformního kubického B-Spline:
Line 907: Line 860:
 \] \]
  
-Kde: 
   * \( P_i \) jsou **kontrolní body**   * \( P_i \) jsou **kontrolní body**
   * \( w_i \) jsou jejich **váhy** – čím větší váha, tím více křivka přiléhá k danému bodu   * \( w_i \) jsou jejich **váhy** – čím větší váha, tím více křivka přiléhá k danému bodu
Line 921: Line 873:
  
 NURBS jsou dnes **standardem v CAD systémech, 3D grafice a průmyslovém návrhu**, protože spojují přesnost, flexibilitu a efektivní výpočet. NURBS jsou dnes **standardem v CAD systémech, 3D grafice a průmyslovém návrhu**, protože spojují přesnost, flexibilitu a efektivní výpočet.
- 
-**Další možnosti řízení tvaru NURBS křivky:** 
- 
-  * **Opakování kontrolních bodů**   
-    * Pokud některý **kontrolní bod opakujeme vícekrát** za sebou, křivka se k němu více přiblíží – v extrému jím může i **procházet**. Toto chování se podobá uniformním B-Spline, kde opakované body fixují směr nebo tvar.   
-    * Vhodné např. pro ostré zlomy nebo přechody mezi částmi modelu. 
- 
-  * **Opakování hodnot v uzlovém vektoru**   
-    * Opakované uzlové hodnoty (např. stejné číslo vícekrát za sebou) snižují hladkost křivky v daném místě.   
-    * Pokud uzel opakujeme \( p \)-krát (kde \( p \) je stupeň křivky), dochází ke **snížení spojitosti až na C0** a křivka může v tomto bodě **přesně projít kontrolním bodem**. 
- 
- 
- 
- 
Navigation

Playground

QR Code
QR Code statnice:bakalar:b0b39pgr (generated for current page)