2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

40歳のおっさんがゲームを作り始めてみる

1 :名前は開発中のものです。:2017/07/03(月) 15:49:19.91 ID:zP69ELgn.net
プログラミングの勉強もしたことがないのでとりあえず本を買ってみました。

137 :名前は開発中のものです。:2017/07/07(金) 08:40:59.04 ID:drSjzUsH.net
>>134
電子書籍にもあるから「こんにちはマイコン」の2巻辺りまで読んでみたら?
古いBASICだけど「ゲームの基本的な組み方」を理解するには解りやすいぞ
ブロック崩しも理解できなきゃ他なんてもっと無理だしな
ゲームセンター嵐の作者さんだから漫画で読めるのはでかい

138 :名前は開発中のものです。:2017/07/07(金) 08:52:50.52 ID:+tuCBHlD.net
二等兵よ
>イマイチ理解できていないこと
については夜補足する
鬼軍曹@出稼ぎ中ゆえ

超右脳派でワロタw
まあでもそんなテストを間に受けて可能性を決めつけてはいかん
ある時を境に少佐とかになっちゃうかもしれん、
そしたら我輩敬語か

とかいいつつ、脳チェックのサイトをはりつけよ
あとで軍曹もこっそりチェックしたいからである

139 :名前は開発中のものです。:2017/07/07(金) 08:57:13.14 ID:+tuCBHlD.net
軍曹、そこはgenericだろう、なっとらんな、とかいわれて
は、少佐殿、未熟でおはずかしいかぎりです!
ふ、坊やだからさ
とかなんとか言われちゃうパターン

いやあねえ

140 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/07(金) 10:27:32.78 ID:/fLa/ouP.net
>>136
スクリプトが異国の言葉にしか見えないので、例えで覚えたり、分かりやすく書かれた本で概要を理解するのはアリかもしれませんね。今読んでいる本も2割くらいしか頭に入ってませんし。試行錯誤を繰り返して覚えて行くしかないんでしょうね。

>>138
私はやっぱり完璧な右脳戦士でした。
賢者のように剣も魔法も扱えるキャラクターではないようです。ただ右脳戦士でも、ホイミくらいは唱えたい。イオナズンやベホマは優れた魔法使いにお願いしようと思います。
https://www.arealme.com/left-right-brain/ja/


これまではシェフを雇って、提供したい料理のコンセプトを伝えていただけのオーナーが、初めて厨房に立ち、包丁の使い方や火の加減を覚えている。いまの状況はそんな感じですね。
料理のやり方を覚えれば野菜炒めくらいは作れるんでしょうけど、やっぱりコース料理はシェフにお任せした方がいい。
ただ、どうやって料理が作られるかを知っているかいないかでシェフのおまかせディナーも以前より美味しくなるんじゃないかと思うんです。
いつか自分の手でフルコースは作ってみたいですけどね。

141 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/07(金) 10:29:06.67 ID:/fLa/ouP.net
よーし、今日中にチャプター2(スクリプトの基礎)を終わらせるぞー!!

142 :名前は開発中のものです。:2017/07/07(金) 12:24:38.74 ID:/FS3GvPX.net
二等兵と我輩が組めばだいたい解決か

http://www.dotup.org/uploda/www.dotup.org1300156.png

143 :名前は開発中のものです。:2017/07/07(金) 13:00:21.94 ID:7hnS02WC.net
>>133
関数が便利か
たとえば右下に斜めに2回移動する関数を作る時

void MigiShita2Idou()
{
右に1m移動
下に1m移動
右に1m移動
下に1m移動
}
こんな風に書くより


void MigiShita()
{
右に1m移動
下に1m移動
}

void MigiShita2Idou()
{
MigiShita();
MigiShita();
}

こう書いて繰り返す所を関数にまとめる

144 :名前は開発中のものです。:2017/07/07(金) 17:24:22.24 ID:rIz3lS19.net
ゲーム制作依頼ってグラさえ描ければ20万とかで出来るもんなんですな。その5倍くらい出さないと受けてもらえないもんかと思ってた。

ゲ製作技術板で初めて身のあるお話を見て勉強させてもらったわw

145 :名前は開発中のものです。:2017/07/07(金) 18:28:04.50 ID:drSjzUsH.net
>>144
ちなみに外注の作曲で1曲5000〜1万でやってくれる人も結構いる
20〜40曲としても10万〜40万にグラ依頼はした時ないから不明だが
外注丸投げでも50万〜100万位で出来るかもしれないな

146 :名前は開発中のものです。:2017/07/07(金) 18:30:12.40 ID:drSjzUsH.net
>>145
すまん50〜100万ってゲーム完成までね
こう考えると安いなw

147 ::2017/07/07(金) 19:47:33.87 ID:1245UMTa.net
「29歳既婚、2年前に会社を辞めた。ボードゲーム作りを始めて3700万円を
売り上げたけど何か聞きたいことはある?」回答いろいろ
http://labaq.com/archives/51880196.html
日本ボードゲーム界の異端児に聞く!ボードゲームデザイナーとして生きていくには?
https://bodoge.hoobby.net/columns/00013
カードゲームを自作する1 【自宅でカード印刷】
http://tanishi.org/?p=801
100円ショップでボードゲームを自作しよう
https://sites.google.com/site/jun1sboardgames/blog/makeyourbg
ノーアイデアでボードゲームを作ろう第1回「100円ショップで物を買う」
http://boardgamelove.com/archives/boardgame-make-1/
ボードゲーム市場がクラウドファンディングの出現で急成長を遂げ市場規模を拡大中
http://gigazine.net/news/20150820-board-game-crowdfunding/
自作ゲーム即売会「ゲームマーケット」に1万人超
http://www.nikkansports.com/general/nikkan/news/1750500.html
ボードゲームの展示イベント「ゲームマーケット」の成長記録からこれからの
市場に必要なことを妄想してみた。6年間の来場者数推移(2016年4月時点調べ)
https://bodoge.hoobby.net/columns/00001

148 :名前は開発中のものです。:2017/07/07(金) 21:43:27.42 ID:8iPdOgjn.net
こういうのはクラウドファンディングすれば余裕で黒字にできそうだな
顔晒す覚悟が必要だけど

149 :名前は開発中のものです。:2017/07/07(金) 21:51:55.64 ID:2+uFnib2.net
顔晒す必要はないんでないか
undertailの作者も募集時は顔晒して無かった気がする

150 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/07(金) 23:40:09.81 ID:zgCnLTCM.net
飲み会でいま帰ってきました。勉強のためにノンアルコールで乗り切ったぞー!
眠いけど頑張ろう!

151 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/08(土) 01:00:06.78 ID:nEclqUCY.net
>>147
パトラッシュ、、僕も疲れたんだ。なんだかとても眠いんだ、、

明日早起きしてやろう(_ _).。o○

152 :名前は開発中のものです。:2017/07/08(土) 01:34:58.25 ID:EA6ZMhlL.net
>>134
> プログラマーさんが組むものが文字通りプログラムで、その作業の一つがコーディングってことでしょうか?
ん〜、ていうかプログラミングとコーディングは全く別の作業なので分業が可能だということ
上流下流なんて言い方もするね(日本でプログラマー(IT土方)と呼ばれてる人たちは、実はただのコーダーだったりすることも多いんじゃないかな?)
勿論、ソロプラグラマーだと一人でプログラミングとコーディングを同時にやるんだけどね
特に外注するつもりなら、フローチャートなどで自分でプログラム組んで、コーディングだけ外注すれば凄く安く済むかもしれない

>以前少し遊んだClick&playで組んだ「AがBに当たったら爆発するが、Cを取れば爆発しない」みたいな作業でしょうか?
そう、それがプログラムの本質であり、プログラムというのは制御構造(処理の流れ)を書くこと
当然、自然言語=日本語で表現でき、誰にでも今すぐ書き始めることが出来る
Playmakerを使うにしてもそういう論理的思考が出来ないと意外と難しいかなと思ったので…
でも、少なくとも企画書書いて実際にゲームを完成まで漕ぎ着けたって事は、その時点で少なからずプログラムは書いているのかもしれないね
例えばRPGの戦闘ロジックなんてのはゲームデザイナーが考えるものだろうし

もし「AがBに当たったら爆発するが、Cを取れば爆発しない」というプログラムをコーディング(これは仮想言語)するとしたら
class Object;
class ObjectA;
class ObjectB : Object;
bool takenC = false;

void ObjectA.OnCollide(Object sender) { // 衝突時に呼ばれるイベントハンドラ
  if (sender is typeof(ObjectB)) { // 衝突したオブジェクトがObjectBか判定
    if (!takenC)
      Self.explode(); // Cを取っていなければ自身を爆発
  }
}
てな感じでなんだかごちゃごちゃして一見してよく分からないけど、Playmakerみたいのを使えばプログラムの本質を見失わずに済むので
コーディングがめんどくさいって人は勿論、コーディングに慣れていない人もどんどん使ってみたら良いんじゃないかな?
でも万能ってわけでもないみたいだし、どこまで出来るのかは分からないけど…

153 :名前は開発中のものです。:2017/07/08(土) 04:07:45.84 ID:bgJA8eCi.net
>>133
我輩もくたびれて寝てしまったので深夜に補足である
>・で、関数使えば本当に便利なの?かえってややこしい気がするんだけど、、

例えば二等兵のゲーム開発人生スクリプトを作るとして
スクリプトのメインの処理にだらだら書いてしまうと

アイディアを練る//ゲーム開発その1
お昼寝する
打ち合わせる・・・(以下、開発処理が数百行続く)
買い物に行く(開発と関係ない処理)
アイディアを練る//ゲーム開発その2(その1と同じく数百行続く、1をコピペした)
お昼寝する・・・(以下略、ここまでで1000行近くあるとしたら流れを追うことすら困難)

というふうに開発を何度も行なって行くとスクリプトが長く見通しが悪くなっていく
一方、ゲーム開発部分を関数化すると(関数の本体はメインの処理から切り出して下の方に一箇所にまとめておく)、

すごろくRPG = 開発(二等兵, 外注プログラマその1, こども時代のアイディア1);
買い物に行く
すごろくRPG2 = 開発(二等兵, 外注プログラマその2, こども時代のアイディア2);

とメインの処理が数行にまとまり、とても見通しがよくなる
二等兵がどんな人生を歩んだかすぐに概要がわかる

また、この開発処理には「お昼寝する」という開発期間が長くなるバグ(無駄な処理)があり、
関数化してあれば一箇所直せばよいが、だらだらコピペして書いていれば全部直す必要がある
これは編集漏れなど、さらに不具合の原因になる

というわけでまとまった処理は関数化しておくと編集上も楽になり
スクリプトの見通しがよくなるのでした
本のサンプルプログラムのような極端に小さなプログラムだと関数化メリットは感じにくいが
ゲーム開発はスクリプトが長大、開発期間も長くなるのでこういう意識がないと収拾がつかなくなる

154 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/08(土) 11:56:46.18 ID:nEclqUCY.net
やっと関数を終えて、これからクラスについて勉強だー。

>>152
アドバイスありがとうございます。
フローチャートならそれに似た感じのものを企画書には書いていました。戦闘ロジックも簡単ではありますが、敵ごとに攻撃パターンを設定したり、エクセルで一覧表を作ったりして。処理の流れを書くのであれば日本語でOKなので理解できそうです
playmakerも勉強が終わったらチャレンジしてみます。

>>153
スクリプトが長くなって、たくさん処理が発生するとごちゃごちゃになるので、処理ごとにまとめておいて後から見てわかりやすくするために関数を使うって感じでしょうか?

あぁ、だからホニャララ関数みたいに自分でわかりやすい名前をつけられるんですね。

155 :名前は開発中のものです。:2017/07/08(土) 12:09:46.01 ID:bgJA8eCi.net
>>154
関数についてはそんな理解でOK
特に同じ処理が何度も出てくるときは関数化するべし

( '谷'#) < 関数ノ 名前ハ 実ハ トテモ大事 !! トンチンカン ナ 名前 ツケタラ 後デ パニック !!

156 :名前は開発中のものです。:2017/07/09(日) 05:10:19.85 ID:43y/JpC7.net
おやじさん 行動力すごい
尊敬します。がんばれ

157 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/09(日) 06:47:21.45 ID:Tacuv2Gx.net
めっきり夜に弱くなったおやじ。朝の方が頭も冴えるし、これから勉強は朝やろうかな。
がんばるぞい。

158 :名前は開発中のものです。:2017/07/09(日) 12:16:41.06 ID:Rtt8EP98.net
そういや初期に作ったゲームって
ブロック崩しですらない壁打ちテニス(正式名知らない)と洞窟ゲームだったけど
今の時代も同じなのだろうか?(´・ω・`)

159 :名前は開発中のものです。:2017/07/09(日) 12:49:07.49 ID:lIvKZmop.net
今はモバイル対応が容易なんでわいなんかは
アングリーバーズもどきとモンストもどき作ったな

160 :名前は開発中のものです。:2017/07/09(日) 17:41:32.16 ID:0sJJcRmF.net
ジープ盗まれてバギー壊さなきゃ良かったって後悔するやつやってやって

161 :名前は開発中のものです。:2017/07/09(日) 17:44:42.75 ID:gqF+VWe/.net
どこのPUBG

162 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/09(日) 20:32:46.25 ID:Tacuv2Gx.net
やったー!チャプター2(スクリプトの基礎)を終えたぞー!
でも何度もつまづきながら坂を登り終えたんで、振り返ると靴やら服やらが脱げて、血だらけ全裸状態。
一回後に戻って服を取ってきた方がいいのかな。それともこのまま先へ進んだ方がいいのだろうか。

163 :名前は開発中のものです。:2017/07/09(日) 22:19:09.90 ID:WBlwmqNX.net
>>162
例えが突飛すぎてよく分からんw
よく分からないまま進んだら知恵熱が出て疲労困憊だけど、このまま読み進めるか一旦休憩するかということ?
それとも、分からないまま強引に読み進めては見たものの、もう一度復習して理解を深めてから進んだほうが良いかってこと?
 
後者だとするなら、どうせすぐは分からないので先に進んで一通り目を通してからで良いと思うよ
復習は応用編まで来てからでいい(本の構成は知らないけどw)

164 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/09(日) 22:55:34.70 ID:Tacuv2Gx.net
>>163
すみません、意味不明でしたね(>_<)
そうです。後者の方で、とりあえず読み進めてみたけれど、実際のところ関数とかクラスとかピンと来ないままここまできてしまったと言った状況です。

次のチャプターがオブジェクトの配置と動かし方についてなので、一旦戻って理解を深めた方がいいのかなと思いつつ、とりあえず先に進んで全体像をつかんだ方が良いのかとも思いまして。

おっしゃる通り読み返しても直ぐに理解できる自信がないので先に進みます!

165 :名前は開発中のものです。:2017/07/10(月) 00:12:42.59 ID:zEGIJZ22.net
必要になったらとりにいけばいいかと

166 :名無しさん@そうだ選挙に行こう! Go to vote!:2017/07/10(月) 07:27:35.66 ID:apM4pjnx.net
うむ、先に進んだ方が良い
実際にどう使うのか見た方が理解が早い

そして・・・

( '谷'#) < 一等兵に昇格を命ずる

167 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/10(月) 12:05:36.76 ID:zCAOOJ7L.net
>>165
>>166
了解です。先へ進みます!

まだまだ私は二等兵で大丈夫です( ̄^ ̄)ゞ
未だにUnityを動かしておりませんし。

この本を読破しましたら改めて昇進させていただきます(`_´)ゞ

168 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/10(月) 13:18:37.01 ID:QEr9T2OM.net
ところでオブジェクト指向って何ですか?
人によっては概念みたいなものだって言うし。
理解していないとゲームを作るのに支障になりますか?

169 :名前は開発中のものです。:2017/07/10(月) 15:28:07.87 ID:2kcNxvNo.net
オブジェクト指向を全部を急に説明はできない

たとえばオブジェクト指向前のプログラムでは

プレイヤーと敵の位置の変数は
PlayerX PlayerY PlayerZ
EnemyX EnemyY EnemyZ
に定義してた

オブジェクト指向後のプログラムでは
Playerクラスの中でX Y Z
Enemyクラスの中でX Y Z
を定義する

Player.X Player.Y Player.Z
Enemy.X Enemy.Y Enemy.Z
上のを書くとこんな感じ

注目する所はX Y Zの名を使い回せる所
オブジェクト指向前のプログラミングではPlayerX様な長い変数名がどんどん増えてしまう
オブジェクト指向後ではそれを避ける事ができる

(分かりやすいように若干省略があって正確に書くとクラスは設計図なのでインスタンスを作らないといけない
クラスは関数も含めて内包できるが構造体もクラスの内と考える)

170 :名前は開発中のものです。:2017/07/10(月) 17:07:13.50 ID:qGUfQ3/o.net
なるほどっ!
まったくわからんw

171 :名前は開発中のものです。:2017/07/10(月) 18:21:52.91 ID:j3FIDyF6.net
>>170
オブジェクト指向は複雑化さける為なのにどうしても説明が複雑になるよ
10キャラいたとして変更するとき全員書き直すのメンドイ(´・ω・`)
基本処理作って全員に適応すれば1回ですむんじゃね(゜∀゜)!!
DQで言うなら処理を使わないのが「命令させろ」
使うのが「ガンガンいこうぜ、バッチリがんばれ」みたいに最初に指定して
後は自動化させようって感じ?
オブジェクト指向は必須って位便利機能だが人によって説明が変わる魔性のお方やでぇ…

172 :名前は開発中のものです。:2017/07/10(月) 18:45:28.81 ID:N3Flm6oy.net
なるほどっ!
まったくわからんw

173 :名前は開発中のものです。:2017/07/10(月) 18:56:24.83 ID:2kcNxvNo.net
Player.Xを日本語に直すと「.」が「の」になってPlayerのX
Enemy.XはEnemyのX
実際Unityを使ってると何となく分かってくると思う

174 :名前は開発中のものです。:2017/07/10(月) 19:46:55.33 ID:2H8Km2nm.net
おっさんの趣味としてはゲーム制作はいいね

175 :名前は開発中のものです。:2017/07/10(月) 19:53:53.26 ID:y+SruFDq.net
別にプログラミングなんかどうでもいいよ
俺とかスイッチ文の書き方すら忘れるし
それでも普通にリリース出来て広告を押さすことはできるぞ?w
オブジェクト指向とかあふぉかとw

176 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/10(月) 20:25:03.36 ID:4PAJOD8o.net
オブジェクト指向のご教授ありがとうございます。

えーと、つまり、、、慣れていくといつの間にか使えるようになると言うか、体で覚えていく感じなんでしょうか。

とりあえず、今の私には理解は難しそうです。どうやらまだ触れてはいけない世界のようですね( ̄▽ ̄;)

177 :名前は開発中のものです。:2017/07/10(月) 20:34:11.80 ID:cP1QuB/k.net
最初は、自分が作った機能やプログラムを「オブジェクト」として再利用(使いまわし)しやすくするための
設計手法と頭の隅に入れとくだけでいいんじゃないかな

178 :名前は開発中のものです。:2017/07/10(月) 21:16:17.40 ID:wherj46W.net
リニア並みの速度でやる気失せててワロタ。

179 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/10(月) 21:53:06.76 ID:kcI490c1.net
>>177
変数やら関数をひとまとめにして管理するためにクラスがあって、それらを一元管理するのに用いる考え方がオブジェクト指向、みたいな感じでしょうか?
今はそんなものがあるんだよーくらいの感覚で覚えておきます。

>>178
いえいえ、オブジェクト指向についての追求を止めるだけで、unityの勉強はやめませんよ。
スクリプトの基礎をとりあえず終えて、ようやくオブジェクト配置の勉強に入ったので楽しいです。

180 :名前は開発中のものです。:2017/07/10(月) 22:25:34.57 ID:cyzWpUFk.net
オブジェクト指向というのは、意味概念をプログラムとして直接記述できるようにしたプログラミングパラダイムの事
あらゆる抽象概念を”モノ”として定義し、人間の自然な思考に沿うようにプログラムに意味を持たせることが出来るようにすることで、
より簡潔かつ明瞭なプログラムが書けるようになり、初心者の習得も容易になった

例えばゲームなら、キャラクターを表示して移動するというプログラムを書くとする

古典的プログラム
int char_pic = LoadImage("char_pic.png"); // キャラの画像を読み込み
int x, y; // キャラの座標を保持する変数
x = y = 0; // 0に初期化
for (int i = 0; i < 10; i++) {
  DrawImage(char_pic, x, y); // (x, y)座標にキャラの画像を描画
  x += 1; // x座標を1増加
}
これのプログラムの意味としては、座標の位置に画像を表示するという意味しか読み取れない


これをオブジェクト指向で書くと
Character char = Character("char_pic.png"); // キャラを作成
for (int i = 0; i < 10; i++) {
  char.draw(); // キャラを描画
  char.move(1, 0); // キャラを移動(x方向に +1)
}
と言った感じで頭で考えたとおりの意味のあるプログラムが書ける

続く

181 :名前は開発中のものです。:2017/07/10(月) 22:27:14.08 ID:cyzWpUFk.net
続き
やってることは同じでも、プログラム(コード)を見た時に、コメント無しでもパッと見で意味が分かるのがオブジェクト指向のメリット
因みにオブジェクトの中に「古典的プログラム」を内包しているので、小さなプログラムでは冗長になり無駄に見えたり、
意味を感じられないという事はある
関数でも同じことが言えるけど、それは粒度の問題で、どこまで細かくするかは個人の好みと経験の問題
以下は、クラスCharacterの中身

class Character {
private
  int char_pic; // キャラの画像のハンドルを保持する変数
  int x, y; // キャラの座標を保持する変数
public
  Character(string pathofImage) : x(0), y(0) { char_pic = LoadImage(pathofImage); } // 初期化
  void draw() { DrawImage(char_pic, x, y); } // 描画
  void move(int _x, int _y) { x += _x; y += _y; } // 移動
}

あと関数というのは「処理のかたまり」であり、クラスというのは「処理のかたまりを意味別に分類し状態を持たせた物」って感じかな
どちらにしてもUnityはオブジェクト指向で作られているので、使っていれば知らず知らずにオブジェクト指向の恩恵を受けていることになる
Playmakerなんてのは、まさにオブジェクト指向の概念を可視化したようなものなので、あれを使うとより理解が深まるかもしれない
Unityだと、たとえばメニューから「オブジェクトの追加→キューブ」なんてやって画面にキューブが表示され、それを右に10動かそうと思ったら
スクリプトで「cube1.translate(10, 0, 0);」なんて書けば動くかもしれない
うん、Unityの使い方はだいぶ前にちょろっと触っただけなのであまり知らないんだ、ごめんw

最後に、オブジェクトというのは文字通り”モノ”であり、Unityの画面上に目に見えるものもあれば見えないものもある
キャラクターオブジェクトとか、ライトオブジェクトとか、カメラオブジェクトとか、ほぼ全てがオブジェクト
そしてクラスというのは、その”モノ”がどんな物なのかを定義したもの

182 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/10(月) 22:55:31.63 ID:4PAJOD8o.net
>>180
丁寧な解説、ありがとうございます!!知識不足のため正直なところ半分も理解できていないのですが、クラスや関数についても全体像がつかめてスッキリしました。
プログラムのすべての事象をオブジェクトとして扱うことで、人間の思考でも理解しやすくしてあげるってイメージでしょうか。もう少し勉強が進んだら、またここを見直してみます(`_´)ゞ

法律や政治経済について、普段は意識していなくても、実はその恩恵を受けているのと一緒で、オブジェクト指向もプログラムの基盤になっていて、いつの間にかその恩恵を受けているって感じですね。

183 :名前は開発中のものです。:2017/07/11(火) 01:54:26.00 ID:6Ulms+Wd.net
>>182
うんそうだね、オブジェクト指向はGUIやこういったビジュアルなツールと親和性が高いので、より直感的に扱いやすいという性質がある
更に先の話になるけど、クラスの継承や抽象クラス、インターフェースといったものを使って驚くほど強力な機能が使えるようになる
そういったことが分かってくると、もう楽しくてゲーム制作そっちのけでプログラミングにハマりだすから気を付けたほうが良いw

184 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/11(火) 01:56:54.79 ID:orPgr5SU.net
チャプター3でやっとUnityが操作できるようになったので楽しくてこんな時間になってしまった。もう寝よう。

何とか今週中に読破したかったけど、まだ1/4くらいだから厳しそうであります(~_~;)

185 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/11(火) 01:59:12.87 ID:orPgr5SU.net
>>183
プログラミングにはまる、、、今の自分からは想像もできませんが、いつかそんな風に慣れるといいなぁ。

186 :名前は開発中のものです。:2017/07/11(火) 03:43:28.20 ID:bQvnL7hS.net
全部いっぺんに覚えようとすると大変だし挫折する可能性も出てくるから
どこまでってのが難しいけど、ほどほどにね
便利そうなのはたくさんあるだろうけど、後から慣れた後でもいくらでも追加で覚えられるし

187 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/11(火) 08:30:04.18 ID:orPgr5SU.net
>>186
ありがとうございます(`_´)ゞ
とりあえず全ての理解は現時点では難しいので、こういうのがあるんだよ、程度で頭に入れておきます。この先ぶつかったところでまた見返せばいいですしね。

188 :名前は開発中のものです。:2017/07/11(火) 22:14:31.34 ID:6Ulms+Wd.net
ところで、一通り入門書を読み終えたらどうするの?

なにか小さな企画を考えて、このスレで一本ゲーム完成するまで頑張ってみるつもり?
個人的には、(一応プロ?の)企画屋さんの書く企画書がどんなもんなのか見てみたかったり

189 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/11(火) 22:47:04.40 ID:orPgr5SU.net
>>188
まずはすでにリリースしているアプリを、自分の手でアップデートしたいと思います。あとローカライズもやりたいです。パズルRPGの方は未だに中華圏でもDLされているので、まだ伸びる可能性はあるのかなと。

あと作りたいゲームの企画がすでに3本ほどあるので、半年で一本のペースでリリース出来たらと。

やっぱり個人製作のインディーズゲームもマメにアップデートしてあげないといけませんね。
マップや敵を増やすなどのちょっとした機能追加でも料金が発生していたので、それもあってだんだんとアップデートしなくなっていたんですよね。

190 :名前は開発中のものです。:2017/07/11(火) 23:04:55.51 ID:6Ulms+Wd.net
>>189
なるほど
一応質問の趣旨としては、このスレの方向性についてなんだけど
開発自体はクローズドでやって、わからないことがあったらここで質問するような感じなのか
ゲームが完成orアップデートしたらここで発表するのか
特に公表もしないのかなど

個人的には、なんにしても新しいツールや言語を覚えたら、「習作」として小さなゲームを作ってみるのがいいかなと思ったので
そういうステップアップの第一歩として小さなゲームを作ってみるつもりがあるか聞いたつもり

191 :名前は開発中のものです。:2017/07/11(火) 23:06:27.27 ID:6Ulms+Wd.net
追記
「クローズドではなくある程度オープンにしながら開発するのか」も追加で

192 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/11(火) 23:15:29.50 ID:orPgr5SU.net
>>190
ああっ、すみません、ちょっと意味を履き違えていましたね。
こうしてスレ立ててみなさんにアドバイスまでいただいているんで、卒業製作としてゼロからゲームを作っていく過程をここで発表出来たら最高ですね。
(というか、軍曹の方々のアドバイスを頂かないと、きっと頓挫してしまうでしょうから)

193 :名前は開発中のものです。:2017/07/11(火) 23:26:17.33 ID:6Ulms+Wd.net
卒業制作いいねw
まあやるならガチ企画じゃなくて軽いネタ企画的なので、オープンでやるのがスレ的にも盛り上がるかな
絵も書けるみたいだしその辺も期待

俺もプログラムならアドバイス出来るのでなんでも聞いてね

194 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/11(火) 23:26:37.69 ID:orPgr5SU.net
やり方としては、こつこつと製作を進めながら開発状況を定期的に発表して、やり方がわからないところはスクリプトを公開して軍曹のみなさんにご指摘をいただく。
そして完成したらここで発表させていただければと思っています。

195 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/11(火) 23:34:05.56 ID:orPgr5SU.net
>>193
ありがとうございます。
そうですね、卒業作品はネタ的なものが良さそうですね。

これからもご指導ご鞭撻をよろしくお願いします(`_´)ゞ

196 :名前は開発中のものです。:2017/07/11(火) 23:40:47.78 ID:6Ulms+Wd.net
了解〜
ガチ企画の方もここで発表してくれるのね、それは期待

ていうかアドバイザーはみんな軍曹だったのか!
新兵一人に数人の軍曹・・・w

197 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/12(水) 00:23:21.32 ID:qffywNlk.net
>>196
はい。40歳のおっさんなりの爪痕を残したいと思います。

新兵の私からすると、アドバイスをくれる方々はみなさん軍曹であります(`_´)ゞ

198 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/12(水) 05:47:41.23 ID:qffywNlk.net
やっぱり早朝はサクサク勉強が進む。
歳をとったせいか、夜型から朝型になったみたい。

199 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/12(水) 21:14:39.03 ID:qffywNlk.net
チャプター3(オブジェクトの配置)が終わったー!
現時点で1/3まで読破した感じです。この勢いでチャプター4(UIと監督オブジェクト)を今日と明日で終わらせたいです。
スクリプトの勉強は苦痛でしたが、実際にUnityを扱ってオブジェクトを動かすのは楽しい♪( ´▽`)

200 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/13(木) 19:47:14.81 ID:+YE6MdBS.net
Unity5の教科書もチャプター4まで終わり、だいぶUnityの使い方もわかってきました。
Playmakerは勉強が終わってから買うつもりでしたが、ゲームの構成を知るのに役に立ちそうなので買おうかと。
ただ65ドルもするんですねー。

201 :名前は開発中のものです。:2017/07/14(金) 01:08:55.00 ID:ZQ7utCWP.net
二等兵殿に触発され

202 :名前は開発中のものです。:2017/07/14(金) 01:09:41.15 ID:ZQ7utCWP.net
送信しちゃった
何か作ろうと思ったおっさんです
ありがとう
頑張ってください

203 :名前は開発中のものです。:2017/07/14(金) 01:24:48.36 ID:bcY6j4jf.net
端から見ててペースが速いから大丈夫か?と思っていたが、
結構続いているね、素晴らしい

さすが作品を完成させた人は違う、ということかな
あと、オッサンになると粘りも出てくるしなー

2Dのゲームだったら6章までで終わりだからもう少しだが、
3Dのゲームを作るんかな?

効果音は3Dのゲームの章にあったと思うので、2Dのゲームの場合は
部分的に飛ばし読み、みたいな感じになると思うけど

一冊キッチリやりたいならキッチリやってもいいと思うが、
プログラムをやったことが無い人はスクリプトが難しいと思うので、
薄いC#の本を一冊仕上げても良いのかも知れんね

もっとも、人によって教え方が違うので、古参の教官の人が
その辺は仕切るんだろうけど

204 :名前は開発中のものです。:2017/07/14(金) 02:17:20.57 ID:j5GVD3zX.net
やりたい事ができる命令文までたどり着くまでがなかなか大変
マウスでクリックした場所に移動するというゲームでは当たり前のことでも
苦戦するね

205 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/14(金) 03:04:41.58 ID:ABg5nclb.net
本とPCを開いたまま寝落ちしてました。ベッドで横になりながら、、なんて横着かますとダメですね。

>>202
お互いおっさん同士頑張りましょう。昭和生まれの底力を見せる時です!

>>203
ありがとうございます。生来三日坊主の私がここまで続いているのは、このスレで進捗状況を報告しているために、意地でもやめられなくなったのが大きいと思います。

確かに人の手を借りてであれリリースした経験があるのは大きいかもです。自作ゲームをたくさんの人に遊んでもらえる喜びを経験したことが大きな原動力になってます。
あとは40年も生きてくると自分の取扱説明書は熟読しているので、どうすればやる気スイッチをオンのまま維持できるかを知っているのも大きいですね。

ちなみにこれまで2Dゲームしか作ったことないんですよね。卒業作品はせっかくUnityを使っているので3Dにチャレンジするつもりですが、後半の勉強はどうしようかなぁ。

古参軍曹殿、ご覧になっていましたら二等兵にご指示をお願いします(`_´)ゞ

>>204
今までプログラマーさんに全てやっていただいてましたが、単純なアクションでもこれだけ手間がかかるんだなぁと実感しています。それを知れただけでも勉強して良かったと思います。

206 :名前は開発中のものです。:2017/07/14(金) 16:56:39.36 ID:IFcRtDD4.net
まず2D編をおわらせる
サンプルと同程度の超小規模な企画を公表し、作成
スマホ実機テストする
webglで完成品urlとソースを公表する

ここまでやって上等兵

3Dはアセット準備の問題もあり、
ライティングなどハードルも上がり
2Dに強みのある二等兵の良さが
すぐには活かせないのでとりあえず
そこまでできてから次の方針を考える

7月中には終わらせたい内容

207 :名前は開発中のものです。:2017/07/14(金) 17:40:18.87 ID:+JujFOjV.net
アップデートが先でしょ

208 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/14(金) 20:02:35.69 ID:K310KO4a.net
>>206
>>207
アドバイスありがとうございます。
本当は1日でも早くリリース済のゲームのアップデートをしたいんですが、中途半端な知識で扱うとスクリプトをスパゲティ状態にしてしまいそうなので、ビルドの勉強も兼ねてミニゲームを作ってみようと思います。
目標は8月中のミニゲーム完成、そして9、10月で全ゲームのアップデート、終わり次第次回作に着手、といった感じかなと考えています。

209 :名前は開発中のものです。:2017/07/14(金) 20:29:29.15 ID:WdpjUbuG.net
そんな簡単に人の書いたソースよめるかね
気持ち次第か

210 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/15(土) 10:42:31.58 ID:oqZnLfAd.net
>>209
ソースを書いていただいたプログラマーさんに相談しまして、リリース済アプリのアップデート作業については、レクチャーしていただけることになりました。
スカイプでのレクチャー1時間受けておいくら、というふうに有償でお願いする予定です。

ということで、アップデート作業と卒業作品は同時進行でやってみるつもりです。

211 :名前は開発中のものです。:2017/07/17(月) 01:07:13.87 ID:6Yf/W7Xt.net
Unity最新ダウンロードで2017.1.0f3なのだけどUnity5の教科書で使えるのかな

212 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/17(月) 14:39:01.02 ID:KmFr9rCp.net
>>211
基本操作はあまり変わらないんじゃないかなーと思うんですが(勝手な予想)Unity5の教科書で勉強されるなら、とりあえずUnity5のバージョンを使われた方が無難かと思います。

213 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/17(月) 17:40:49.47 ID:KmFr9rCp.net
軍曹殿、教えてください。

Unity5の教科書では、お手本のスクリプトが全て下記のように始まります。

1 using UnityEngine;
2 using System.Collections;

ところが私が新規作成したスクリプトは下記のように始まります。

1 using System.Collections;
2 using System.Collections.generic;
3 using UnityEngine;

今回UIやシーンを使うことになって初めて、始まりの宣言部分がテキストと異なっている事に気がつきました。
何か設定とかが間違えているんでしょうか?それとも毎回始まりの宣言部分は書き換えられているのですか?

214 :名前は開発中のものです。:2017/07/17(月) 18:09:04.69 ID:t0+1dLzS.net
unityが生成するソースはデフォでgenericという仕組みを使用する想定でusingしているが
書籍の範疇ではgenericは使用せず不要なので記述していないだけ
順番も深い意味はない

215 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/17(月) 18:50:47.83 ID:KmFr9rCp.net
>>214
なるほど、ありがとうございます!

では、例えば using UnityEngine.UI; の宣言を追加したいときは4行目に追加すればいいんですね。

216 :おやじ二等兵 ◆v4qpwPuqTs :2017/07/18(火) 01:30:56.93 ID:ZjLQ5bTm.net
三連休は家族サービスばっかりであんまり勉強が進まなかったであります(T^T)ゞ
明日から頑張ろう。あと半分で教科書も読破だ。

217 :おやじ二等兵 ◆.GrDH3XMtM :2017/07/18(火) 01:34:26.51 ID:ZjLQ5bTm.net
あれ?トリップパスが変わっちゃったかな、、

218 :おやじ二等兵 ◆v4qpwPuqTs :2017/07/18(火) 01:36:20.91 ID:ZjLQ5bTm.net
んん?同じキー入れてるはずなのに。まぁいっか。

219 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/18(火) 01:41:42.26 ID:ZjLQ5bTm.net
あ、これだった。失礼しました(^_^;)

220 :名前は開発中のものです。:2017/07/18(火) 17:49:32.46 ID:2wYUu4gt.net
>>111
こんな感じのことで俺も嵌ったけど
このレス思い出してunity再起動したらうまくいった。

221 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/20(木) 00:29:23.17 ID:6pkt3KEe.net
やっとチャプター5まで読破しました。

ただ、、正直言ってよかですか?

スクリプトの書き方がチンプンカンプンであります(T^T)ゞ

222 :名前は開発中のものです。:2017/07/20(木) 01:39:21.64 ID:ddiMSsCx.net
なにがわからないのかわからんが
とりあえず最初のとこに変数宣言とか書いて
start(){ 
のとこに初期設定を書いて
Update(){
に毎フレーム行う命令を書く

void xxxx(){
など自分で作る関数はどこに書いてもいい

223 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/20(木) 07:58:55.91 ID:6pkt3KEe.net
>>222
ありがとうございます。
おかげさまでスタート関数、アップデート関数のあたりは理解できるようになりました。
いまジェネレータースクリプトの勉強しているんですが、アウトレット接続の意味(やり方)がイマイチわかりません。
本ではスクリプト内の変数にオブジェクトの実態を代入(関連付け)できるようにする。と説明しているんですが、ピンと来ないんです。
いちおう本に書いている通りにやればできたのですが、、。

224 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/20(木) 08:14:03.89 ID:6pkt3KEe.net
ちょっと頭の中を整理しよう。矢がたくさん落ちてくるゲームを作りたい場合、

1.すでにある矢のオブジェクトで金型となるPrefabを作る。(プロジェクトビューにドラック&ドラック)

2.金型をもとに量産するためのジェネレータースクリプトを作成する、このときスクリプト変数の前にpublic指定子をつけておく(なぜ?)

3.空のオブジェクトを作成し、ジェネレータースクリプトをアタッチする。これで矢のオブジェクトを量産できる工場が完成。

4.金型である矢のPrefabを工場に渡す。ここでアウトレット接続を行う。変数にPrefabをドラック&ドロップ。

そうか、Prefabを行うドラック&ドロップするためには変数を表示させないといけない。public指定子をつけた変数はインスペクタから見えるようになるから、2.でpublic指定子をつけておくのか。

225 :名前は開発中のものです。:2017/07/20(木) 08:38:19.93 ID:ddiMSsCx.net
困ったときはとりあえずpublic使っとけばなんとかなる

public Camera aaaaa;
public Animator bbbbb;
public GameObject ccccc;

よく使うのはこんなのかな

226 :おやじ二等兵 ◆cNMPGiLi1E :2017/07/20(木) 09:43:29.43 ID:Ose3QypD.net
>>225
ありがとうございます。
ちなみにpublicをつけない場合は、private扱いになるんですよね?

227 :名前は開発中のものです。:2017/07/22(土) 02:43:18.38 ID:wp+wv5eS.net
なんとか7月中にUnity5の教科書を読破できそうな感じです。
8月に入って卒業作品に取り掛かります。
いま勉強しながら、アイデアを絞り出し中。

228 :名前は開発中のものです。:2017/07/22(土) 11:32:55.85 ID:buvnCLCR.net
>>226
はい。

229 :名前は開発中のものです。:2017/07/24(月) 11:52:53.86 ID:8Sy4EL7Z.net
いま頭の中を整理するために、スクリプトの章をまた読み返しているんですが、継承の意味(存在価値)がわかりません。Unity5の教科書97p(List2-29)にあるように

Public class Test:MonoBehaviour{ }

だと、TestクラスはMonoBehaviourクラスの機能を継承しますよ。ってことですよね?
でもたまに、

Public class Player{ }

のように、継承を宣言していないクラスが存在するんですが、なんで継承しなくてもいいんですか?

230 :名前は開発中のものです。:2017/07/24(月) 12:03:04.64 ID:8Sy4EL7Z.net
ひょっとしてこれですかね?「多重継承」

http://www.wisdomsoft.jp/356.html

231 :名前は開発中のものです。:2017/07/24(月) 12:20:40.69 ID:+4N7qpiX.net
普通は継承せず、
機能などを継承したいときに継承する
と考える

ゲームオブジェクトにアタッチするクラスの場合、通常は
monobihaviourの機能、startやupdateなどを使いたいのでデフォルトで継承したソースが生成される

232 :名前は開発中のものです。:2017/07/24(月) 12:24:52.62 ID:+4N7qpiX.net
実際、monobihaviourを継承せずに
Public class Player{ }の中に
startやupdateを書いて実行しても
勝手に動き出したりしない

233 :名前は開発中のものです。:2017/07/24(月) 12:41:01.76 ID:8Sy4EL7Z.net
>>232
ありがとうございます。

スクリプトを新規作成するといつも冒頭に

Public class クラス名:MonoBehaviour{ }

が作成されるのは、MonoBehaviourの機能を継承して使うのが基本だからですね。

234 :名前は開発中のものです。:2017/07/24(月) 12:46:51.87 ID:RCo6q7mV.net
ちなみにMonoBehaviourを継承していないPlayerクラスは下記のようになっています。

http://i.imgur.com/1XxGKld.jpg

これは、「50のダメージを与えた」と「30のダメージを受けた」という出力結果を出したいだけなので、メンバ関数やメンバ変数を設定しているだけのPlayerクラスはあえてMonoBehaviourを継承していないということでしょうか?

235 :名前は開発中のものです。:2017/07/24(月) 13:01:44.15 ID:+4N7qpiX.net
まあそんな感じ

playerはhpなどのの管理用に、
実行と全体の管理をtestが担っている
という設計

236 :名前は開発中のものです。:2017/07/24(月) 22:03:47.93 ID:QIF0Mrrf.net
>>235
ありがとうございます。理解できました。

もう一つ甘えついでにFind関数について教えていただいていいですか?
スクリプトの中でオブジェクトの位置とかを関数の引数として使いたくても、そのまま引き取ることはできない。
そこでまずFind関数を使ってシーンからオブジェクトを探して、見つかればそれを引数として引き取れるって理解でいいでしょうか?

総レス数 1001
337 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
read.cgi ver.24052200