Processingで学ぶ関数
はじめに
この記事は子供向けに作成しています。
必要な知識
・setupとdrawがわかる
・変数がわかる
関数とは?
「かんすう」と読みます。
英語では「Function(ファンクション)」と呼びます。
関数と聞くと何やら難しそうですが、なんてことはありません。少しずつ覚えていきましょう。
関数を使うメリット
簡単に言うとプログラムコードをまとめられます。
なんども同じようなプログラムコードを書く必要がなくなり、そして後からプログラムコードを読み直した時にもわかりやすく、プログラムコードの変更も簡単になります。
「関数がわからないとゲームが作れない!」ということはありませんが、関数がわかるとグンっとプログラミングスキルがUPします。
こんな人に読んでもらいたい
・ゲームを作っているが、何か変更を加えるたびに修正が大変だと思っている。
・後からプログラムコードを読み直した時に、どこがなんの処理かわからなくなりやすい。
初めての関数
まずはsetupとdraw
void setup(){
size(600, 400);
}
void draw(){
background(0);
}
人の顔の絵を描いてみます。
void setup(){
size(600, 400);
}
void draw(){
background(0);
// 顔っぽい絵を描いていきます。
noStroke();
// 顔
fill(255, 255, 255);
rect(200, 100, 200, 150);
// 左側の目
fill(30, 30, 30);
ellipse(250, 150, 10, 10);
// 右側の目
ellipse(350, 150, 10, 10);
}
機能をまとめる
// 顔っぽい絵を描いていきます。
noStroke();
// 顔
fill(255, 255, 255);
rect(200, 100, 200, 150);
// 左側の目
fill(30, 30, 30);
ellipse(250, 150, 10, 10);
// 右側の目
ellipse(350, 150, 10, 10);
drawの中の、この部分のプログラムって「顔を描く」というプログラムですよね。
であれば、「顔を描く」という機能で、プログラムをまとめてしまいましょう。
void setup(){
size(600, 400);
}
void draw(){
background(0);
}
// ここが追加された!これが関数!
void kao(){
// 顔っぽい絵を描いていきます。
noStroke();
// 顔
fill(255, 255, 255);
rect(200, 100, 200, 150);
// 左側の目
fill(30, 30, 30);
ellipse(250, 150, 10, 10);
// 右側の目
ellipse(350, 150, 10, 10);
}
「kao」という関数を作りました。drawの中にいた、顔を描いていたプログラムコードをkao関数の中にお引越ししています。
関数を呼び出す
kao関数を作りましたが、ここまでは関数を作っただけです。作った関数は、呼び出して初めて機能します。drawの中で呼び出してみましょう。
void setup(){
size(600, 400);
}
void draw(){
background(0);
// kao関数を呼び出す!変数ではないので、「()」をつけて呼び出すぞ!
kao();
}
void kao(){
// 顔っぽい絵を描いていきます。
noStroke();
// 顔
fill(255, 255, 255);
rect(200, 100, 200, 150);
// 左側の目
fill(30, 30, 30);
ellipse(250, 150, 10, 10);
// 右側の目
ellipse(350, 150, 10, 10);
}
これでkao関数を呼び出すだけで、顔の表示ができるようになりました。
顔をどう描くかは、kao関数の中に全てまとまっているので、顔の表情を変えたかったらkao関数の中だけを修正すればよくなります。
最後に
これはまだ関数の少しの機能しか紹介していません。まだまだ便利な機能がありますので、続きをまた書いていきます。
Author And Source
この問題について(Processingで学ぶ関数), 我々は、より多くの情報をここで見つけました https://qiita.com/greatnekochan/items/46ffba4e3a1eebaec8bc著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .