ゲーム開発会社がゲーム製作技術を伝授するスレ

1ゲーム開発会社社員2018/03/07(水) 09:18:11.79ID:y1PQz++e
ワールドワイドソフトウェアという開発会社の者です。\n
社員がゲーム開発の質問に可能な限りお答えします。\n
http://www.wwsft.com/\n
長年RPGを中心に開発していますが、シミュレーション、アクション、スポーツ、ペット育成、麻雀など多くのジャンルの開発経験があります。

666名前は開発中のものです。2018/06/14(木) 00:03:15.01ID:KztFe5Mm
お前こそ誰ですか?

667名前は開発中のものです。2018/06/14(木) 01:07:40.90ID:cMj+w0K5
>>656
PS4のjsエンジン遅すぎワロタwwとバカにしてるそこの豚!
Switch内蔵ブラウザもNetfront製だからな!ザマァwwwww

668名前は開発中のものです。2018/06/14(木) 10:39:18.62ID:cq9CtQpe
>>662
ギザギザじゃねーか!(とりあえずツッコミ)

ソースを見たところ、y+=8やその他の8を1に変えればスムーズな波になりそう(重そうですが)

それより、一枚絵を千切りにしてずらして表示してるんですね。
つまり、ゲームに実装する場合は、画面キャプチャーして一枚絵を作ってから、この処理ですね。

669名前は開発中のものです。2018/06/14(木) 14:34:19.77ID:swYWehHc
>>668
え?
一枚絵表示するときに処理すればいいんじゃね?
なんでキャプチャがいるの?

670ゲーム開発会社社員2018/06/14(木) 17:29:41.51ID:IH2CmIrH
>>668
668さん
現行の全てのハード(ゲーム機、パソコン、スマートフォン)及び(多くの)開発環境で、
画面に描いたグラフィックを1枚絵のデータとして処理できます。
やり方はそれぞれの開発環境によって違うため、ここで簡単に解説はできませんが、
669さんの仰るとおりで処理できるわけです。

また表示をスムーズにするには仰るように1ドットずつ処理すればよく、
各環境でハードの処理速度が許す範囲で、細かく描画すればよいわけです。
JavaScriptは基本的に重いので、とりあえず8ドットにしています。

あくまでプログラミング初心者が理解しやすいソースコードにしておりますので、
みなさんが作られるゲーム内容や開発環境に合わせて改良してみてください。

671名前は開発中のものです。2018/06/14(木) 22:00:43.30ID:KHBSxyn3
俺も似たようなことよくやってたけど、旅の扉はHブランク割り込み使って各ライン毎にBGの座標レジスタを書き換えてるんだよね
んで、F-ZEROはさらにアフィン変換パラメーターも弄って奥行きを表現してる
DSまでは結構普通に使ってた技術なんだよね

672名前は開発中のものです。2018/06/14(木) 22:22:15.21ID:hmDi+ppO
>>670
なるほど、ありがとうございます!

自分の環境はDirect3Dで描画しているので、同じようなことをしようとすると
遅延シェーディング(は知識がない)またはテクスチャにレンダリングしてから
改めて画面にレンダリングする(こちらなら多分できる)ので、
テクスチャに落とす部分をキャプチャと表現していました。

最近のゲーム機は、もっと手軽に、画面に表示した画像相当のデータを
一枚絵として手に入れられるということなのですね。

673名前は開発中のものです。2018/06/15(金) 01:16:34.38ID:KhXjeQPa
itch.toとSteamで販売した場合の売上差ってどのくらいか誰か分かりませんか?

674名前は開発中のものです。2018/06/15(金) 01:49:43.43ID:shn4/S+N
300円ぐらい

675名前は開発中のものです。2018/06/15(金) 05:17:12.72ID:JTGrmWDc
>>1
とても勉強になる回答ばかりで読んでて楽しいです。
時折心貧しき人間が心無いレスしておりますが、
稀に見る珍しいほど有意義で建設的な意見が多いスレですので
初心者のためにも>>1さんによるスレ継続を希望します。
(たとえば広場で美味しい料理を子供達に配っていれば、
どこからかハエもたかってくるもんです)

で、質問です。
>>1さんのサイトのコンテンツはどれも非常に魅力的なんですが(特にRPG作るやつ、
個人的にはソースコードはJavaScriptよりもC#で記述してほしいと思っています。
近年猛威を振っているUnity開発上でもJavaScriptは廃止となった様ですし、、
CやC++の流れを組んだC#で書いてくれた方がこれからゲーム開発しようとする万人向けというか
喜ぶ人は多いと思うんですが、、今後も確実にUnity人口は増えると思いますし。
それでもJavaScriptにこだわり、推奨する理由とか>>1さんにはあるのでしょうか

676名前は開発中のものです。2018/06/15(金) 07:37:19.38ID:B8i0CbnY
横レスで申し訳ないが、
さすがに既に例があるのだから、ご自分で移植するのが勉強では?

677名前は開発中のものです。2018/06/15(金) 07:57:17.31ID:b22cBK6o
itch.ioはフリーゲーム(フリームみたいなもの)目当てだから
利益はあまり出ない。itch<<<<<DLSITE<<<<<Steamな感じ

6786572018/06/15(金) 10:29:04.57ID:2KlOObkG
>>662
ありがとうございます。
今回は最初から1枚絵ですが、
>>668
の言うように、描画したものを1枚絵として確保するのに、
環境によって知識が要りそうですね。

>>675
Webならその場で誰でも動作確認できてソースもわかりやすいからでは?
C#だとVisualStudioないと確認できないし。

679ゲーム開発会社社員2018/06/15(金) 10:54:05.50ID:t94Lhjqw
>>664
664さん
レイストームをYoutubeで検索し、たぶんこれのことではというビームの表現方法を作ってみました。
http://www.wwsft.com/sp/
↑ページの真ん中くらいにあります
弾の軌道は計算できており、描画面でお悩みとのことですが、
・3Dでしたら板ポリ(板ポリなら数百枚表示しても一般的に処理はさほど重くなりません)
・2Dでしたらpng画像、テクスチャからの切り出し表示、あるいは線を引くなどの描画命令
で十分綺麗なレーザーが描けると思います。

今回のサンプルはJavaScriptですので2Dで単純に線を引く命令で実現しています。

680ゲーム開発会社社員2018/06/15(金) 11:06:04.31ID:t94Lhjqw
>>675
675さん
ありがとうございます。今後ともよろしくお願い致します。

JavaScriptで公開している理由は、678さんの仰るようにまさに「誰もが確認でき」「ソースが判りやすい」ためです。
弊社HPのコンテンツはパソコンだけでなく、iPhoneでもAndroidでも(それらのOSを搭載したタブレットでも)
確認できるようになっておりまして、より多くの方にご覧頂ければと願っております。

それからJavaScriptに力を入れるもう一つの理由は、
Google、Apple、MicroSoftというコンピュータ産業のトップ3社は
ブラウザ開発(つまりJavaScriptを含めた技術)でもしのぎを削っており、
JavaScriptの普及には目を見張るものがあります。つまりJSは今後も将来性のある技術のためです。

681ゲーム開発会社社員2018/06/15(金) 11:11:52.06ID:t94Lhjqw
>>675
>>680
補足となります。
弊社HPでは今後C系言語の技術、Javaの技術、そしてPythonの技術も公開する計画があります。
弊社は小さな会社ですので、マンパワーの問題で、それらを順に行っていく予定でして、
今期はPythonの解説をスタートします。

682名前は開発中のものです。2018/06/15(金) 11:47:55.12ID:tMAmsgov
JavaScriptでいいと思います。
基本や考え方は変わらないし。

683名前は開発中のものです。2018/06/15(金) 13:15:25.94ID:mLGI54NV
>>677
ありがとうございます

684名前は開発中のものです。2018/06/15(金) 20:08:11.69ID:eMGJOg3h
JSじゃなくC#でかけやゴルァって・・何もわかってないわな

685名前は開発中のものです。2018/06/15(金) 20:45:47.76ID:jXvaLIiy
要するに丸パクリしたいからって事だよね

686名前は開発中のものです。2018/06/16(土) 00:35:49.76ID:gQ0809Rs
アルゴリズムとして理解しなきゃ駄目よ。

687名前は開発中のものです。2018/06/17(日) 17:24:26.92ID:6VPDBnHw
解説やるなら、動画でやってほしい
学習効率が段違いなんで

688名前は開発中のものです。2018/06/17(日) 19:51:20.85ID:vJy8QUlb
Pythonいいですね!期待してます!
R言語はやりませんか?(やりませんw)

689名前は開発中のものです。2018/06/18(月) 06:08:48.31ID:blAeir28
Pythonはマニアックすぎるでしょー
なかなか古い言語ですが当時解説も英語ばかりで
日本ではそれほど浸透せず、ハッキリ言うと廃れた言語です。
しかもゲーム制作ならpygameになりますし、
そのパイガメすら閑古鳥状態のはず。
そんな言語の解説に時間かけるの勿体無いですよ
喜ぶのは極少数の人だけです。

690名前は開発中のものです。2018/06/18(月) 08:22:22.49ID:Ig+3Xxt+
physonは機械学習で今人気言語なんだが

691名前は開発中のものです。2018/06/18(月) 09:30:12.80ID:Ig+3Xxt+
スペースハリアーの地面の市松模様のスクロールはどうやっているのでしょうか?
ハリアー(自機)が上に移動するとちゃんと地形も上からの見おろし角度に変わるんですよね。
ポリゴンでもないのに。
YouTubeでプレイ動画はいくらでもあります。

692名前は開発中のものです。2018/06/18(月) 09:38:05.08ID:4IIXIvC7
検索までさせるのは不親切じゃない?
あるならurl一個くらい書けばいいのに

6936912018/06/18(月) 09:40:29.90ID:Ig+3Xxt+
一応アーケード版の動画を貼っておきます

https://www.youtube.com/watch?v=Sk27MLpbLh8

694ゲーム開発会社社員2018/06/18(月) 09:49:33.83ID:3Qk50+VL
>>688
>>689
>>690
Pythonに関するコメントありがとうございます。
690さんの仰るようにPythonはここ何年か人気が高まり、学びたい方が増えている言語です。
基本的なソースコードの書き方は C系言語/Java/JavaScriptより簡単で、
プログラミング初心者の方が学びやすい言語であると言われています。

695ゲーム開発会社社員2018/06/18(月) 10:02:05.66ID:3Qk50+VL
>>691
691さん
アーケード版の動画を確認しまして、これは 662 のラスタースクロールと呼ばれる手法と思います。
当時のハードには3D描画機能はありませんでしたが、モニタの走査線と画面表示タイミングの技法で
擬似的に3Dっぽく見せることが行われていました。
ラスタースクロールはwikiに解説がありますので、よろしければご確認下さい。

スペハリのアーケード版=業務用ハードなので、基盤自体にこのような画面効果のできる機能が
標準装備されていた可能性もあります。
詳しい方がいらっしゃいましたら、コメント頂ければ幸いです。

696名前は開発中のものです。2018/06/18(月) 15:51:19.91ID:3N/Q1ef7
>>695
水平同期と垂直同期をハード的にいじったものです。
xy軸の縮尺を軸毎にハード的に弄ってます。
それによって目論んだのは、投影変換無しで良いから前に倒したプレーンが欲しかった事に起因してます。それとは別レイヤーのゲームを合成して目的を達成してます。
この機能が出来ないコンシューマ機は、地形のアニメーションや、カラーマップのアニメーションで対応してました。
アニメーションなので動的な変化の少ないチープな物でしたが、当時の努力は伺い知れません。
今やるなら3dプレーンを前に倒すのが一番簡単で、ラインスクロールに習ってライン毎に縮尺を変えるのは逆に大変かと思います。

697名前は開発中のものです。2018/06/18(月) 17:36:40.68ID:Ig+3Xxt+
ロックマン8がグラフィックの正統進化だったんだから単にその続きでいいんじゃないの?

698名前は開発中のものです。2018/06/18(月) 18:41:27.27ID:b3mmMZE9
>>697
意味が分かりません。
691さんも含め、どう言う技術?と言う問いへのアンサーかと思われます。
それに、ロックマン8は96年の作品です。
スペハリ、アフターバーナーやエンデューロレーサーと言ったゲームは86年ら辺のゲームです。
ご指摘のロックマンむしろは退化と言えるのではないでしょうか?
時系列を考えれば分かりますよ

699名前は開発中のものです。2018/06/18(月) 18:50:07.75ID:ZfiEblRH
名無しの書き込みなんかあてにするな

7006972018/06/18(月) 18:57:24.79ID:Ig+3Xxt+
すいません
>>697は誤爆です(汗

701ゲーム開発会社社員2018/06/18(月) 21:04:45.38ID:3Qk50+VL
>>696
696さん、情報ありがとうございます。
弊社技術者達は90年代以降の開発者でして80年代ハードの経験がございません。
参考になりました。
今後ともよろしくお願い致します。

7026912018/06/19(火) 00:11:52.14ID:gY969HIg
>>695
>>696
ありがとうございます。
ハードウェア機能の技術なんで現在の環境でやろうとすると疑似でやるかやっても処理が遅くなったりという感じなんですね。

703名前は開発中のものです。2018/06/19(火) 08:46:00.64ID:+lEucJxn
今ならシェーダーで同じこともそれ以上のことできるからね

704名前は開発中のものです。2018/06/19(火) 10:22:06.02ID:AL4LN4xg
>>702
ラスタースクロールや疑似3Dなんて、昔は3D描画のコストが高かったから仕方なくやったものであって、
いまなら息をするように3D描画できるから、わざわざラスタースクロールする必要がない。

なお、ラスタースクロール程度なら>>661,703も言ってる通り、シェーダーでほぼノーコストでできる。

705名前は開発中のものです。2018/06/19(火) 12:05:35.42ID:d4EAI8DV
やってきましたマウンターw
自分のスレ立ててやれってw

706名前は開発中のものです。2018/06/19(火) 12:18:03.23ID:gY969HIg
WebGLならシェーダ使えるけど
WWSさんはやらないんですかね?

707ゲーム開発会社社員2018/06/19(火) 20:33:46.12ID:2pXIlyQf
>>706
706さん
将来的にWebGLもやる予定になっておりますが、
今のところはスペックの低いスマホなどでも確認したり、遊ぶことができるように、
2D描画(及び処理速度)を優先しています。
会社の方針の一つで「より多くの方にご覧頂けるように」という意味です。

708名前は開発中のものです。2018/06/20(水) 11:55:31.79ID:HE/iu/dv
ファミコンのスーパーマリオ1-2など、ブロックが大量にある面でブロックは背景だと思うのですが、
そこをチビマリオで叩くと、1ブロック分だけボヨンボヨンと上下動するのはどうやっているのでしょうか?

709ゲーム開発会社社員2018/06/20(水) 15:45:41.60ID:/Ak4lXiD
>>708
708さん
弊社はファミコン開発の経験はございませんが、
ファミコンのあのような表現は、細かく動かしたい部分だけスプライトで表示しているはずです。

マリオが叩く前=BG

マリオが叩く=BGのブロックを消し、一旦、動くブロックをスプライトで表現

再びBGに戻す

7107082018/06/20(水) 20:21:46.24ID:HE/iu/dv
>>709
なるほど細かく切り替えればいいんですね。ありがとうございます。

711名前は開発中のものです。2018/06/21(木) 13:04:13.14ID:6YeEAzlQ
>>514読んで思ったんですけど、スマホ対応で画面の設計が16:9じゃないのって理由があるんでしょうか?
iPhoneはじめ、現行のほとんどのスマホは16:9だと思うのですが
5:3で設計する理由を教えてもらいたいです
よろしくお願いします

712名前は開発中のものです。2018/06/21(木) 15:36:46.84ID:Zb0MnZ9f
スマホって言っても最近はタブレットも多いからそれかな。

713名前は開発中のものです。2018/06/21(木) 16:12:40.38ID:bhPvKCDy
5:3ってことは15:9か、横が少し短いのね。
以前16:10のモニターは使ってたけど15:9なんてあるんだ。
下の▽○□の部分かな?(適当)

714ゲーム開発会社社員2018/06/21(木) 16:21:31.19ID:nnVY7uu8
>>711
>>712
711さん
514に書いた方法は、712さんの仰るようにタブレット等も含め、より多くの機種に対応させる方法です。
またスマホ全てが16:9ではございません。
例えば最新機種を調べてみましたが
Xperia最新機種はFull HD+(1080×2160)
Galaxy最新機種はQuad HD+(1440×2960)
となっていました。
iOS系も端末の番号ごと(iPhone*)によって違います。
ちなみにスマホ業界で最新機種は(全てではありませんが)2:1に近づく傾向があります。

法人の場合は最新機種や一部の機種だけでなく、Android、iOS、スマホ、タブレットと
より多くの端末(理想を言えば現行機種全て)に対応する必要がございます。

ただ個人開発者の方は、そこまでシビアに考える必要は無く、
16:9の設計でもよろしいかと思います。

715名前は開発中のものです。2018/06/21(木) 20:57:04.96ID:snEeyYiF
>>714
711です
ネットで拾えるスマホの画面アスペクト比の一覧表を眺めると
16:9が圧倒的多数派のように見えたので何故って思ったんですが
違うのも結構あるんですね
最新のは2:1に近づいてるなんて全く知りませんでした
なるべく多くの機種に対応したいと思うので
5:3を基本にして考えていこうと思います
ありがとうございます

716名前は開発中のものです。2018/06/22(金) 21:18:39.71ID:V9FC2679
サムネイル画像とか見ると最高解像度よりも細かいドットを表示しているように見える事あるんだけど、グラフィックソフトの補完性能とかのせいですか?
それとも俺の気のせいかな

新着レスの表示
レスを投稿する