
#game1 ソルラジ ゲーム開発者のための挫折共有ラジオ始めました 〜プログラミング学習はつらい〜
はじめに
プログラミングを始めた人の約90%が挫折するという現実。その壁を乗り越えようとする開発者たちがいます。
ソルラジ(ゲーム開発の挫折共有トーク)は、素人ゲーム開発者たちがプログラミングにおける「挫折」を徒然なるままに共有していく番組です。ゲーム開発に興味のある方や開発者の方の参考になることを目指して、第1回の対談をお届けします。
(この内容はこちらから聞けます)
出演者紹介
JOE:みなさん、こんにちは。ソルベンターの(JOE)です。普段はソフトウェアの設計者として仕事をしながら、趣味でゲームを作っています。実は大学時代にC言語の単位を3回も落としたほど、プログラミングで挫折した経験があります(笑)。その経験から、プログラミング学習の挫折をなくしたいという想いを持っています。
薮:ソルベンターの薮です。ゲーム開発について主に担当しています。プログラミングからキャラクターのモデリングまで、基本的に僕がやっている形ですね。実は最近までは全くの未経験で、この半年間でUnityを使ってゲーム開発を学んできました。高校生の頃にプログラミングに挑戦して10分で挫折した経験があります(笑)。
SOMA:ソルベンターのSOMAです。普段はベンチャーやスタートアップで働いていて、ゲーム開発では音声編集や映像編集で関わらせてもらっています。正直、開発のプログラミングは全然わからないので、2人の進捗を見て「すげえな」と思いながら見ています(笑)。ちなみに僕も勉強面では挫折だらけの人生を送ってきました。

この番組が生まれた理由
JOE:この番組で話したいと思っているのは、プログラミングってどういうものかということを、難しいんじゃないかって思っている人に向けて、わかりやすく伝えられればなと思っています。
SOMA:プログラミングって挫折の歴史しかないよね。挫折率90%みたいな統計もあったよね?
JOE:そう。4〜5年前から小学生の教育にもプログラミングが義務化されたけど、このままだとただただ挫折する人が増えていくんじゃないかって心配してるんだよね。
SOMA:逆に嫌いな人が増えちゃうかもね。
JOE:出会い方だったり、向き合い方によって全然変わると思うんです。そういうことをいろいろ話していきたいなと。
SOMA:挫折しそうな人とか、挫折しながらやってる僕たちの話を届けて、「一緒に挫折しよう」みたいな(笑)。それだけでも共感してほしいって感じですか?

JOE:そう、共感だけしてほしい。別に何か解決するわけじゃないけど、何かの糸口になったらいいなとは思ってる。
薮:実は僕自身、半年前は全く何もできなかったのに、この半年間でUnityを使って一通りゲームを作れるようになってきたんです。JOEさんのサポートもあって乗り越えてきた経験があるので、同じような悩みを持つ人の参考になれば嬉しいですね。
ソルベンター(SOLVENTER)とは
SOMA:ソルベンターって何なのか、ちょっと話してみますか?
JOE:ソルベンターは元々2年前くらいに「好きなことをしていきたい」という大きなテーマを掲げて、人を集めたチームなんです。最初は特にゲームとかではなかったんですが、結果的に集まったのがゲームが好きだったり、技術的なものが好きという人たちで。今はみんなでゲームを作っていますという状況ですね。
SOMA:みんなゲーム大好きですよね、メンバーが。

JOE:そう。最初はプログラミングとか全然詳しくなかった薮さんも、この半年間でワイワイやってたらめちゃくちゃマスターしてきて。
SOMA:名前の由来は?
JOE:「ソルブ(SOLVE)」という解決と、「エンター(エンターテインメント)」という心を掴むという意味を合わせて「ソルベンター」にしました。
SOMA:なんか宇宙っぽい響きですね(笑)。
JOE:(笑)自分の中では、夢中になるのが一番幸せな状態だと思っていて、それが結果的に何かの解決につながったら最高じゃないですか。
SOMA:夢中になっていたら解決できるみたいな。
JOE:そう。夢中になれることは継続可能だと思うんです。それが最終的に「好きなことで生きる」につながると思って、このチーム名にしています。
SOMA:なるほど。その「夢中になりたい」と思ったのは、何かエピソードがあるんですか?
JOE:自分の性格の悪いところでいうと、なんか退屈でつまらないなって思っちゃったらすぐ投げ出しちゃうんですよ。何かを解決したり継続するためには、自分が楽しめるということを意識しないとできないなと思って。
SOMA:本当そう!なんか「絶対自分にとってプラスになる」とかって思ってやっても続かないですよね。
子ども時代の挫折体験
JOE:挫折の話でいうと、子どもの頃の強烈な記憶があるんです。ウルトラマンになれなかったこと(笑)。
SOMA:(笑)でもその手の挫折、みんないっぱい持ってそう。なんか憧れのものになれなかったとか。
JOE:誕生日かクリスマスにウルトラマンに変身できる変身グッズをもらったんだけど、それをしても変身できなかったんですよ。みんな変身するじゃん。テレビでは変身しているのに、なんでと思って何回もやってました。

SOMA:それ本当に子どもの頃に悩んでた?
JOE:その場で悩んでた!「できない」って知ってめちゃくちゃ悔しかったんだよね。「変身できないんだ、この世界は」って。あとね、おもちゃ箱に「良い子のハーモニカ」ってラベルのハーモニカがあったんだけど、試しに吹いてみたら全然吹けなくて。「俺、良い子じゃないのかな」って思って半泣きで必死にハーモニカ吹いてた(笑)。
SOMA:(笑)幼稚園児としての全否定じゃん。アイデンティティ崩壊だ。
JOE:そう!それからウルトラマンになるとかの夢はなくなって。代わりに何をしたかというと、アークザラッドっていうRPGゲームの主人公がナイフを使うんだけど、「これだったら俺でもできるかも」って思って。
SOMA:なれるヒーローを探したんだね。
JOE:そう。ヒーローになりたかったんだと思う。それが自分の初めての挫折かな。
薮:僕の挫折は、高校生の時に野球をやっていて怪我をしちゃったこと。それで野球ができなくなったときに挫折というか...
SOMA:プロ野球選手になりたかったの?
薮:そう。野球やってる以上はプロを目指していたから。怪我で肩が上がらなくなって、もうどうしようもなくなっちゃったんです。
JOE:それはつらいね。
薮:ピッチャーというポジションが好きでやっていたので、ボールが投げられないということはピッチャーはできない。他のポジションはできないこともないけど、もうピッチャーをやる意味がなかった。プロ野球のピッチャーになりたかったから、野球自体をやめました。
SOMA:その後、次のやりたいことが見つかったのはいつ頃?
薮:中学3年で怪我して、高校卒業後に自衛隊に入って、22、23歳くらいで料理に興味を持ち始めました。5年くらいかかったかな。
SOMA:僕は中学生の頃に、世の中の構造がわかり始めて「偏差値教育」にさらされるようになったとき、挫折を感じました。小学生の頃は自由にいろんな夢を持てたのに、「医者になるにはこれだけ勉強しないといけない」という現実を突きつけられて。夢見させてもらった方が良かったと思ったんです。
JOE:なるほど。最初から事実を知りたかった?
SOMA:そう。「夢を見させる」というよりも、「夢までのやり方や過程」も一緒に知りたかった。なんか途中でいきなり課金されるゲームに入った感じ(笑)。最初に言っといてよ、って。
プログラミング学習の壁
JOE:じゃあ、プログラミングでの挫折経験について話してみましょうか。薮さんはこの数ヶ月でソルベンターの中でも一番プログラミングで挫折した人かもしれないね(笑)。
薮:(笑)確かに。元々高校生の頃にゲーム開発に興味があって、「ゲーム作るにはプログラミングが必要」ということで本を買ったんですけど、開いて10分で挫折しました。全然わからなくて。
JOE:わかる。俺も大学時代にC言語の授業で単位を3回落としたくらい挫折してるんだよね。特に「ポインタと構造体」のところで。ページ開いてずっと悩んでた記憶があります。何もわからなくて、サンプル読んでも理解できなくて...。
薮:今回は、まず「どういうゲームを作りたいか」を明確にしてから始めました。開発環境もUnityにするか、UnrealEngineにするか選ぶところから。
JOE:Unityを選んだ理由は?
薮:ハイスペックなパソコンを持ってなかったので、比較的軽く動くUnityの方が良いかなと思って。それとUnityの方が入門のハードルが低そうだったから。

JOE:ツールを決めて、次に何をしたの?
薮:まずは会話する機能から作ろうと思って、インターネットで調べたコードをコピーしてみたんです。表示はできたけど、ここで文字を変えたい、表示速度を変えたいと思っても、コードが何をしているのか全然わからなくて...。
JOE:それがプログラミング初心者の大きな壁だよね。
サンプルコードの罠
JOE:サイトにあるサンプルコードって2種類あると思うんだ。一つは部分的な機能の実装方法を説明してるサイト。もう一つはRPGゲームのような完成品の作り方を説明してるサイト。
薮:両方とも問題があるんですよね。機能的なサンプルだけだと全体像が見えなくて、完成品のサンプルは複雑すぎて何がどうなってるのか理解できない。
JOE:そうそう。例えばボタンを光らせる機能は実装できても、それがゲーム全体のどこに位置付けられるのかがわからない。

薮:逆にRPGゲームの完成サンプルを参考にしようとすると、わからなさすぎる。完成されすぎていて、それぞれのコードが何をやっているのかがわからないんです。
JOE:設計って、一つのことを実現するためにもいろんなやり方があるんだけど、そのやり方の中で「なぜこの方法を選んだのか」は作った人にしかわからないんだよね。
薮:そう。サンプルに1行違ったら全部エラーが出ちゃうし、サイトのサンプルから変えられないから同じものしか作れないという...また挫折になっちゃうんです。
SOMA:コピペだけしかやってないという感じですね。
JOE:本当は基本的な機能から徐々に拡張していく過程が見えるサイトがあれば良いと思うんだよね。第1回は「ボタンを押したら入力される機能」を作り、第2回はそれに「数字を表示させる機能」を追加していく...みたいな。その過程が見えれば理解できるんじゃないかなと。
SOMA:なるほど。過程を見せていくことが実は一番学びになるってことですね。
理解の壁を超える方法
JOE:薮さんがゲーム開発を続けられたのはなぜだと思う?途中で投げ出さなかった理由は?
薮:まず大きいのは「みんなでやってる」ということじゃないですかね。一人だったら絶対挫折してたと思います。

JOE:そうだね。あとUnityって最初の一歩のハードルが低いというか、ちょっとブロックを置いてみたらブロックが出てくるみたいに、すぐ反応があるじゃん。
薮:そう、ちょっとした操作でも視覚的なフィードバックがあるので、自分で何か作った実感があるんです。それが続ける原動力になった気がします。
JOE:10年前とかのツールだと、プログラミングを学ぶ意味が見えないままやるのは難しかったと思う。今は環境が整ってきてるよね。
SOMA:環境と仲間って大事なんですね。
JOE:そう。あとは目的意識も重要。「プログラミングを学ぶ」こと自体が目的になると挫折しやすいけど、「これを作りたい」という目的があって、そのための手段としてプログラミングを学ぶと続けやすい。
挫折を乗り越えるヒント
SOMA:みなさんの話を聞いていると、挫折を乗り越えるにはいくつかのポイントがありそうですね。
JOE:そうだね。まず俺の場合は、大学時代にC言語で挫折したけど、その後ストリートファイターにハマってたんだ。コンボをうまく決めたくて、Excelでダメージ計算をしようと思ったときに、VBAというExcelのプログラミング機能を知ったんです。
SOMA:ゲームが好きで、そのためにプログラミングを学んだ?

JOE:そう。VBAが便利だから使いたい、学びたいと思えたんだよね。プログラミングが手段になった瞬間に、学ぶモチベーションが全然違った。
薮:僕の場合は、ソルベンターに入って「このゲームを作りたい」という目標ができてから、プログラミングに向き合えるようになりました。高校生の頃は10分で挫折したのに(笑)。
SOMA:僕も勉強が全然できなかったんですけど、社会人になってから「これを解決するために勉強が必要」と思ったら急にできるようになったんです。例えば社労士の資格を取るために労働法を勉強したのも、「会社での問題を解決したい」という目的があったから。
JOE:結局、「夢中になれるかどうか」が大きいんだと思う。目の前の課題に夢中になれれば、それを解決するためのスキルは自然と身につく。
SOMA:なるほど。「挫折の克服」というより、「夢中になれるものを見つけた」から続けられたってことですね。
ゲーミフィケーションの可能性
JOE:実はSOMAさんとはゲーミフィケーション協会で出会ったんだよね。
SOMA:そうそう。ゲームの要素を使って日常や仕事を楽しくするにはどうしたらいいかを考える会で出会いました。

JOE:ゲーミフィケーション協会に入った理由も、プログラミングの学習をどう楽しくできるかを学びたくてだったんだよね。
薮:なるほど。だからソルベンターでもゲームを通じてプログラミングを学べるような取り組みをしているんですね。
JOE:そう。「ソル」は解決、「ベンダー」はエンターテインメント。楽しみながら課題を解決できれば最高じゃないかと思って。
SOMA:とにかく夢中にさせるために、楽しんでやってもらうために何をしたらいいか考えて追求していくのがソルベンターなんですね。
JOE:そう。最初の一手として、私が挫折したプログラミングの学習を楽しく夢中になれるものにするために、ゲームという手段を使ってアプローチしています。
今後の展望
JOE:ソルベンターとしては「プログラミング学習の挫折をなくしたい」というテーマに取り組んでいて、具体的にはプログラミングの学習とRPGゲームをかけ合わせたゲームを今作っています。
SOMA:ゲームで遊んでて楽しんでいたらそれが学べるみたいな?
JOE:そう。ゲームを通じてプログラミングの概念を理解できるようなものを目指しています。
薮:あとはゲーム開発の過程も含めて共有していきたいですね。挫折したときにどう乗り越えたかとか、実際どんな問題に直面したかとか。
JOE:そうだね。開発過程を見せることで、「こういう壁にぶつかるのは普通なんだ」ということがわかると思うんだよね。
SOMA:X/Twitterでも開発過程を発信しているんですよね?
JOE:はい、SOLVENTERで検索してもらえると出てきます。日々の開発過程や挫折体験も発信しているので、ぜひフォローしてください。
SOMA:今後もこの「ソルラジ」では、プログラミングやゲーム開発における挫折体験や乗り越え方を共有していくんですね。
JOE:そうです。挫折は誰にでもあるものだから、それを隠さずに共有することで、「自分だけじゃないんだ」と思ってもらえたら嬉しいです。
薮:半年前の私のように「プログラミングなんて無理」と思っている人に、「少しずつでも続ければできるようになる」ということを伝えられたらいいですね。
SOMA:今回はソルラジの第1回目ということで、まずは自己紹介と番組の趣旨、それぞれの挫折体験を中心にお話ししました。次回以降もプログラミングの具体的な壁や乗り越え方について掘り下げていきたいと思います。

読者のみなさんへ
この記事はソルラジ第1回の収録内容をもとに編集しました。プログラミングに限らず、挫折経験は誰にでもあるものです。あなたはどんな挫折を経験し、どのように乗り越えてきましたか?
コメント欄で皆さんの挫折体験をぜひシェアしてください。共有することで、新たな発見や前に進むヒントが見つかるかもしれません。
ソルベンターの「X/Twitter(@solventer_jp)」では、日々の開発過程や挫折と向き合う様子を発信しています。
興味のある方はぜひフォローしてみてください。
一緒に夢中になれることを見つけていきましょう!
あなたの挫折体験の感想コメントお願いします。そしてシェアしてください。一緒に乗り越えていきましょう!
この記事を書いた人
JOE
ソルベンターのリーダー。ソフトウェア設計者として働きながら、趣味でゲーム開発に取り組む。大学時代にC言語の単位を3回落とした経験から、「プログラミング学習の挫折をなくしたい」という想いを持つ。ゲーミフィケーション協会に所属し、学習と遊びの融合を研究中。
好きなゲーム:ストリートファイター
薮 さん
ソルベンターのゲーム開発担当。最近までプログラミング未経験だったが、現在はUnityを使ったゲーム開発を担当。高校時代は野球部のピッチャーでプロを目指していたが、怪我で断念。その後、自衛隊を経て料理、そしてゲーム開発の世界へ。挫折を乗り越える粘り強さが持ち味。
好きなゲーム:ディアブロ
SOMA
ベンチャー企業で働きながら、ソルベンターでは音声・映像編集を担当。プログラミングは苦手だが、チームの雰囲気づくりとコミュニケーションに長けている。学生時代は勉強が苦手で偏差値30台だったが、社会人になってから目的を持って勉強することを覚える。社労士の資格も取得。ゲーミフィケーションの実践者として、楽しみながら成長するスタイルを追求中。
好きなゲーム:逆転裁判
(最新話はこちらから聞けます)
EXEーACT
<ブラウザで遊べます!開発中のゲームはこちら>
プログラミングが学べる3Dブラウザゲーム
プログラミングが学べる2Dブラウザゲーム
▼https://unityroom.com/games/test0000test