セーブなどのアクター画像を2倍表示させたくて以下のように再定義したのですが
アンチエイリアスの効いたボケた感じになってしまいます。
Window_Base.prototype.drawCharacter = function(characterName, characterIndex, x, y) {
var bitmap = ImageManager.loadCharacter(characterName);
var big = ImageManager.isBigCharacter(characterName);
var pw = bitmap.width / (big ? 3 : 12);
var ph = bitmap.height / (big ? 4 : 8);
var n = characterIndex;
var sx = (n % 4 * 3 + 1) * pw;
var sy = (Math.floor(n / 4) * 4) * ph;
var dw = 2;
this.contents.blt(bitmap, sx, sy, pw, ph, x - pw / 2, y - ph, pw*dw, ph*dw);
};
アンチエリアスを無効化して2倍表示する方法はないでしょうか?
drawCharacterの2倍表示について(解決済み)
drawCharacterの2倍表示について(解決済み)
最後に編集したユーザー まひる [ 2016年5月15日(日) 01:23 ], 累計 1 回
Re: drawCharacterの2倍表示について
bltの直前で
this.contents._context.webkitImageSmoothingEnabled = false;
とやるとできるっぽいです(私もにわか知識なので)。
デフォルトはtrueなので、blt後に戻しておいたほうが良いかも知れません。
this.contents._context.webkitImageSmoothingEnabled = false;
とやるとできるっぽいです(私もにわか知識なので)。
デフォルトはtrueなので、blt後に戻しておいたほうが良いかも知れません。
Re: drawCharacterの2倍表示について
いつもありがとうございます。
試してみたところ思い通りの動作ができました。
ありがとうございました。
試してみたところ思い通りの動作ができました。
ありがとうございました。