OpenGL:反走樣

由於電腦以離散點產生圖形,產生圖形必然與真實景物存在差距,這種差距表現為:直線或光滑曲面的鋸齒、花紋失去原有色彩形狀、細小物體在畫面的消失等。統統叫做走樣(aliasing)。反走樣可以減少這種情況。粗略設想一下,就是把原來邊界的地方鋸齒部分用低飽和度的點補上,這樣既不影響整體輪廓,又獲得較好的凹凸貼圖。用於減少和消除各種走樣現象的方法就是反走樣。通常反走樣的方法有提高解析度法、非加權地區採樣法、加權地區採樣法等,但是在OpenGL中實現反走樣就簡單的多。反走樣前提供“提示”採用函數:

家有千金之離開小島

小姑娘四歲多,常有奇思妙想。某日,小姑娘在床上玩,說:“這個床現在成了一個海島,外面都是水。”“那我們要怎麼出去呢?”在不斷的鼓勵下,小姑娘列出了很多方法:1、可以裝一個翅膀飛出去。2、可以坐在蝴蝶身上,抓住它的翅膀,再告訴它我們要去哪裡。3、可以坐在蜻蜓身上。4、可以坐火箭出去。5、可以丟一個炸彈,然後水就幹了,可以走出去。6、可以像青蛙樣的,從水裡遊出去。7、可以丟一把扇子,我們就可以抓住它遊過去。本來期待小姑娘會說造一座橋出去,沒想到聽到了一些更妙的主意,哈哈......

反走樣技術

百科:反走樣 在點陣圖形顯示器上繪製非水平且非垂直的直線或多邊形邊界時,或多或少會呈現鋸齒狀或台階狀外觀。這是因為直線、多邊形、色彩邊界等是連續的,而光柵則是由離散的點組成,在光柵顯示裝置上表現直線、多邊形等,必須在離散位置採樣。由於採樣不充分重建後造成的資訊失真,就叫走樣(aliasing)。而用於減少或消除這種效果的技術,就稱為反走樣(antialiasing)。  電腦產生映像時通常存在三種走樣現象中的兩種:鋸齒形邊以及圖形細節或紋理繪製失真。第三種現象出現在顯示非常微小對象的場合。  基

OpenGL:霧

 霧也是大自然中最常見的現象之一,有了霧的效果,情境看起來會更加真實。在OpenGL中,很容易實現霧的效果。在OpenGL中,霧的工作模式有兩種:線性模式和指數模式。這兩種模式是根據霧的濃度變化來區分的。線上性模式下,只需要提供一個距離視點的開始位置和結束位置。從開始位置到結束位置之間,霧的濃度越來越高,濃度的變化和距離成正比。在指數模式下,霧的濃度隨著距離的增加呈指數增長。這種模式通常用來用於煙霧、煙幕等效果。啟用霧化的效果必須使用glEnable(GL_FOG),同樣,取消霧的效果就是glD

GPU編程入門(二) 象素shader

好,給出一個最簡單的像素shader(pixel shader)的例子,照例,這個程式什麼也沒作,只是把輸入又輸出了一下而已  //定義一個輸出結構struct OUTPUT...{    float4 color :COLOR;}//像素shader入口函數 OUTPUT main(float4 color:COLOR)...{    OUTPUT OUT;    OUT.color=color;  return OUT;   

OpenGL:顯示列表

1.顯示列表的優勢  OpenGL顯示列表的設計能最佳化程式運行效能,尤其是網路效能。它被設計成命令快取,而不是動態資料庫緩衝。也就是說,一旦建立了顯示列表,就不能修改它。因為若顯示列表可以被修改,則顯示列表的搜尋、記憶體管理的執行等開銷會降低效能。  採用顯示列表方式繪圖一般要比瞬時方式快,尤其是顯示列表方式可以大量地提高網路效能,即當通過網路發出繪圖命令時,由於顯示列表駐留在伺服器中,因而使網路的負擔減輕到最小。另外,在單使用者的機器上,顯示列表同樣可以提高效率。因為一旦顯示列表被處理成適合

家有千金之妙語錄(17)

小姑娘四歲多,常有驚人之語。某日,奶奶感慨老了,小姑娘說:“不怕,我去給你買唐僧肉吃!”又如某日,和小姑娘玩卡片遊戲,隨意取四張寫有不同詞語的卡片,要求將這些卡片上的詞串聯起來講一個小故事,下面就是小姑娘的故事:1、小豬、伯伯、蘑菇、閃有一個老伯伯,他養了一頭小豬。有一天,他到山上去,突然碰到下雨,打雷閃電,最後他們采了一個蘑菇,把它當成一把傘就回家了。2、胖、七、八、枕頭有一天,有七八個小朋友到我們家玩,他們排成兩排,一排男孩,一排女孩,然後他們就看見了一個胖爸爸和一個胖媽媽,我們玩得很開心,

CEGUI安裝、編譯、運行總結

花了兩天時間,總算把Sample下的例子跑成功了,真不容易啊,呵呵,現把遇到的問題解決等做個小小的總結吧,供初學者交流參考,若有說錯的地方,歡迎指正。1、  下載:http://www.cegui.org.uk/wiki/index.php/Downloads最新版本為0.7.1,點進去後會發現有多個download連結,簡單翻譯下:a)         CEGUI 0.7.1 Library Source

OpenGL:位元影像與映像

 11.1、位元影像  11.1.1 位元影像(Bitmap)與字元(Font)  位元影像是以元素值為0或1的矩陣形式儲存的,通常用於對視窗中相應地區的繪圖屏蔽。比如說,使用中色彩設定為紅色,則在矩陣元素值為1的地方象素用紅色來取代,反之,在為0的地方,對應的象素不受影響。位元影像普遍用於字元顯示,請看下面例子:  例11-1 位元影像字元常式(font.c)  #include "glos.h"  #include <GL/gl.h>  #include

在VDSP中編譯uclinux(7):令人困惑的成功

哈哈,uClinux-2.6.x終於在VDSP下跑起來了,除了高興還是高興!經過整整兩個星期的挑燈夜戰,總算可以舒舒服服地睡上一覺了,慶祝一下:Linux version 2.6.19.3-ADI-2007R1.1-svn (wmz@gtw.com) (vdsp 4.5) #2 Tue Sep 25 11:24:43 CST 2007Warning: limiting memory to 53MB due to hardware anomaly 05000263Blackfin support

glTexParameteri()

OpenGL——紋理過濾函數glTexParameteri()    圖象從紋理圖象空間映射到幀緩衝圖象空間(映射需要重新構造紋理映像,這樣就會造成應用到多邊形上的映像失真),這時就可用glTexParmeteri()函數來確定如何把紋理象素映射成像素.    部分參數功能說明如下:    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP);        GL_TEXTURE_2D: 操作2D紋理.       

一個將string轉換為 const* char的函數

   const * char c_str()    一個將string轉換為 const* char的函數。    string的c_str()返回的指標是由string管理的。它的生命期是string對象的生命期。然後可以按C的方式使用這個指標,或把它的內容複寫出來。    例如:        string s;        cin>>s;        const char *ch=s.c_str();    這樣就可以從標準輸入裡輸入任意長的字串,並按const

在VDSP中編譯uclinux(5):Milestone-核心啟動基本完成

 經過幾天的連續奮戰,uclinux for bf561核心基本上啟動完成,終於可以休息一下了!看看:Linux version 2.6.19.3-ADI-2007R1.1-svn (wmz@gtw.com) (vdsp 4.5) #2 Tue Sep 25 11:24:43 CST 2007Blackfin support (C) 2004-2007 Analog Devices, Inc.Compiled for ADSP-BF561 Rev 0.3Blackfin Linux

在cygwin下構建bfin-toolchain

發布一個在cygwin下成功構建的bfin-toolchain。 此版本對應的源碼包為:blackfin-toolchain-09r1.1-2.src.tar.bz2,使用cygwin-gcc-3.4進行編譯。使用時需要將elf.h複製到/usr/include目錄下。如果要讓核心支援jffs2檔案系統,需要將mkfs.jffs2.exe複製到uclinux源碼的user/mtd-utils目錄下,再touch一下,使其時間比原始碼更新。具體參見《在cygwin下進行bfin-uclinux開發

OpenGL:混合

 混合是什麼呢?混合就是把兩種顏色混在一起。具體一點,就是把某一像素位置原來的顏色和將要畫上去的顏色,通過某種方式混在一起,從而實現特殊的效果。假設我們需要繪製這樣一個情境:透過紅色的玻璃去看綠色的物體,那麼可以先繪製綠色的物體,再繪製紅色玻璃。在繪製紅色玻璃的時候,利用“混合”功能,把將要繪製上去的紅色和原來的綠色進行混合,於是得到一種新的顏色,看上去就好像玻璃是半透明的。要使用OpenGL的混合功能,只需要調用:glEnable(GL_BLEND);即可。要關閉OpenGL的混合功能,只需要

在VDSP中編譯uclinux(6):VFS: Unable to mount root fs on unknown-block(31,0)

這兩天在Linux下做了一個ext2的映像檔案,將之插入到uClinux代碼的末尾。原以為檔案系統的問題應該很容易搞定,誰知忙碌了三四個晚上竟然毫無進展:Linux version 2.6.19.3-ADI-2007R1.1-svn (wmz@gtw.com) (vdsp 4.5) #2 Tue Sep 25 11:24:43 CST 2007Warning: limiting memory to 53MB due to hardware anomaly 05000263Blackfin

uclinux核心的container_of

快樂蝦http://blog.csdn.net/lights_joy/lights@hb165.com  本文適用於ADSP-BF561uclinux-2008r1.5-rc3 (smp patch) 歡迎轉載,但請保留作者資訊核心中大量使用container_of這個宏,用以進行資料結構的向上轉換,比如這樣一段代碼:static int platform_match(struct device * dev, struct device_driver * drv){     struct

host-i686-pc-cygwin/libdecnumber/Makefile分析

快樂蝦http://blog.csdn.net/lights_joy/lights@hb165.com   本文適用於gcc-4.3.1configure –target=bfin-uclinux-gnuBlackfin系列DSPCygwin gcc 3.4.4   歡迎轉載,但請保留作者資訊  在cygwin gcc 3.4.4環境下構建交叉編譯器bfin-uclinux-gcc時,首先執行的是configure

binutils中size.exe的產生

 快樂蝦http://blog.csdn.net/lights_joy/lights@hb165.com    本文適用於binutils-2.18configure –target=bfin-uclinux-gnuBlackfin系列DSPCygwin gcc 3.4.4 歡迎轉載,但請保留作者資訊  1.1    size$(EXEEXT)這條規則定義為:size$(EXEEXT): $(size_OBJECTS) $(size_DEPENDENCIES)       @rm -f

binutils中strings.exe的產生

 快樂蝦http://blog.csdn.net/lights_joy/lights@hb165.com  本文適用於binutils-2.18configure –target=bfin-uclinux-gnuBlackfin系列DSPCygwin gcc 3.4.4  歡迎轉載,但請保留作者資訊 1.1    strings$(EXEEXT)這條規則定義為:strings$(EXEEXT): $(strings_OBJECTS) $(strings_DEPENDENCIES)       @

總頁數: 61357 1 .... 16172 16173 16174 16175 16176 .... 61357 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.