ゲーム開発会社がゲーム製作技術を伝授するスレ
■ このスレッドは過去ログ倉庫に格納されています
ワールドワイドソフトウェアという開発会社の者です。\n
社員がゲーム開発の質問に可能な限りお答えします。\n
http://www.wwsft.com/\n
長年RPGを中心に開発していますが、シミュレーション、アクション、スポーツ、ペット育成、麻雀など多くのジャンルの開発経験があります。 名無しなんで無視してくれえ
分類で知能が無いて言うが
昨今の深層学習や強化学習はそのベースに成っている施行の蓄積と回数が半端無いぞ。ai設計じゃ叶わんと思った。
仕事がaiに取って変わられる事は無いだろうが、プログラミング(ai部分)が自動生成に取って変わられそうや。
と危惧しとる。
だって、aiを類推するのってプログラマの楽しみだろ?そこには閃きとか、個性が入り込む。
結果類推の蓄積がベストプラクティス、そこに工数を割かないなんて、と思うとぞっとする。
やっぱ、ベストプラクティスを追わない自作界が良いなあと思った。
駄文失礼〜 大量のデータを集めると量産型○○にはなれるけどそれ以上にはならんよ
まあ無双ゲーにはうってつけだな >>752
だからなにって、説明しないと分からんのか
一般論として、意識、技術が低く作法も悪ければ他人に認めてもらえないし仕事の輪ややる気のある有志の輪からは排除される
それに引き換えこの板は全体的にやさしく経験が浅い奴でも排除されないから排他的でない
にも関わらず理由はよく分からんが神経質に「この板は排他的だ」と反発する低能がいて、そいつが幼稚で独善的で排他的に見えたんで率直に苦言を呈したまでだ なんかネット工作業者っぽい書き込みだな
名無しの書き込みを無視するなら均等に無視しろよ
一生独り言でも言ってればいいんじゃないか 気に入らんな。もっと言ってやろうか?
ちょっと難癖つけられると、論点ずらして「やっかんでる」と決め付けて排除しようとするのも相当ネット工作業者っぽい
無職宣言している奴の方がよほど対等に議論を戦わせようとする気概がある
なぜ独善的な基準で書き込みを無視できるのか?なぜ論点を見て見ぬ振りして草を生やしだせるのか?
結局、この板を「意識、技術が低く作法も悪い」とみなし、自分の輪から排除しているだけなのではないか?
これを排他的といわず何と言うのか? 単発ID業者、格好わる
反論できなくて無様だな
恥を知れ >>795
恥ぐらい知ってるよ、アレだろ。うん、バカにすんな。 大戦略などのHEXマップでの位置管理はどうやってやっているのでしょうか?
アバウトな質問ですが。
https://www.youtube.com/watch?v=0Eff1Kc3SzU 結局縦横の配列で管理しているんでしょうが、上下左右の位置関係が正方形とは異なりますよね。
2つのHEXの距離とか、方向とか、どうやって割り出すんでしょうか。 名無しで悪いが、6角チップマップを半分ずらすんだ。行ごとにね。 独り言を言うと、俺が組んだヘクスマップでは、こうしてる。
(0,0)(2,0)(4,0)
(1,1)(3,1)(5,1)
(0,2)(2,2)(4,2)
(1,3)(3,3)(5,3)
(x+y)%2 == 0になるのが、有効な座標。
右下に移動するときは、x++,y++
右上に移動するときは、x++,y--
真右に移動するときは、x+=2
ヘクス間の距離は、X差をdx、Y差をdyとして、Dist = max(0, dx-dy)/2 + dy
って感じに、判定いらずでできる。
描画座標としても、(ヘックスの半径をRとして)
PX = 2*R*X
PY = √3*R*Y
とできるので判定いらず。
配列上の位置は、
ArrayNo = 横に並んだ個数 * Y + (X / 2)
とすれば連続になる。(割り算の端数は切り捨て)
計算ミスがあったらごめんw >>798
>>802
798さん
大戦略と同じ方法かは判りませんが、弊社も過去にヘクスマップのプログラムを作ったことがあり、その時は二次元配列で管理しました。
その時のプログラムを元にサンプルを用意しました。
http://www.wwsft.com/sp/
急ぎで用意したため、とりあえずヘキサ型に並べたマス上をカーソルキーで移動するだけの処理です。
ゲームにするためには、マスはそれぞれ6方向に隣のマスがあり、その方向やマス間の距離などの情報(管理)が必要になります。
今週も忙しくすぐに用意できませんが、2〜3日のうちにもう少しヘクスのアルゴリズムを実装したバージョンも用意しようと思います。
802さん
情報ありがとうございます。ユニークな方法ですね、802さんの方法も個人的に試してみたくなりました。
時間ができたら、教えて頂いた方法でプログラムさせて頂きます(会社としてでなく個人的に楽しみながらやってみます) 6角形のタイルでなくても、4角形のタイルでも出来る
各行毎に、半マス分、ずらせばOK >>805
今更のこのマウントは恥ずかしいw
また、お前には聞いていない。 Yahoo! ゲームとか、Niftyゲームとか、So-netゲームとか、プロバイダがたくさんの無料Webゲームを公開してますけど、
あれって広告収入とかであれだけでで元がとれてるんですかね?
それとも、コンテンツを充実して会員誘導するための必要経費と割り切って開発してるんですかね >>798
>>803
ヘクスマップの新しいサンプルをアップしました。
http://www.wwsft.com/sp/
6方向の管理、距離の検索を実装しました。
距離の検索は、単にマス間の最短距離を知るだけでなく、
障害物があって回り込まないと到達できないマップなどに使えるアルゴリズムです。 >>807
807さん
そういったサイトで広告収入だけで成り立っているのは一部と思います。
仰る通り「コンテンツを充実して会員誘導するための経費」として運営するサイトが多いのではないでしょうか。 左右・上下でループできる(繋がる)かをマップ定義時に設定して
trueで且つループ移動可能なユニットなら
左右上下をループするものとして処理するって機能つけてクレメンス >>810
依頼じゃなくて、質問形式にすりゃやってくれたかもな
今更だがな >>808
独り言にお付き合いいただき恐縮です!
なお、PX = 2*R*X は、PX = R*X が正しい気がする模様。orz
798宛に補足しておくと、
>ArrayNo = 横に並んだ個数 * Y + (X / 2)
は一次元配列との対応です。(hexArray[ArrayNo]と対応)
二次元配列ならhexArray[x/2,y]になるので、そこはお好みで。 >>810
810さん
ご質問の内容が高度ですので、個人や同人のクリエイターさんではなく
同業者かも?と思いつつ(笑)回答致します。
現在の検索範囲
■
↓上下左右にループするマップの場合(□は■のコピー)
方法1)
■□
□□
あるいは
方法2)
□□□
□■□
□□□
という配列を作り検索してください。
1は検索範囲が狭くて済みますが、上方向と左方向の結果を調べるのに少し手間が必要です。
2は検索範囲が広くなりますが、隣のマップ(=ループした画面反対側)に行く方が近いか楽に調べられます。 マインクラフトのような大量のデータを扱う場合に適したデータの管理方法を教えてください >>816
816さん
大きなデータを扱う際の一般的な話を回答とさせて頂きます。
例)巨大なマップ
世界全体を一気に扱おうとするとメモリが足りないことが多々あるので、
プレイヤーキャラが移動する範囲+αくらいまでを読み込む
※どのタイミングで次の範囲を読み込むかは、ゲーム内容やプログラムの設計により変わってきます
例)巨大なデータはバイナリのまま扱う
バイナリデータを例えばint型配列に入れると4倍のメモリを消費します。
プログラミング言語や開発環境によって違いますが、バイナリの状態のまま扱えるのであれば、それが無難です。
※char型(C系言語)やbyte型(Javaなど)の配列に読み込み、それ以上メモリ消費しないのであれば、もちろん配列扱いでOK このすれ見てjsでゲーム作り始めたんだが
カードゲームの手札の処理が作れなくて辛い。。。
大富豪チュートリアルの作成をキボンヌ・・・ クラスでインスタンス化した変数を大量に管理したい時どうしたらいいんだ・・・?
デッキ→手札 って感じに情報を渡して、その情報でカードのクラスをインスタンス化するって手順を
してるんだけど、そのインスタンス化する変数ってどうやって指定すればいいんだ。
もう駄目だ。気持ち悪くなってきた。何考えてるのかわからなくなってくる >>818
逆にするんだw
全てのカードの配列を作って、そこに誰の手にあるか、デッキの山にあるかのフラグを置いとけw >>817
よし思った通りだ!
予言先スレ:ゲームのアルゴリズムを教えて管sai
https://mevius.5ch.net/test/read.cgi/gamedev/1053853069/187
って言おうと思ったのに、外れちゃったw
>>821
カードは最初に全部インスタンス化して使いまわすんですね、わかります。 >>818
>>819
>>821
818さん
弊社は大変忙しい状況でして、すぐにカードを扱うサンプルを用意することが難しいです。
とりあえずで申し訳ございませんが、プログラミングのヒントとなる情報を書きます。
818さんのプログラミングのご経験がどれくらいおありか判りませんが、
最近のプログラミングの本やネットの情報は、オブジェクト指向を推奨したり、
オブジェクト指向を教えていますが、プログラミング初心者がオブジェクト指向で
書くのは実は難しいことです。
「手続き型のプログラム」という意味はお分かりでしょうか?
個人レベルや趣味レベルのプログラムは、手続き型で書くほうが簡単に書ける場合が多いです。
トランプを扱うくらいの処理は、821さんの仰るように、単純な一次元配列
(あるいは二次元配列)で処理したほうがよいと思います。 >>823
822と816が自演、という意味なら、してないぞ? カードID を、1〜52 とする。
1〜13がスペード。14〜26がハート。以下同様に、ダイヤ、クラブ
まず山札配列に、1〜52をシャッフルしていれておく
各人に配るときに、山札から削除して、各人の配列に入れる >>827
ゲーム系専門学校に行ってた頃まんま同じややり方で作ってた。
拡張性とか別ルールのカードゲーム作るときの汎用性とか無視するならそれが初学者にも分かりやすいかもね。 >>827
それじゃあ、配列が山札+人数分の配列が必要にならない?
カードの配列に持ち人IDふったほうがいいんじゃない? >>830
オブジェクト指向がでる前は、
まさに「配列が山札+人数分の配列」
で作ってたんじゃね?(BASICとかCとかのころ?) そのほうがスマートなのは確かだよ。
ここでサンプルくれ言うてるくらいの人だから
AさんはAさんの配列を毎回表示するだけみたいな処理のほうが
分かりやすいのではと思ったのよ。
スマートなのはこの程度パパっと理解できるようになってからでいいのよ。 サンプルクレクレ行き遅れおじさんはやけに排他的だよね。
だからサンプルないと何もできないんだろうけど。 ソニック・ザ・ヘッジホッグ(MD)の環状ループの判定はどうやっているのでしょうか?
https://www.youtube.com/watch?v=bLc8eS3miaU
00:40あたり
00:45あたりの、カーブした道に沿ってに動くところも気になります。
まあここは操作できずに勝手に動くところですが。 たまには気になりますじゃなくて、自分ではこう思うのですがとか書いたら?
少しはかんがえよ 若い子らが悩むようなtipsをどんどん放出するのはすげーいいこと。
けどクレクレ考えないおじさんのオナネタにしかなってない。 >>842
気に入らなきゃ見なきゃいいだろ
必死にチェックしてんじゃねーよw 気に入らないのは質問してる奴の態度とお前みたいにごちゃごちゃ言うだけのやつ。
有益な質問と解答は参考になるし基本的な趣旨にも賛同できる。 態度に文句言っていいのは
1だろ いつからお前がルールになってんだよ
そういうお前はなんで自分の考えを出さないでROMってるの? 回答をもらって躓いていたゲーム作製が進みましたというレスが全く無い件 >>838
838さん
画面を止めて観察してみました。
この円は
・ここにこの形状(半径)の円があるというBGのデータ
・円の場所ではソニックの座標は円周上の値とする
という方法で実現していると思います。
その先のS字のトンネルも同様と思います。
なお通常の床(草地などのところ)は、以前、弊社がサンプルをアップした
http://wwsft.com/sp/slope/slope.html
角度違いの床を用意しているようです(弊社のサンプルよりもっと細かく傾斜を設定) >>851
ありがとうございます。
やはりまともに当たり判定することはないですよね。 プログラマー、シナリオライター、グラフィック、BGMを外注して
100万円ぐらいの売上出せるようなゲーム作成する場合ですが
合計コストはどれくらいで考えたらいいんでしょうか? >>855
855さん
ゲーム内容によって、それぞれの職種の作業割合が変わりますので、
一概には言えませんが、100万円の売り上げが目標ということで、
基本的にライトな内容のゲームを想定し、割り振りを考えました。
仮に全員フリーのクリエイターであり、低い賃金で請け負って下さるとして、
・プログラマー(作業2〜3ヶ月)36〜48万
・シナリオは10万で発注
・グラフィックはデザイン一式を24万で発注
・BGMは数曲+効果音一式を8万で発注
これで開発費の合計が78〜90万円になります。
100万円売れれば利益率は10%以上となり、
ゲームという商品であれば利益率10%超えれば良いほうと思います。
なおスマホのソシャゲは利益率1000%など、過去のゲーム業界からすると
ありえない数字を出すタイトルがありますが、そういったものとは比較せず、
何らかの商品を新規開発し、利益率が10〜20%出せれば良し、という
一般的な数値を元にした見積もりとなります。 >>857
自演の必要ないけど、まぁそう見えるなら病院いけ >>858
病院で点滴打ってきました
自演してますよね? >>859
点滴かぁそれは科が違うかな
ちゃんと症状言わないとあかんで、匿名掲示板の書き込みが自演に見えますって
精神科がいいと思うよ 「社員とか出版担当者とか社友とかと楽しく書き込んでるんだから自演じゃないもん!」 >>861
そこは気になった
その値段でまともに作れる人いるのかな 低い賃金で請け負ってくださるとしてって書いてあるじゃん >>861
861さん
ゲーム業界では、現在、フリーのクリエイターさんは多数おりまして
(判りやすく言い表すと、言い方が悪いかもしれませんが、余り気味です)、
デザイン、サウンド、シナリオはネットで探せばいくらでも受けてくれる方がおられます。
プログラマーはゲームが組める力量があれば引く手数多ですので、
この金額で受けてくれる方を探すのは少し難しいですが、ちゃんといます。
中には正社員でプログラマーをしながら、兼業(アルバイト)でプログラム開発を受注する方もいます。
ただそのような方達は複数の案件を受けている場合が多く、
(弊社の知る限りは)忙しすぎて納期が守られない傾向にあることが難点です。 >>1
\ U /
\ U /
/ ̄ ̄ ヽ,
/ ', / _/\/\/\/|_
\ ノ//, {0} /¨`ヽ {0} ,ミヽ / \ /
\ / く l ヽ._.ノ ', ゝ \ < バーカ >
/ /⌒ リ `ー'′ ' ⌒\ \ / \
(  ̄ ̄⌒ ⌒ ̄ _)  ̄|/\/\/\/ ̄
` ̄ ̄`ヽ /´ ̄
| |
−−− ‐ ノ |
/ ノ −−−−
/ ∠_
−− | f\ ノ  ̄`丶.
| | ヽ__ノー─-- 、_ ) − _
. | | / /
| | ,' /
/ / ノ | ,' \
/ / | / \
/_ノ / ,ノ 〈 \
( 〈 ヽ.__ \ \
ヽ._> \__) 余り気味とはいえ、やはり近場の人で実際会って実在するかは確認した方がいいですよね?
フリーで募集すると約束を守れて実力が本当にあるかがわからないのが困りますが、どうやって判定するのでしょうか? >>869
ご参考の情報としまして、弊社の場合は法人ですので、フリーの方にはきちんと
履歴書、職歴、サンプル作品を提出してもらい、採用の可否を決めています。
また採用前に、お互いの発注金額、受注金額の、ざっくりとした意思交換も行います。
基本的にメールでやりとりし、実際にお会いすることは少ないですが、
顔合わせすればなお安心ですね。
実力はポートフォリオ(提出作品)で判断できますが、
納期を守れるかどうかは、これは実際に発注してみないと判りません。
しっかり納期を守れる方もいれば、全く守れない方もいますし、
中には途中で音信不通になる(要は仕事を投げ出す)方もいました。
その場合、デザインやサウンドなら別の人材を探せば何とかなりますが、
プログラマーですと致命的で、開発は頓挫することになります。
そのような危険がありますので、弊社ではプログラムは外注しません。 当人がスルーできてるのに外野が構って足引っ張ってる >>870
開発中に仕様変更したくなったりイメージ変えたくなってやり直しなったり期間が延びたりしたらその分追加金は払って継続してもらったりするのでしょうか?そのせいで途中で抜けちゃったりしますか? >>875
軽微な仕様変更であれば取り決めた制作費でお願いしますが、
大幅な仕様変更は追加費用を支払う必要があります。
弊社で働いて下さった方の中には、仕様変更が嫌で途中で抜けてしまった方はいませんでしたが、
一般的に考えると、世の中には一定数いるのではないでしょうか。 >>876
ありがとうございます。
仕様変更でキレるのはPGだと思うので、
絵やBGM担当の人はよっぽどでないと大丈夫そうですね。 ネクロダンサーやgonnerなど、特定の条件下でbgmの音色が増える演出がありますが
どのように実装すると効果的なののでしょうか。
あらかじめボリューム0ですべての音色を再生し、必要に応じて音量を変更することはできますが
メモリ消費や音ずれの可能性が気になります サウンドドライバ用意してMIDIでコントロールすれば?
MIDIch毎の遅延も無いし。
コンポーザー的な考えだけど、波形の場合、
プログラム側で0db超えないような処理してくれないなら、素直に2mix流してほしい。
状況に応じてリアルタイムにミキシングして
効果音まで入るとなると、なんも考えずやったら音割れる。 ■ このスレッドは過去ログ倉庫に格納されています