Programování shaderů GLSL
|
|
- Přemysl Konečný
- před 9 lety
- Počet zobrazení:
Transkript
1 Programování shaderů GLSL
2 Příklad vertex shader Tutor1-Flat Změna geometrie ve VS Nastavení z podle hodnoty získané z aplikace uniform App: loc=gl.glgetuniformlocation(sp,"ftime0_x"); gl.gluniform1f(loc,time); VS: uniform float ftime0_x;
3 VS uniform float ftime0_x; varying vec4 position; void main() { position= gl_vertex; float offset = ftime0_x *2.5; position.y= 0.2*sin(5.0*position.x+offset); Proměnná předávaná z aplikace čas aktuálního snímku gl_position= gl_modelviewprojectionmatrix*position; Přepočet geometrie FS varying vec4 position; void main() { gl_fragcolor = vec4(vec3(position.x,position.y,position.z),1.0); //gl_fragcolor = gl_color;
4 Příklad Tutor2-toon1 Tónování odstupňování odstínu podle N L= cos úhlu ve VS = interpolace barvy Transformace normály! gl_normalmatrix
5 VS varying float intensity; void main() { intensity = dot(vec3(0,0,1),gl_normal); //intensity = max(dot(normalize(gl_lightsource[0].position.xyz),gl_normalmatrix*gl_normal),0.0); gl_position= gl_modelviewprojectionmatrix*gl_vertex; Výpočet difuzní složky ve vrcholech FS varying float intensity; void main() { vec4 color; if (intensity>0.95) else if (intensity>0.8) else if (intensity>0.5) else if (intensity>0.25) else gl_fragcolor = color; Skokové obarvení color=vec4(1.0,0.5,0.5,1.0); color=vec4(0.6,0.3,0.3,1.0); color=vec4(0.0,0.0,0.3,1.0); color=vec4(0.4,0.2,0.2,1.0); color=vec4(0.2,0.1,0.1,1.0); //gl_fragcolor = vec4( intensity, intensity, intensity, intensity);
6 Příklad Tutor2-toon2 v FS = interpolace normály
7 VS varying vec3 normal; void main() { normal = gl_normal; //normal = gl_normalmatrix*gl_normal; gl_position= gl_modelviewprojectionmatrix*gl_vertex; FS varying vec3 normal; void main() { float intensity; Výpočet difuzní složky per pixel na základě interpolované normály intensity = dot(normalize(gl_lightsource[0].position.xyz),(normal)); //intensity = dot(normalize(gl_lightsource[0].position.xyz),normalize(normal)); vec4 color=vec4(normal.yzx,1); if (intensity>0.95) color=vec4(1.0,0.5,0.5,1.0); else if (intensity>0.5) color=vec4(0.6,0.3,0.3,1.0); else if (intensity>0.25) color=vec4(0.4,0.2,0.2,1.0); else color=vec4(0.8,0.1,0.1,1.0); gl_fragcolor = color;
8 Příklad Tutor2-toonFS v FS = interpolace normály Nutná normalizace!
9 Příklad na jiném tělese
10 Příklad Tutor3-light1 Difúzní osvětlení NdotL = max(dot(l,n),0) GL_ShadeModel FLAT_SHADE SMOOTH_SHADE
11 VS void main() { vec3 normal = gl_normalmatrix*gl_normal; Transformace normály Výpočet difuzní složky ve vrcholech float NdotL = max(dot(normalize(gl_lightsource[0].position.xyz),normalize(normal)),0); vec4 diffuse = gl_frontmaterial.diffuse*gl_lightsource[0].diffuse; gl_frontcolor=ndotl*diffuse; Nastavení standardní FrontColor gl_position= gl_modelviewprojectionmatrix*gl_vertex; FS void main() { gl_fragcolor = gl_color; Obarvení standardní barvou
12 Příklad Tutor3-light2 Blinn-Phong model osvětlení Ambientní Difúzní Zrcadlová Výpočet HalfVektoru!
13 VS uniform vec3 LightPosition; uniform vec3 EyePosition; varying vec3 ViewDirection; varying vec3 LightDirection; varying vec3 Normal; void main( void ) { vec4 ObjectPosition = gl_modelviewmatrix * gl_vertex; ViewDirection = EyePosition - ObjectPosition.xyz; LightDirection = LightPosition - ObjectPosition.xyz; Normal = gl_normalmatrix * gl_normal; gl_position= gl_modelviewprojectionmatrix*gl_vertex; Pohledový vektor Vektor osvětlení Transformace normály
14 FS uniform vec4 Ambient,Specular,Diffuse,BaseColor; uniform float SpecularPower; varying vec3 ViewDirection,LightDirection,Normal; void main( void ) {vec3 LightDirection = normalize( LightDirection ); vec3 Normal = normalize( Normal ); float NDotL = dot( Normal, LightDirection ); Difuzní složka vec3 Reflection = normalize( ( ( 2.0 * Normal ) * NDotL )-LightDirection ); vec3 ViewDirection = normalize( ViewDirection ); Specularní složka float RDotV = max( 0.0, dot( Reflection, ViewDirection ) ); vec3 HalfVector = normalize( LightDirection + ViewDirection); float NDotH = max( 0.0, dot( Normal, HalfVector ) ); vec4 TotalAmbient vec4 TotalDiffuse = Ambient * BaseColor; = Diffuse * NDotL * BaseColor; Specularní složka z HalfVectoru vec4 TotalSpecular = Specular * ( pow( NDotH, SpecularPower*4.0 ) ); // TotalSpecular = Specular * ( pow( RDotV, SpecularPower ) ); gl_fragcolor = ( TotalAmbient + TotalDiffuse + TotalSpecular );
15 Příklad - útlum Tutor3-light3 Blinn-Phong model osvětlení Útlum světla od zdroje Koeficient útlumu Konstantní Lineární Kvadratický 1 f k k d k d c l q Výpočet vzdálenosti 2
16 VS uniform vec3 LightPosition; uniform vec3 EyePosition; varying vec3 ViewDirection; varying vec3 LightDirection; varying vec3 Normal; varying float dist; void main( void ) { vec4 ObjectPosition = gl_modelviewmatrix * gl_vertex; ViewDirection = EyePosition - ObjectPosition.xyz; LightDirection = LightPosition - ObjectPosition.xyz; Normal = gl_normalmatrix * gl_normal; dist=length(viewdirection); gl_position= gl_modelviewprojectionmatrix*gl_vertex; Výpočet vzdálenosti od pozorovatele
17 FS uniform vec4 Ambient,Specular,Diffuse,BaseColor; uniform float SpecularPower; varying vec3 ViewDirection,LightDirection,Normal; uniform float constantattenuation, linearattenuation, quadraticattenuation; varying float dist; void main( void ) { vec3 LightDirection = normalize( LightDirection ); vec3 Normal = normalize( Normal ); float NDotL = dot( Normal, LightDirection ); vec3 ViewDirection = normalize( ViewDirection ); vec3 HalfVector = normalize( LightDirection + ViewDirection); float NDotH = max( 0.0, dot( Normal, HalfVector ) ); float att=1.0/(constantattenuation+ Výpočet útlumu od zdroje světla linearattenuation*dist+ quadraticattenuation*dist*dist); vec4 TotalAmbient = Ambient * BaseColor; vec4 TotalDiffuse = Diffuse * NDotL * BaseColor; vec4 TotalSpecular = Specular * ( pow( NDotH, SpecularPower*4.0 ) ); gl_fragcolor = att*( TotalAmbient + TotalDiffuse + TotalSpecular );
18 Příklad reflektor Tutor3-light4 Blinn-Phong model osvětlení Spot light Úhel Směr
19 FS uniform vec4 Ambient,Specular,Diffuse,BaseColor; uniform float SpecularPower; varying vec3 ViewDirection,LightDirection,Normal; uniform float constantattenuation, linearattenuation, quadraticattenuation; varying float dist; uniform float spotcutoff; uniform vec3 spotdirection; void main( void ) {vec3 LightDirection = normalize( LightDirection ); vec3 Normal = normalize( Normal ); float NDotL = dot( Normal, LightDirection ); float spoteffect = dot(normalize(spotdirection),normalize(-lightdirection)); if (spoteffect>spotcutoff) { gl_fragcolor = att*( TotalAmbient + TotalDiffuse + TotalSpecular ); else gl_fragcolor = vec4(1.0,0.0,0.0,0.0); Osvětlení typu reflektor Výpočet osvětlení Mimo kužel světla Výpočet kuželu
20 Příklad - textura Tutor4-tex1 Mapování textury vec4 color=texture2d(te,gl_texcoord[0].st);
21 VS void main( void ) { gl_texcoord[0]=gl_multitexcoord0; //gl_texcoord[0].x=gl_multitexcoord0.x*4; gl_position=ftransform(); Přiřazení souřadnice do textury vrcholu Transformace souřadnic textury Transformace souřadnic vrcholu FS uniform sampler2d Texture0; uniform float ftime0_x; void main( void ) { vec4 color; vec2 st=gl_texcoord[0].st; //st.s=sqrt(st.s)*4.0; //st.t=st.t+cos(st.s*10)/10; //st.t= 0.2*sin(5.0*st.t+fTime0_X *2.5); color=texture2d(texture0,st); //gl_fragcolor.rgb=color.brr; gl_fragcolor.rgb=color.rgb; Odkaz na texturu (sampler) Souřadnice do textury Samplování vzorku (barvy) Obarvení pixelu
22 Příklad - textura Tutor4-tex2 Multitexturing a osvětlení +
23 VS FS uniform sampler2d Texture0; uniform sampler2d Texture1; void main( void ) { vec3 ct,cf; vec4 texel; Odkaz na texturu (sampler) cf=( TotalAmbient + TotalDiffuse + TotalSpecular).rgb; texel=texture2d(texture0,gl_texcoord[0].st); //texel=texture2d(texture1,texel.xy); Samplování vzorku (barvy) Transformace texturou //texel=texture2d(texture0,gl_texcoord[0].st) +texture2d(texture1,gl_texcoord[0].st); Samplování vzorku (barvy) ct=texel.rgb; gl_fragcolor=vec4(cf*ct,0); Složení textury a osvětlení Obarvení pixelu
24 Příklad Geometry shader Generování dalších vrcholů aproximační křivky - Bézier Bod na křivce P t t P 0 0;1 t 3 3P t t 3P t 1 t P 1 t 2 Zvyšování dělení intervalu 1, 2, 3, 3 3
25 VS GS #version 330 layout(lines_adjacency) in; layout(line_strip, max_vertices = 104) out; uniform int times; in vec3 vcolor[]; out vec3 fcolor; vec3 p[4]; void main() { //počet deleni //vstupní a vystupni barva //ridici body p[0]=gl_in[0].gl_position.xyz*0.5+gl_in[1].gl_position.xyz*0.5; p[1]=gl_in[1].gl_position.xyz; p[2]=gl_in[2].gl_position.xyz; p[3]=gl_in[2].gl_position.xyz*0.5+gl_in[3].gl_position.xyz*0.5; fcolor = vcolor[0]; for(int i=0; i<=times; i++) { float t=1-i*1.0/times; gl_position = vec4(p[0]*t*t*t + p[1]*t*(1-t)*3*t + p[2]*3*t*(1-t)*(1-t) + p[3]*(1-t)*(1-t)*(1-t),1); FS EmitVertex(); EndPrimitive(); Vstupem je linie a sousední body Výstupem line_strip Generování bodů Parametr řídící proměnná Ukončení geometrie
26 Ladění Obtížné nelze jednoduše trasovat ani vypisovat Výpis stavu compilace VS a FS glgetobjectparameterivarb glgetinfologarb Od verze 2.0 glgetshaderinfolog Výpis stavu compilace VS nebo FS glgetprograminfolog Výpis stavu linkování VS a FS do shader programu
27 Ladění Použití standardní výstupů VS: gl_position+=1.0; FS: gl_fragcolor.rgb=normal; Používat jednoduchou geometrii trojúhelník, quad Jednoduché (jednotkové) matice gl_viewmatrix, gl_projectionmatrix
28 Ladění - nástroje Shader Designer Shader Gen Render Monkey gdebugger GLIntercept, imdebug
29 Další nástroje
30 Shader Gen
31 Render Monkey
32 gdebugger
33 Kick WWW IDE
34 Shader Toy WWW IDE
Android OpenGL. Práce s texturami
Android OpenGL Práce s texturami Textura Obrázek, který jsme schopní nanášet na 3D objekty S použitím shaderů mnohem víc než to Může obsahovat jiné vlastnosti povrchu, než jen barvu (reliéf, lesklost,
Fakulta informačních technologíı. IZG cvičení 6. - Zobrazování 3D scény a základy OpenGL 1 / 38
IZG cvičení 6. - Zobrazování 3D scény a základy OpenGL Tomáš Milet Ústav počítačové grafiky a multimédíı Fakulta informačních technologíı Vysoké učení technické Brno IZG cvičení 6. - Zobrazování 3D scény
Připravil: David Procházka. Shadery
5. října 2015, Brno Připravil: David Procházka Shadery Počítačová grafika 2 Obsah přednášky Strana 2 / 29 Obsah přednášky 1 Obsah přednášky 2 Shadery 3 Shrnutí Obsah přednášky Strana 3 / 29 Obsah přednášky
27. listopadu 2013, Brno Připravil: David Procházka
27. listopadu 2013, Brno Připravil: David Procházka Texturování Počítačová grafika 2 Obsah přednášky Strana 2 / 37 Obsah přednášky 1 Obsah přednášky 2 Texturování 3 Multum In Parvo 4 Modulace textury ve
STŘEDOŠKOLSKÁ ODBORNÁ ČINNOST
STŘEDOŠKOLSKÁ ODBORNÁ ČINNOST Obor 01 - Matematika Gymnázium Dr. Karla Polesného, Znojmo Složené objekty, řezy těles tělesy, a jejich zobrazování Autor: Škola: Studijní obor: Vilém Otte Gymnázium Dr. Karla
Osvětlování a stínování
Osvětlování a stínování Pavel Strachota FJFI ČVUT v Praze 21. dubna 2010 Obsah 1 Vlastnosti osvětlovacích modelů 2 Světelné zdroje a stíny 3 Phongův osvětlovací model 4 Stínování 5 Mlha Obsah 1 Vlastnosti
WPF 3D vjj 1
WPF 3D 15.11.2018 vjj 1 15.11.2018 vjj 3 samples WindowsSDK WPF Samples WPF4 Unleashed chapter 16 15.11.2018 vjj 4 3D Point3D X, Y, Z Point3DCollection Size3D Rect3D Vector3D 15.11.2018 vjj 5 Viewport3D
Základy 3D modelování a animace v CGI systémech Cinema 4D C4D
EVROPSKÝ SOCIÁLNÍ FOND Základy 3D modelování a animace v CGI systémech Cinema 4D C4D PRAHA & EU INVESTUJEME DO VAŠÍ BUDOUCNOSTI Mgr. David Frýbert 2013 CGI systémy Computer - generated imagery - aplikace
NPGR019. Geometry & tessellation shaders. MFF UK Praha. Vykreslování v OpenGL Tessellation shaders Geometry shaders Literatura
Hardware pro počítačovou grafiku NPGR019 Geometry & tessellation shaders Jan Horáček http://cgg.mff.cuni.cz/ MFF UK Praha 2012 Jan Horáček Geometry & Tesselation 1 / 42 Obsah Propojení Vykreslování Instancované
Android OpenGL. Pokročilé shadery
Android OpenGL Pokročilé shadery Struktura programu Reálná aplikace zpravidla obsahuje více než jeden shader Kód pro inicializaci shaderu je dobré mít ve třídě (méně opisování stejného kódu) Shadery není
Metamorfóza obrázků Josef Pelikán CGG MFF UK Praha
Metamorfóza obrázků 1998-2011 Josef Pelikán CGG MFF UK Praha pepca@cgg.mff.cuni.cz http://cgg.mff.cuni.cz/~pepca/ Morphing 2011 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 1 / 21 Metamorfóza obrázků -
Textury v real-time grafice. 2004-2005 Josef Pelikán, MFF UK Praha http://cgg.ms.mff.cuni.cz/~pepca/ Josef.Pelikan@mff.cuni.cz
Textury v real-time grafice 2004-2005 Josef Pelikán, MFF UK Praha http://cgg.ms.mff.cuni.cz/~pepca/ Josef.Pelikan@mff.cuni.cz Textury vylepšují vzhled povrchu těles modifikace barvy ( bitmapa ) dojem hrbolatého
Textury. Petr Felkel, Jaroslav Sloup a Vlastimil Havran
Textury Petr Felkel, Jaroslav Sloup a Vlastimil Havran Katedra počítačové grafiky a interakce, ČVUT FEL místnost KN:E-413 na Karlově náměstí E-mail: felkel@fel.cvut.cz Poslední změna: 25.3.2015 Textury
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA INFORMAČNÍCH TECHNOLOGIÍ ÚSTAV POČÍTAČOVÉ GRAFIKY A MULTIMÉDIÍ FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF COMPUTER GRAPHICS AND
Programovatelné shadery a jazyk Cg. Petr Kmoch
Programovatelné shadery a jazyk Cg Petr Kmoch Historie Softwarové výpoèty Pevná pipeline Volitelné moduly Programovatelné shadery 11.12.2002 Petr Kmoch, MFF UK 2 Grafická pipeline Triangulace scény Vrcholy
Barva, světlo, materiály v počítačové grafice
Barva, světlo, materiály v počítačové grafice Petr Felkel Katedra počítačové grafiky a interakce, ČVUT FEL místnost KN:E-413 (Karlovo náměstí, budova E) E-mail: felkel@fel.cvut.cz S použitím knihy [MPG]
13 Barvy a úpravy rastrového
13 Barvy a úpravy rastrového Studijní cíl Tento blok je věnován základním metodám pro úpravu rastrového obrazu, jako je např. otočení, horizontální a vertikální překlopení. Dále budo vysvětleny různé metody
7 Transformace 2D. 7.1 Transformace objektů obecně. Studijní cíl. Doba nutná k nastudování. Průvodce studiem
7 Transformace 2D Studijní cíl Tento blok je věnován základním principům transformací v rovinné grafice. V následujícím textu bude vysvětlen rozdíl v přístupu k transformacím u vektorového a rastrového
Reprezentace 3D modelu
Ing. Jan Buriánek (ČVUT FIT) Reprezentace 3D modelu BI-MGA, 2010, Přednáška 8 1/25 Reprezentace 3D modelu Ing. Jan Buriánek Katedra softwarového inženýrství Fakulta informačních technologií České vysoké
Projekt OPVK - CZ.1.07/1.1.00/ Matematika pro všechny. Univerzita Palackého v Olomouci
Projekt OPVK - CZ.1.07/1.1.00/26.0047 Matematika pro všechny Univerzita Palackého v Olomouci Tematický okruh: Geometrie Různé metody řešení Téma: Analytická geometrie v prostoru, vektory, přímky Autor:
Pokročilé osvětlovací techniky. 2005 Josef Pelikán, MFF UK Praha http://cgg.ms.mff.cuni.cz/~pepca/ Josef.Pelikan@mff.cuni.cz
Pokročilé osvětlovací techniky 2005 Josef Pelikán, MFF UK Praha http://cgg.ms.mff.cuni.cz/~pepca/ Josef.Pelikan@mff.cuni.cz Obsah nefotorealistické techniky hrubé tónování kreslení obrysů ( siluety ) složitější
Rekurzivní sledování paprsku
Rekurzivní sledování paprsku 1996-2016 Josef Pelikán CGG MFF UK Praha pepca@cgg.mff.cuni.cz http://cgg.mff.cuni.cz/~pepca/ 1 / 21 Model dírkové kamery 2 / 21 Zpětné sledování paprsku L D A B C 3 / 21 Skládání
Radiometrie, radiační metody
Radiometrie, radiační metody 1996-2018 Josef Pelikán CGG MFF UK Praha pepca@cgg.mff.cuni.cz http://cgg.mff.cuni.cz/~pepca/ Radiometry 2018 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 1 / 34 Globální výpočet
Zobrazování terénů pomocí GPU
MASARYKOVA UNIVERZITA FAKULTA INFORMATIKY #ris m p Zobrazování terénů pomocí GPU DIPLOMOVÁ PRÁCE Marek Mauder Brno, jaro 2008 Prohlášení Prohlašuji, že tato diplomová práce je mým původním autorským dílem,
Programování GPU ( shaders )
Programování GPU ( shaders ) 2004-2012 Josef Pelikán, CGG MFF UK Praha http://cgg.mff.cuni.cz/~pepca/ pepca@cgg.mff.cuni.cz Shaders 2012 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 1 / 35 Obsah architektura
Algoritmizace a programování
Algoritmizace a programování Řídicí struktury jazyka Java Struktura programu Příkazy jazyka Blok příkazů Logické příkazy Ternární logický operátor Verze pro akademický rok 2012/2013 1 Struktura programu
Analytický model pro rozptyl světla v mlze. Jan Ondřej
České vysoké učení technické v Praze Fakulta elektrotechnická Diplomová práce Analytický model pro rozptyl světla v mlze Jan Ondřej Vedoucí práce: Ing. Jaroslav Křivánek, Ph.D. Studijní program: Elektrotechnika
Programování GPU ( shaders ) Josef Pelikán, MFF UK Praha
Programování GPU ( shaders ) 2004-2005 Josef Pelikán, MFF UK Praha http://cgg.ms.mff.cuni.cz/~pepca/ Josef.Pelikan@mff.cuni.cz Obsah architektura programovatelných GPU vertex shaders fragment shaders texture
Geometrické transformace
1/15 Předzpracování v prostoru obrazů Geometrické transformace Václav Hlaváč, Jan Kybic Fakulta elektrotechnická ČVUT v Praze katedra kybernetiky, Centrum strojového vnímání hlavac@fel.cvut.cz http://cmp.felk.cvut.cz/
1. Téma 03 - Rozhodování
1. Téma 03 - Rozhodování Cíl látky Seznámit se a prakticky si vyzkoušet zápis rozhodování v jazyce Java 1.1. Úvod Jednou z nejčastěji používanou konstrukcí při programování je rozhodování. Právě této problematice
TAM. Prezentace přednášek. Ústav počítačové grafiky a multimédií
TAM Prezentace přednášek Ústav počítačové grafiky a multimédií Grafika na mobilních zařízeních OpenGL ES 2.0 Motto If Edison had a needle to find in a haystack, he would proceed at once with the diligence
FAKULTA INFORMAČNÍCH TECHNOLOGIÍ
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA INFORMAČNÍCH TECHNOLOGIÍ ÚSTAV POČÍTAČOVÉ GRAFIKY A MULTIMÉDIÍ FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF COMPUTER GRAPHICS AND
Rád bych poděkoval Ing. Davidu Ambrožovi za jeho cenné rady a připomínky a za ochotu po celou dobu vedení mé diplomové práce.
Univerzita Karlova v Praze Matematicko-fyzikální fakulta DIPLOMOVÁ PRÁCE LUKÁŠ STEHLÍK Zobrazování povrchových detailů pomocí mapování textur Kabinet software a výuky informatiky Vedoucí diplomové práce:
X39RSO/A4M39RSO Vychýlené (biased) metody globálního osvětlení. Vlastimil Havran ČVUT v Praze CTU Prague Verze 2011
X39RSO/A4M39RSO Vychýlené (biased) metody globálního osvětlení Vlastimil Havran ČVUT v Praze CTU Prague Verze 2011 Vychýlené versus nestranné metody Vychýlené vs. nestranné odhady (Biased vs. Unbiased
Programování v C++ 1, 1. cvičení
Programování v C++ 1, 1. cvičení opakování látky ze základů programování 1 1 Fakulta jaderná a fyzikálně inženýrská České vysoké učení technické v Praze Zimní semestr 2018/2019 Přehled 1 2 Shrnutí procvičených
Circular Harmonics. Tomáš Zámečník
Circular Harmonics Tomáš Zámečník Úvod Circular Harmonics Reprezentace křivky, která je: podmonožinou RxR uzavřená funkcí úhlu na intervalu Dále budeme hovořit pouze o takovýchto křivkách/funkcích
3D počítačová grafika na PC. 2003 Josef Pelikán, MFF UK Praha http://cgg.ms.mff.cuni.cz/
3D počítačová grafika na PC 2003 Josef Pelikán, MFF UK Praha http://cgg.ms.mff.cuni.cz/ Pokroky v hardware 3D akcelerace běžná i v konzumním sektoru zaměření na hry, multimedia vzhled kvalita prezentace
VZÁJEMNÁ POLOHA DVOU PŘÍMEK V ROVINĚ
VZÁJEMNÁ POLOHA DVOU PŘÍMEK V ROVINĚ Dvě přímky v rovině mohou být: různoběžné - mají jediný společný bod, rovnoběžné různé - nemají společný bod, totožné - mají nekonečně mnoho společných bodů. ŘEŠENÉ
Numerické metody a programování. Lekce 8
Numerické metody a programování Lekce 8 Optimalizace hledáme bod x, ve kterém funkce jedné nebo více proměnných f x má minimum (maximum) maximalizace f x je totéž jako minimalizace f x Minimum funkce lokální:
Výpočet průsečíků paprsku se scénou
Výpočet průsečíků paprsku se scénou 1996-2018 Josef Pelikán CGG MFF UK Praha pepca@cgg.mff.cuni.cz http://cgg.mff.cuni.cz/~pepca/ Intersection 2018 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 1 / 26 Průsečík
Transformace 2D. Transformace. Souřadnicové systémy. Vektorová a rastrová grafika. Přednáška 7
Přednáška 7 Transformace D Transformace Transformace je proces, při kterém dochází ke změně poloh, orientace nebo velikosti jednotlivých zobrazovaných objektů (geometrie objektů. Transformace souřadnicového
Transformace (v OpenGL) příklady a knihovna GLM
Transforace (v OpenGL) příklady a knihovna GLM Petr Felkel, Jaroslav Sloup Katedra počítačové grafiky a interakce, ČVUT FEL ístnost KN:E-413 (Karlovo náěstí, budova E) E-ail: felkel@fel.cvut.cz Poslední
Fakulta informačních technologíı. Rendering Seminář 1. 1 / 28
Rendering Seminář 1. Tomáš Milet, Tomáš Starka Ústav počítačové grafiky a multimédíı Fakulta informačních technologíı Vysoké učení technické Brno Rendering Seminář 1. 1 / 28 OpenGL OpenGL je architektura
GEODETICKÉ VÝPOČTY I.
SPŠS Č.Budějovice Obor Geodézie a Katastr nemovitostí 2.ročník GEODETICKÉ VÝPOČTY I. TABELACE FUNKCE LINEÁRNÍ INTERPOLACE TABELACE FUNKCE Tabelace funkce se v minulosti často využívala z důvodu usnadnění
Maturitní otázky z předmětu MATEMATIKA
Wichterlovo gymnázium, Ostrava-Poruba, příspěvková organizace Maturitní otázky z předmětu MATEMATIKA 1. Výrazy a jejich úpravy vzorce (a+b)2,(a+b)3,a2-b2,a3+b3, dělení mnohočlenů, mocniny, odmocniny, vlastnosti
Výpočet průsečíků paprsku se scénou
Výpočet průsečíků paprsku se scénou 1996-2008 Josef Pelikán, MFF UK Praha http://cgg.ms.mff.cuni.cz/~pepca/ Josef.Pelikan@mff.cuni.cz NPGR004, intersection.pdf 2008 Josef Pelikán, http://cgg.ms.mff.cuni.cz/~pepca
Základy OpenGL Josef Pelikán CGG MFF UK Praha. OpenGL / 34
Základy OpenGL 2003-2016 Josef Pelikán CGG MFF UK Praha pepca@cgg.mff.cuni.cz http://cgg.mff.cuni.cz/~pepca/ 1 / 34 Pokroky v hardware 3D akcelerace běžná i v konzumním sektoru hry, multimedia, i mobilní
Připravil: David Procházka. Vykreslování grafických primitiv
24. září 2013, Brno Připravil: David Procházka Vykreslování grafických primitiv Počítačová grafika 2 Vykreslování grafických primitiv Strana 2 / 38 Obsah přednášky 1 Vykreslování grafických primitiv 2
Jana Dannhoferová Ústav informatiky, PEF MZLU
Počítačová grafika Křivky Jana Dannhoferová (jana.dannhoferova@mendelu.cz) Ústav informatiky, PEF MZLU Základní vlastnosti křivek křivka soustava parametrů nějaké rovnice, která je posléze generativně
VISUAL BASIC. Přehled témat
VISUAL BASIC Přehled témat 1 ÚVOD DO PROGRAMOVÁNÍ Co je to program? Kuchařský předpis, scénář k filmu,... Program posloupnost instrukcí Běh programu: postupné plnění instrukcí zpracovávání vstupních dat
Více o konstruktorech a destruktorech
Více o konstruktorech a destruktorech Více o konstruktorech a o přiřazení... inicializovat objekt lze i pomocí jiného objektu lze provést přiřazení mezi objekty v původním C nebylo možné provést přiřazení
PROGRAMOVATELNÉ SHADERY V OPENGL
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA INFORMAČNÍCH TECHNOLOGIÍ ÚSTAV POČÍTAČOVÉ GRAFIKY A MULTIMÉDIÍ FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF COMPUTER GRAPHICS AND
Gymnázium Jiřího Ortena, Kutná Hora. Průřezová témata Poznámky. Téma Školní výstupy Učivo (pojmy) volné rovnoběžné promítání průmětna
Předmět: Matematika Náplň: Stereometrie, Analytická geometrie Třída: 3. ročník a septima Počet hodin: 4 hodiny týdně Pomůcky: PC a dataprojektor, učebnice Stereometrie Volné rovnoběžné promítání Zobrazí
Základní vlastnosti ploch
plocha zpravidla se definuje jako výsledek spojitého pohybu jisté tvořící křivky podél zadané trajektorie lze obohatit o možnost spojitých změn tvaru tvořící křivky x v průběhu pohybu podél trajektorie
Rastrové digitální modely terénu
Rastrové digitální modely terénu Rastr je tvořen maticí buněk (pixelů), které obsahují určitou informaci. Stejně, jako mohou touto informací být typ vegetace, poloha sídel nebo kvalita ovzduší, může každá
Kristýna Bémová. 13. prosince 2007
Křivky v počítačové grafice Kristýna Bémová Univerzita Karlova v Praze 13. prosince 2007 Kristýna Bémová (MFF UK) Křivky v počítačové grafice 13. prosince 2007 1 / 36 Pojmy - křivky a jejich parametrické
NURBS REPREZENTACE KŘIVEK V MAPLE
25. KONFERENCE O GEOMETRII A POČÍTAČOVÉ GRAFICE Karolína Kundrátová NURBS REPREZENTACE KŘIVEK V MAPLE Abstrakt Parametrizace křivek jako NURBS (tj. neuniformní racionální B-spliny) patří k moderním postupům
1.1 Napište středovou rovnici kružnice, která má střed v počátku soustavy souřadnic a prochází bodem
Analytická geometrie - kružnice Napište středovou rovnici kružnice, která má střed v počátku soustavy souřadnic a prochází bodem A = ; 5 [ ] Napište středový i obecný tvar rovnice kružnice, která má střed
Tomáš Hudeček Zuzana Žáková
Tomáš Hudeček Zuzana Žáková disertační, diplomové a bakalářské práce v tématech analýzy dostupnosti různých částíúzemí s využitím různých dopravních módů změny dostupnosti v čase vztahy dostupnosti a dalších
Operace s obrazem I. Biofyzikální ústav Lékařské fakulty Masarykovy univerzity Brno. prezentace je součástí projektu FRVŠ č.
Operace s obrazem I Biofyzikální ústav Lékařské fakulty Masarykovy univerzity Brno prezentace je součástí projektu FRVŠ č.2487/2011 Osnova 1 Filtrování obrazu 2 Lineární a nelineární filtry 3 Fourierova
Mateřská škola a Základní škola při dětské léčebně, Křetín 12
Mateřská škola a Základní škola při dětské léčebně, Křetín 12 Autor: Mgr. Miroslav Páteček Vytvořeno: červen 2012 Klíčová slova: Matematika a její aplikace Podobnost, funkce, goniometrické funkce, lomený
Plochy zadané okrajovými křivkami
Plochy zadané okrajovými křivkami Lineární plát plocha je určena dvěma okrajovými křivkami, pokud by pro tyto křivky byly intervaly, v nichž leží hodnoty parametru, různé, provedeme lineární transformaci
Základní vlastnosti křivek
křivka množina bodů v rovině nebo v prostoru lze chápat jako trajektorii pohybu v rovině či v prostoru nalezneme je také jako množiny bodů na ploše křivky jako řezy plochy rovinou, křivky jako průniky
Mgr. Ladislav Zemánek Maturitní okruhy Matematika 2013-2014. 1. Obor reálných čísel
Mgr. Ladislav Zemánek Maturitní okruhy Matematika 2013-2014 1. Obor reálných čísel - obor přirozených, celých, racionálních a reálných čísel - vlastnosti operací (sčítání, odčítání, násobení, dělení) -
Maturitní témata z matematiky
Maturitní témata z matematiky 1. Lineární rovnice a nerovnice a) Rovnice a nerovnice s absolutní hodnotou absolutní hodnota reálného čísla definice, geometrický význam, srovnání řešení rovnic s abs. hodnotou
Matematika pro geometrickou morfometrii
Matematika pro geometrickou morfometrii Václav Krajíček Vaclav.Krajicek@mff.cuni.cz Department of Software and Computer Science Education Faculty of Mathematics and Physics Charles University Přednáška
Sem vložte zadání Vaší práce.
Sem vložte zadání Vaší práce. České vysoké učení technické v Praze Fakulta informačních technologií Katedra softwarového inženýrství Bakalářská práce Rozšíření platformy ExtBrain Universe Martin Šedivý
Aproximační křivky. Trocha historie. geometrické modelování veliký pokrok v oblasti letectví 1944 Roy Liming
Trocha historie geometrické modelování veliký pokrok v oblasti letectví 944 Roy Liming analytik, North American Aviation (výrobce letadel) společně s konstruktérem a designérem Edgardem Schmuedem matematizace
9 Prostorová grafika a modelování těles
9 Prostorová grafika a modelování těles Studijní cíl Tento blok je věnován základům 3D grafiky. Jedná se především o vysvětlení principů vytváření modelů 3D objektů, jejich reprezentace v paměti počítače.
KMA/GPM Barycentrické souřadnice a
KMA/GPM Barycentrické souřadnice a trojúhelníkové pláty František Ježek jezek@kma.zcu.cz Katedra matematiky Západočeské univerzity v Plzni, 2008 19. dubna 2009 1 Trojúhelníkové pláty obecně 2 Barycentrické
1 Jasové transformace
1 Jasové transformace 1.1 Teoretický rozbor 1.1.1 Princip jasové transformace Jasové transformace představují transformační funkce, které mění vždy určitou hodnotu vstupní jasové funkce na výstupní. Transformace
MATURITNÍ TÉMATA Z MATEMATIKY
MATURITNÍ TÉMATA Z MATEMATIKY 1. Základní poznatky z logiky a teorie množin Pojem konstanty a proměnné. Obor proměnné. Pojem výroku a jeho pravdivostní hodnota. Operace s výroky, složené výroky, logické
Realistické zobrazení terénu
MASARYKOVA UNIVERSITA FAKULTA INFORMATIKY Realistické zobrazení terénu DIPLOMOVÁ PRÁCE Bc. Martin Červinka i 1. ÚVOD Brno, Jaro 2007 ii Prohlášení Prohlašuji, že tato diplomová práce je mým původním autorským
1. Přímka a její části
. Přímka a její části přímka v rovině, v prostoru, přímka jako graf funkce, konstrukce přímky nebo úsečky, analytická geometrie přímky, přímka jako tečna grafu, přímka a kuželosečka Přímka v rovině a v
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY
Strana 1 VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA STROJNÍHO INŽENÝRSTVÍ ÚSTAV AUTOMATIZACE A INFORMATIKY FACULTY OF MECHANICAL ENGINEERING INSTITUTE OF AUTOMATION AND COMPUTER
PB001: Úvod do informačních technologíı
PB001: Úvod do informačních technologíı Luděk Matyska Fakulta informatiky Masarykovy univerzity podzim 2013 Luděk Matyska (FI MU) PB001: Úvod do informačních technologíı podzim 2013 1 / 29 Obsah přednášky
Požadavky k písemné přijímací zkoušce z matematiky do navazujícího magisterského studia pro neučitelské obory
Požadavky k písemné přijímací zkoušce z matematiky do navazujícího magisterského studia pro neučitelské obory Zkouška ověřuje znalost základních pojmů, porozumění teorii a schopnost aplikovat teorii při
Omezení barevného prostoru
Úpravy obrazu Omezení barevného prostoru Omezení počtu barev v obraze při zachování obrazového vjemu z obrazu Vytváření barevné palety v některých souborových formátech Různé filtry v grafických programech
Reprezentace bodu, zobrazení
Reprezentace bodu, zobrazení Ing. Jan Buriánek VOŠ a SŠSE P9 Jan.Burianek@gmail.com Obsah Témata Základní dělení grafických elementů Rastrový vs. vektorový obraz Rozlišení Interpolace Aliasing, moiré Zdroje
Základní techniky zobrazování Josef Pelikán, MFF UK Praha
Základní techniky zobrazování 2005 Josef Pelikán, MFF UK Praha http://cgg.ms.mff.cuni.cz/~pepca/ Josef.Pelikan@mff.cuni.cz Obsah výpočet viditelnosti ( depth-buffer ) obrazové buffery ( frame buffers )
Cvičné texty ke státní maturitě z matematiky
Cvičné texty ke státní maturitě z matematiky Pracovní listy s postupy řešení Brno 2010 RNDr. Rudolf Schwarz, CSc. Státní maturita z matematiky Obsah Obsah NIŽŠÍ úroveň obtížnosti 4 MAGZD10C0K01 říjen 2010..........................
Co je grafický akcelerátor
Co je grafický akcelerátor jednotka v osobním počítači či herní konzoli přebírá funkce hlavního procesoru pro grafické operace graphics renderer odlehčuje hlavnímu procesoru paralelní zpracování vybaven
Geometrické praktikum
Geometrické praktikum Jan Laštovička 28. dubna 2015 1 Kreslení objektů v rovině Začneme malým příkladem. Nahrajte knihovnu lisp-gl načtením (například z nabídky File > Load...) souboru load.lisp a vyhodnot
Tematický plán Obor: Informační technologie. Vyučující: Ing. Joanna Paździorová
Tematický plán Vyučující: Ing. Joanna Paździorová 1. r o č n í k 5 h o d i n t ý d n ě, c e l k e m 1 7 0 h o d i n Téma- Tematický celek Z á ř í 1. Opakování a prohloubení učiva základní školy 18 1.1.
7. OSVĚTLENÍ. Cíl Po prostudování této kapitoly budete znát. Výklad. 7. Osvětlení
7. OSVĚTENÍ Cíl Po prostudování této kapitoly budete znát základní pojmy při práci se světlem charakteristické fyzikální vlastnosti světla důležité pro práci se světlem v počítačové grafice základní operace
Martin Flusser. Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague. October 17, 2016
ZPRO cvičení 2 Martin Flusser Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague October 17, 2016 Outline I 1 Outline 2 Proměnné 3 Proměnné - cvičení 4 Funkce 5 Funkce
B) výchovné a vzdělávací strategie jsou totožné se strategiemi vyučovacího předmětu Matematika.
4.8.3. Cvičení z matematiky Předmět Cvičení z matematiky je vyučován v sextě a v septimě jako volitelný předmět. Vzdělávací obsah vyučovacího předmětu Cvičení z matematiky vychází ze vzdělávací oblasti
Téma: Vektorová grafika. Určete pravdivost následujícího tvrzení: "Grafická data jsou u 2D vektorové grafiky uložena ve voxelech."
Téma: Vektorová grafika. Určete pravdivost následujícího tvrzení: "Grafická data jsou u 2D vektorové grafiky uložena ve voxelech." Téma: Vektorová grafika. Určete pravdivost následujícího tvrzení: "Na
VIDEOSBÍRKA DERIVACE
VIDEOSBÍRKA DERIVACE. Zderivuj funkci y = ln 2 (sin x + tg x 2 ) 2. Zderivuj funkci y = 2 e x2 cos x. Zderivuj funkci y = e sin2 (x 2 ). Zderivuj funkci y = x +2x 2 +sin x x 5. Zderivuj funkci y = cos2
Zobrazování 2D Nadpis křivek 2 Nadpis 3
IZG Nadpis Lab 04 1 Zobrazování 2D Nadpis křivek 2 Nadpis 3 Pavel Jméno Svoboda Příjmení Vysoké Vysoké učení technické učení technické v Brně, v Fakulta Brně, Fakulta informačních informačních technologií
Křivky a plochy technické praxe
Kapitola 7 Křivky a plochy technické praxe V technické praxi se setkáváme s tím, že potřebujeme křivky a plochy, které se dají libovolně upravovat a zároveň je jejich matematické vyjádření jednoduché.
Ing. Jan Buriánek. Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze Jan Buriánek, 2010
Ing. Jan Buriánek (ČVUT FIT) Reprezentace bodu a zobrazení BI-MGA, 2010, Přednáška 2 1/33 Ing. Jan Buriánek Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické
II. Zakresli množinu bodů, ze kterých vidíme úsečku délky 3 cm v zorném úhlu větším než 30 0 a menším než 60 0.
Ukázky typových maturitních příkladů z matematiky..reálná čísla. 3} x R; I. Zobrazte množiny A = {x є 3} < + x R; B = {x є II. Zapište ve tvaru zlomku číslo, 486.Komplexní čísla. I. Určete a + b, a - b,
Textura a mapovací funkce Způsoby aplikace textury Použití textury pro prostorovou modifikaci povrchu Mipmapping Literatura.
Mapování textur Pavel Strachota FJFI ČVUT v Praze 28. dubna 2010 Obsah 1 Textura a mapovací funkce 2 Způsoby aplikace textury 3 Použití textury pro prostorovou modifikaci povrchu 4 Mipmapping Obsah 1 Textura
Operační systémy. Cvičení 4: Programování v C pod Unixem
Operační systémy Cvičení 4: Programování v C pod Unixem 1 Obsah cvičení Řídící struktury Funkce Dynamická alokace paměti Ladění programu Kde najít další informace Poznámka: uvedené příklady jsou dostupné
8.3 Programování v PovRAY (proměnné, cykly)
8.3. PROGRAMOVÁNÍ V POVRAY 8.3 Programování v PovRAY (proměnné, cykly) Jak bylo už ukázáno v předchozí kapitole PovRAY k popisu scény využívá vlastní scriptovací jazyk. Nejedná se plnohodnotný programovací
Úlohy k přednášce NMAG 101 a 120: Lineární algebra a geometrie 1 a 2,
Úlohy k přednášce NMAG a : Lineární algebra a geometrie a Verze ze dne. května Toto je seznam přímočarých příkladů k přednášce. Úlohy z tohoto seznamu je nezbytně nutné umět řešit. Podobné typy úloh se
Matematika pro geometrickou morfometrii (2)
Ján Dupej (jdupej@cgg.mff.cuni.cz) Laboratoř 3D zobrazovacích a analytických metod Katedra antropologie a genetiky člověka Přírodovědecká fakulta UK v Praze Opakování 2 Opakování 3 Opakování 4 Opakování
Interpolace pomocí splajnu
Interpolace pomocí splajnu Interpolace pomocí splajnu Připomenutí U interpolace požadujeme, aby graf aproximující funkce procházel všemi uzlovými body. Interpolační polynom aproximující funkce je polynom
DERIVACE. ln 7. Urči, kdy funkce roste a klesá a dále kdy je konkávní a
DERIVACE 1. Zderivuj funkci y = ln 2 (sin x + tg x 2 ) 2. Zderivuj funkci y = 2 e x2 cos x 3. Zderivuj funkci y = 3 e sin2 (x 2 ) 4. Zderivuj funkci y = x3 +2x 2 +sin x x 5. Zderivuj funkci y = cos2 x