Олексій Ковалевський “Сферичний кінь в шейдері або...

15
Сферичний кінь в шейдері або Шейдери це просто Ковалевський Олексій Graphics Programmer, N-iX

Upload: lviv-startup-club

Post on 12-Apr-2017

258 views

Category:

Business


4 download

TRANSCRIPT

Page 1: Олексій Ковалевський “Сферичний кінь в шейдері або шейдери це просто”

Сферичний кінь в шейдері або

Шейдери це просто

Ковалевський ОлексійGraphics Programmer, N-iX

Page 2: Олексій Ковалевський “Сферичний кінь в шейдері або шейдери це просто”

Шейдери та їх роль в графіці

- Світло

- Тіні

- Ефекти

- Накладання текстур

- Віддзеркалення

- Заломлення

- Деформація

Page 3: Олексій Ковалевський “Сферичний кінь в шейдері або шейдери це просто”

Різниця версій

Pixel shader version 1.0-1.3 2.0 2.0a 3.0 4.0 5.0

Dependent texture limit 4 8 Unlimited Unlimited Unlimited Unlimited

Texture instruction limit 4 32 Unlimited Unlimited Unlimited Unlimited

Position register No No No Yes Yes Yes

Instruction slots 8+4 32 + 64 512 ≥ 512 ≥ 65536 ≥ 65536

Executed instructions 8+4 32 + 64 512 65536 Unlimited Unlimited

Texture indirections 4 4 Unlimited Unlimited Unlimited Unlimited

Interpolated registers 2 + 8 2 + 8 2 + 8 10 32 32

Instruction predication No No Yes Yes No No

Index input registers No No No Yes Yes Yes

Page 4: Олексій Ковалевський “Сферичний кінь в шейдері або шейдери це просто”

Методи створення шейдерів- Програмування шейдерів

- Використання програм для генерації шейдерів

Page 5: Олексій Ковалевський “Сферичний кінь в шейдері або шейдери це просто”

Мови програмування шейдерів

- Cg

- HLSL

- GLSL

- DirectX ASM

Page 6: Олексій Ковалевський “Сферичний кінь в шейдері або шейдери це просто”

Програми для генерації шейдерів

RenderMonkey FxComposer

Page 7: Олексій Ковалевський “Сферичний кінь в шейдері або шейдери це просто”

Unreal Engine

Page 8: Олексій Ковалевський “Сферичний кінь в шейдері або шейдери це просто”

Види шейдерів

- Pixel Shader- Vertex Shader

- Geometry Shader- Tesselation Shader- Compute Shader

Page 9: Олексій Ковалевський “Сферичний кінь в шейдері або шейдери це просто”

Типи данних в шейдерах

- скалярні типи

- векторні типи

- матриці

- структури

bool fixed half float

fixed2.xy fixed4.rgba

fixed2x2 fixed4x4

Вхідні та вихідні данні- varying

- uniform

Page 10: Олексій Ковалевський “Сферичний кінь в шейдері або шейдери це просто”

Pixel Shader

Page 11: Олексій Ковалевський “Сферичний кінь в шейдері або шейдери це просто”

Vertex Shader

Page 12: Олексій Ковалевський “Сферичний кінь в шейдері або шейдери це просто”

Post-Processing

Page 13: Олексій Ковалевський “Сферичний кінь в шейдері або шейдери це просто”

Tesselation

Page 14: Олексій Ковалевський “Сферичний кінь в шейдері або шейдери це просто”

Compute Shaders

Page 15: Олексій Ковалевський “Сферичний кінь в шейдері або шейдери це просто”

Дякую за увагу!