アフィリエイト広告を利用しています

現在ははてなブログで投稿しています!

広告

この広告は30日以上更新がないブログに表示されております。
新規記事の投稿を行うことで、非表示にすることが可能です。
posted by fanblog

2017年06月24日

unityでのプログラミング基礎知識 3

計算について

unityの計算は、少し特殊です。
プログラミング特有の記号が使われたりします。

特有の記号ゆえか、とてつもなく計算がややこしいです……。
まぁ、書き方次第で楽になるはなるんですがね。

(思ったけど、特有の記号なのだろうか……。
 まだ習っていないだけではないのだろうか…)

ここでは、2つともご紹介、解説をしていきたいと思います。





計算の表し方 1

まずは簡単な方から解説していきたいと思います。
ですが、よく考えて理解すると、算数の計算と変わりません(笑)

取り敢えずサンプルを出すと、
//変数宣言
int v1 = 10; //初期値として値を入れる
int v2 = 20;
int v3 = 30;
int v4 = 40;

void Start () { //ゲーム開始直後のみ呼ばれる
 v1 = v1 + 5; //v1 には 15 が入る
 v2 = v2 - 3; //v2 には 17 入る
 v3 = v3 * 8; //v3 には 240 が入る
 v4 = v4 / 5; //v4 には 8 が入る
}

と、この様に式が作られる訳ですね。

……と言っても分かる訳無いですね(笑)
それでは、順に解説していきます!

まず頭に入れて置いて欲しいのが、「*」と「/」です。
これらはそれぞれ、掛ける割るの事です。

これが頭に入っていれば、勘の良い方は分かるでしょうか?
分かってしまえば、それまでですね(笑)

それで、まずはじめの変数宣言はもう大丈夫ですよね?
変数の型 変数名;ですよ!

サンプルに合わせて説明しますと、変数の型は今回は全て整数が入るint型です。
そして、変数名はv1やv2の事ですね。

今回の変数宣言には、「初期値」が入っています。
これは初めてですよね?

初期値というのは、文字通りで、変数に初めから値を入れておけます。
書き方は、以下の通りです。
変数の型 変数名 = 初期値;

今までに使ってきた変数宣言にイコールと初期値となる値を追記するだけですね!
簡単です。

なかなか本題に入れませんでしたが、いよいよやっていきます!
という訳でサンプルの1部を抜粋します。
v1 = v1 + 5;

の1文を持ってきました。

この文を噛み砕くと、v1には10が初期値で入っていますので、
 10 = 10 + 5;
という良く分からない式が出来上がりますね!

もちろん、これではダメなので改変します。
 v1 = 10 + 5;
これでだいぶ分かり易くなったのではないでしょうか!

これで、サンプルにあるコメント、v1には15が入るがどういう意味なのか分かりました!

意外と単純でしょう、そうでしょう。
他のも同じでように式を組み立てる事ができます。

v2 = v2 - 3; は v2 = 20 - 3; となります。
v3 = v3 * 8; → v3 = 30 × 8
v4 = v4 / 5; → v4 = 40 ÷ 5
というように説明出来ます。

これらが理解出来れば、次の少し難しいバージョンもすぐに理解できると思いますよ!

計算の表し方 2

上記の方法とは別に、コンパクトにする事が出来ます。
理解すれば、こちらの方が簡単かもしれません(笑)

それでは、またサンプルを。
//変数宣言
int v1 = 10; //初期値として値を入れる
int v2 = 20;
int v3 = 30;
int v4 = 40;

void Start () { //ゲーム開始直後のみ呼ばれる
 v1 += 5; //v1 には 15 が入る
 v2 -= 3; //v2 には 17 入る
 v3 *= 8; //v3 には 240 が入る
 v4 /= 5; //v4 には 8 が入る
}

1番初めのサンプルを少し変えただけです(笑)

どこが違うかと、
 v1 = v1 + 5; が v1 += 5; となっています。
他も一緒です。

表し方が違うだけで、やっている事は同じです。
v1 に 5 を足しています。

ちょっと分かりやすいように表にしてみました。
これらは、覚えておいた方が良いでしょう。





記号記号の説明
 A += B AにBを加算する
 A -= B AからBを引く
 A *= B AにBを乗算
 A /= B AをBで割る

この表を覚えてしまえば、計算の表し方はばっちしです!
実は、他にも != とかあるんですよね(笑)

それは計算に関係ないので後日記事を書くとして、少しまとめます。

まとめ

箇条書きで出してみます。
  • 「*」と「/」は、「×」と「÷」
  • 変数の型 変数名 = 初期値;
  • 変数 = 変数 [ 演算記号 ] 値;
  • 変数 [ 演算記号 ]= 値;

とこんな感じになります。

少し分かりにくいですが、その辺はご了承を……。
これで計算の表し方は覚えたでしょうか?

最低でも1つ目の方法、出来れば2つ目の方法を覚えて下さい。
これからは、2つ目の方を使っていきます。

それでは、今回はこの辺りで終わろうかと。
それでは皆さん、また次回!



【スポンサードリンク】








2017年06月23日

unityでのプログラミング基礎知識 2

関数とは

関数とは大まかにいえば、プログラムをまとめるもの、でしょうか?

unityでは、文字の羅列だけツラツラ書いていてもゲームは作れません。
unityは「ゲーム開発ソフト」ですので、「必要な時に、必要な分だけの処理」が必要になりますよね?

例えば、「剣が敵に当たったらダメージを与える」という処理などがそうです。

そこで役に立つのが、関数です。
というか、関数ないとプログラムは動きませんがね(笑)

という事で、そんな大事な「関数」を、前回お教えした変数を折り交えながら説明していきます!





ゲーム開発ランキングへ

関数について


まず、関数の書き方は
void 関数名 (引数) { 〜実行処理〜; }

こうです!

引数の説明は後に回すとしましてー。
思ったよりも大切な関数名の説明からいきましょう!

まず、関数の名前によって処理が決まっている、という事もあります。
決まっている名前以外の名前なら自分で決めれます。

例えば、
void Start () { }

この関数だと、Startという関数名ですよね?
これは処理が決まっていて、「ゲーム開始直後に1度だけ呼ばれる」という特徴を持っています。

他にも、
void Update () { }

この様にUpdateであれば「ゲーム実行中、絶え間なく呼ばれ続ける」という特徴があります。

ですが、
void Example () { }

このExampleという関数名はunityに設定されていません。
ですので、この関数を呼ばないと実行されません!

では、関数はどのようにして呼び出すのか?それは、
関数名(引数);

だけです。

引数の説明はまだしていないので無視するとして、上記のExample関数を呼びたい!
→Example();
はい、呼び出せました。

簡単でしょう?
あとは関数の{}内に実行処理を書き加えれば良いのです!
計算とかですね!

計算などは次回ご説明致します!
では、次はいよいよ引数の説明に入ります!

難しいんですよね……引数。
僕も、初めての頃はとても苦労しました……。
という訳で、皆さんにも分かるよう、解説していきます!

まず、引数とは何か?
言うなれば……「お土産」でしょうか……。

“ 関数を呼ぶプログラム ”にお土産を持たせて、実行させに行く……みたいな。
ちょっと自分でも何言ってるか分からないので、サンプルを。

//void 関数名 (引数) { 実行処理 }

//変数宣言
//変数の型 変数名;
int hp;  //hpという名の整数が入る変数(入れ物)

void Start () { //ゲーム開始直後に呼ばれる
 //hpに100を代入→hp = 100; に。
 hp = 100;

 //“ ReduceHp関数 ”を呼ぶ。
 //この時、引数(土産)は「10」に。
 ReduceHp(10);
}

//ここで土産(10)を「damage」として受け取る。
//土産を“ 受け取る ”時だけ、
受け取る変数の型を記述する。

//→ damage = 10; になる!
void ReduceHp (int damage) { //ReduceHp関数
 //hp(100)からdamage(10)を引く→ hp = 90;
 hp = hp - damage;
}


……これで分かって頂けるでしょうか…!
あまり自信は無いんですが……。

関数を呼びにいく際、値を持たせ、向こうの関数で使用する、という事なのですが……。

持っていった値を使って、呼ばれる関数の引数部分で変数を「作り」ます。
持ってきた値を作った変数に入れて使う、といった感じです。
説明が下手ですみません……!

ここで1つ言っておくと、引数はサンプルのように生で値を引数にしても良いですし、変数でも良いですよ!

いつも言ってるような気がしますが、分からなければ本当にコメントしてくださいね(笑)
大歓迎ですよ!

さて、文字数が2000を超えてきたのでそろそろ終わりにしようかと。
今回までで変数と関数、やってきましたがちゃんと覚えておいて下さいね!

プログラミングの基本中の基本となりますので!
それでは次回、計算の仕方や式の仕組みを解説します!

では、また次回!




【お勧めラノベ】

異世界魔法は遅れてる! 1

価格:691円
(2017/6/26 17:26時点)
感想(0件)



現代に生きる魔術師である八鍵水明は、突如現れた魔法陣によって友人とともに異世界へ転移してしまう。
だけど勇者として呼び出されたのは友人で、自分はそれに巻き込まれただけ!?
しかも帰る方法がわからない!?
水明は魔王討伐の旅に同行することを断り、ありとあらゆる現代魔術を駆使しながら、 もとの世界に帰る方法を探しはじめる――。





【スポンサードリンク】






unityでのプログラミング基礎知識 1

はじめに

今回は、「プログラミングの基礎知識」と言うことで軽くプログラミングの事をお話して終わります!

まずはじめに、プログラムっていうのは、いわばパソコンやシステムに対する命令ですよね。

僕達の世界にも、言語は沢山ありますよね?
それこそ日本語だったり、英語やフランス語などもあります。

それと同じ様に、プログラムにも言語があるんです。
僕が知っている言語だけでも、Java、C#、C++、htmlなど、沢山あるんですよね。

ちなみに、僕はJavaとC#、htmlが少ししか使えません!(笑)
その中でも、僕はunityでC#を使っています。
最近まではJavaを使っていたんですがね、都合上C#の方が良かったんです……。

ですので、コメントはどちらの言語でも返せると思いますよ!(`・ω・´)ゞ
まぁ、プロの方々に比べれば僕はヒヨッコに等しいんですがねー…

茶番がとても長くなりましたが、プログラム基礎をどうぞ。





プログラミング基礎知識 1

プログラミングは、大体「変数」「関数」「計算」この3つを使うと思います。

それぞれ説明していきますので、まず変数から。

◆ 変数
変数は、「値を入れる入れ物」だと思って下さい。
例えばHPやMP、スタミナとかで例えると、100とか260とかの「値」が入っていますよね?

その値を入れておくものが「変数」な訳です。
ですので例にそって説明すると、
「100が入っているHPという名の入れ物」が、さっきお教えした専門用語を入れると
「HPという名の変数に100が入っている」
という風になります!

プログラム書き方としては、
変数の型 変数の名前;

となります。
(スペースは半角で良いです。分かりやすいように全角にしました)

これで変数(入れ物)が作れました。
このように、変数を作ることを「変数宣言」と言ったりもします。

もう1つ、よく見てください。
1文の最後に「;」が付いていますよね?

これにはちゃんと意味があります。
「プログラムの1文が終わった」というのをシステムに認識させています。

これをつけて、初めて「変数宣言が終わった」という事です。
忘れずに付けましょう!

そして初っ端から気になったと思います。
「変数の型」とはなにか?

それは、「変数という入れ物に"なんの種類を入れるか"」を決めるものです。

なんでもかんでも変数に入れてたら、データがゴッチャになってバグの原因となります。
だから、この変数には整数、この変数には少数、というように整理できるようにする訳ですね。
まとめておくと、
int … 整数型(正の数や負の数)
float … 少数型(0.5とか)
bool … 真偽値(trueかfalseかどうか)
string … ストリング型(文字が入る)

※「bool」のtrueかfalseかはもっと噛み砕いて言えば、はい か いいえ か、○ か ✕ か、と言う事です!

ぐらいが代表的な型かと。

関数や計算まで説明していると文字数が凄い事になりそうなので、最後に変数のサンプルを紹介(というか説明?)して、終わりにしたいと思います!

関数などは次回以降に回させて下さい!すみません!

変数サンプル.cs
//コメント化 ここ(//)から1行はコメント

//変数の型 変数の名前;
int i; //整数が入る変数 i
float f; //少数が入る変数 f
bool b; //真偽値が入る変数 b
string s; //ストリングが入る変数 s

//変数宣言から値を入れる事も出来ます
int _i = 10;
//この場合、_i = 10; となる

説明は、↑このなかにあるので大丈夫だと思います!(笑)

分からないことがあれば、気軽にコメントくださいね!

それでは!




You Tubeの方もやっていますので、そちらもお願いします!






【お勧めのラノベ】

異世界チート魔術師(1) [ 内田健 ]

価格:626円
(2017/6/26 17:16時点)
感想(2件)



下校中、いきなり足元に魔法陣が出現し、異世界に飛ばされる男女2人。
気がつくと、そこは大草原で、目の前には“魔物”が!
2人はこれからどうするのか?
題名の通り、異世界で反則レベルをフルに使って無双する!
……これ、1番お勧めなんですよ!
是非、読んで下さい!




【スポンサードリンク】
自分でサイト作りたいと思いませんか?

ドメイン




レンタルサーバー



2017年06月22日

unityの画面説明

はじめに
今回は手始めに、unityの画面を見ていきたいと思います。
unityにはウィンドウが沢山あり、結構ややこしいんですよね……。

初めてunityの画面を見る方は「なんだこれ?」と思う事でしょう。
一部はウィンドウの名前を見て機能もわかるものもあるんですがねー…。

という事で、それぞれの説明に入りまーす!

unityの画面説明
まず、unityの初期画面は、この様になっていると思います。

IMG_0009.JPG
開いていないタブもありますが、番号が振ってあるので分かると思います!
(分かって欲しい(笑))

2017/6/23 追記 :
12番切れてますね、すみません!
あと画像が大き過ぎるのも直しておきます……
追記終わり


2017/6/24 追記 :
画像が大き過ぎるのを直しました。
追記終わり


それでは、1番から説明していきます。

  1. Scene(シーン)…
    主にゲームオブジェクトの配置を行います。

  2. Game(ゲーム)…
    作ったゲームをプレイ出来ます。

  3. Animator(アニメーター)…
    アニメーションの管理を行います。

  4. Asset Store(アセットストア)…
    「ストア」の名の通り、買い物です。
    有料の物から無料の物まで揃っています。
  5. Hierarchy(ヒエラルキー)…
    シーンと連動しています。
    シーンに設置してあるオブジェクトがここに表示されます。

  6. Project(プロジェクト)…
    3Dモデルやスクリプト、音楽ファイル、画像等の素材は全てここに表示されます。

  7. Console(コンソール)…
    ゲームのエラーや警告、デバッグ(メッセージみたいなもの)は全てこのコンソールに表示されます。
  8. Animation(アニメーション)…
    unity内で、簡単なアニメーションを作ることができます。
    ですが、僕はそんなに使わないと思います......(笑)

  9. Inspector(インスペクター)…
    選択したオブジェクトのコンポーネントが表示されます。
    コンポーネントについては、後日説明しますね。

  10. Navigation(ナビゲーション)…
    ナビゲーションは、目的地を設定したら自動で「障害物を避けて、そこまでの道筋」を生成してくれます。
    ちゃんと移動も出来ますよ!
    初期状態では表示されてないかも?

  11. Occlusion(オクルージョン)…
    「カメラに映っていない、余分な描写」をカットして処理の軽減をする項目です。
    これもまた後日、記事にしますね 。

  12. Services(サービシーズ)…
    「サービス」の複数形ですね。
    なんか英語の授業みたいになってますが......
    これは、unityがサポートしているサービスたちです。
    課金機能や、オンラインなどのサービスが揃っています。


……これだけで分かって頂けたでしょうか?
分からない事があれば、コメント下さいね!

次回は、軽くunityのプログラミングについての記事を書きたいと思います。

それでは、また次回ー ノシ



【スポンサードリンク】

はじめまして [ 独学の高校生プログラマ ]

皆さん、初めまして。

今回は初めてですので、このブログの事などを紹介して終わりにしたいと思います。

自己紹介
毎日……ではないですが、ゲーム開発を頑張ってるPinoMatchaです!

特徴としては、まだ高校生って所ですかね?
プログラミングも独学でして、分からないことが多々あります。

そんな感じなので、初心者さんやこれからゲーム開発をしたい!と思っている方には分かりやすいかもしれません!

上記の通り高校生の身で、更新などが不定期ですが頑張って更新していきます!

今後とも、よろしくお願いします!

(プロフィールと被りまくってる(笑))

当ブログについて
当ブログはゲーム開発ソフトである「unity」を使ってゲームを開発していきます!

なぜunityなのかというと、1番初めに出会ったソフトがunityだから、というだけです(笑)

ゲーム開発ソフトは、他にも沢山あるんですよ!
有名どころだと、ツクールとかですね。

まぁ、僕はunityしか使えないのでunityを使っていくしかないんですかね(笑)

話が逸れましたが、作っていくゲームのカテゴリー的には、ARPG(アクションロールプレイングゲーム)を作っていきたいなぁ、と思います。
(ARPGが分からない、という方はGoogle先生に頼りましょう……)

他にも、プログラミング講座みたいな感じで、プログラムの解説も入れながらやっていきます。

分からない事、書いてほしい記事の要望などがあれば気軽にコメント下さい!
モチベーションも上がりますし!

コメントは、気付いた時に必ず返します!
僕自身、ゲームを開発する時間が欲しいのでその辺は察して欲しいですが……(笑)
コメントが返って来ない!という方は、再送か、「おーい」とでもコメントで呼んでくださいね(笑)

このブログは、長く続けたいと思います!
数十年くらいやりたいなぁと思ってますので、更新が遅い!などあっても、気長に待って頂けるとありがたいです!(^^ゞ
それでは、今回はこのへんで。



【スポンサードリンク】

検索
プロフィール
ピノまっちゃさんの画像
ピノまっちゃ
どうも、ピノまっちゃ(PinoMatcha)です!
ゲーム制作をちょこまか頑張ってる大学生で、プログラミングも独学です。
ですので実力は全然ですが、最善を尽くして頑張っております!

名前の由来はピノの抹茶味が好きだからじゃなくて、ピノと抹茶が好きだからです!


更新 : 不定期!
プロフィール
新着記事
最新のコメント
更新事項
2018/8/2 定期更新への変更の報告に追記しました。

2018/5/10 「続きを読む」機能の使い方がやっと分かりました。

2017/9/14 プレイヤーを動かす:関数の解説の一部を書き直しました。

2017/8/1 【unity5】カメラ移動・回転させる方法に多数の画像を追加しました。
カテゴリーアーカイブ
YouTubeチャンネル
Fantiaリンク
よければ応援お願いします!

Pixivアカウント
現在、調整中です…
×

この広告は30日以上新しい記事の更新がないブログに表示されております。