ゲーム開発会社がゲーム製作技術を伝授するスレ
■ このスレッドは過去ログ倉庫に格納されています
ワールドワイドソフトウェアという開発会社の者です。\n
社員がゲーム開発の質問に可能な限りお答えします。\n
http://www.wwsft.com/\n
長年RPGを中心に開発していますが、シミュレーション、アクション、スポーツ、ペット育成、麻雀など多くのジャンルの開発経験があります。 古いゲームあげてくるあたりいい年だと思われるのに小学生レベルの聞き方だな 最近のゆとりは質問の仕方から分からないというね
回答者にはエスパー能力が要求される >>543
\●/\●/\●/「イーッ!!」
ショッカー戦闘員 >>543
地形との当たり判定ですね。
以前、別の方から似た質問があり、431で答えています。
↓このURLをご覧になって頂けますでしょうか。
弊社のゲーム制作テクニックの解説
http://www.wwsft.com/sp/
坂道の判定方法 なんでピンポイントで坂道当たり判定があるんだよ!?
と思ったら、>>431でわざわざ追加していただいてるのね。
すごいな・・・
衝突後の速度ベクトルは、
v' = v + n * (v・n) (nは法線ベクトル)
で簡単に出せそうだけど、位置補正↓がめんどくさそう。。。
坂道に触れている状態の下り坂と上り坂、
坂道に触れてない状態の着地(落下時)、跳ね返り(上昇時)で処理を分ければいいのかな。
(やったことないけど!、、、というか3DDungeonRPG専なので今後もやらないけど!) >>550
おまえバカじゃねーのか?www
ちゃんと書いてるだろ盲目なのか?www
わからんのならおまえは一生わからんでいいぞバ〜カwww 失礼だが、この程度の問題を自分でなんとかできないならゲーム製作なんて無理だと思う
ましてや個人でなど そんなのみんな分かってるんだけど楽しいから言わないのよ 質問です。
文章文字列の一行が、真っ暗の状態から上から少しずつ見えてきて、
最後に全部の文字の高さ分表示されるようなのってどうやっているんでしょうか?
フェードインのように全部が少しずつではなく、高さがスライド的に変わって出てくる表示です。 >>564
答えは社員を待っているんだ!待つんだ!
てか遣り方は使ってる物によってかわるよなぁどんな答えくるかな 海外のスタックオーバーフローとか見てもわかるが外人は質問する時に、
自分でこう考えてみてこうやってみたがこんな結果になったのでどこが間違っているんだろうって質問の仕方するけど
日本人は目的だけいっていきなりやり方教えてくださいって聞いてくるのな
これも教育の違いなのかね マジレスすると、根には親子関係に端を発する国民性の問題がある
・・・って長文を貼ろうかと思ったが止めとく >>565
グラデのかかった半透明シートを文章の上に置いて、
シートを下にずらすと予想 >>567
答える方も外人は親切だよな
かなり親身に考えてくれるし、上から目線で説教かますやつはほとんどいない
日本人は寄付しないっていうし親切じゃないんだろうな >>561
561さん
弊社のプログラミングテクニックに追加しました。
仰っているのはこのような演出だと思うのですが、ご確認下さい。
http://www.wwsft.com/sp/
仮想画面に文字を表示 → 実画面に描画範囲を計算しながら描いていく、という方法です。
最も一般的な方法で、全ての環境(PC、スマホ問わず)で実現できます。
なお文字列の周りを透明色にする必要があります。 >>571
これの事です!ありがとうございます。
背景は真っ黒でも良かったんですが背景がグラデーションでもできるんですね。 Androidアプリがバージョンアップ更新されると勝手にダウンロードして更新してくれますが、あれは開発側は更新バージョンをアップするだけで特別な処理は不要なのでしょうか? >>573
573さん
Androidアプリがバージョンアップした際の更新方法はユーザーが各自の端末で設定します。
ユーザーによっては自動更新OFFの方も多いと思います。
仰るように特別な処理は不要です。
詳しくはGoogleのサイトをご覧下さい。
https://support.google.com/googleplay/answer/113412?hl=ja >>574
ありがとうございます。
しかし、アプリ内容は更新できたとして、既に保存されているセーブファイルなどは消えてしまわないのでしょうか?
あとリソースデータだけ別にダウンドロードしたりとかもありますがあれはどうやっているのでしょうか? ここ詳しいね、
Intel Pentium G5 CoffeeLake 総合スレ
http://anago.op en2ch.net/test/read.cgi/jisaku/1526884213/ >>578
セーブデータもリソースもアプリ本体とは切り離してるんだろうし消えようがなくねーか?
パッと思いつくのは新バージョン起動時に必要なリソースが足りてるかチェックすればいいんじゃねーのかね。
そんで足りなきゃ自鯖からDLさせるとか。
独学だからスマートな方法が分からんから聞きたいってんなら分かるんだけど、なーんも考えないで答えだけ教えてくれってのは応用が効かなくなると思うぜ。 だから自称四天王の意見なんて聞いてないってw
天帝以外、質問に回答すんなっつうの。どんだけかまってちゃんなんだかw
あー、これには返信しなくて良いからな。四天王回答にだけ書いただけで以後かかないので。 >>575
セーブファイルや本体にDL済みのリソースファイル(apk本体に入れないで用意したデータ)が消えることはありません。
リソースデータを別にダウンロードする方法はここに書くには長過ぎますので
「Android 外部ファイル ダウンロード」で検索すると色々なサイトに方法が載っています。
手順としては577さんも仰っているように
1.まず本体に必要なファイルがあるか確認
2.無い場合はダウンロード処理に移行
※1はフラグで管理するのではなく、毎回ちゃんとファイルがあるか読みに行って下さい
ユーザーが外部ファイルだけを消してしまったり、ということもあります 時間軸逆転アンカートラップ?!時魔道士が時の砂をまいたのか!? じゃあ、自称かまってちゃんの>>578は今後無視で。 横からしゃしゃり出てるとなんか得することあるのか? 横から噛み付くのが趣味のカス犬だよw
午前中からかみこみして確実にニートも混ざっているだろw ファミコングラディウスの2面の粒々のあたり判定はどうやっているのでしょうか?ファミコンで全粒々とレーザーの当たりをチェックしてたら処理が追い付かなそうなんでレーザー付近の粒々を割り出してチェックするんでしょうか? そもそもあの粒々のオブジェクト管理はどうやっているんでしょうか 自分が遊んだゲームはみんな知ってるはずって想定なのかな
該当画面のスクショでも貼ればわかりやすいと思うんだけど >>585
ファミコンにはBGとOBJという概念があって、あの石みたいなやつは数量的にBGで表示してるはずなんだよね
んで、BGは2次元の配列みたいなもんだからそれと当たり取ってるだけだと思うよ
余談だけど1のレーザーはOBJでそれ以降はBGで表現してた気がする >>585
横レスですが。
粒々は配置されてる動かない物体なので、横スクロール座標と、ビームなどの座標を合成した座標に、粒々があったら当たったと見なして消滅処理すればイイんじゃないかなあと思いました。
例えば、現在表示される画面を描画する際、8×8ドットごとに区切ったマトリクスを2次元配列で持つとかして、中身は0:空っぽ(背景)、1:破壊可能物体、2:破壊不可物体とかを設定。
これは、面のマップ情報をスクロール分だけずらして、現在表示分をコピるだけでもイイですね。
昔のテレビって640×480でしたっけ?だと、横80×60の比較用配列で済むか。
で、ビームやレーザーの現在位置をビームが移動するごとにその配列のインデックスに直接参照できるから、オブジェクトごとの衝突判定みたいな時間のかかる処理は必要ないかと思いました。
自分で作るならこうかなあ、というのを書いたので、実際にどうやってるかは分かりませんが。
m(_ _)m >>586
で、オブジェクト管理というか、表示用マップ情報を、破壊されたら、上記の仕様の場合0(背景)にしてしまえば、その回は再描画されない、と。
横レスですいません。 >>585
>>589
585さん
弊社はファミコン開発は行ったことがございませんので、
グラディウス自体は判りますが、ファミコン版2面の仕様がすぐには判らないです。
589さんのご助言のように二次元配列でBGを管理すれば実現できます。
(もし今、弊社がグラディウスっぽいゲームを作るならそうします)
589さん、ご助言ありがとうございます。
余談ですがファミコンを調べたところ解像度は256×224(240)ドットでした。
仰る通り軽い判定で実現できますね。 みなさん回答ありがとうございます。
背景配列とのあたり判定だったんですか。弾幕ゲームの考え方とは根本から違ったんですね。
レーザーも背景にしてたとは意外でした。
アーケード版の画面一杯に伸びるレーザーはオブジェクトですよね?
(グラディウスに限らず) ついでに気になったのですが、雷電のうねうねレーザー(蛇みたいにぐるぐるうねって動く)の当り判定はどうやっているんでしょうか?
レーザーの始点と終点を細切れオブジェクトで配列で繋いで描画と当り判定をしてるんですかね? グラディウス 2面
雷電 レーザー で画像検索すれば
だいたいのイメージは出てきます >>594
おまえが質問してんだから画像くらい貼れよ
ひどいな >>599
聞いてくるのは良いんじゃね。
それより、お前に聞いちゃいねぇってのに、しかも自論全力の奴が笑えるw
そんなに質問して欲しけりゃ、同じ様にスレ立てろってね。 質問してる側からすれば、誰が回答したって回答は回答だろう。
意見が多いほうが取捨選択もしやすいし
明らかにそれおかしーだろって回答も無さそうだし。
ならなぜこのスレに書き込むのか?…質問スレに人いねーんだもん >>593
雷電のうねうねレーザーをYoutubeで調べ、たぶんこんな感じだろうというものをプログラミングしました。
http://www.wwsft.com/sp/
当たり判定は、一般的な方法、すなわち距離による判定か、オブジェクトが重なったかの判定で可能です。
レーザーのうねうね具合で、一見すると何か特別な判定が必要と感じられたのかもしれませんが、
1つずつ撃ち出される弾の判定と同じになります。 >>602
見てる側からしたら名無しの無責任な回答は社員さんのじゃましてるとしか思えんよ 回答は沢山あってもまったく問題ないが
スレ仕切りたいマウント君はほんと邪魔 どうも。
火種になって申し訳ありません。
なので、
不特定多数の質問に、心優しい不特定多数が答えるというスレを建ててみました。
【ゲームで、この処理ってどーやってんの?】
https://mevius.5ch.net/test/read.cgi/gamedev/1527678545/ >>606
貴方はたぶん火種になってませんよ。
マナー的に断り入れてから入ってますし、少なくとも私には、善意のだいさんしゃとして映っています。
489-491みたいな、お前はアミバそっくりだな奴が要らない子です。
駄スレでした。では。 >>607
最後にします。
フォローありがとうございます。
m(_ _)m 雷電初期のうねうねレーザー、それを書けるプログラマが辞めてしまったので途中から無くなったそうな・・・mjd? さすがに質問を不特定多数が答えるのは、質問スレでいいのでは・・・
>>603
レーザーの進行方向laDに、ターゲットへ向かうようにlaPを加減算すのですね。
あのレーザーってたまに円軌道を描くから、laPのインクリメントはいらないような気がするなぁ。
(一定時間生き延びたレーザーは、laDへの加減算が行われなくなるイメージ)
C系しかやらない俺には、
HTML?とJavaScript?でここまで書けることに目からウロコだw >>603
動作つきの画面まで作ってくださりありがとうございます!
実際のプラズマレーザー(正式名)の動きにするにはまだまだ改良しないといけないようですが、非常に参考になります。
俗名はリーマンレーザー(会社帰りのリーマンが好んで使うため)と言うらしいです。
なんでlaDにlaPを加減することでああいう軌道に変化するのかがイメージしづらいですが・・・。
発想がすごいです。 >>603
なるほどなるほど。
複雑な計算しなくても面白い挙動は作れるんですね。
勉強になりました。 >>615
リーマンレーザーは止めろぉ‼
(金融システム畑) >>613
オイオイ
続編のほうが技術レベル低級なのかよw RPGとかのセーブデータですが、やはり暗号化して保存しているのでしょうか? >>619
619さん
簡単に解析できるハードや環境であり(例:パソコンでローカルに保存する)
暗号化すべき内容のゲームであれば、暗号化するはずです。
パソコン用のゲームでもデータを解析されて問題ないものは暗号化していないでしょう。
各ゲームによって暗号化の必要があるか、無いかが重要です。
例えばキャラを成長させ他のユーザーと対戦するゲームで、データをローカルに保存するなら暗号化の必要があります。
(今はそういった内容のゲームであればサーバ保存が多いですが)
ちなみに弊社がスマホ用に開発したアプリで、セーブデータが解析されても問題ないものは暗号化しません。 R -TYPEの反射レーザーはどうやっているのでしょうか?
地形に応じて反射後のレーザーの長さも変わってますが >>623
623さん
ご質問の意味は、
ゲーム会社勤務の社員は「高度プロフェッショナル制度」の対象になる人が多いのですか?
というものとして回答します。
高度プロフェッショナル制度について調べまたところ、年収1000万円超の方が対象らしいです。
ゲーム業界にはそんな高給取りはほとんどいません。
以前も書きましたが、ゲーム業界は(同じようにコンピューターを扱う他の業界と比べ)一般的に低賃金でして
好きだからやってられるけど、、、という現場も多数存在します。
ですので高プロ対象者に該当する方は極少数だと思います。 >>624
624さん
「R -TYPE 反射レーザー」でググった画像と(昔遊んだ記憶を頼りに)
こんな感じだろうというものをプログラムしました。
http://www.wwsft.com/sp/
レーザーの長さを管理する方法もありますが、その方法では障害物の反射で支障をきたす恐れがありますので、
“レーザーを短い線が何個もつながったもの”としてプログラムしています。 おまいら、何でも作ってくれるからって課題とか宿題とかそれとなく出すなよ >>626
ありがとうございます。かなり再現性高いですね
ひょっとして残業で作ってくださったのでしょうか(汗)。
細切れを繋ぐ方がゲーム中も多分色々と扱いやすいんだろうなと思えました。 効果音ww
確かにゲーム制作に関わる技術かもしれねーけどさw
素材使うこともあるしシンセでイチから作ることもある。 >>629
629さん
630さんの仰っているように、
・素材集(法人が商用利用可能なもの)から加工する
・サウンド担当者が一から作る
いずれかです。
ちなみにJavaScriptなら、プログラム的に音を作り出せる仕様が各ブラウザに実装されつつあり、
将来的には簡単なSEであればプログラマーが直接音を流す(処理を組み込む)と思います。 >>631
ありがとうございます。
tone.jsとかあるんですね。
サウンド担当者はどうやって採用に至るのでしょうか?どういった点を見られるのですか?
作曲は社内で行うのでしょうか? ちょっと考えれば分かるような技術的な質問より
(ってかちょっとは考えろよ的な)、
こういう質問のほうがいいな。
音作成というとドンブラを弾いているイメージ(SHROBAKO脳) >>632
DTMの掲示板を見てると、難聴や耳鳴などの症状に悩まされてる人が多いみたいだけど、
正規雇用している会社では、労災責任問われないように就業規則を徹底してるのかな
治癒不可の難聴・耳鳴を患わせてしまったら取り返しの付かない十字架になるが、一方で、頭のおかしい生産性ゼロの被雇用者に仮病でたかられたらたまったもんじゃないからな
しかし個人差もあるだろうから、難聴や耳鳴などの労災回避を保証する科学的根拠・基準なんて、設定しようがない >>632
サウンドは現在、主に外注で作っています。
必要な時にホームページでサウンドクリエイターを募集
↓
応募して下った方のサンプル曲を視聴
↓
弊社のカラーに合う曲を作れる方を採用
という感じです。
過去に作って下さったクリエイターさんにまたお願いすることもあります。 >>635
意外と専属で雇っているわけじゃない場合もあるんですね。参考になります。 素材がどうのこうの言ってた人です。
外注メインなんですね。
応募しようと思ってたのに。 作例は、プログラム初学者にシンプルでわかりやすいコードに書かれてありありがたいです。
ジャンプの実際の横アクションでは、左右移動しながらジャンプすると斜めジャンプになるのと、カーソルが左右に入ったまま着地した後そのまま移動できると思うので、実装の際はどうすればよいか等ワンポイントヒントがあれば尚良いと思いました。 なんかもう初心者の都合の良い回答マシンにさせられちゃってるな
肝の部分は提示されてるんだからワンポイントヒントのところは自分で試行錯誤できないもんかね 1が不満言っていない以上、他がとやかくいうでない。ほんといちいち難癖つけたがる奴はいるもんだな。 黙って仕事する人ほど突然辞めるし、不満を言う人ほど長く続く >>638
>>639
>>640
>>641
638さん
仰るようにプログラミング初心者向けに、できるだけシンプルなコードで書いていますので、
同時キー入力は省いていたのですが、今後のサンプルには必要そうなコメントを書いておくように致します。
639さん、640さん、641さん
639さんの仰るように、ご自身で調べられることがプログラミング力の向上につながりますが、
初心者の方は何を書けばよいか全く判らない方もおられると思いますので、できる限り回答します。
同時キー入力は需要があると思うので、サンプルを用意しました。
http://www.wwsft.com/sp/
このスレをご覧になっている方の中にはシューティングやアクションゲームを
作りたいと考える方が多いのではと思い、STGを想定したサンプルも用意しました。
プログラミングのご質問を下さる皆さん、よろしければご確認ください。 >>642
おまえもそれを散々いわれてきたんだろw 同時押しの考え方は非常に参考になりました。
シューティングの実例はプログラミングの習得のモチベーション上がりますし
ゲーム制作の取っ掛かりになりますね。
ありがとうございました。 モチベーションがあがる??
製作の取っ掛かりになる??? 3軸を持つ、つまり奥行きと左右以外に空中の概念がある
ベルトスクロールアクション(特に判定)はどのように作成したらよいでしょうか?
折を見て検索したり、書籍を探してはいるのですが、まずベルトスクロールの作例自体がほとんどなく、
稀に合っても2軸(プラスせいぜいが空中フラグをboolで持つ程度)ばかりです
中身は3Dそのもので見た目を2Dに見せるように作っていますが、
古くはくにおくんなども2Dで実現しているゲームもあり、効率が悪いのではないかと常に疑心暗鬼で身が入りません
最近はスマホゲームなどでも2Dベルトスクロールがありますが、どのように作っているのでしょう >>649
649さん
ベルトスクロールのサンプルを用意しました。
http://www.wwsft.com/sp/
3次元座標(X,Y,Z)をベルトスクロールする画面(2次元座標)に変換するところがポイントです。
※変換の計算は各ゲームの画面構成に応じ調整します、今回はやや上から見下ろした感じにしています
ジャンプ中のbool(trueかfalseか)だけでは(既にご理解頂いておりますように)接触判定がうまくいきません。
ジャンプ中の高さをZ軸で管理し、Zの値(及びX,Yの値)を使えば、空中での接触判定も問題なくできます。
(補足)
古いアクションゲームでは座標変換しないものもあるようですが、今回の方法であれば様々な画面構成に応用できます。 ■ このスレッドは過去ログ倉庫に格納されています