ユーザーブロマガは2021年10月7日(予定)をもちましてサービスを終了します

  • 【皆でゲームを作りたい!~Unityを1から触れる放送~#1】振り返り記事【しゃけくま】

    2013-10-25 21:004
    森森森|*´(ェ)`)ノゃあ☆ Σ(・ω・ノ)ノ! |森森森

    どうも鮭を取った事ないけど、“しゃけとりくまごろう”こと“しゃけくま”と申します!
    宜しく御願いします!!

    今回改めてブロマガに記事を投稿してみる事にしました。
    さて、今回のテーマは、

    「皆でゲームを作りたい!~Unityを1から触れる放送~

    です。

    元々自作ゲームを作りたい!
    そういう思いがあり、ネットでの活動をしておりました。
    そして、先日TGS2013でインディーズゲームフェスというブースに出演してきました。

    インディーズゲームフェス2013

    http://www.indiegame-fest.com/

    インディーズゲームフェス2013出演者での集合写真


    知ってる方は、知ってると思いますが、僕は右下のメガネをかけた熊野郎です。

    インディーズゲームフェスでUnityの凄さを、目の当たりにし、以前よりUnityの存在を知っていましたが、改めてゲーム制作をUnityというツールを使っていこうと決めた訳です。

    でもUnityは何となく凄いとは知っていたが、Unityで実際にゲーム制作をした事ない。
    そこで折角なので、リスナーさんと一緒に勉強しようという事で、大よそ金曜日午後10時から放送する事になりました。(金曜日は仕事が被りやすいので、頻繁には放送出来ないかもですが…)

    第1回目↓


    ではそもそもUnityとは何ぞや、という方の為にWikipediaからの引用↓
    Unity(別名:Unity3D)とは、統合開発環境を内蔵し、複数のプラットホームに対応する、ユニティ・テクノロジーズ(英語版)が開発したゲームエンジンである。ウェブプラグイン、デスクトッププラットフォーム、ゲーム機、携帯機器向けのコンピュータゲームを開発するために用いられ、100万人以上の開発者が利用している。Unityは主にモバイルやブラウザゲーム製作に使用されるが、ゲーム機及びPCにゲームをインストールすることもできる。このゲームエンジンはC言語/C++で書かれており、C#、JavaScript、Booで書かれたコードに対応できる。2005年にOS Xに対応したゲーム開発ツールとして誕生してから、今日ではマルチプラットフォームに対応したゲームエンジンにまで成長した。
    まぁ早い話が3Dでゲームが作れて、Unityを使えばWindowsは勿論、Macに対応したゲームやブラウザゲーム、そしてAndroidやiPhoneなどのスマートフォンまで、いろんなマルチプラットフォームに対応しているゲームエンジンという事です。
    RPGツクールみたいに、用意された命令文だけでは、ゲームは作れませんが、Unityにしかない機能が沢山あります。

    では実際に第1回目の放送を通して、Unityの何を学んだのかおさらいして行こうと思います。

    「皆でゲームを作りたい!~Unityを1から触れる放送~#1を振り返る!!」

    • Unityをダウンロード

    まずはUnityの本体をダウンロードをしました。
    ダウンロードページは下記になります。
    http://unity3d.com/unity/download
    ダウンロードしたら、Unityのライセンスを登録します。
    無償版が御座いますし、無償版でも十分作れます。
    放送で暫く無償版を使って行こうと思っております。
    ライセンスを登録して、Unityを起動する事が出来きます。

    • 新規プロジェクト作成

    続いて新規プロジェクトを作成します。
    起動時に作成、または起動後にメニューの[File]-[New Project…]を選択すれば作成出来ます。
    今回はUnity付属のデータを活用するのでプロジェクト作成時に以下の「Character Controller.unityPackage」にチェックをした状態で作成しました。

    f:id:nakamura001:20131007034735p:image

    • 配管工のおっちゃん

    配管工のおっちゃんは「Project」と書かれたタブの「Character Controllers」というフォルダに居ます。
    とりあえず今回は、この配管工のおっちゃんを使って、ゲームを作って行こうと思います。

    f:id:nakamura001:20131007035057p:image

    • Unityの基本操作

    Unityの基本操作は下記を参照して下さい。
    http://www32.atwiki.jp/nakamura001/pages/112.html
    取り敢えずカメラ移動はAltキー+マウスの左ボタンドラッグ、中ボタンドラッグ辺りを中心に使うのがお勧めだそうです。

    • 床を作る

    メニューから[Game Object]-[Create Other]-[Cube]を選択すると床に使用するCubeが作成出来ます。

    トランスフォームツールを使う事で、オブジェクトに様々な操作をする事が出来ます。
    まずWキーで、3D空間の平行移動。
    続いてEキーで、オブジェクトの回転。
    最後にRキーで、オブジェクトの拡大縮小が出来ます。

    f:id:nakamura001:20131007040153p:image

    • Asset Store
    用意されている3Dオブジェクトだけでは、3Dモデリング出来ない人は、3Dゲーム作るの大変かも知れませんが、UnityにはAsset Storeなるものが存在しており、そこに3Dキャラクターのオブジェクトだけではなく、ゲーム制作の中核を担うプログラムも置いてあります。
    下記は公式ホームページからの引用↓

    アセットストアはゲーム制作において時間と労力削減の貴重なリソースです。キャラクターモデル、プロップ、マテリアルにテクスチャ、背景ペイントツール、ゲーム制作ツール、オーディオ エフェクト、音楽、ビジュアル プログラミング ソリューション、スクリプト、エディタ機能拡張などがすべて揃っています。車の物理やキャラクター カスタマイズ、C#、背景制作などのデモやチュートリアルといった学習用リソースがダウンロードできます。Asset Storeはメニューから[Window]-[Asset Store]を選択。

    • 親子関係
    床以外の壁用にもう一つCubeを作成し、そのCubeを「Hierarchy」タブで最初に作ったCubeにドラッグ。

    f:id:nakamura001:20131007042908p:image

    親子関係とは何ぞやという方に、下記Unityマニュアルより引用↓

    親子関係の設定は、Unityを使う上で理解すべき最も重要なコンセプトの1つです。GameObjectが他のGameObjectの親(Parent)であるとき、子(Child)のGameObjectは親の移動や回転、スケールに伴って変化します。あなたの腕が体にくっついていて、体を回すと腕もうごくのと同じ感覚です。オブジェクトは複数の子を持つことが出来ますが、親はひとつしか持てません。

    • ライトを置く

    メニューから[Game Object]-[Create Other]-[Directional Light]を選択する事で、
    3D空間に光を照らす事が出来ます。。

    • 影を付ける

    ライトを選択した状態でInspectorを確認しましょう。
    Inspectorには、モデルやライト、カメラといったあらゆるオブジェクトである部品の、
    細かな設定をまとめて管理するのがInspectorです。
    ではInspectorの「Shadow Type」を「Hard Shadows」に変更。

    ※「Type」は「ライトの種類」の設定に成ります。

    f:id:nakamura001:20131007043338p:image

    • 複製

    オブジェクトの複製は、Ctrlキー+Cキーでコピーして、
    Ctrlキー+Dキーでオブジェクトの複製を行います。

    • Vキーでオブジェクトをピッタリと移動

    こちらを参照。

    スナップの使い方 - 強火で進め

    http://d.hatena.ne.jp/nakamura001/20110608/1307546731

    • ジャンプ

    配管工のおっさんには、予めスクリプトが仕込まれており、
    スペースキーを押すと配管工のおっさんがジャンプします。

    • ゴール用のオブジェクト

    ゴール用のオブジェクトとしてCubeとは違う、カプセル型のオブジェクトを配置しました。
    メニューから[Game Object]-[Create Other]-[Capsule]を選択。

    • いったんここまでを保存

    メニューから[File]-[Save Scene]を選択。名前を「GameScene」にして保存します。

    • New Sceneを作ります

    メニューから[File]-[New Scene]を選択。

    • 空中に文字を配置する部分

    文字の配置はメニューから[Game Object]-[Create Other]-[3D Text]を選択しました。

    ※今回の場合はタイトル画面用のテキストなので本来は[Game Object]-[Create Other]-[GUI Text]の方が適切だと思われます。
    [3D Text]は、3D空間上にあるので、キャラクターを動かして、カメラが動いたりすると、文字の場所が変わります。
    [GUI Text]は、ゲームのインタフェースの用に、位置が変わる事がありません。

    • タイトルを入力

    タイトルのテキストを「syake9ma Game」に変更。
    もう1つ「3D Text」を作りテキスト「please click」に変更。

    • クリックする対象を作成

    メニューから[Game Object]-[Create Other]-[Sphere]を選択しました。

    • C#のスクリプトを作成

    Projectビュー(Projectというタブが付いているエリア)の[Create]-[C# Script]を選択しました。
    名前を「NewBehaviourScript」から「CliStaScript」に変更します。


    • void Start()

    ゲーム起動直後に行いたい処理を void Start() の部分に記述します。

    • クラス名を変更

    public class NewBehaviourScript の部分を public class CliStaScript と書き換えます。



    • プログラムを変更

    プログラムを以下の内容に変更します。 OnMouseDown() の部分を追加しました。

    using UnityEngine;
    using System.Collections;
    
    public class CliStaScript : MonoBehaviour {
    
    	// Use this for initialization
    	void Start () {
    	
    	}
    	
    	// Update is called once per frame
    	void Update () {
    	} 
    	
    	void OnMouseDown() {
    		Application.LoadLevel(1);
    	}
    }

    プログラムのは詳細は次回にでも、説明致します。

    • C#スクリプトを設置

    「CliStaScript」を「Scene」というタブが付いてる方のエリアの球にドラッグ。

    • タイトルのシーンを保存

    メニューから[File]-[Save Scene]を選択。名前を「TitleScene」にして保存。

    • 作成したシーンをビルド時に内蔵させるシーンに追加する

    メニューから[File]-[Build Settings...]を選択。表示されたウィンドウの上部の「Scene In Build」とと書かれている下のエリアにシーンを追加します。「TitleScene」、「GameScene」の順番でドラッグ&ドロップして下さい。

    • ビルドする

    メニューから[File]-[Build Settings...]を選択。
    [Build]というボタンを押すとアプリ名の入力画面に成ります。「syake9ma Game」という名前で作成して下さい。
    今回はここまで実際放送では2時間程でしたが、とりあえず迷路の脱出ゲーム的な物が出来ました。
    ゲームとは言い難いですが、一応これも一つのゲームの形だとは思います。
    いきなり大掛かりなゲームは作れないと思うので、皆さんも簡単なゲームから作ってみては如何でしょうか。

    • Unityで作られた作品

    Unityのサイトに行けばUnityで作られた作品の紹介ページが有ります。
    Unityを使って、どのようなゲームが出来るか参考にしてみては如何でしょうか。

    Unity - Gallery

    https://unity3d.com/gallery

    • 20分でメダルプッシャーを作成

    ニコニコ動画には、3年程前から、
    Unityを使って20分間でメダルプッシャーゲームを作る動画が、
    投稿されておりました!


    とりあえず、第1回目の放送以上の事を学んで終わりました。
    詳しい説明や補足は、画像と一緒に徐々に追加して行こうと思っております。

    そして、第2回目の放送は、本日午後10時からになります。
    良かったら皆さん是非見て下さいね!



    さて私のブロマガは『皆でゲームを作りたい!~Unityを1から触れる放送~』という生放送とも連動してます。
    自分のコミュニティと連動してUnityでのゲーム制作の勉強や、今後は企画など話し合ってリスナーとゲームを作ったり、その進行状況を発表していきますので、良かったら是非コミュニティに参加して下さい。



    ブロマガは『皆でゲームを作りたい!~Unityを1から触れる放送~』放送後、翌週金曜日午後9時を目標に更新予定。
    くまごろうのごろごろブロマガ』は無料ですのでメール配信の購読登録と、“しゃけとりくまごろう”のお気に入り登録をよろしくお願いします。

    参考記事
    強火で進め
    http://d.hatena.ne.jp/nakamura001/20131008/1381239414


  • 広告