第二章:圖形繪制

Texture

1.紋理(Texture):圖片從原始格式牧抵,解碼并上傳到GPU的過程,被稱之為紋理运嗜。
2.用途:其實(shí)就是承裝獲取到目的圖片的容器
3.使用:Gdx.files.* 文件模塊

Gdx.files.*文件模塊主要有以下功能
1.Gdx.files.classpath("") 路徑相對(duì)于classpath,文件通常只讀
2.Gdx.files.internal("") 內(nèi)部文件路徑,JAVA項(xiàng)目對(duì)應(yīng) resources 目錄叠纷,Android項(xiàng)目對(duì)應(yīng)assets 文件夾
3.Gdx.files.external("") 從外部存儲(chǔ)獲取
4.Gdx.files.absolute("") 絕對(duì)路徑


SpriteBatch 類(相當(dāng)于畫筆)

1.用于繪制二維矩形參考紋理,可用于批量繪圖命令潦嘶,和優(yōu)化GPU處理涩嚣、
2.把許多相同紋理一起描述,并一起送入GPU繪制掂僵,同時(shí)賦予紋理和坐標(biāo)航厚,以便每個(gè)圖形的繪制。
3.圖片資源分辨率锰蓬,必須為2的N次方阶淘。譬如:
2^10 = 1024
2^9 = 512
2^8 = 256
2^7 = 128
2^6 = 64
2^5 = 32
2^4 = 16
2^3 = 8
2^2 = 4
2^1 = 2

為什么要2的N次方?

  1. libGDX使用OpenGL ES 互妓,分為兩個(gè)版本 OpenGL ES 1.x 和 OpenGL ES 2.0溪窒,1.x 的圖片大小必須是2的整次數(shù)冪,而 2.0 無此要求冯勉。

  2. libgdx 早期使用OpenGL ES 1.x , 用高版本libgdx就不用管圖片分辨率問題了澈蚌。


畫出圖片:

private val texture = Texture(Gdx.files.internal("aiweier.jpg"))
private val batch = SpriteBatch()
override fun render()
{
        clear()
        batch.begin()
        batch.draw(texture , 0f, 0f, Gdx.graphics.floatWidth, Gdx.graphics.floatHeight)
        batch.end()
}
圖片 512*1024

TextureRegion 可用于圖片截取。

private val texture = Texture(Gdx.files.internal("aiweier.jpg"))
private val leftRegion = TextureRegion(texture, 0, 0, 512, 512)
override fun render()
{
        clear()
        batch.begin()
        batch.draw(leftRegion, 0f, 0f, Gdx.graphics.floatWidth, Gdx.graphics.floatHeight)
        batch.end()
}

截取512*512

Sprite類

1.定義:持有幾何形狀灼狰,顏色宛瞄,和紋理信息使用加載繪制2D精靈
2.用途:TextureRegion的加強(qiáng)版,SpriteBatch的加強(qiáng)版交胚,比TextureRegion多了一些功能:指定位置份汗,顏色盈电,旋轉(zhuǎn),等……
3.特點(diǎn):可以處理Texture杯活,TextureRegion等紋理

方法:
1.大写抑恪:sprite.setSize(120,120)
2.旋轉(zhuǎn)中心:sprite.setOrigin(50,50)
3.旋轉(zhuǎn)角度:sprite.setRotation(50)
4.繪制位置:sprite.setPosition(150,150)
5.繪制顏色:sprite.setColor(1,0,1,1)
6.繪制函數(shù):sprite.draw(SpriteBatch)

清屏

// 設(shè)置背景顏色
Gdx.gl.glClearColor(1F, 1F, 1F, 1F)
// 清屏
Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT)

OpenGL 中,是將紋理貼上去旁钧,但是如果繪制動(dòng)畫吸重,或者繪制領(lǐng)蛙圖形,就會(huì)殘留上一張的痕跡歪今,所以需要清屏嚎幸,展示新的圖像。


DEMO地址:https://gitee.com/xcode_xiao/LibGdxDemos2/tree/master/ImageRender2

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末寄猩,一起剝皮案震驚了整個(gè)濱河市嫉晶,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌田篇,老刑警劉巖车遂,帶你破解...
    沈念sama閱讀 217,406評(píng)論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異斯辰,居然都是意外死亡舶担,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,732評(píng)論 3 393
  • 文/潘曉璐 我一進(jìn)店門彬呻,熙熙樓的掌柜王于貴愁眉苦臉地迎上來衣陶,“玉大人,你說我怎么就攤上這事闸氮〖艨觯” “怎么了?”我有些...
    開封第一講書人閱讀 163,711評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵蒲跨,是天一觀的道長译断。 經(jīng)常有香客問我,道長或悲,這世上最難降的妖魔是什么孙咪? 我笑而不...
    開封第一講書人閱讀 58,380評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮巡语,結(jié)果婚禮上翎蹈,老公的妹妹穿的比我還像新娘。我一直安慰自己男公,他們只是感情好荤堪,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,432評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般澄阳。 火紅的嫁衣襯著肌膚如雪拥知。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,301評(píng)論 1 301
  • 那天碎赢,我揣著相機(jī)與錄音低剔,去河邊找鬼。 笑死揩抡,一個(gè)胖子當(dāng)著我的面吹牛户侥,可吹牛的內(nèi)容都是我干的镀琉。 我是一名探鬼主播峦嗤,決...
    沈念sama閱讀 40,145評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼屋摔!你這毒婦竟也來了烁设?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,008評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤钓试,失蹤者是張志新(化名)和其女友劉穎装黑,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體弓熏,經(jīng)...
    沈念sama閱讀 45,443評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡恋谭,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,649評(píng)論 3 334
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了挽鞠。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片疚颊。...
    茶點(diǎn)故事閱讀 39,795評(píng)論 1 347
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖信认,靈堂內(nèi)的尸體忽然破棺而出材义,到底是詐尸還是另有隱情,我是刑警寧澤嫁赏,帶...
    沈念sama閱讀 35,501評(píng)論 5 345
  • 正文 年R本政府宣布其掂,位于F島的核電站,受9級(jí)特大地震影響潦蝇,放射性物質(zhì)發(fā)生泄漏款熬。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,119評(píng)論 3 328
  • 文/蒙蒙 一攘乒、第九天 我趴在偏房一處隱蔽的房頂上張望华烟。 院中可真熱鬧,春花似錦持灰、人聲如沸盔夜。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,731評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽喂链。三九已至返十,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間椭微,已是汗流浹背洞坑。 一陣腳步聲響...
    開封第一講書人閱讀 32,865評(píng)論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留蝇率,地道東北人迟杂。 一個(gè)月前我還...
    沈念sama閱讀 47,899評(píng)論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像本慕,于是被迫代替她去往敵國和親排拷。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,724評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容

  • 1 紋理基礎(chǔ) 紋理是一種結(jié)構(gòu)化的存儲(chǔ)形式(Textures are a structured form of st...
    RichardJieChen閱讀 15,819評(píng)論 0 9
  • 版本記錄 前言 OpenGL ES是一個(gè)強(qiáng)大的圖形庫锅尘,是跨平臺(tái)的圖形API监氢,屬于OpenGL的一個(gè)簡化版本。iOS...
    刀客傳奇閱讀 5,099評(píng)論 2 6
  • 卷首語 歡迎來到 objc.io 的第三期藤违! 這一期都是關(guān)于視圖層的浪腐。當(dāng)然視圖層有很多方面,我們需要把它們縮小到幾...
    評(píng)評(píng)分分閱讀 1,767評(píng)論 0 18
  • 我個(gè)人認(rèn)為顿乒,學(xué)畫呢议街,一邊學(xué),一邊買璧榄,一邊畫特漩,是最好的結(jié)構(gòu)。大畫家從小學(xué)畫犹菱,頓悟一生拾稳,傳承并創(chuàng)新,師古人師造化師我心...
    富山居閱讀 303評(píng)論 0 1
  • 當(dāng)我們到達(dá)紅海灣的時(shí)候是下午四點(diǎn)左右腊脱,陰天访得,呼呼的海風(fēng)吹在身上,像一種親切的問候陕凹。 正當(dāng)我們?cè)谡业?..
    維京_9f83閱讀 241評(píng)論 2 3