画像を加工する?

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
KA

画像を加工する?

#1

投稿記事 by KA » 15年前

Dxライブラリを使ってゲームを作っているのですが、どうしてもわからないことがあったので質問します。

画像を曲げて画面に表示させたいのですが、それをどうやってやれば良いのかわかりません。
自分がやりたいのは、棒の画像を曲げて円弧のようにし、それを複数表示して円のようにすることです。

どうかよろしくお願いします。

チルチル

Re:画像を加工する?

#2

投稿記事 by チルチル » 15年前

画像を変形させて描画したいって事ですよね?

DrawModiGraph関数とか

http://homepage2.nifty.com/natupaji/DxL ... html#R3N11

非公開関数ですがDrawPolygonBase関数とかでどうですか?

KA

Re:画像を加工する?

#3

投稿記事 by KA » 15年前

四角形の変形なら簡単なのですが、四角形画像を曲線にしたいのでDrawModiGraph関数だと頂点数が少ないかと…

DrawPolygonBase関数は自分の力が足りないためよくわかりません
どこか解説しているサイト等ありませんか?

kazuoni

Re:画像を加工する?

#4

投稿記事 by kazuoni » 15年前

以前、ここの回答者であるyuさんがサンプルを作っていらっしゃったので貼っておきます。
まだサンプルは健在の様子です。

http://www.play21.jp/board/formz.cgi?ac ... &from=tree

チルチル

Re:画像を加工する?

#5

投稿記事 by チルチル » 15年前

まあ本家で解説されていない関数を解説している所はそうそう無いでしょうね

DrawModiGraph関数で曲線が表現できない事は無いですよ
頂点の話で言うとDrawPolygonBase関数も同じと言えば同じですし

DrawModiGraph関数では4個の頂点を使って変形が可能ですが
隣り合った頂点に同じ座標を渡せば三角形になります

これを細かく敷き詰めれば円になります
まあ表示が汚くなると思うのでDrawPolygonBase関数とかの方が良いとは思いますが
仕様が複雑なのでDrawModiGraph関数から始めた方が取っ付きやすい感じです

>kazuoniさん

そういえば前にありましたね
サンプルを見れば一目瞭然だと思います

KA

Re:画像を加工する?

#6

投稿記事 by KA » 15年前

すごいですね。
これを応用すれば自分の思っているものも作れそうです。

本当にありがとうございました。

yu

Re:画像を加工する?

#7

投稿記事 by yu » 15年前

解決されたようで何よりですが、
サンプルを実行して、魔方陣が大きいときにプログラムを止めて貰うと分かるのですが
画像が縮小されすぎて潰れている箇所があります;

原因はテクスチャアドレスタイプがクランプだけれど
無理やり画像をリピートさせようとしていたからです orz
SetTextureAddressMode関数でラップに変えるとうまくいきました。
(後、何で描画モードをネアレストネイバー法でやっているんだろう...)

一応直したサンプルを置いておきますね
http://www1.axfc.net/uploader/He/so/260179
画像

KA

Re:画像を加工する?

#8

投稿記事 by KA » 15年前

わざわざありがとうございます。
とても参考になります。本当にありがとうございました。

素人

Re:画像を加工する?

#9

投稿記事 by 素人 » 15年前

もうあれから5カ月も経ったのか・・
あの、yuさん
// アドレスモード変更
SetTextureAddressMode(DX_TEXADDRESS_WRAP);
を使ったあと、
このモードをもとに戻す時は、なんという関数を使えばいいのでしょうか?

yu

Re:画像を加工する?

#10

投稿記事 by yu » 15年前

DXライブラリはデフォルト状態で DX_TEXADDRESS_CLAMP だと思うので

SetTextureAddressMode(DX_TEXADDRESS_CLAMP);

これでデフォルト状態に戻すことができますよ。

素人

Re:画像を加工する?

#11

投稿記事 by 素人 » 15年前

>yuさん
ありがとうございます。助かりました。

閉鎖

“C言語何でも質問掲示板” へ戻る