また、つまづきました
現在3Dの図形描画について練習しています
そこで、VECTOR 変数を使って、3Dの球の集合を描いて
Y軸を中心に回転させると、どうにも変に描画されます
// ①・Zバッファを有効にする
SetUseZBuffer3D( TRUE ) ;
// ②・Zバッファへの書き込みを有効にする
SetWriteZBuffer3D( TRUE ) ;
上のふたつがDxLibのサンプルにあったので、
球の奥行きに関して関係しているのではないかと考えてます
しかし、
// ここで、①と②を同時に実行すると、色が変になる
// ①もしくは②のみだと、色は変ではないけど
// 奥行きが変になる
となります
どこをどういじれば、球の回転が思ったとおりに描画されるのでしょうか?
おそらく、球のライトのあたらない裏の部分を描画すればいいと
考
ソースコード、ワークスペースもつけてアップロードしておきます
奥行を有効にする場合の図形の描画(DxLib)
奥行を有効にする場合の図形の描画(DxLib)
- 添付ファイル
-
- 1100 DxLib骨組み.zip
- (14.63 KiB) ダウンロード数: 115 回
- softya(ソフト屋)
- 副管理人
- 記事: 11677
- 登録日時: 15年前
- 住所: 東海地方
- 連絡を取る:
Re: 奥行を有効にする場合の図形の描画(DxLib)
正常に描画されないのはClearDrawScreen()でZバッファをクリアしていないからです。
どんどんZバッファに深度情報が上書きされるので、3Dがどんどん書かれない状態となっています。
「Zバッファ - Wikipedia」
http://ja.wikipedia.org/wiki/Z%E3%83%90 ... 5%E3%82%A1
【補足】
前にも書きましたが確実動くモノに簡単な機能を加えていくことで足固めをしながら複雑にしていってください。
問題が起きたら確実に動くものと比べることで問題点が明らかに出来ます。
いきなり複雑なものを書くと今回のようにバグの原因がわからなくなります。
これは明らかに自分でやっていることがわかない複雑なものを書いている事が問題の原因です。
前回の私とトントンさんの返答をよく読み直してみてください。
どんどんZバッファに深度情報が上書きされるので、3Dがどんどん書かれない状態となっています。
「Zバッファ - Wikipedia」
http://ja.wikipedia.org/wiki/Z%E3%83%90 ... 5%E3%82%A1
【補足】
前にも書きましたが確実動くモノに簡単な機能を加えていくことで足固めをしながら複雑にしていってください。
問題が起きたら確実に動くものと比べることで問題点が明らかに出来ます。
いきなり複雑なものを書くと今回のようにバグの原因がわからなくなります。
これは明らかに自分でやっていることがわかない複雑なものを書いている事が問題の原因です。
前回の私とトントンさんの返答をよく読み直してみてください。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。
Re: 奥行を有効にする場合の図形の描画(DxLib)
>>softyaさん
前回の質問ででた、サイトを一読してからまたやります
メインパソコンが壊れたので、またしばらくお休みします
前回の質問ででた、サイトを一読してからまたやります
メインパソコンが壊れたので、またしばらくお休みします