なんで?どうなっているの? なぞって覚える授業から、興味を持ってもらえる余白を持った授業へ

昨年度はこうやればこうなるという手順をひたすらなぞってもらう授業がスキルが1番付くものと思って授業を作成しました。
何度か授業作成をする時間が取れなかったので、簡単な問題を設けて時間稼ぎをしたこと時に、手抜きと思われるかと思ったら思いのほかディスカッションを始めていつになく真剣に向き合っていました
やり方をなぞることで、1つの手段が身についてショートカット出来るからベストだと思って普段作業をしているのですが、教えるという行為には必ずしもその方法がベストとは限らないのだなぁと反省しました

なんで?どうして?と思った時に、あれこれ試行錯誤したことが身に着くからだし、「ああだ、こうだ」と色んな議論が好きなのだ気づきました
時間を区切って最後に一応の解決手段を教えると、それまでに色んな手段を考えていただけあっていつもより理解してくれました

なんで?どうなっているの?

興味を持ってもらえる時間を設けて,頭を柔軟にしてもらいながら、最後にお互いの作ったもので遊ぶ
すこし、ゆとりを持った教育方法に切り替えることができました

【目次】



スポンサードリンク

昨年度の反省を生かして"#"

昨年度と今年度の授業構成の違い"#"

昨年度途中で、この動画が流れてきたのが大きかったかもしれません
他の授業の課題を授業中にやる生徒を見て、課題をやる時間より自分のゲームを作った方が勉強になるのになぁと思っていました
フィンランドの教育

昨年度の授業の理想と現実"#"

昨年度は突然プログラムの先生をすることになりました
C#での開発が長く、また、Unityを日常業務で扱うこともあり、C#で教えた方が楽でした
Javaの先生がいるとのこともあり、Unityを教えるとなるとC#の文法を教えることになってしまうので文法だらけで面白くない
ビジュアルプログラム(vvvv,Blueprint)を触る機会が増えてきたので、Blueprintの勉強もかねてUE4で授業を行うことにしました

本に書かれていることを事前に学習して、この手順で行えばだれでも出来る
そのレベルまで落とし込んで、授業を行いました
繰り返し行えば基本的なことが分かるので独自に発展させていくだろうと思っていました

Endless Runner のチュートリアルをまとめたがこれ以上に手順を1手順ずつ書きました
http://qiita.com/gansaibow/items/385431852e83b377d710

image

準備期間が全然取れないまま毎週本に書いてあることを、事前に実施して、その手順を起こしました
ハンズオン形式で毎週2コマ(1コマ90分 x 2 = 180分)1年間教え続けました
image

結果としては、準備不足やトラブル(ハードディスク容量が0、データが重すぎてネットワークが固まる、バージョンの違いでプロジェクトが開かない etc…)が続きました
生徒の関心が段々離れて行き、Ⅰ時期はほぼ学級崩壊とも言える状態になってしまいました
その中でも毎週ちゃんと授業を聞いて理解する学生はいるので、このやり方が必ずしも間違いとも言えないです

image

毎週、毎週の授業作成に追われる日々の中、1度寝てしまって授業が作り切れなかった時がありました
60分間足りないがもう授業をしに行かなければならない

20分間の内容を解答として、足りない60分は問題を考える時間としました

今日も荒れるのかなぁと覚悟をしていきました

結果としては

  • 黙々と問題に向き合い始めた
  • どうやったら出来るか話し合い始めた
  • 分かった生徒が分からない生徒に解説を始めた

image

この時に、彼らのことを見誤っていたことを反省しました
ゲーム科のプログラマ専攻に入るくらいの生徒たちなので、ゲームや考えることが好きなのだ

  • ゲーム好き
  • 問題を掘り下げるのが好き
  • 共通の趣味で話すことは好き
  • 共通の話題を授業のゲームの課題にすると、その課題について話し合いたい

時々ハンズオンではなく、テクスチャーを書いてみたり、山を作ってみたりした時も同様で、
ハンズオンより体験型の方が真剣に向き合っていました

トレースすれば出来るというのは作業になってしまうので、ゲーム好きとしては面白いゲームではない
レベル上げを毎週やり続けても、興味が持てなくなってしまうのも仕方がないと思いました
技術書は困った時に辞書のように調べものをするのに使うくらいにした方がいいのかもしれないです

image

今年度(2年目)1年生の授業構成"#"

image

昨年度の手順書があるので、肉付けする形にしました
強くてニューゲームみたいな状態で2週目を始めた形になります

今年度の授業は昨年度の反省を生かして、説明を減らして実習時間を増やしました
事前に作成したデモを渡して、実習時間中に試行錯誤してもらい、開発中や授業の最後にクラスメイトが作ったゲームで遊ぶ時間を作ることにしました

image
昨年度、2年生の就職活動も手伝ったこともあり、色々と特性が見えてきました

  • 1人で向き合って頑張っている
  • 助けてもらうのが下手

プログラマとして向いているし、話してみるたり、考えていることを聞くとかなり優秀で驚きました
ただ、就活や作ったもののプレゼンといったことがあまりうまくないし、自信が無くて損をしていることが分かりました

プログラムの授業の特性か文法の勉強やアルゴリズムは1人で考えないと本当に実がつかないです
そのことから、1人で向き合って頑張るプログラマが増えるのかもしれないです

昨年度の2年生で面白かったのが、絵をひたすら描いている子もいるし、乙女ゲーが好きで台湾から来た女の子は乙女ゲーの企画を書いていました
プログラマ専攻という名前はついているけど、たまたまプログラムを勉強している子が多いクラスなんではないか?
という疑問が沸きました

今年は週末に教えることになったので、楽しい気持ちで終わるようにしようと思いました

  • 何人かで考えるような課題を与える
  • お互いの制作物で遊んでもらって楽しんで終わる

何人かで考える課題を与えると面白いことに気付きます

  • ゲームをプレイしてデバッグする人
  • 客観的にゲームのプレイを見て指摘する人
  • 指摘を拾って直す人
  • 人の作ったギミックをまねる人
  • 時間内に上手く回るようにマネージメントする人

自然と役割分担を始めました
その中で、プログラムが楽しいと思ってプログラマになる人もいるだろうし、レベルデザイナーになる人もいるかもしれない、絵が好きでイラストレーターになるかもしれない
プログラムは教えられるけど、プログラマのなり方は教えられないから、個人に委ねるしかないのかもしれないです

image

昨年度の問題点として、美術経験者としてもよくあることだけど、ゲームプログラマの現場も同様の問題点が発生しました

制作物・課題を終わらせられない

このテーマは常に付きまといます

独自の道を行く人(留学生に多かった)は放っておいても大丈夫なので、どんどん行けと応援しました
まじめな子ほど課題に追われて、個人の制作物が完成しきれていなかったです
完成しないうちに次の作品へ制作を始め、せっかく作った作品は誰にも触られずに闇の中に

今年度はデモを作成して1つの解答として渡すことにしました
その解答を元にして、時間を区切って提出してもらい、制作物はクラスメイトに遊んでもらうことにしました

作ったものを遊んでもらう

色々と他の授業内容を聞いてみたけど、みんなが同じものを作ることが多かったです
ハンズオンで1番失敗したと思うのは1人で完結してしまうことかもしれないです

  • 全員が同じものが出来る
  • 同じものでなければどこかが間違えている失敗作
  • どうせ同じだから自分のが出来れば満足

なかなか遊ぼうということにはならない
クオリティチェックや理解度を図る上ではハンズオンは優れています
1人の先生が大勢を相手にするにはどうしてもハンズオン形式を取らざる負えないのが現状です

今年度 2年生の授業構成"#"

昨年度の状況を考えて、今年の2年生は選択制にしてもらいました
昨日初めての授業の際に、やる気のある子が選択したそうだ
RoboRecallを体験してから授業を行おうと思っていたので、VRゲームを授業中に何巡も出来るような少数でよかったです

出席した学生にVR体験者がいなかったので、まずはいきなり授業をするよりUE4で制作されたゲームを体験してもらうことにしました
初めてのことに戸惑っていたが、すぐに慣れて授業が終わっても休憩しながらプレイしていました

VRの最初の体験でRoboRecallが出来るというのは、人生を変えてしまうくらい衝撃的なことなのかもしれない
クラスに1台ある状態ではまだないので、まずは色々なゲームを体験してもらったり、1年生同様に作成していったデモを元にイメージを膨らませてもらおうと思います

image

初回授業について"#"

デモ制作について"#"

image
CGにかかわる仕事をしても、まだお互いに何をしているかよく分からない
学生なら尚更分からないだろう

image
プログラマ専攻2年生のポートフォリオを見たけど、どれもビジュアルで損をしていました
せっかく作ったけど、未完成に見えてしまう
自分もそう思っているのか、誰かに遊んでもらっていない感じが見受けられました

タイからアニメーション制作をしていたが、ゲームプログラマになりたいと1年間ひたすら1人で作りこんだ作品はビジュアルもプログラムもしっかりしていたが、せっかくこれだけ作ったのに発信力が弱かったのでかなり反省した
Substance Painterというツールがあるということを教えたら、次の週にはかなり使いこなせていたので、3Dが出来るプログラマの強さを実感しました 

image
UE4だとInfinity Bladeのアセットが無料で使用することが出来ます

INFINITY BLADE COLLECTION が無料で利用可能に
https://www.unrealengine.com/ja/blog/free-infinity-blade-collection-marketplace-release

ただ、学校の回線のこともあり、大量なデータを配るとネットワークがフリーズしてしまい授業もフリーズしてしまいます
3DCGの視える化や勉強もかねてローポリの独自アセットを作成して配ることにしました

ローポリアセットを作成する中で得た知見も学生に視てもらえるように起こった問題点をまとめることにしました

樽(StaticMesh)を作ってみた

UE4 スケルタルメッシュの敵キャラを作る

Maya > Substance PainterへのFBXトラブルシューティング(同一頂点対応)

Substance Painter 2 タイリングマテリアルを使用するときのUV展開の重要性

独自のアセットなので、何を作っているのかを発信しやすくなりました

image

学生本来の力が見えない作品を公開するのはどうだろうかという指摘もあると思います
どのようにお互いにやり取りすればいいかということもやってみないと分からないので、仮想3DCGデザイナーという役割で学生とやり取りすることを考えています
来年度には他の専攻とやり取りが出来るようにすることで、勝手に追い抜いていくのだろうと予想しています

初回の授業について"#"

1年生"#"

自己紹介後に
[Unreal Engineをより学習する]にはを使って最新の事例について紹介をしました
http://denshikousakubu.com/2016/07/23/20160724-ue4study00/

この二つの動画を紹介したところ興味を持ってくれました
Reality Virtual Studio IBC 2016 - UE4で作られた空間と人物を高速リアルタイム合成したバーチャルスタジオが凄い!
http://3dnchu.com/archives/reality-virtual-studio-ibc-2016/

靴や金属といった身近なものでテクノを作る動画
https://www.facebook.com/hobo.soundz/videos/10154336469236402/

デモとして用意したプロジェクトの紹介

なんとか実装出来た機能

  • コインを取るとPoint +100
  • ハートを取るとHealth + 20
  • ダイアモンドを取るとGoal

教えたこと
Bluerpintsフォルダにあるアセットをドラッグしてすれば、ゲームに追加される
image

追加したアセットは移動、回転、拡大で操作することが出来る
image

Mapsフォルダにクラス名と出席番号が分かるように保存してください
image

大まかにこの3つくらいしか教えなかったです

出来上がった作品

面白いなぁと思ったのは本来意図していない使い方をしていたのが面白かったです

時間がなかったので、☆はアイテムとして取ることが出来ずにぶつかる回転物としてしか配置していませんでした
星は回転することでプレイヤーの邪魔をする障害物に変わっていました
image

Emissiveを付けていたので、暗いステージの照明・ガイドとして使用していました
image

星に乗るとキャラクターも回転することギミックになっていました
これを見たほかの学生が、面白いから真似をしていました
image

落ちた場所によってアイテムが違う。ハズレとして敵がいる
image

上側を少ない時間で作りこんでいました
image

実はゴールが下にありました
image

左右対称にするにはどうしたらいいですかという質問をしてきた生徒は作りこみが綺麗でした
image

床を使って斜面を登れるように配置
これも面白いからと真似を始める生徒が現れました
image

回転を使った作品
image

モンスターを巨大化したり、ゴールの役割のダイアモンドを世界観を作るために使いだしました
Weightが甘いことがバレる
image

ピラミッドに積んでみる
image

マネキンのラグドールの山が衝撃的でした
image

UE4は初体験だけど、Unityの授業が週の初めにあるせいか、移動・回転・拡大くらいは簡単な説明でささっと理解して作り出しました
教えていないマテリアルの変更、キャラクターの変更といったことも教えてないのに出来ていました

問題点

  • 自由すぎて何処に行ったらいいのかが分からない
  • 運による床がありゴールが出来ないレベルがある
  • 落ちたときのリスタートを作っていなかったので、ゲームを止めないとやり直せない
  • 難しいことを考えすぎていく傾向にあるので、徐々に難しくして行くことで楽しませるという発想にならない
  • プログラムの勉強になっていない

次回の課題

  • ガイド(矢印のプラカード)を作成する
  • 参考になりそうなレベルデザインの本を印刷して配布する
  • 落ちた時のリスタートを作成する
  • 1-1を集めた動画集みたいなものを用意して、面白いゲームとは何かを考えてもらう
  • 来週はブループリントを組んでもらった上で共有化できる方法を検討する

UE4楽しかった?

楽しかったです!

去年なかなか聞けないことがようやく聞けました

2年生 初VR体験"#"

今年はOculusを購入したので、授業の開始時にRoboRecallをやってもらおうとOculusを持参しました

セットアップも勉強だと思もい、セットアップを学生にやってもらいました

OculusRift製品版の初期セットアップ方法 – ソフトウェア編
http://www.moguravr.com/oculusrift-setup-softwear/

  • 家では無理なぐらいの広さが必要だということが分かってもらえた
  • センサーの調整は消極的だったので交代することになった

自分たちが勉強しているツールからどういったものが生まれているのか体験してもらおうと
UE4で開発されたVRゲーム/アニメーションを体験してもらいました

Robo Recallのアップデート待ちにHenryとBullet Trainを体験してもらった後、
Robo Recallをやってもらったら、学校が閉まるくらいまでプレイをし続けてました

今年度はRobo Recallがあるということが本当に大きいです

総括"#"

1~10まで教えるつもりの手順書を作っても0.5くらいなら、3くらい用意して5に自分たちで近づける方が2.5くらい学習する

今どきの若者はけっこうおもしろい


スポンサードリンク