XNA入門(四)紋理

2021-05-28 12:23:28 字數 1379 閱讀 4329

(1)紋理重複性控制

void vertexbuffer1_created(object sender, eventargs e)

(2)紋理光照控制。

public void render()  //渲染方法,本方法沒有任何渲染**,可認為是渲染方法的框架

{if (device == null)   //如果未建立裝置物件,退出

return;

if (pause)

return;

device.clear(clearflags.target | clearflags.zbuffer,color.lightcoral, 1.0f, 0);

device.beginscene();  //開始渲染

setuplights();    //設定燈光

setupmatrices();

device.settexture(0, texture);

device.texturestate[0].coloroperation = textureoperation.modulate;//設定混合模式

device.texturestate[0].colorargument1 = textureargument.texturecolor;//第一種顏色

device.texturestate[0].colorargument2 = textureargument.diffuse;//第二種顏色,這裡用散色光

= textureoperation.disable;

device.setstreamsource(0, vertexbuffer, 0);

device.vertexformat = customvertex.positionnormaltextured.format;

device.drawprimitives(primitivetype.********list, 0, 1);

device.endscene();   //渲染結束

device.present(); //更新顯示區域,把後備快取的d圖形送到圖形卡的視訊記憶體中顯示

(3)濾波

public void onresetdevice(object sender, eventargs e)

{device dev = (device)sender;

dev.renderstate.cullmode = cull.none;  //取消背面剔除

dev.renderstate.lighting = false;   //取消燈光

setupmatrices();  //在程式執行期間,device的3個變換不改變,因此放在此處

device.samplerstate[0].magfilter = texturefilter.linear; //使用線性濾波器

XNA入門(二)Mdirectx框架解析

關於程式的基本框架 using system using system.collections.generic using system.componentmodel using system.data using system.drawing using system.text using sys...

XNA入門(三)燈光和材質

光源 環境光 定向光源 例如無限遠處的太陽 點光源 燈泡 聚光燈 手電 private void setuplights 設定定向光源 private void setuplights 點光源 device.material mtrl device.lights 0 type lighttype.p...

Unity Shader 入門精要之基礎紋理

最近在看unity shader入門精要這本書,打算進攻下圖形學這一塊了,加油吧 1.紋理對映座標也被叫做uv座標,通常範圍都被歸一化到 0,1 需要注意的是opengl和directx在二維空間座標系是有差異的,但unity已經幫咱們處理好這個問題了,是用符合opengl的傳統,也就是原點位於左下...