搜索 社区服务 统计排行 帮助
  • 1028阅读
  • 1回复

[请教]MPC里面的SHADERS是做什么的?

楼层直达
级别: 风云使者
注册时间:
2006-03-12
在线时间:
54小时
发帖:
6604
找到资料了……


Shader是什 ? [WIKI.en]
Shader簡單的說就是用來操作顯示卡裡的運算核心的程式語言
這個運算核心我們稱為GPU(Graphics processing unit) [WIKI]
過去的顯示卡只能用預先寫好的方式做計算
而目前的顯示卡都屬於"可程式化"
我們可以自己寫程式告訴它應該如何計算出結果
由於GPU與電腦主機本身的運算核心CPU(Central processing unit)獨立
所以對於計算圖形資料有很大的幫助

過去寫Shader必須去寫低階的"組合語言"
所以並不是相當方便
現在已經有高階的"Shading Language"可以幫我們把高階的語法
編譯成為低階的組合語言
常見的Shading Language有 OGSL(OpenGL), HLSL(DirectX), Cg(Nvidia)

Shader目前又分為兩種
Vertex Shader以及Pixel(Fragment) Shader
前者計算每一個3D裡面的點的資訊
後者計算每一個2D在螢幕上面的像素(Pixel)的資訊
MPC所支援的就是使用HLSL來寫的Pixel Shader

如何在MPC使用Shader?
開啟MPC後先到 View -> Options... 去確認支援shader的選項有沒有開啟
選進 Playback -> Output
把右下角的"use texture surfaces and render video in 3D***"選起來
然後確認其他三個框格裡面最好都是選擇VMR9或是DirectX9
接下來當你開啟任何檔案或是裝置後
就可以到 Play -> Shaders 去開啟想要使用的Shader
如果發生缺少dll的問題
應該就需要安裝新的DirectX了 [連結]
如果沒有任何Shader有作用
應該就是你的顯示卡不支援pixel shader了

如果想要自己編寫自己的Shader
按進去 View->Shader Editor 或是 Play -> Shaders -> Edit就可以選擇想參考的Shader
並且可以改寫它
如果要新增就在Shader名稱那邊輸入自己要取的名字後按Enter
就會出現一個新的預設的Shader
就可以自行改寫了

级别: 新手上路
注册时间:
2002-11-28
在线时间:
0小时
发帖:
72
只看该作者 1楼 发表于: 2007-10-09
无法载入渲染器该怎么办?
快速回复

限150 字节
上一个 下一个