[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 06/18 06:41 / Filesize : 310 KB / Number-of Response : 1048
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【3Dゲームエンジン】Unity質問スレッド8



985 名前:名前は開発中のものです。 mailto:sage [2014/05/04(日) 21:33:28.65 ID:dYhR0UXE.net]
恥を忍んでソースを晒します

void OnPostRender(){
Texture2D t_t2d = new Texture2D(800, 600);
t_t2d.ReadPixels(new Rect(0, 0, 800, 600), 0, 0);
t_t2d.Apply();

var bytes = t_t2d.EncodeToPNG();
File.WriteAllBytes(Application.dataPath + "/../SavedScreen.png", bytes);

t_go = GameObject.Find("スプライト");
t_sr = (SpriteRenderer)t_go.GetComponent("SpriteRenderer");
t_sr.enabled = true;
t_sr.sprite = Sprite.Create(
t_t2d,
new Rect(0, 0, 800, 600),
new Vector2(0.5F, 0.5F),
1F
);
}

これは、Spriteとして持つ800×600の画像を800×600の画面にピクセルパーフェクトで表示した状態で
Camera の OnPostRender で実行されるソースです
最初の3行で現在画面に表示されている内容を t_t2d(Texture2D) に取り込み
次の2行で取り込んだ t_t2d の内容を SavedScreen.png というファイル名で出力し
残りの行で800×600の画像を持っていた Sprite に書き戻しています

SavedScreen.png の画像は800×600の画像とイコールですが
Sprite に書き戻した後の画面表示はピクセルパーフェクトではない、ぼやけた表示になってしまいます
これは何が原因で、どこを直せばピクセルパーフェクトを維持できるでしょうか
png 出力までは正常なので、Sprite に書き戻すところで何か間違っているのだと思いますが
さっぱり分からないです






[ 続きを読む ] / [ 携帯版 ]

全部読む 前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](;´∀`)<310KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef