【初心者】スレを立てる前にココで質問を【Part24】
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
2012/02/17(金) 23:28:58.75ID:iuUdodNhスレッドを立てる前にはローカルルールを読みましょう。
http://pc11.2ch.net/gamedev/
※ >>980 を踏んだ人は次スレ立てをお願いします。
【アップローダ・避難所・Wiki】
ゲーム製作技術板公式Wiki
http://hibari.2ch.net/gamedev/
ゲーム製作技術板公式アップローダ
http://gmdev.xrea.jp/
gamdev.orgが落ちるたびにあげてみるスレ
http://hibari.2ch.net/test/read.cgi/gamedev/1107022166
0002名前は開発中のものです。
2012/02/17(金) 23:29:29.18ID:iuUdodNh[Part23]http://toro.2ch.net/test/read.cgi/gamedev/1309450150/
[Part22]http://hibari.2ch.net/test/read.cgi/gamedev/1289556698/
[Part21]http://hibari.2ch.net/test/read.cgi/gamedev/1270135295/
[Part20]http://pc11.2ch.net/test/read.cgi/gamedev/1254175709/
[Part19]http://pc11.2ch.net/test/read.cgi/gamedev/1236761855/
[Part18]http://hibari.2ch.net/test/read.cgi/gamedev/1289556698/
[Part18]http://pc11.2ch.net/test/read.cgi/gamedev/1223550808/
[Part17]http://pc11.2ch.net/test/read.cgi/gamedev/1210443288/
[Part16]http://pc11.2ch.net/test/read.cgi/gamedev/1199303757/
[Part15]http://pc11.2ch.net/test/read.cgi/gamedev/1190308500/
[Part14] http://pc11.2ch.net/test/read.cgi/gamedev/1175521815/
[part13] http://pc11.2ch.net/test/read.cgi/gamedev/1160457664/
[part12] http://pc8.2ch.net/test/read.cgi/gamedev/1147951341/
[Part11] http://pc8.2ch.net/test/read.cgi/gamedev/1137730564/
[Part9(10)] http://pc8.2ch.net/test/read.cgi/gamedev/1127522168/
[Part9] http://pc8.2ch.net/test/read.cgi/gamedev/1121237401/
[Part8] http://pc8.2ch.net/test/read.cgi/gamedev/1113237630/
[Part7] http://pc8.2ch.net/test/read.cgi/gamedev/1103954329/
[Part6] http://pc5.2ch.net/test/read.cgi/gamedev/1094627404/
[Part5] http://pc5.2ch.net/test/read.cgi/gamedev/1078502309/
避難所 http://pc2.2ch.net/test/read.cgi/gamedev/1057318143/
[その4] http://pc2.2ch.net/gamedev/kako/1043/10434/1043417025.html
[Part3] http://pc2.2ch.net/gamedev/kako/1032/10328/1032814540.html
[Part2] http://pc2.2ch.net/gamedev/kako/1013/10136/1013645518.html
[Part1] http://game.2ch.net/gamedev/kako/1005/10050/1005038203.html
0003名前は開発中のものです。
2012/02/17(金) 23:31:10.27ID:iuUdodNhお前は反省しろ。
963 :名前は開発中のものです。:2012/02/16(木) 05:03:11.03 ID:raHL9C8l
C#を使っています。
小数の計算ですが、
int a = 1;
int x = a * 1.7320508;
と
int a = 1;
int x = a * 1.7;
では計算時間は変わるでしょうか?
弾幕STGの弾の位置計算で、少しでも計算を軽くしようとしているところです。
980 :963:2012/02/16(木) 19:10:03.04 ID:raHL9C8l
9割以上が弾の処理なんですが・・・
0004名前は開発中のものです。
2012/02/18(土) 02:26:06.84ID:WD9oRPlL0005名前は開発中のものです。
2012/02/18(土) 02:28:14.12ID:wJ9rz3/tつい2ヶ月くらい前の話だが。
0006名前は開発中のものです。
2012/02/18(土) 14:24:48.59ID:iKO3tAAV0007名前は開発中のものです。
2012/02/19(日) 00:31:01.45ID:mGMBQaJUポリゴンにローカルなXYZ軸を持たせたいのですが、
座標が(Ax,Ay,Az)のベクトルAがあったときに
直角で長さが同じベクトルB(Bx,By,Bz)を作って
ベクトルAとBと同じ長さでAとBと直角なベクトルC(Cx,Cy,Cz)を作るには
どうすればよいでしょうか?
AとBの角度が90度ならBの垂直方向の向きはどこを向いていても構いません。Cも同様です。
式としては
(Ax^2 + Ay^2 + Az^2)^0.5 = |A| // Aの長さ
(Bx^2 + By^2 + Bz^2)^0.5 = |A| // Bの長さ == Aの長さ
Ax * Bx + Ay * By + Az * Bz = 0 // AとBは直角 → 内積0
(Cx^2 + Cy^2 + Cz^2)^0.5 = |A| // Cの長さ == Aの長さ
Cx * Ax + Cy * Ay + Cz * Az = 0 // CとAは直角 → 内積0
Bx * Cx + By * Cy + Bz * Cz = 0 // BとCは直角 → 内積0
という形です。Aのベクトルの値は決まっています。
BとCのベクトルの値をどうやって求めるのかがわかりません。
0008名前は開発中のものです。
2012/02/19(日) 01:19:21.17ID:fSh17k7jA(1, 0, 0), B(0, 1, 0), C(0, 0, 1)の3つのベクトルを、求める長さ・角度に合うよう拡大・回転してみるとか?
0009名前は開発中のものです。
2012/02/19(日) 07:16:38.97ID:dC4V1a42ポリゴンを三角形に分割(もともとしてるだろうけど)し、頂点をP、Q、Rとする。
そうすると、PQかPRのどちらかはAとは独立だから、それとAの外積を作り、
その長さをAと同じにしたものをBとする。次いでAとBの外積を長さ|A|にしてCにする。
0010名前は開発中のものです。
2012/02/19(日) 09:40:40.45ID:qHayBWSnAがY軸でない場合、
B = A × (0,1,0) (×は外積)
C = A × B
実際は>>8が正解な気がするけど。
0011名前は開発中のものです。
2012/02/19(日) 09:47:13.27ID:qHayBWSnA,Bが決まればCは一意に決まるけど、BはAから一意に決まらないから、
Bは、なんらかのパラメーターから決めなきゃいけないってこと。
つまり、ワールド座標系から、どう回転したのかってのを考えて
Bを決めなきゃいけないから、>>8のような形になるはず。
0012名前は開発中のものです。
2012/02/19(日) 14:45:31.96ID:mGMBQaJUありがとうございます。
>>8のやり方でやっていたつもりですが、なぜか正しい値にならなくて困っていましたが、
見直したら回転の計算が間違っていただけでした。
おさわがせしました。
0013名前は開発中のものです。
2012/02/21(火) 03:23:19.19ID:ZCOZR5Mdわりぃ!
0014名前は開発中のものです。
2012/02/23(木) 18:55:11.31ID:rx5TyESrゲームを業として製作・販売する、いわゆるゲーム会社豆知識
ピコーム
エウレカ------------------------------------
このアイディアはいける!間違いなく売れる!!!!!!!
と閃く事があるのは勤め人も同人屋も同じだが
企業でやる場合、「そのアイディア、特許取られてませんか?」という神の声がまず聞こえる。
取られていたら泣きながら屁をこいて諦めるしかない。
屁をこきながら泣いて諦めてもよい。
0015名前は開発中のものです。
2012/02/24(金) 00:00:15.91ID:a/0PnHJQコードへの取り込みはどうしてますか?
やっぱり初期化時に外部ファイルから読み込んで
グローバル変数に代入という形でしょうか?
ちなみにC++です。
0016名前は開発中のものです。
2012/02/24(金) 08:16:33.64ID:CCxlJhHp0017名前は開発中のものです。
2012/02/24(金) 16:57:07.64ID:jxVIfPiCブローバル変数は悪である。
絶対に使ってはならない。
というわりに、errnoはグローバル変数だし
グラフィックスAPIにはグローバル変数ばかり
理不尽である。
0018名前は開発中のものです。
2012/02/24(金) 18:18:47.78ID:unFvOF+4(みんなが使うと)混乱のもとだから、
(俺以外は)使ってはいけない。
という意味だから。
0019名前は開発中のものです。
2012/02/24(金) 18:43:00.39ID:b1OOcw1t0020名前は開発中のものです。
2012/02/24(金) 21:33:32.26ID:TQsSr9Cw0021名前は開発中のものです。
2012/02/24(金) 22:02:45.86ID:Y1VEYyPJ0022名前は開発中のものです。
2012/02/24(金) 22:37:18.35ID:Boz79OnM0023名前は開発中のものです。
2012/02/24(金) 23:31:47.77ID:0Xlkn9qy最近の餓鬼どもは情報処理技術者試験の勉強すらしないのか
0024名前は開発中のものです。
2012/02/25(土) 00:14:24.26ID:Vs/l4MvX使いものにならないの知ってるくせによく言うわ
0025名前は開発中のものです。
2012/02/26(日) 22:06:14.00ID:jgf0SPc9ポリゴンのローカルなXYZ軸をあらわすA行列とB行列があるのですが、
このA行列とB行列をA行列のXYZ軸だけを回転させて一致させるにはどうすればよいでしょうか?
AとBは3×3の行列でXYZの三要素の座標を持ったベクトルが3つ集まってXYZ軸を表現しております。
XYZ軸をあらわしているので行列のそれぞれのベクトルは垂直です。
0026名前は開発中のものです。
2012/02/27(月) 11:26:29.06ID:KDOrfgSMatanとか使ってAとBの角度を求めて回転させればいいと思う。
0027名前は開発中のものです。
2012/02/28(火) 02:32:21.43ID:iQCnJL19ピログラム豆知識
行列が出来る法律相談所とか言うのがあるが
行列が出来る(やれる)プログラマもあってもいいのではないか?
0028名前は開発中のものです。
2012/02/28(火) 12:48:35.56ID:hzTUEaw70029名前は開発中のものです。
2012/03/03(土) 19:04:12.67ID:F/gvR6Iz町シーンクラス、ダンジョンシーンクラス、戦闘シーンクラスに分けたときに、
敵のクラスは戦闘シーンクラスの中だけで動かせばいいだけなのですが、
プレイヤーのクラスは町の中、ダンジョン内を歩き回ったり、装備を変更したりします。
戦闘シーンクラスの中だけで、敵とプレイヤーのインスタンス同士を互いに攻撃させあったりは
出来たのですが、戦いに勝利した後、プレイヤーの体力が減ったまま、ダンジョンシーンクラスに
シーン遷移させたいのですがやり方がよく分かりません。
各シーンクラスにプレイヤーパーティクラスを持たせて、シーン遷移させるときに
プレイヤーパーティのインスタンスを返り値としてしてやれば、
可能なのでしょうか?
0030名前は開発中のものです。
2012/03/03(土) 19:11:26.95ID:axAgqIPv基底クラスに持たせるのがイヤなら、 Scene ← GameScene ← BattleScene と1つ間に挟んじゃってもいい。
0031名前は開発中のものです。
2012/03/03(土) 23:36:46.98ID:UnLkQFouページを切り替える
処理が終わったらページを戻す
メモリに退避したものを戻す
0032名前は開発中のものです。
2012/03/03(土) 23:51:08.03ID:zEpXG7EI【アップローダ・避難所・Wiki】
ゲーム製作技術板公式Wiki
http://hibari.2ch.net/gamedev/
↑はリンク切れ?しているみたいですが
公式アップローダは許可とかを得なくても借りていいんでしょうか?
003325
2012/03/04(日) 12:24:32.78ID:UkLDBQrN今のところ、思考実験の結果、以下のようにやればできるはず、と結論が出たのですが。
1.A行列のX軸ベクトルとB行列のX軸ベクトルの外積、Eベクトルを取得
2.A行列のY軸ベクトルとEベクトルの角度aを求める。(外積の長さが0のとき、角度はNaNになる。)
3.A行列のX軸ベクトルを角度aだけまわす。するとA行列のZ軸ベクトルとX軸ベクトル、BのX軸ベクトルが同一平面上になる。
4.A行列のX軸ベクトルとB行列のX軸ベクトルが一致するようにA行列のY軸ベクトルを回す。
5.A行列のY軸ベクトルとB行列のY軸ベクトルが一致するようにA行列のX軸ベクトルを回せば終わり。A行列のZ軸ベクトルとB行列のZ軸ベクトルも一致する。
……のはずが、角度をグローバル軸からちょこっと傾けると数値が破綻します。
とはいってもこれだけじゃ説明不足ですよね。どうやって回転させてるかも色々説明しないと伝わらないですね…。
0034名前は開発中のものです。
2012/03/05(月) 08:31:25.35ID:WsT9Nn+tA行列のベクトルをそれぞれAx,Ay,Az、B行列も同様としたとき、
1.Ex = Ax×Bx
2.θx=(AxとBxの間の角度とか)
3.Exを軸に、Axをθxだけ回転(すると、Bxと一致)
4.Ey = Ay×By
5.θy=(AyとByの間の角度とか)
6.Eyを軸に、Ayをθyだけ回転(すると、Byと一致。同時にAzとBzも一致する)
あと、単純に、
P=(A^-1)B ※Aの逆行列にB行列をかけた行列P
を作って、A行列にかければ、
AP=Bになる、、、ってのはダメ?
0035名前は開発中のものです。
2012/03/05(月) 08:43:31.43ID:WsT9Nn+t3.Exを軸に、A行列をθxだけ回転(すると、Bxと一致)
6.Eyを軸に、A行列をθyだけ回転(すると、Byと一致。同時にAzとBzも一致する)
0036名前は開発中のものです。
2012/03/05(月) 09:40:13.27ID:sR4SN55nプログラム経験ゼロの初心者です。
球のある一点に剛性を発揮して、
表面を移動するヘックス制のシュミレーションを作りたいのですが、
どうのように作業を進めていけばいいかわかりません。
御教授お願いします。
0037名前は開発中のものです。
2012/03/05(月) 15:39:57.77ID:Nmaj8fd7ステートパターンかいね?
描画情報とプレイヤー情報のクラスが一緒になってるんじゃない?
プレイヤー情報クラスをシーン描画クラスに
シーン変更の都度渡すようにすれば良いんでない?
>>36
ゴメン。日本語が理解できない。
0038名前は開発中のものです。
2012/03/05(月) 16:22:32.51ID:JUsTtqW/0039名前は開発中のものです。
2012/03/05(月) 16:24:47.22ID:sR4SN55nどの言語で製作されているのでしょうか?
0040名前は開発中のものです。
2012/03/05(月) 16:30:04.97ID:sR4SN55nはい。
0041名前は開発中のものです。
2012/03/05(月) 16:59:44.81ID:9abl2P+O>>40
平面の画面で縦横を接続したものと何が違うの?
■ このスレッドは過去ログ倉庫に格納されています