"Cg" sayfasının sürümleri arasındaki fark

değişiklik özeti yok
'''Cg''' (veya '''C''' for Graphics'''G'''raphics) [[NVidiaNvidia]] tarafından [[Microsoft]] la yakın işbirliği ile,tepe ve nokta tarayıcıları programlayabilmek için
geliştirilen yüksek seviye bir tarayıcı dilidir.
[[MicrosfotMicrosoft]] un [[HLSL]] sine benzer.Cg C tabanlı olması ve aynı söz dizilimini kullanmasına rağman,C nin bazı özellikleri düzenlenmiş ve, renk ve normal gbigibi yeni veri tipleri eklenmiştir.
 
Bu dil sadece [[GPU]] programlamak içindir ve genel amaçlı bir programlama dili değildir.
Cg derleyiciler [[DirectX]] ve openGL[[OpenGL]] taraıcıtarayıcı programları yaratırlaroluşturabilirler.
 
==Geçmişi==
Grafik kartlarındaki teknik gelişmelerle beraber,3D grafik programlamanın bazı alanları tamamen karmaşık bir hal aldı.Bunu basitleştirmek için,kartlara tepe ve nokta tarayıcıları kullanarak grafik yaratım işhattını düzenleyebilecek özellikler eklendi.
İlk Başlardabaşlarda, tarayıcılar çok düşük seviyede [[GPU]] nun assembly sini kullanarak programlandı.Bu programcıya tüm kod üzerinde kontrol ve esneklik kazandırdıysa da,açıkçası kullanımı zordu.Taşınabilir ve daha yüksek seviye bir dile ihtiyaç vardı ve bununla başa çıkabilmek ve tarayıcı geliştirmeyi daha basit kılabilmek içn '''Cg''' dili yaratıldı.
 
[[Assembly]] yerine '''Cg''' dilini kullanmanın bazı faydaları
*Yüksek seviye kodu öğrenmek,okumak,ve anlamak daha kolay.
*Cg kodları birçok donanım ve platform arasında taşınabilir.Assembly ise yazıldığı platform ve donanıma bağımlıdır.
* bool - boolean değişkeni
* sampler -doku nesnesini temsil eder
Cg ayrıca float3 ve float4 gibi vector,[[matrix]] veri tiplerinin de içerir.Bu tip nesneler 3D programlarken çok yaygındır.Cg C deki haliyle çalışan struct ve array tiplerini de içerir.
 
===Operatörler===
Cg C deki aritmetik operatörler,vector ve [[matrix]] tipleri için aritmetik operatörler ve mantıksal operatörler gibi birçok operatörü içeirir.
41

değişiklik