日々Unity勉強

初めまして、kazです。

現在Unityを使った、新作のアプリの開発に携わらせてもらいまして、その中で気になったことについて書いていこうかと思います。

 

最初はUnityの衝突判定についての話です。
衝突判定とはなんぞや?という方はブロック崩しを連想するとわかりやすいと思います。
ボールがブロックに当たった時にブロックが消える、ブロック崩しなので当たり前ですが、これも衝突判定があってこその処理になります。

 

Unityでの衝突判定は、オブジェクトにRigidbodyとcolliderのコンポーネントと処理を書いたスクリプトをアタッチするだけ、衝突させるだけならスクリプトもいらないんでめちゃくちゃ簡単ですね。
 

 

Rigidbodyはもちろんcolliderも色々便利で、見えない判定というものも作ったりできます。

colliderのInspectorにある『Is Trigger』の項目をtrueにすると物理演算がされない、つまりオブジェクトをすり抜けるけど衝突判定が取れる状態にできるんです。
これを利用してプレイヤーが特定の位置に到達(衝突)した時にイベントが発生する等のゲームのギミック作りも簡単です。
ただ注意点もあって、この衝突時に呼び出されるコールバックはOnTriggerになるのでOnCollisionでは何も起こりません!(実体験)
ついついやってしまうので気をつけねば・・・

 

またつまづいたこと、気になったこと等あったらあげていきます。
ではまた

「パース」「消失点」って何?

taeminです
いつも告知ばかり書いているtaeminだけど、今日は珍しく技術に関してです^o^
先日、社内で説明する質問される機会があったので、「パース」ってなに?「消失点」ってなに??!ってことをブログでも書いてみようと思います〜〜

この世のものは「パース」という概念に当てはめる事ができます。
イラストを描く上で「パース」はとても大切!

パースというと「建物」のイメージが強いけれど、人物にもそれを当てはめることができます。
画像の赤線が「パース」というものです。
青線が「アイレベル」、要するに「見てる高さ」ですね^o^

そのパースの中でも「1点透視」「2点透視」「3点透視」というのがあります!
非常にめんどくさいやつです!!!

では早速サプライド社内を例に挙げてみましょう^o^

これが1点透視
赤線がパースです

 

真ん中の黒いバツ印が「消失点」というもので、それに向かって赤線が伸びていますね^o^
1点透視の場合、縦と横の線は基本的に垂直水平

 

消失点というのは言葉の通り「その点に向かってモノが消失する」というものです。

次に2点透視
上の1点透視とは違い、2方向に赤線が分かれていますね。
青い線はパースに合わない斜めの線

 

2点透視の場合、左右に消失点をとり基本的に縦の線は垂直

 

最後は3点透視!
1点透視や2点透視と違って縦、横、奥行き、全てに点をとることになります。

 

パースがキツくない(点と点が近すぎない)と、自然に見えていいですね。

 

あえてパースをキツくとってインパクトのあるイラストを描くこともあります。
逆にパースを緩くすれば自然な感じに仕上げることができ、「何を表現したいのか?」の目的に合わせたパースのとり方をするといいと思います^o^

 

平凡を表現したいのに背景や人物のパースがキツいのは合わないし、インパクトのあるものを表現したいのに平面的なパースのとり方ではやはりイメージと合いませんよね。
かといって、パースでガチガチにしてしまうとそれはそれで不自然な感じになってしまうので、時には嘘を描く。
要は何事もバランスですね^o^

 

 

……いつものtaeminからは想像もつくまい…今回はちょっぴり真面目なブログになってしまった_:(´ཀ」 ∠):
次は緩く書きたい_:(´ཀ
」 ∠):
ではまた〜〜_:(´ཀ`」 ∠):

新アプリ!GHOST CRASHリリースしました!

以前のブログでチラっとちょい見せした新アプリがついにリリースしたよ!!

その名も

GHOST CRASH!!

ブロックを3つ揃えて消していく、ホラー系3マッチパズルゲームです!

世界ランキングにも対応しているよ!

ストーリーもちゃんとあるのだ!

そして今回はなんと!
わたくしtaeminのお友達である、歌手&声優の「かすみん」に、ゲームの主人公である女の子「ライ」ちゃんの声を当ててもらったぞ!
その美麗なボイスをプレイして是非ご堪能あれ^o^

GHOST CRASHのダウンロードはこちらから!!!
App Storeからダウンロード googleplayからダウンロード

 

 

*・゜゜・*:.。..。.:*・’*:.。. .。.:*・゜゜・**・゜゜・*:.。..。.:*・’*:.。. .。.:*・゜゜・*

オマケ
ボツになったライちゃん|ω;`)
ブログに乗っけて供養します|ω;`)

(本当は別の理由でボツになったわけだけど、営業さん曰く「ライちゃんはこんなに胸はない!!!」との事だったので。。。何にせよボツは回避できなかったのであった・・・|ω;`)ショボボ)

またね|ω;`)ノシ

新アプリをちょい見せ!

どうも たえみんです(・ω・´)
今日は、次回リリースする新アプリの情報をチョイ見せしちゃうよ♡(/ω\)キャッ

もうとっくにリリース出来てるはずなのに、某リンゴ社からリジェクトくらってリリースがなかなか出来ないのはここだけの話だよ( ;∀;)

本邦初公開!(ちょっとだけだよ!)

今回のアプリは今までの、お米とか、猫とか、顔とかとか……ではなく、、、

 

 

ちゃんと!

 

キャラクター(人)を!!!

 

使ったゲームになっています!☆(・д・´)

 

ゲームを作るにあたって、わたくし たえみんが、こんな感じにトップ画面の案を練り練りして……“φ(・ω・。*)カキカキ

 

構図が決まったところで、どんな感じの雰囲気にするのかラフを練り練り……“φ(・ω・。*)カキカキ

さて!どんなイラストに仕上がるかはリリースされてからのお楽しみに!
今回はキャラクターVOICEも入っているとか入っていないとか……!
乞うご期待あれ!( `ー´)ノ

 

こんなキャラも登場したり……( *´艸`)

今までのサプライドアプリとは、一味も、二味も、違う!
皆様是非お楽しみに!☆(・`д・´)シャキーン!

UniRxでコールバック関数の実装|ω・`)

 
今日はUniRx使ったコールバック関数の使い方だよ|ω・`)
今日使う顔文字はこれだよ|ω・`)|ω・`)

そもそもUnity + reactive extensions(Rx)の略でRx自体いろんな言語で使われてるから覚えて損はないと思う!!!!!!!!٩(๑`^´๑)۶

UniRxはdelegateやらeventと一緒で非同期処理で使ってるよ!!
 
 
まずはインスタンス化|ω・`)
ちなみに今回はイベントが発行されたタイミングを知りたいからUnit型を宣言してるよ!
Subjectに何も渡さないのはエラー出るからダメよ!!!|ω・’)
イベント発行時にstring渡したいならSubject(string)とすればよろし

 
宣言したら次は登録!|ω・`)
delegateでいう「変数 += コールバック関数」のとこやね!
UniRxは基本匿名関数でやってるけどね僕は(ドヤガオ

 
登録したらどこの処理で呼ぶか記述|ω・`)

 
実はこのUnit.Defaultを知るのに数時間Googleをさまよった。。。
どこ見てもだいたいstringやらint入れてたからね。。|ω;`)

UniRxはもっと便利な機能あるけど、大元の基本はこんな感じ!;ω;`)

そろそろ対人戦アプリ作ろうと思うこの頃…