亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

libGDX:根據用戶輸入更改 PNG 的顏色

libGDX:根據用戶輸入更改 PNG 的顏色

函數式編程 2022-12-15 10:50:21
我希望你能幫助我。我有一個加載透明紋理的游戲,應該在游戲開始時根據用戶的選擇(十六進制代碼)進行著色。我的游戲有放置游戲人物的圖塊(居中)。瓷磚是 50x50,我的 png 也是。它有一個透明的背景,我的圖的矢量有透明的東西,應該是彩色的。它看起來像這樣:我正在使用 libGDX 引擎,因為這個問題我真的很沮喪。任何幫助表示贊賞!非常感謝!
查看完整描述

1 回答

?
撒科打諢

TA貢獻1934條經驗 獲得超2個贊

要在 LibGDX 中以編程方式更改顏色,您需要使用帶有白色像素的圖像(png 或 jpg),您可以將圖像分成兩部分來實現此效果,一部分用于您不希望更改顏色的部分,另一部分用于你做的部分。這是一個例子:

http://img1.sycdn.imooc.com//639a8baf0001d28211810281.jpg

代碼:


public class ExampleGame extends InputAdapter {


    SpriteBatch batch;

    Color crownColor;


    public ExampleGame() {

        batch = new SpriteBatch();

        crownColor = Color.WHITE;

    }


    @Override

    public boolean touchDown(int screenX, int screenY, int pointer, int button) {

        crownColor = Color.RED;

        return false;

    }


    public void render(TextureRegion player, TextureRegion crown) {

        batch.begin();

        batch.setColor(Color.WHITE); // Else player will be affected by crownColor too

        batch.draw(player, 0, 0);

        batch.setColor(crownColor);

        batch.draw(crown, 0, 0);

        batch.end();

    }

}


查看完整回答
反對 回復 2022-12-15
  • 1 回答
  • 0 關注
  • 130 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號