Cg (programovací jazyk)

Cg Shading Language
VývojářNVIDIA, microsoft
DialektyCg, HLSL, Playstation Shading Language
Ovlivněn jazykyC , RenderMan Shading Language
Ovlivnil jazykyGLSL

Cg (z anglického C for graphics) je vyšší programovací jazyk pro psaní shaderů vyvinutý společností NVIDIA (od roku 2002). Syntakticky je velmi podobný jazyku High Level Shader Language (HLSL) od společnosti Microsoft.

Z důvodu možnosti dvoustupňového překladu může být pro běh zapotřebí Cg runtime (překlad programu pak probíhá i dynamicky, tj. až v době běhu aplikace pro konkrétní GPU). V této souvislosti se hovoří o cílových profilech (konkrétní verze shaderů a tedy instrukční sady).

Syntaxe jazyka Cg je odvozena od jazyka C. Mezi důležitá rozšíření jazyka patří vektorové operace, operátor swizzle, další datové typy (half, fixed, vektorové a maticové typy, sampler* typy pro textury).

Syntaxe a použití jazyka

Jazyk Cg je z hlediska syntaxe i použití velmi podobný (ve spoustě aspektů identický) jazyku High Level Shader Language (HLSL) od společnosti Microsoft.

Související informace naleznete také v článku High Level Shader Language.

Příklad

Vertex shader v Cg:

 // vstupní vrchol
 struct VertIn {
     float4 pos   : POSITION;
     float4 color : COLOR0;
 };
 
 // výstupní vrchol
 struct VertOut {
     float4 pos   : POSITION;
     float4 color : COLOR0;
 };
 
 // vstup vertex shaderu
 VertOut main(VertIn IN, uniform float4x4 modelViewProj) {
     VertOut OUT;
     OUT.pos     = mul(modelViewProj, IN.pos); // spočítej výstupní souřadnice
     OUT.color   = IN.color; // zkopíruj vstupní barvu do výstupní
     OUT.color.z = 1.0f; // modrá složka barvy = 1.0f
     return OUT;
 }

Související články

Externí odkazy

Pahýl
Tento článek je příliš stručný nebo postrádá důležité informace.
Pomozte Wikipedii tím, že jej vhodně rozšíříte. Nevkládejte však bez oprávnění cizí texty.

Zdroj datcs.wikipedia.org
Originálcs.wikipedia.org/wiki/Cg_(programovací_jazyk)
Zobrazit sloupec 

Kalkulačka - Výpočet

Výpočet čisté mzdy

Důchodová kalkulačka

Přídavky na dítě

Příspěvek na bydlení

Rodičovský příspěvek

Životní minimum

Hypoteční kalkulačka

Povinné ručení

Banky a Bankomaty

Úrokové sazby, Hypotéky

Směnárny - Euro, Dolar

Práce - Volná místa

Úřad práce, Mzda, Platy

Dávky a příspěvky

Nemocenská, Porodné

Podpora v nezaměstnanosti

Důchody

Investice

Burza - ČEZ

Dluhopisy, Podílové fondy

Ekonomika - HDP, Mzdy

Kryptoměny - Bitcoin, Ethereum

Drahé kovy

Zlato, Investiční zlato, Stříbro

Ropa - PHM, Benzín, Nafta, Nafta v Evropě

Podnikání

Města a obce, PSČ

Katastr nemovitostí

Katastrální úřady

Ochranné známky

Občanský zákoník

Zákoník práce

Stavební zákon

Daně, formuláře

Další odkazy

Auto - Cena, Spolehlivost

Registr vozidel - Technický průkaz, eTechničák

Finanční katalog

Volby, Mapa webu

English version

Czech currency

Prague stock exchange


Ochrana dat, Cookies

 

Copyright © 2000 - 2024

Kurzy.cz, spol. s r.o., AliaWeb, spol. s r.o.