トップページgamedev
1001コメント366KB

【初心者】スレを立てる前にココで質問を【Part22】

レス数が950を超えています。1000を超えると書き込みができなくなります。
0001名前は開発中のものです。2010/11/12(金) 19:11:38ID:FvfF5z6o
疑問に思うことがあれば、スレを立てずに、まずはココで質問。
スレッドを立てる前にはローカルルールを読みましょう。
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
0875名前は開発中のものです。2011/06/22(水) 13:00:30.23ID:aqyPnKWY
大きめのマップで自分の移動に合わせて表示画面をスクロールする
プログラムの仕組みを教えてください

例えばポケモンみたいに
0876名前は開発中のものです。2011/06/22(水) 16:01:14.88ID:pWb0e9lc
>>875
いろいろ方法はあると思うけど、
真上から見下ろすカメラがあると想定してみるのはどうかな。
0877名前は開発中のものです。2011/06/22(水) 19:21:16.19ID:uoWZAZid
>>873
動きは確かにキビキビしてますが、現状これくらいしか頭がないもんで
 k=0.125*t^2 くらいにしたほうがらしくなるかもしれないですね
それか t の範囲をいくらかに分けて段階的に傾きを変えてみるとかですか

>>874
ただこれしか思いつかなかっただけです・・
その現在位置と凅を使ったやり方も宜しければ教えていただけないでしょうか?
もしくは参考になるサイトを
0878名前は開発中のものです。2011/06/22(水) 19:51:18.41ID:pWb0e9lc
>>876
携帯からなんで軽く。

ライブラリの公式サイトに等速移動のサンプルがあったと思うが、
ここに書かれている移動量(±3)の部分を変数にする。
この移動量変数は、ループ毎に初期化されないように注意。

左方向へ移動させたい場合は、移動量を負の数にするのが一番楽。
どうしても正の数が必要になったら、そのときに改めて絶対値を計算すれば良いだけ。

0879名前は開発中のものです。2011/06/22(水) 20:04:24.71ID:aqyPnKWY
>>878
ありがとうございます

今から組んできます
0880名前は開発中のものです。2011/06/23(木) 06:24:38.91ID:nv3y+bY4
あれ?
0881名前は開発中のものです。2011/06/23(木) 14:24:18.16ID:8jCWoIDE
ゲーム文字は文章データから読み取った文字を
1文字ずつ画像に変換する処理をしている?
0882名前は開発中のものです。2011/06/23(木) 14:36:46.05ID:cLXuAiSF
昔の9801や8801系みたいなTEXT-VRAMをもったPCならともかく、今のPCならゲームに限らず全部そうだろw
0883名前は開発中のものです。2011/06/23(木) 16:01:30.57ID:4Rg2XpCB
フォント表示はいろいろある
一番楽なのは、文章をそのままテクスチャにしたテクスチャを用意するもの
2011年現在に至っても、まだ存在している。


今主流なのは、ちょっと高度になビットマップ
フォントファイルから文字コードとともに抜き出し、文字をテクスチャにするが
「ココからココまでの座標が何のデータですよ」というものを覚えさせるので
文章データはテキストファイルでも何でもいい。

プログラムは、そのテキストファイルに相当するものからデータを取り出してみて
「このデータだから、ここからここまでの座標にある絵を入れればいいんだな」と判断して表示

だから座標が間違ってると表示されるものもおかしくなる
0884名前は開発中のものです。2011/06/23(木) 16:13:43.59ID:A1S7MgvQ
それ全部

>文章データから読み取った文字を1文字ずつ画像に変換する処理
0885名前は開発中のものです。2011/06/23(木) 16:44:44.04ID:4Rg2XpCB
ビットマップもテクスチャードも画像に「変換」っていうかね

前者はもとから全文テクスチャとしてあるから、別に変換はしないでいい
もとから画像テクスチャデータとして存在するので、「ゲーム内以外で読まれると困るやつ」には使えない。

後者は「文字を羅列したテクスチャ」はもとからあるので
プログラムがやっているのは配置するだけだな

切り貼りしているようなものだ

0886名前は開発中のものです。2011/06/23(木) 16:55:35.87ID:8jCWoIDE
>>885
つまり文章そのものを全て画像で配置したデータを作ってそれを利用するってこと?

その文章画像データ(変な言葉)は予めツールか何かをつかってテキストデータから変換して生成しておく
でOK?
0887名前は開発中のものです。2011/06/23(木) 17:07:58.05ID:4Rg2XpCB
厳密にはちょっと違うが、後者を簡単に言うと
まず、一枚のでっけえテクスチャに

ABCDEFGHIJKLMN・・・あいうえおかきくけこ・・・・

と、使う文字や記号を描いておく。

プログラムは、テキストファイルを読みこめば文字コードと文字データを取得できるだろう
そうして読んだデータが例えば0x01としよう

そうしたら、対応テーブルを見て「0x01はテクスチャのどっからどこまでやねん?」ということをはじき出す。

仮に0x01は、座標0.0から12.12まで としたら、最初に作ったテクスチャからそこまでの範囲を切り出して
表示させたいところにポンと置くだけだ。


前者は、まさに文章をテクスチャに全部書いておく。
文章ぶんのテクスチャ数が必要になるが表示させるだけなので簡単。
unrealエンジンが、少なくとも1〜2はこれだったと記憶している
0888名前は開発中のものです。2011/06/23(木) 17:16:28.74ID:4Rg2XpCB
一文字づつ判断して、座標出して、切って貼って
これを繰り返して文章にする

ただ、テーブルの構築や、そもそも「文字コードの理解」が必要になるので
そこまで簡単ではない。特にUTF-8の文字コードの理解が他に比べるとややこしい。
でも、スマートかつ基礎さえ出来れば応用が利いて後々の苦労が少ないのはこれだ


できなかったら、文章を全部テクスチャに書き込んでおくUnreal方式がいいだろう
0889名前は開発中のものです。2011/06/23(木) 17:19:53.92ID:A1S7MgvQ
>>885
前者はすでにほぼ絶滅しているし、後者は明らかに文字コードを画像に変換しているな。
0890名前は開発中のものです。2011/06/23(木) 17:33:17.29ID:QwuQYJQ5
アクションゲーのメニューなんかでは今だに普通にビットマップ使ってることが多いけどね
0891名前は開発中のものです。2011/06/23(木) 17:42:56.05ID:A1S7MgvQ
それは元質問者が意図した文章か?w まあ文章ではあるわな。そうですねw
0892名前は開発中のものです。2011/06/23(木) 17:47:42.35ID:8jCWoIDE
どうも勘違いしていたようだな
後者のやりかたが当然と思っていたから前者なんて論外だった

前者で文章表示していたら膨大な画像データになるんだろww
会話データをそんな処理していたとは考えにくいが

それに前者の方法なら文章データは不要で
フラグ管理だけで十分じゃないのかな?

1だったら○○の文章データ(画像)を表示
0893名前は開発中のものです。2011/06/23(木) 18:09:17.62ID:4Rg2XpCB
前者、unreal方式はテキストファイル類は必要ない
どこで何を出すかさえ決めておけばいいだけで、
会話自体が少ないアクションシューティングでは問題にならなかった。
オブジェクティブ表示、ステータス表示、程度だし

Doom3エンジンの「オリジナル」は字幕機能を持っていないし
もしもしゲー用のエンジンも持ってないこともあるので
今でもテクスチャ貼り字幕は存在している。

必要があったら、Prey、ETQW世代のD3エンジンのように拡張して字幕機能を持たせることもあるが
0894名前は開発中のものです。2011/06/23(木) 19:38:00.42ID:s6g/tj/H
C# + XNAで開発しています。
XNA専用スレが一つしか無かったので、まずはこちらで良いですか?

spriteBatchで描画した画像やテキストをクリアするためには、
spriteBatch.Dispose()して、新しくspriteBatchを作成するしかないでしょうか
※メニュー選択後の画面遷移をしようとしています、他に方法があればそれでも問題ありません
0895名前は開発中のものです。2011/06/23(木) 20:01:21.64ID:Zvnkqj4Q
素材について意見がききたいんだけど適当なスレがないんでここで質問。

メッセージ枠素材を配布しようと思ってるんだけど
現在の標準サイズって800*600基準でいいのかな。
あるいは他に使いやすいサイズがあれば知りたいです。
0896名前は開発中のものです。2011/06/23(木) 23:12:25.13ID:ryrUA2vo
縮小はどうにでもなるのでなるべく大きなサイズならつぶしが利くだろう。
重要視するべきはサイズじゃなくて比率かな。4:3用途か16:9用とか。
どれにでも利用できるサイズにするなら4:3用で作成することになる。

結局は利用して貰いたいコミュニティのデファクトに合わせるのが普通だから、
そこで聞くべきだ。

0897名前は開発中のものです。2011/06/24(金) 00:01:17.80ID:IetTbbk8
ワクそのものでもいいのだが、一部だけでも用は成せる

解像度固定でないなら、「その一部を何回X方向Y方向に繰り返してどれだけの大きさにするか」
ってのが容易に出来る
アクセントがあっても重ねるだけ


どうしても凝ったデザインにしなきゃならんならワク全体を配布すべきだが
0898895 2011/06/24(金) 01:44:05.94ID:tVBhkhN8
自作吉里吉里製アドベンチャーに使った素材がほしいと言われたんですが
psdで保存してあったから、どうせなら標準的なサイズにして配布しようかと思って。
まさに比率が気になってたんですが4:3で問題ないんですね。
パターンの一部+パーツ別もあわせて考えてみます。
ありがとう。
0899名前は開発中のものです。2011/06/24(金) 02:01:58.57ID:IetTbbk8
それなら丸ごとでもいいんじゃないの

0900名前は開発中のものです。2011/06/24(金) 02:20:24.84ID:3eZR6aVo
いっそのこと、aiでつくるとか。
0901名前は開発中のものです。2011/06/24(金) 06:10:21.91ID:PG3ZOgrs
例えば16:9のアスペクト比で3D表示した横幅の可視領域は
4:3の比で表示した場合の、どのくらいカメラを引いたのと同じなんでしょうか?
要するに4:3で表示した時に上と下を切ってワイドっぽく対応したいんです。
それとも根本的にこの考えはおかしいですか?
0902名前は開発中のものです。2011/06/24(金) 06:44:45.29ID:Wo5NDXjk
ワイドの言葉の意味を考えればおかしい
上下を切るより左右をワイドにする
0903名前は開発中のものです。2011/06/24(金) 07:25:14.07ID:PG3ZOgrs
>>902
もしかするとまだ勘違いしているかもしれないんですが
一応今の所下記の様に思っています。
何か間違いがあればご指摘頂ければと思います。

左右の領域については、4:3の比率で表示した時に
カメラをある程度引けば(つまりカメラのz値をマイナスすれば)、
左右の可視領域は増えてるという事になると思うんですけど。
実際に目測で大体16:9の時と同じくらいの左右の可視領域を増やせてるんですが
それを目測ではなく、厳密に計算式でやりたいなと思って。
上下を切るのは、カメラを引く事によって上下の可視領域も拡大されるので
その余分なところをカットするという意味です。
0904名前は開発中のものです。2011/06/24(金) 07:36:52.25ID:PG3ZOgrs
分かりにくいかもしれませんが↓みたいな感じです。
■の表示は真ん中に表示した板ポリ

1280x720(16:9)
―――――――
 ■■■■■
 ■■■■■
 ■■■■■
―――――――

1280x960(4:3)
―――――――
■■■■■■■
■■■■■■■
■■■■■■■
■■■■■■■
■■■■■■■
―――――――

1280x960(4:3) カメラzをマイナス(余分な上下は塗り潰す)
―――――――
 
 ■■■■■
 ■■■■■
 ■■■■■

―――――――

どこまでカメラを引けば、きっちり16:9の可視領域と同じか知りたい(公式が欲しい)。


0905名前は開発中のものです。2011/06/24(金) 08:00:28.18ID:Wo5NDXjk
公式という言葉の意味を考えれば無い
公になっていない
0906名前は開発中のものです。2011/06/24(金) 08:27:09.71ID:PG3ZOgrs
>>905
公式というのはちょっと言い方が悪かったですが
複数の解像度に対応した式でカメラのマイナス値を算出する方法はないでしょうか?
0907名前は開発中のものです。2011/06/24(金) 08:39:35.27ID:PiATbYSQ
スクリーンのサイズと視野角が分かれば、視点からのスクリーンを挟む三角形が出来るから、簡単に距離なんて出るだろう。
0908名前は開発中のものです。2011/06/24(金) 08:50:36.64ID:PG3ZOgrs
>>907
すみません(汗)
プログラミングとかしていながら数式にはめっぽう弱いもんで。
後は自分でがんばってみます。
0909名前は開発中のものです。2011/06/24(金) 09:34:03.49ID:3eZR6aVo
これってモニタの縦横比とは無関係なのでは…
0910名前は開発中のものです。2011/06/24(金) 10:06:53.39ID:PG3ZOgrs
>>909
どういうことでしょうか?
0911名前は開発中のものです。2011/06/24(金) 10:08:48.18ID:PiATbYSQ
アスペクト比で縦を1とするから、キーとして使うサイズは縦方向のサイズをとる。

>>908
三角形の一辺と角度から、他の辺の長さぐらい求められるだろう。
公式なんて検索すれば出てくるんだから、弱いとか関係ないから。
0912名前は開発中のものです。2011/06/24(金) 10:10:14.75ID:PiATbYSQ
正確にいうと三角形じゃなくて直角三角形。
0913名前は開発中のものです。2011/06/24(金) 10:32:41.79ID:PG3ZOgrs
>三角形の一辺と角度から、他の辺の長さぐらい求められるだろう。

はい。これは大丈夫です^^
なんとも低レベルな質問にお答え頂きありがとうございました。
0914名前は開発中のものです。2011/06/24(金) 10:33:52.74ID:S6/XRV49
視野角60度、幅1280とすると d = 1280 / 2*tan(60/2度) = 1108.51252 ?
0915名前は開発中のものです。2011/06/24(金) 10:39:39.36ID:PiATbYSQ
幅=高さならそれであってるよ。
0916名前は開発中のものです。2011/06/24(金) 10:49:15.02ID:S6/XRV49
ありがとうございます
0917名前は開発中のものです。2011/06/24(金) 13:36:42.37ID:fTw62tmE
配列[10]から以下のような画像配置をする時if文だらけでなく、何か良い計算式はないでしょうか?
配列[x]
  ■■■
 ■■■■
  ■■■

ベタな方法なら
x≧0 〜
x≧4 〜
x≧7 〜

応用すればこういうのもOKな感じになるようなもので
   ■■
  ■■■
 ■■■■
  ■■■
   ■■


横幅が変わらない場合(理想的でない)
■■■■■■■■■■(9)

  ■■■
 ■■■
■■■

Y軸+x%3*○

0918名前は開発中のものです。2011/06/24(金) 17:59:21.23ID:IU+rSsxS
■■■■■■■■■■って配列[10]を
■■■□■■■■□■■■ という配列[12]にしてから

  ■■■□
 ■■■■
□■■■
(□は実際には描画しない)
0919名前は開発中のものです。2011/06/24(金) 21:02:04.53ID:3eZR6aVo
最適化のソリューションというのは状況や環境に寄り添うと言うことなので
こんなシンプルな問題なら、最低でも何の配列で、それをどういう構造を
持った先に書き込むのか分からないと答えようがないんですよ。

書き込む先の横幅に依存すると高速化できるかも知れないし、
配列の要素によってはマスクをテーブルで用意して合成に利用すれば
高速になるかも知れないし。

0920名前は開発中のものです。2011/06/25(土) 02:15:50.76ID:av3YTDPA
>>917
予め画面に対応する配列を用意しておいて
外部のマップ配置データを読み込むというのが
一番オーソドックスなやり方の様な気がするけど。
0921名前は開発中のものです。2011/06/25(土) 08:45:28.72ID:ljrl4TvH
>>917
条件が良く分からんな。第1と2の図を考慮したら3はこうなると思うんだが

  ■
. ■■
■■■
. ■■
  ■
0922名前は開発中のものです。2011/06/25(土) 09:39:16.80ID:bgBde/zB
MODとか上手く使えば計算式で出来るかもしれんがややこしいだけでしょ
>>917みたいにベタな方法でも別にいいと思うが
あるいは>>920みたいにやるか
0923名前は開発中のものです。2011/06/25(土) 09:46:09.77ID:bgBde/zB
絶対値とか使えば上手く出来そうな気もするな
ようはy=f(x)で
x0123456789
y0001111222
を求める問題に帰結できそう
2番目も同じ
数学板の奴に聞けば解いて貰えそうな気がする
まあそこまでやらなくても上のようにやれば十分だと思うがね
どうしても計算式で表したいって気持ちも分からんでもないが
0924名前は開発中のものです。2011/06/26(日) 00:11:07.08ID:tRK+x7lL
ゲームで動画って使うのか?

俺はフラッシュとかで動画つくってロードできて使えたらいいな〜
って部分がかなり沢山ある
0925名前は開発中のものです。2011/06/26(日) 03:01:39.84ID:B4vmplE/
if文を少なくして、常に良いプログラムを考えながら組むのと

if文だらけになろうともまずは動作するようにしてその後、if文や計算式の最適化

どちらが良いのだろうか・・・・
0926名前は開発中のものです。2011/06/26(日) 04:49:21.11ID:tdcXr8Eq
行き当たりばったりで組んでるならどっちも大差ない確率でこける
0927 忍法帖【Lv=4,xxxP】 2011/06/26(日) 13:48:34.91ID:S3ucWYBu
自分の場合、ある程度は考えながらやるけど、基本的に最適化は後回しだなあ。
最適化の優先順位なんて、全体が見えてこないと判断できないし。
0928名前は開発中のものです。2011/06/26(日) 14:37:30.65ID:OTl5CjgI
細かい部分でIF文が多いとかはどうでもいい。
全体をパーツに分けて、入れ替えやバグ解析を
簡単にできる方が重要だと思ってる。
0929名前は開発中のものです。2011/06/26(日) 17:03:01.17ID:nuBXaIcP
>>925
if文が少ない≠良いプログラム。
全体を完成させてプロファイルしてから、最適化しろ。

ところで、最初2行目が

if分が少ない≠酔いプログラム

って変換されてワロタ。

0930名前は開発中のものです。2011/06/26(日) 19:03:41.51ID:tRK+x7lL
ただ、敵10体、自分、敵と自分の弾を表示させただけなのに重くなってる

自分を中心としてスクロールてるんだが、多分マップ全体を描画して
とこからウィンドウ画面を表示してるのが悪いのかもしれん。

なんか軽くする方法しらないか?
0931名前は開発中のものです。2011/06/26(日) 19:28:35.85ID:JTqXQOAQ
>>930
うー無、曖昧さ100%でなんと答えてよいのやら
具体的にフレームレートは? 3Dなのか2Dなのか? スクリーンショットある?

やっぱね、一番の近道は 
ソースコード付きでコンパイル可能な状態でUPLOADすることだ
0932名前は開発中のものです。2011/06/27(月) 01:04:02.53ID:tvFf2HrL
if文連続してあるこの糞みたいなコード見せるの恥ずかしいんだけどな
ちなみにスクリーンショットも恥ずかしいんだわ

これ初めて作るゲームだしな
なんだか、もうカオスだしよ
0933名前は開発中のものです。2011/06/27(月) 05:59:06.05ID:txUEornU
ドラック&ドロップ描画のコツがよくわかりません

移動物体になってしまう以上、背景の消し書き必須ですかね?
0934名前は開発中のものです。2011/06/27(月) 11:26:15.22ID:HEmSmJov
質問の意味が微妙に分からんけど、
DXライブラリのスレで似たような話があったよ。
0935名前は開発中のものです。2011/06/28(火) 06:35:09.67ID:ACSn663z
SLGやRPGでのマウス判定について質問ですが

普通に考えれば座標→クリック状態だと思います。
しかしプログラム処理の場合はクリック状態→座標のが処理が早いのではないかと思ってみたり?
0936名前は開発中のものです。2011/06/28(火) 09:36:13.37ID:ApOdSqk9
めちゃくちゃ自分次第じゃね。

思ってみたり?って質問されても思わないとしか言えん
0937名前は開発中のものです。2011/06/28(火) 10:30:19.93ID:vWReiH/p
自分一人でゲーム作るの大変だな

もはや3年計画だわ
0938名前は開発中のものです。2011/06/28(火) 11:07:56.63ID:xLD/tNSC
>>937
個人で3年続いてるってめちゃくちゃ凄えぞオイ。
自分なら半年で飽きる。
0939名前は開発中のものです。2011/06/28(火) 13:55:04.99ID:ua5wbLNE
半年もすごい。三ヶ月で飽きる。
0940名前は開発中のものです。2011/06/28(火) 18:17:56.83ID:h3LZy4IH
ソースコードにTODO書いてあるけど放置してあるわ
0941名前は開発中のものです。2011/06/28(火) 18:59:09.16ID:oECP7U5E
3ヶ月も結構凄いだろ。
0942名前は開発中のものです。2011/06/28(火) 19:51:39.41ID:ACSn663z
みんなどんなのを目指しているんだろ?
あれも〜これも〜と作っていけば流用できるソースが増えて
ミニゲームが完成
そのミニゲームを大きくすれば、それなりのゲームができそうな?


とC++ExpressをDLしてから14日目の超初心者は思うわけで・・・
0943名前は開発中のものです。2011/06/28(火) 22:15:59.40ID:w5KHKyfb
脳内にあるのは市販のゲームと同じレベルのものだろ。そんなこと考えてるから完成しないわけだが。
0944名前は開発中のものです。2011/06/28(火) 22:39:04.98ID:vWReiH/p
まじもう最悪だわ

超頑張って書いたキャラクターカスタマイズ用画面のコード作って
デバッグしたら何も表示されないしよ

ゲームの方に戻ったらいつの間にか敵が表示されなくなってるしよ

おまけに原因が全くわかんね〜

俺はどうすればいいんだ?
0945名前は開発中のものです。2011/06/28(火) 22:41:39.43ID:Rk+Ieai4
バックアップに戻る
0946名前は開発中のものです。2011/06/28(火) 23:07:20.48ID:ACSn663z
>>944
3年計画のソースとかみたくねぇぇwww
0947名前は開発中のものです。2011/06/28(火) 23:09:21.94ID:7bkT/y0o
>>944みたいにはなりたくないな…
0948名前は開発中のものです。2011/06/28(火) 23:28:59.23ID:nN7/OrGG
脳内にあるのは市販レベルを超えるものなんだが。
0949名前は開発中のものです。2011/06/28(火) 23:40:13.04ID:oECP7U5E
>>944
一人開発なんだし、簡易でも良いからせめてTDDくらい導入しろよw
0950名前は開発中のものです。2011/06/28(火) 23:51:05.46ID:h3LZy4IH
なんで飽きるんだろうな
不思議なほど最後まで作れない
0951名前は開発中のものです。2011/06/29(水) 00:00:46.50ID:ct4dTXBD
熱意は有限な燃料なんだよ。そして毎日ほんの少しずつだけ蓄積されていくんだよ。
で、ゲーム作りたい気持ちが蓄積されていって、ある日限界を超えて本当に作り始めるわけ。

でもここからが本番。一気にやろうとするから熱意を全消費して作る気力が無くなる。
もうちょっと作りたい気持ちを我慢して、今日はここまで、と止めるのが重要。
で、作ってない間に色々妄想しておいて、熱意の燃料をまた貯める。

火薬みたいに爆発させるんじゃなくて、ロウソクのようにちびちび燃やすんだ。
0952名前は開発中のものです。2011/06/29(水) 02:37:27.39ID:c9owt+lo
1日で何か進展がないと、つまらなくなる
進展があるとモチベーションが上がる

おまいらのゲームみしてくれよ
モチべーションを上げたい
0953名前は開発中のものです。2011/06/29(水) 08:33:10.24ID:deSRQf0O
ゲーム作るためにDirectXを使いやすくする為自分用のライブラリ作った。
暇な時に作業してそれ作るのに1年かかったよ。
グラフィック、サウンド、動画再生、操作デバイス… 他にも色々…

DXLibというのがあるのも後から知って、これ使っとけばよかったかな、
と思ったけど、とりあえず、ここからやっと本格的な作業に入れそう…
完成は後、一年半後くらいかな…
プログラム以上に困難なのが画像データ作成なんだよね。
なるべく綺麗なもんにしたいなーとは思うんだけど。
09549532011/06/29(水) 08:38:55.02ID:deSRQf0O
確かに車輪の再発明?っぽくなっちゃったけど(自分のが低機能だけど)
でも自分でライブラリ作るのはすっごいプログラムの勉強になった。
おかげでC++言語が大分わかったし。
0955名前は開発中のものです。2011/06/29(水) 16:46:24.42ID:c9owt+lo
敵のデータとか移動データって、新たな面ごとに作りなおすのか?
別にコピペすれば苦でもないし

それとも敵のデータとして既に作ったものを参照して利用したほうがいいのか?
こっちの方が効率的ではあるかもしれん
0956名前は開発中のものです。2011/06/29(水) 17:10:58.43ID:odao3aA9
普通は簡単なスクリプトみたいなのを読み込むようにするだろうな
プログラム内に直書きはかなり頭が悪い方法
0957 忍法帖【Lv=8,xxxP】 2011/06/29(水) 17:43:27.99ID:6aBgRGVm
>>955
というか、素直に作ったら、敵データとステージデータって別物にならないか?

>>956
ステージデータは外部読み込みだけど、敵の移動とかはハードコーディングだなあ。
まあミニゲームだし、そもそも個人製作だから……と言い訳。
0958名前は開発中のものです。2011/06/29(水) 17:59:54.98ID:U65L8kii
何も知らないので0からのゲーム作りなんですが
ファミコンにあったキン肉マンのような格闘物を作ろうと思うんですが
どんなプログラミングを覚えれば良いんでしょうか?
0959 忍法帖【Lv=8,xxxP】 2011/06/29(水) 18:13:05.79ID:6aBgRGVm
そのゲームさえ作れればよく、プログラミングを覚えなくても作れるならそっちで構わない場合と、
プログミングの勉強が主目的で、そのための題材を探している場合とでは、答えが異なる。
0960名前は開発中のものです。2011/06/29(水) 18:14:28.22ID:qGpPtV8x
>>958
14歳からはじめる
C言語わくわくゲームプログラミング教室
http://www.rutles.net/books/281.html

この本を3度 読み返す。
0961名前は開発中のものです。2011/06/29(水) 20:26:57.92ID:c9owt+lo
>>956
そうだな、いちいち面ごとに敵作ってらんないからな
1面というモジュールがあったとしたら、そこにその面のデータ書き込めるように
したほうが分かりやすいかもな

0962名前は開発中のものです。2011/06/29(水) 23:04:56.12ID:IWHgyftA
キー&1マス移動処理なら配列等で判断できrけど
キーでなくマウスだと相当やっかいだな・・

キーが押された 移動倍率(マス目サイズ)を1加算or1除算でOKだけど
マウスの判定は難しいな。
中心より上なら〜敵な十字キー扱いにすればいいけど
SLGだとしてマス目が多くかつ、マウスをクリックしたところまでの移動数を調べるとなると頭が痛くなりそう
0963名前は開発中のものです。2011/06/30(木) 08:18:44.50ID:0sMwpYmO
アクションゲームで普通の矩形に乗った時やめり込みの補正は楽ですが
斜面っぽいものになると途端に面倒になります。
斜面も考慮した地形の移動やめり込み補正はどういう方法がありますか?
0964名前は開発中のものです。2011/06/30(木) 08:42:23.20ID:q6uUO0Bv
傾斜の部分だけ、細かい矩形を生成すれば?
0965名前は開発中のものです。2011/06/30(木) 09:08:34.97ID:0sMwpYmO
>>964
でも自然に上れるようにもしたいので
何か良い補正方法があればいいな〜と思うんですけど。
線分とかの判定処理なんでしょうか?
めり込みの補正をどうやったらよいのかが一番わからないんですよ…
0966名前は開発中のものです。2011/06/30(木) 10:30:01.03ID:yXgs0tsO
>>965
まぁ、多数の手段があるし、どのような目標なのかもわからない

だから、あなたが スクリーンショットとソースコードの提示をしなさい。
解決方法は多数あるが、あなたの手段を知らないから口出しできない。
0967名前は開発中のものです。2011/06/30(木) 10:55:19.68ID:q6uUO0Bv
球体が転がるのでもない限り、スームーズに移動する方が不自然なんだけどね。
0968名前は開発中のものです。2011/06/30(木) 11:43:15.33ID:oUawTjnp
え・・・車輪がスムーズに移動するのは不自然だったのか
0969名前は開発中のものです。2011/06/30(木) 12:01:04.46ID:AdqVaTeo
四則演算と単純な二次関数な限界学力だけど、プログラムってなんとかなるんもんだな〜

3Dや無駄に凄いアクションゲーを考えると無理ゲーになるんだろうけど
0970名前は開発中のものです。2011/06/30(木) 12:09:17.12ID:q6uUO0Bv
>>968
だから球体が転がると書いてあるだろう
車輪だから球体じゃないとでも言い出すのか?
0971名前は開発中のものです。2011/06/30(木) 12:24:17.71ID:edGzdbav
>>970の珍説が続きます
0972名前は開発中のものです。2011/06/30(木) 12:27:41.86ID:yXgs0tsO
3D物理エンジンを実装するのもひとつの方法、ODEでよいだろう。
0973名前は開発中のものです。2011/06/30(木) 12:50:55.94ID:UVxYsoY6
>>963
矩形をキャラの中心から左右2個の矩形に分轄して
地形との接触部分をもとに矩形の高さを動的に変化させる

A B C

D E F

ACFDが矩形で中心がBEとして
BEがめり込まない位置にまず高さを補正する
次にADとCFの線分でそれぞれ地面との判定を行う
左上がりの傾斜ならADの間に接点Gがでたとして
Gとおなじ高さのBE間に点Hを作る

A B C
G H
D E F

あとはABHGとBCFEの二つの矩形を使って壁や判定の判定をする、とか
0974名前は開発中のものです。2011/06/30(木) 12:53:23.27ID:oxuV3HTQ
状況が千差万別だからどう説明していいかわからんよなぁ。

斜面角度が一定なら処理を簡略化出来ることもあるだろうし
登れる角度に制限があれば処理も変わるだろうし
矩形の時の判定方法をどうしてるかでもまた変わるだろうし。

内部処理は平面歩行と同じにして、斜面ブロック内での左右位置で
上下の表示位置を補正する方法もあったりで、ほんと色々。
レス数が950を超えています。1000を超えると書き込みができなくなります。