かいわれのゲーム制作ブログ

◎  ゲーム制作17 

この3週間はひたすらC#の勉強をしてました。
変数の概念なんかはウディタと同じなので、すんなり理解できる部分もちょこちょこありました。
一応基礎の基礎は理解できたので、Unityのチュートリアルのシューティングゲームに挑戦してみました。
キー入力と向きと速度が記述されいるスクリプトを見てみると

using UnityEngine;
using System.Collections;

public class Player : MonoBehaviour
{
// 移動スピード
public float speed = 5;

void Update ()
{
// 右・左
float x = Input.GetAxisRaw ("Horizontal");

// 上・下
float y = Input.GetAxisRaw ("Vertical");

// 移動する向きを求める
Vector2 direction = new Vector2 (x, y).normalized;

// 移動する向きとスピードを代入する
GetComponent< Rigidbody2D>().velocity = direction * speed;
}
}

まずfloatでスピードを宣言。なんでintじゃなくてfloatなんだろう・・・?
5.1とか5.2とかで微調整したいから・・・?
まぁいいや、Update内にInput.GetAxisRawでキー入力。
それをVector2()の中に入れてnormalizedで向きを求める。
で、これにspeedを掛けてRigidbody2D.velocityに代入して終了。

3週間前はちんぷんかんぷんだったけど、わかる・・・わかるぞ!!
勉強の成果が出てるようでうれしい。

◎  ゲーム制作16 

なんとなく気になったのでUnityをさわってみました。
チュートリアルを見ながら金の玉を操作してピンクの棒を取るゲームを作ってみました。※エロゲーではありません
無題

基本操作はなんとなくわかったのですが、スクリプトが意味不明です。
最初は意味不明でもチュートリアルが終わる頃にはわかるようになるかなーと思って進めてたんですが
結局まったくわからず終わってしまいましたw
もうね、最初から意味不明。クラス定義や特定のメソッドってなんだよw
仕方ないので調べてみたら

「メソッドとは、オブジェクト指向プログラミングにおいて、各オブジェクトが持っている自身に対する操作。オブジェクトは「データ」と「手続き」から成っているが、その「手続き」の部分に当たる。プログラミング言語によっては「メンバ関数」と呼ばれることもある。」

・・・はぁ???
調べてもわけわからん。
いくつかチュートリアルを見てみましたが、どこもプログラムの書き方や概念は知ってる前提で説明してましたね。
とりあえず終わらせましたが、書き方や概念がわからないので応用が利かずまったく意味がなかったので、
まずプログラミングの勉強から始めようと思います。
一朝一夕でどうにかなるものではないのでしばらくはプログラミングの勉強日記になりそうです。


back to TOP