読者です 読者をやめる 読者になる 読者になる

Unityでインディゲーム道!

プログラム、Unity初心者がインディゲーム制作を目指して日々思うことなどを書き綴ります。

"ゲームプログラマのためのコーディング技術"を読んで。やはりいい本はC++を採用してる問題も合わせて。

ひとまず通読したので、その感想を。自分のような一皮向けようとしている初心者にとっては非常にわかりやすく、レイアウトなども含め、いい本だと思いました。特に"クラス"については、いかにクラス設計すべきかの指針を具体的に書いており、そもそもクラスは何のために必要か?という部分も学ぶことが出来る本かと。オブジェクト指向の把握のしにくさは、このブログでも何度か書いてますが、そこらへんがキッチリ説明されていると思います。 

f:id:miur-us:20170426052641p:plain

  

題名に反し、普遍的な内容

ゲームプログラマのための、と題されてますが、むしろ普遍的な、基本的な技術についての内容になっており、実践的なプログラミング力(ちから)を付けるのには、最適な一冊だと思います。Amazonのレビューは割と厳しめですが。

この本で身につけられるものは、大きく分けて次の三つです。

 

・簡潔で読み易いコードを書く。

・クラスを上手く使う方法。

デザインパターンの使い方。

 

具体的なゲームのコードをどのように書くべきか、という内容ではなく、これらの理解のための基礎的な部分を説明しているのが本書の特徴だと思います。

コーディング技術ですからね、そこにだけ注意ですね。

サンプルコードはC++で書かれていますが、Unityを使う上でも非常にためになる知識が多く載っていると思うのですが、どうでしょうか。

 

f:id:miur-us:20170426044940j:plainUnityで覚える遊びのアルゴリズム

Unity関連の書籍としては、この本が有名ですが、これもプログラミングを主体にした本です。しかし、これはある程度プログラミングできる前提で、コードの書き方自体ではなく、あるルールのゲームを実現するには、どういうコードを組めばいいか?という内容になっています。つまりは『ゲームプログラマのための~』の対極にある本です。これについての書評もそのうち書きたいと思います。本記事の本と合わせて読むのがいいのかもしれませんね。

 

本としてのクオリティ

個人的な意見としてプログラミングについての本、特に和書は抽象的な説明のみになってしまっており、つかみどころのない文章になってしまっている場合が多いと思います。その結果、頭ではわかっても体ではわからない、という状態になってしまいます。まぁプログラミングは自分で書いて覚えていくものでしょうが。

 

Amazonの批判的なレビューに「今更な内容。この時期にあえて出す意味わからん」というようなものがありますが、そうは思いませんね。基礎的な内容を求めているヒトは自分を含めてたくさんいますし、何より基礎的なことをあえて今書かない理由の方が見つからないと思います。そう反論したいくらいには買ってよかったなと思います。要は"書き方"の問題であり、どう書かれているか?ということです。

 

例えば、プログラミングに関する名著に『リーダブルコード』があります。この本も、どう書くべきかの指針となるような本で、確かに名著だと思いますし、C#でのコードは一切出てこないのですが、かなり勉強になります。

この本も、『別に新しくもなんともないじゃん。』というレビューがあったそうです。

でも、この本は別に内容だけで評価されているのではなくて、その書き方によるところも大きいと思うのです。とにかくすごい読みやすいですし、読み物としてのクオリティが高いんです。読み通すこと自体は直ぐできますが、書いてあることを実際に出来るようになるには時間がかかりますし、何度も読み返すことになります。

何度も読み返すのが楽しいこと、が大事なんだと思います。

少し話がズレましたが、要はこの本もそういうクオリティを持っている自分は考えています。テキストとしてのクオリティが高いです。

 

いい本に限ってC++

これはもうそういう定めなんでしょうね。

以前紹介した『プログラマーの考え方が身につく本』もC++で書かれていますが、これも非常にためになる本です。C++は何でもできるし、使えるプログラマは本物だから、ということで採用したとのことですが、本著でもそういうことなんでしょう。

UnrealはまさしくC++がメインなので、Unity使い達にとっては羨ましい限りです。というかC++勉強すれば良いじゃん!って言われそうですが。

しかし、なんとなく読めるコードばかりですので、Unity使いであって、なんとか読むべきかなと。C#じゃないんだ・・・、じゃあいいかな。というのではもったいない!

C#で書かれたこのようなクオリティの本が欲しいところです。

 

まとめ

2015発ということで、新しい書籍に属すると思いますし、著者の方も実際にコンシューマ開発に携わっておられたようなので、昨今のコーディング技術を実践的に学ぶにはやはり良い一冊です。さらに精読をしていきたいと思います!!

 

ではまた!

 

"Yooka - Laylee" (ヨーカとライリー)の初見感想をまとめます!Made With Unity

いよいよ発売された"Yooka - Laylee"について!

6, 7時間ほどプレイした上での感想、レビューを書きます。ゲームデザインとしては、良くも悪くも昔ながらの3Dアクションゲーム。テンポに多少の問題ありかも?特に経験豊富なゲーマー(つまり子供の頃にバンカズやったような)にとっては、たぶん最初の三時間は少しかったるい。しかし、アクションの幅が広がってくると、俄然おもしろくなってくるぞ!というのが、筆者のファーストインプレッション。まだまだこれからという感じですが、楽しく遊んでます!

Unityエンジン製のアクションゲームとしては文句なし!! 

f:id:miur-us:20170418030319j:plain

注意!!

本ブログの性質上、純粋なゲーマーとしてのレビューとはなりませんし、一部評論家気取りな意見もあるかもですが、ご了承ください。

 

あとSTEAM版は日本語非対応です!!

 

オールドスクールな出来栄え

本作は、バンジョーとカズーイ精神的後継作として、キックスタートでの資金集めからスタートし、インディ制作によって生まれた作品です。

要は90年代のゲームのテイストを多く含みます。それが良くも悪くもはっきりと出ているような気がします。そういう意味で、オールド・スクールな作品かと。

懐古主義までには行ってないけど、かといって尖った新しさもない、みたいな。 

f:id:miur-us:20170418030408j:plain

木村カエラっぽい女科学者の変身銃でトランスフォーム!

メイン・エリアとなる敵の本拠地のタワーを探索しつつ、設置、あるいは隠されている魔法の本から各ワールド(オープンワールド仕様)に飛び、自由に探索して、散らばっている黄金の羽(アクションを買える)そして、目的物となるペイジーを集めていきます。ペイジーによって、入り口となる魔法の本(TOME デカイ本という意)はアンロックされ、さらにペイジーを消費することでエリア拡張されます。

なので、同じワールドでも、手に入れたアクションあるいは拡張によって、探検の範囲が広がる、というゲームデザインになっています。 一度クリアしたワールドでも、しばらくした後で来ると、意外な発見がある!というアレです。

 

・現代的なグラフィックで、あの頃のゲームを。

グラフィックですが、いいですよ。かわいらしい、あるいはキモカワなキャラ達が、CGアニメなワールドに生き生きと動いています。やっぱグラ大事!

・自由に駆け巡れる。

ただし、最初は出来るアクションが少ないので、熟練のゲーマーは多少イライラするでしょう。しかしゲームが進めば、自由に駆け巡れます。

・ただし、オープンワールドに放り出される。

オープンワールドというものは、その性質上、何をすればいいのか、どこに行けばいいのか?ということがわからなくなりがちですが、昨今のゲームはプレイヤーをガイドするサポート機能が多くあります。

しかし、Yooka Layleeには基本的にそういうものはなく、キャラクターとの会話を元に、ワールド内を探索して、かなり自発的に考えて行動しないとダメです。そういう意味ではやりがいはあるゲームだと思いますし、少し不親切とも言う事ができるかもしれません。あるムーヴ(能力)が必要な場面で、「ここは後で来たほうがいいかも」みたいなものはないということです。

 

テンポの問題(ゲーム全体の)

アクションゲームとしてのテンポは一切の問題はないと思います。

しかし、キャラ同士のコミカルな会話(字幕)を主体に、寸劇が多く挟まれてくるので、とにかく飛び回りたい!という人にとって、それらは邪魔な要素かもしれません。でもそれはゲームデザイン上、コミカルなキャラがコミカルなやり取りをするっていうのは、不可避ですからね。それいっちゃお終いよ。という部分ではあります。ライリーの毒舌とか笑えるんですけどね。これもある意味、昔ながらのゲーム。 

f:id:miur-us:20170418030525j:plain

各地にいるキャラクターとの交流も冒険のひとつ。

イベント戦がクイズ問題

これは個人的な好みからくる不満ではあるかもしれません。

えー、とにかく自分はボス戦でのミニゲームが嫌いです。しりとりとか本当に苦手でしたし、旗揚げとかも嫌いです。神経衰弱も。殴らせろ、と。

 

ボス戦ではないですが、第2エリアに移るのに、ボスの右腕的存在である、アヒルの科学者によるクイズ実質8問解かなければいけません。つまり早々にあるわけです。

ここのデザインに関しては、明らかなミス、というか自分が嫌なだけなんですが、めんどくせー!という感じでした。まぁ2,3回挑戦してクリアして進みましたよ。これ以降は、できるアクションが増えてきますし、面白さが加速度的に上がっていきます。

 

尻上がりなおもしろさ?

このゲームは、そんな感じがします。上に書きましたが、最初の三時間はチュートリアル的な部分も含まれているわけですが、まぁわりとこんなもんかな、という感じではあります。説明らしい説明もそれほどないので、慣れも必要です。しかし、進むごとに、大ジャンプ、あるいは滑空飛行などをドンドン覚えていきますので、そこらへんから面白くなってきています。ドンキーなどではおなじみの氷のステージが2ステージ目ですからね。音楽、雰囲気を含めて、ここら辺でグッと来た感じです。 

f:id:miur-us:20170418030620j:plain

トロッコゲームは各ワールドにあるようです。

Made With Unityとして

繰り返しますが、文句のつけようがないです。Unityであるということも意識することはありませんね。基本的によっぽどの高性能で、画期的なエンジンでもなければ、普通のプレイヤーが遊んでいて、エンジンを意識するということはないでしょう。Unityは汎用エンジンなので、もし意識するとしたら、それはネガティヴなものなはずです。

そういうの一切ないですね、マジで。

やはり、Unityでアクションゲームを作る!という人たちにとっては今後の1つの指標になるのでは?という気がします。というか自分はします。

とにかく更にゲームを進めたいと思います。 

  

ひとまず初感としては、こんな感じで。

 

 

For文の"For"って何だろう?という疑問。ある3つの言語を巡る小旅行。

 

何回繰り返しますか?

- How many times should I repeat for? -

 

そもそも論な話題です。同じような処理を何回も繰り返すのが得意なコンピュータにとって、プログラム上なくてはならないのがForループ文。でもこの"For"って何だろう?とずっと疑問に思ってました。で最近それを説明してくれているブログを見つけました!つまりは"A for loop statement repeats for a certain number of times."のforでした。原文のブログはこちら↓

英語なんでざっくりとした理解です、マイクロソフトの中の人のブログ。

while文はwhile(~の間、)なんでそのまんまではありますよね。

for文はfor a long time.とかのforであることはまぁなんとなくわかってはいましたが、やっと腑に落ちたと言うか、歴史的背景を知れましたね。多くの人にとってはあまり興味ない話かもしれませんが、ずっと気になっていたのでよかったです。

細かいところが気になるのが、僕の悪い癖!

 

上記ブログの要約

50年代後半に誕生した3つの言語FORTLAN, COBOL, ALGOLにはそれぞれループ機能文があり、ALGOLという言語においてはfor文が生み出された。それはその後の回数指定繰り返し文の座を確立した、ということです。

 

FORTLAN, COBOLはさすがに自分でも知っていましたが、ALGOLという言語は知りませんでした。ALGOrithmetic Languageからきており、アメリカとヨーロッパの科学者により作られた言語で、この中で現在のfor文の原型が生み出されました。ALGOLは知名度に関して他の2つの言語に比べたらそれほどではないけども、for文に限らずその後の全ての言語に決定的な影響を与えたようですね。

やっぱ何であれ歴史を知るというのは面白いなーと。現在へのいい意味でも悪い意味でも、影響というか因果関係が見えてくるので。

 

UnityはC#を使ってプログラミングしていますが、やっぱ楽なんですよね。まだまだ未熟ですけど。C言語とか軽く勉強しましたが、実際にCでプログラミングとか考えたくもないです。なぜC#が楽かと言えば、いろいろな積み重ねの結果であり、過去の反省点から改善されてきたからなんですよね。そういう意味では過去の偉人達への感謝とリスペクトは忘れずにいたいですね。

 

あとオブジェクト指向というものは、古い言語での問題点を解消するために生み出された考え方でもあるので、いきなりクラスについて教わるよりも、プログラミングの歴史的な経緯から学んだ方がその恩恵だったり、活用法が理解しやすいのでは?とも思いますね。最初は自分もクラスが何のためにあるか、よくわからないまま説明を読んでいたので。これはあまり良くないことだと思います。(あると便利だから"クラス"存在するのであり、なぜ便利なのか?という話です。)

 

歴史を学ぶということ

プログラミングだったり、コンピュータの歴史はここ60年ぐらいで異常なスピードで発展したものなんで、調べるとやはりかなり面白そうなんですよね。ただそれはそれでドツボに嵌ってしまいそうなので、ほどほどにしないといけないと思いますが。しかし、プログラミング言語は決して血の通っていないものなんかではなく、人の手によって作られてきたものなんだ、ということであり、それで作るもの、アプリ、ゲームにしろ、やはり人間味があるものを作っていくべきなんだろうと思います。

という作文チックな締めとさせていただきます。お後がよろしいようで。

 

 

"ゲームエンジン・アーキテクチャ"のサンプルを読んだ!![書籍レビュー]

f:id:miur-us:20170407185841j:plain

現代のゲーム制作を理解する上で、非常に重要な本のサンプル版を読みました。

Kindle1章を丸ごと無料で読むことが出来ます。分かり易く、興味深い内容が満載!!そしてUnityを使う上でも役立つ、ゲームエンジンとはいかなるものか?という根本的な部分を学べる一冊ではないかと思います! 

※画像は出版社 SBクリエイティヴから引用。

 

タイトルの通り、kindleでの"サンプル"です。しかしサンプルと言えども相当な量があり、無料分を読むだけでもかなり勉強になります。いずれ購入して、腰を据えて読んでみたいと思いますが、 とりあえず1章を読んでみて思ったことを書いてみます。

 

そもそもゲームエンジンとは?

ゲームエンジンといえば、本ブログで扱うUnityのことでもありますが、世にはゲームエンジンと呼ばれる物が多くあります。有名なのはUE4ことアンリアルエンジンやHalf-life 2で使われ、物理演算によって3Dゲームに新しい風を起こしたSourceエンジン。(ポータルもこのエンジンを使って作られましたね。)quakeエンジンなどなど。日本だとメタルギアソリッドで使われたFOXエンジンも。まだまだありますが、とにかく現代においては様々なものが存在し、いくつかにおいては外部に提供されて、それを用いて個人や様々な会社がゲームを制作しているというような状況です。 ではそもそもゲームエンジンとはどういうものなのか?という疑問が出てきます。

 

この本はまさしく2000年代以降のゲーム制作に欠かせないゲームエンジンそのものの全体像を明らかにしようという本なのです! 書いた人は現代のトップゲームスタジオのひとつであるノーティードックに所属する、ジェイソン・グレゴリーという大ベテランの方であり、その時点でこの本のクオリティは間違いないものだろうと感じますよね。Last Of Usはまさにこの人の手によって創られたのですから。

 

そもそもゲームエンジンとは現代の高度化し、複雑化したゲーム制作を効率よく進めるためのツールです。様々なものがあるにせよ、その基本的な機能や構成には多くの共通点が見受けられます。なのでこの本で説明される内容は当然Unityにも当てはまる部分があるわけです。

どういう風な構成要素を持ち、どういう機能があるのか詳しく説明していて、しかもすごいわかりやすい!もちろん専門的な内容ではあるので、完全に理解するのは難しいでしょうが、しかし読むのが楽しい本なので苦にはなりません。多分ゲーム制作をしていない人でも読めるような文章です。Unityは具体的にどういうことをしてくれているのか?なぜ手軽にゲームを作れるのか?ということを知るうえで欠かせない知識が書かれているわけです。Unityは我々にどんなものを提供してくれているのか?ということです。

 

Unityはそもそも簡単なのか?

Unityゲームエンジンの中でも使いやすいし、個人の場合を無料で使うことができるし、気軽にゲーム制作ができるよ!という部分を前面に押し出してはいますが、現実にはその機能は多岐にわたり、その全体を把握するのに筆者含め多くの方が、日々格闘なされているかと思います。 どういう機能があってどういうことができるのか、どういう使い方をすれば良いのか?ということについては、公式によるマニュアルがあります。しかし日本語訳の問題もあるのかもしれませんが、まぁなかなか頭に入ってこないわけです。なんとなくでも使える部分はあります。しかしツールの正しい理解は必須なわけです。

 

ですからこの本読むことで、現代のゲーム制作、そしてその基盤となるゲームエンジンへの根本的理解を深めることが、よりよくUnityを使うことが出来るようになるための鍵なのかもしれません。

とにかく分厚い本なので、読むのは大変でしょうが、少なくとも1章を見た限りでは、ものすごくわかり易いんですよね。筆者ももちろん翻訳の方の尽力が文章から伝わってきます。できれば近いうちに購入して、手元においておきたい一冊ですね。

 

ゲーム制作とは総合的アートである。

本の中で、ヴィデオゲームは"マルチメディアアプリケーション"と記述されます。文学、グラフィック、映像、音楽、プログラミング、インタラクティブ性等と様々な技術(アート)の結晶なんですよね。複雑であり、巨大な創作物なわけです。もちろん小規模なものもあって、自分含めたインディは小さくとも気の利いたものを作る、という目標があります。規模が小さいから簡単、というものではないと思います。そう考えると、ゲームというものはまだまだ将来性のあるものなのかもしれませんね。この本は、まさしく道標となるような一冊だと思います。

  

ゲームエンジン・アーキテクチャ 第2版

ゲームエンジン・アーキテクチャ 第2版

 

 

 

"けものフレンズ"最終回にむけて。かばんちゃんよ、神話になれ!

 

さて、いよいよけものフレンズ最終回を迎えようとしています。

11話はIQの下がるアニメとは何だったのか?というくらいに、いろいろと情報量が多い回であり、視聴者達はいろんな意味で打ちのめされたのではないでしょうか?20分じゃ足りなかったですね、1時間スペシャルでもよかった、そんな内容の濃い回だったと思います。

 

自分はニコニコで試聴しているので、ネタばれはかなり気をつけなければ!という感じです。 地上波は水曜深夜ということなので、まあネットを見ないようにするのが一番ですかね。で生放送ページに直接アクセスできるようにブックマークしました。

というのも11話は、ネタばれをネットで見てしまったので。やはりどういう結末になるにせよ、フラットな気持ちで見たいですからね。

 

 

けもの化するポストモダン

さて以前に 

unity-indie-dou.hatenablog.com

という記事を書いてみたわけですが、東先生による動物化するポストモダンまだ読めてません!!半分までは読んだんですけど、本格的な現代思想に関するところがなかなかツライ・・・そして何よりページが進まないのは、

 

この本が書かれた当時と今の社会状況、アニメ、ゲームを取り巻く環境がかなり異なったものになっている、からです。

 

はっきりいって、今あえて読む意味あるのか?という問題です。

この本が書かれたのは2000年代初頭であり、もう15年近くたっているわけですから、それはもちろんそうなってもおかしくないわけです。

そもそも、この本を引き合いに出したのは、ただ単に"けもフレ現象"を表層的に知ったときに、すごーい!たーのしー!と騒ぐ人たちを見て、これって動物化じゃね?って思っただけですので。

動物化するポストモダン』自体の問題ではなく、今更あえて、とりあげる意味があるのか?と疑問を感じているのは事実です。(あと東先生の文章が・・・

この本についての批判は、ある程度知っています、主なものは東先生のIT技術への不理解とかですかね、まぁそこらへんはあまりけものフレンズとは関係ないんで無視していいと思うんですけど。

とにかく当時の状況からは、予測できない状況になっていますし、この本に書かれている論理では説明できないものが、たくさんあると思います。

 

 

間違いなく動物化はしているが。

ツイッター含め、ネットでの騒動を見るに人々の動物化は、どんどん進行しております。でも、それは現代社会への防衛機能であり、高度に発達しすぎた文明社会においては避けられないことだとは思います。そういう意味では、ポストモダン的な批評というのは依然として意味があるのでしょう。 

ただし、時代は変化するし、人も社会も変わります。

あえて今この本について言及し、けものフレンズと照らし合わせる意味があるとすれば、それはけものフレンズはこの本に書かれていないこと、説明できないことが起きている、ということではないでしょうか?

 

この本の中で、ポストモダンとは1970年代以降の社会を指すようですが、おそらくいよいよポストモダン以降の時代がやってくるようです。ですから、この本が"けものフレンズ"をカバーできないのは当然だと思います。

 

フラクタルを見て、『なぜ東浩紀けものフレンズを作れなかったのか?』なんて企画も考えましたけど、そういうのはねぇ・・・。

 

とにかく『けものフレンズ動物化するポストモダン』については、

最終回以降ですね、きちんとまとめたいと思います。

  

 

個人的な最終回予想

最後にせっかくなので、どんな最終回を迎えるかについて考えてみたいと思います。多少のおふざけを含みますので、ご容赦を。

 

・時間が飛んで、数年後のジャパリパークから始まる。

エヴァかよ! ブン投げ系最終回にはなって欲しくないですけどね。

・巨人化したかばんちゃんがセルリアンを!

進撃の巨人じゃあるまいし!

・全滅エンド、歴史は繰り返される。

富野アニメ的な激動の最終回。サンドスターにより蘇った、かばんとサーバルが再び出会いEND。これをやったらやったでスゴイですけども。 

・かばんちゃんの旅立ち。新たなる冒険へ!

無難といえば無難な予想ですが、問題はたどり着いたのが崩壊した東京っていうあれです。かばんちゃんは最後の人類だった!とかいうやつです。

崩壊後の日本をサーバルちゃんと旅する、とかで二期できるんじゃ・・・

 

・・・。

こんなのはどうでも良くて!ただただ心して待つだけですね。

 

はたして、けものフレンズは十年に一度のアニメとなるか!?

かばんちゃんよ!神話になれ!!

 

 

Unity アセット・ストア巡り。[1] アセット紹介

無料アセットにも良いものがたくさんあります。とはいっても有料アセットを上手く活用することが、Unityにおいて重要な課題だと思います。そんなAsset Store巡りで見つけた、良さげなアセット5個紹介!

Youtubeへのリンクが多いので、少し重いかもしれません。  

全てがここにある?

Unityにはアセット・ストアというUnityでつかえるあらゆる素材、ツールを販売しているストアがあります。ありとあらゆるものがあるので、お金さえあれば買い揃えたものだけで、プロ級のものが作れてしまいそうな具合です。(おそらくそんな簡単には、上手くいかないでしょうが。)

 

ただし、その数、範囲は膨大であり、どんなものがあるのか?というのを把握するのにも膨大な時間がかかりますし、もちろんそれを全部買うわけにもいきません。なんで慎重に吟味して、選択する必要があるわけで。しかも買って終わりではなくて、使いこなせるようになるまで時間もかかりますからね。

 

なんで時間を見つけては、アセットストアをぶらぶら巡る、ということを最近になってはじめました。いくつかの比較的安価なアセットは既にいくつか買っていましたが、やはり本格的に探るとなるとなかなか大変です。 しかし、探してみるとやはりいろいろ面白いものが見つかりますね。ということで買ったものを含めて、いくつかまとめてみたいと思います。

 

 

世界が曲がる? "Curved World"

一個目らしく、派手に行きましょう!これをはじめてみたときはビックリしました!

地球が丸いことは皆知っていますが、これはその認識をぶっ壊します。


https://www.assetstore.unity3d.com/jp/#!/content/26165

Unity内部の位置関係に影響を与えることなく、その見え方のみに効果を与えるシェーダーのようです。映画『インターセプション』のようなひっくり返り、あるいは界王星のような小さな惑星みたいなのも再現できます。

奇妙な空間感は、興味深いですよね。そのうち買いたいです。

 

 

時間を支配せよ! "Chronos Time Control"

続いても、これはいずれ購入してみたいアセット!!


https://www.assetstore.unity3d.com/jp/#!/content/31225

時間を自由にコントロールできるようになる機能に関するスクリプトです。これも見た目的なインパクトはすごいですし、うまく活用できたらおもしろいゲームが出来そうです。スタープラチナごっこがやりたいっすねー。

 

時間巻き戻しによる、推理パートはバットマンアーカムシリーズでは御馴染みですが、とにかくアイディア次第でいろいろなコトが出来そうです。

 

 

パーティクルを極める。Ultimate VFX V2.6

パーティクル・システムというとUnityに内蔵された、大量の画像を表示させる機能であり、映像的な特殊効果を得るために使われます。その決定版アセットの一つともいえるのが、このUltimate VFX (V2.6)です!これは買いました!

(動画は無音ですが、正常です。)


https://www.assetstore.unity3d.com/jp/#!/content/26701

パーティクル関連も当然のように、大量にありますし、かといって自分で一から作るのも、学ぶのも無理!と悩んでいた中見つけたのが、このアセットでした。見たとおり綺麗なエフェクトで、日本人でも使いやすい癖のないキャラクターです。リアル系もゲーム系も一通りあります。

 

既成のエフェクト群が多彩で、作者本人によるチュートリアルyoutubeに上がっています。(当然英語のみ)それを見ながら、アセットに含まれる各マテリアルなどを使いつつ、自分で作ってみるのが良い勉強になっていますね。

そういう意味では、当時で約4000円、という値段はかなり手頃だと思いますね。アップデートごとに高くなるようなので、早いに越したことはないと思います。

 

無料の火炎系パーティクル・アセット"Inferno VFX"もあるので、

https://www.assetstore.unity3d.com/jp/#!/content/50735

これを試してみてから、でもいいんじゃないでしょうか?

 

 

サバイバル・ゲーム作るなら"Ultimate Survival"

これは出たばかりのようです。なぜか、お洒落なファンクが流れる動画↓


https://www.assetstore.unity3d.com/jp/#!/content/80368

最近はだいぶ食傷気味ですが、いわゆるクラフト要素アリのサバイバルゲームを作りたい!という方にはぴったりのほぼ完成形アセットです。

いわゆるRustとかForestとかそっち系統ですかね、銃もあるようです。

Version 0.1ということで今まさにスタートアップしたばかりのようですが、一通りの要素は十分出来上がっているように思います。

おそらく完成版は、一万は軽く超えるでしょうから早めに買ってしまうのも手かも。ただしsteamのアーリーアクセス同様、Unityのアセットといえど過剰な青田買いは控えた方がいいかもしれません。そこらへんも難しいところですよね。

 

 

カメラが全てを決める。"Third Person Camera"

3Dゲームにおける”カメラ”の重要性については、いずれ記事としてまとめたいところですが、これさえあれば大体オッケー!なのが、このスクリプト・アセット。


https://www.assetstore.unity3d.com/jp/#!/content/47601

これも買ったアセットの一つです。というのもカメラに関するプログラミングってかなり難しくて、やはり何らかのアセットを買うべきだろうと。いくつかのパタンによってスクリプトが用意されているので、カメラに貼り付けて、簡単な設定、調整するだけです。

 

壁際でカメラが壁を意識して動いたり、あるいは狭いところでの視点移動など、いわゆるメジャータイトル作品のようなカメラの動きをしてくれます。アセットのレビューにもありますが、ゲームを作るべきであってカメラシステムを作るべきではない!本当にそう思います。めんどくさ!!

 

とは言え、自分である程度のカメラ系スクリプトは書けるようになったので、それについては別の記事で発表できたらな、と思います。

 

 

最後に。

というわけで、5つですが面白そう、また役立つアセットを紹介させていただきました。もちろんまだまだありますので、随時このような紹介記事が書ければと思います。

次回は、無料アセットについてまとめてみるのもいいかもしれません。

ではまた!!

   

 

 

プログラミングにおける名付け、ネーミングの重要性について。

プログラミングにおいて、重要なのが変数メソッドネーミング。適切な英単語を選ぶことの大切さについて考えてみました。英語力問題に切り込みます。

  

名に魂は宿る。

プログラミングにおいて、メソッドや変数の名前付け、"ネーミング"は大事です。

どんな名前を付けるかは自由であるからこそ、どうするかはプログラマの責任。

これをきっちりやることでコードを読めば、何をどうしたいのか?というのがわかるようになり、つまり深層的な可読性を高めることができます。

 

ここで問題なのが、基本的には英語による名付けが中心だということです。

 

 

英語力は必要?それとも不必要?

プログラミング言語は、基本的には英語を利用した人工言語であり、様々な用語は英語に基づいています。

 

日本語というかローマ字で、ネーミングすることも可能といえば可能なのですが、問題があります。日本語漢字を主とした表意文字に根ざした言語だということです。なので、ひらがな、あるいはローマ字表記にすると、言葉のイメージが湧きにくいという問題があります。

 

英語は、逆に表音文字でありアルファベットの羅列ではありますが、スペリング自体に意味やイメージがあるので、それがアイキャッチになるわけです。

 

というわけで英語によるネーミングが、必然的に推奨されます。

 

そういう意味では、英語力というのは、やはりプログラミングにおいてはそれなりに必要なものであるし、下記の最も大きな問題への解決力になります。

 

 

適切な言葉を選ぶ、英語の語彙力。

変数名あるいはメソッド名を名付ける際に、大事なのは適切な言葉を選ぶこと。そのコードを説明しうる適切な言葉を選び組み合わせる、ということになります。

 

よって大事な事は、その意味を持つ英単語をただ当てはめれば良いと言うわけではなくて、その英単語のニュアンスも把握した上で使いこなすということが必要になってきます。

例えば「変える」という意味であれば、まず思いつくのは"Change"です。

しかし、変えるという意味を持つ単語はそれだけではありません。

vary, alt, tweak, convert, transformなど。

「変える」と一言に言っても、このように様々な英単語があるわけです。つまりそのメソッドにしろ変数にしろ、その状況、コンテクストに即した英単語を選ぶことが大事になります。

 

というわけで、適切なネーミング力を身につけるためには、リアルな英語力が必要になってくるのだろうと思います。

自分も英語はあまり出来ませんが、Dictionary.comなど英語関連の調べ物はなるべくネイティヴのところで調べるようにしています。