jknimo’s blog

JKにもできる!ゲーム開発に挑戦するブログです♪

動かない原因発覚!コンポーネント格納位置が違っていました笑

なんとチュートリアルコンポーネントの格納位置が変わっていました!

[Unity初心者Tips]オブジェクトがクリックされたか検知する方法、よく見かける?あの方法と比較 - Qiita

チュートリアルでは、

Add Component>physics>Physics Raycaster

でしたが!

わたしの使っているUNITY(2017.1.0f3 Personal)では、このように。

Add Component>Event>Physics Raycaster

 

このやるせない気持ちは、どうやって解消すれば良いのでしょう笑

 

友達が突き止めてくれたのですが、自力では解決できない感じがしました。

 

UNITY、罠だらけです笑

 

ついでに、print文をスクリプトに埋め込み、Window>consoleで動作確認すればC#の挙動を目で見てわかるようになるって教わりました。

 

この収穫のほうが大きいかもです。

 

気持ちを切り替えて方法2をやってみます

なんかいろいろと忙しくって、結局、前回のままの状態です笑

ハマり続けていてもしょうがないので、今日こそ気持ちを切り替えて方法2を一からやってみたいと思います。

[Unity初心者Tips]オブジェクトがクリックされたか検知する方法、よく見かける?あの方法と比較 - Qiita

あ、あとdebug.logの使い方も習得しないと。。。

なんか途中までで中途半端なのは気持ち悪いですが、気持ち悪いのにも慣れないといけないのかもしれないです笑

 

 方法2をやってみようと思いcubeだけ作ったところで方法1にもプロジェクトを枝分かれさせて使いたい!と思って、プロジェクトの複製方法がわかりません。

そもそもプロジェクトって何か厳密に理解できていないし、プロジェクト途中版から枝分かれさせたい時など、どんな管理するんでしょうか。

[Unity]シーンとプロジェクト | CHO DESIGN LAB

うーん?UNITYのプロジェクトって複製できないんですかね?

他にも検索してみましたが本筋と違うので今日はスルーしときます。相変わらずわからないことだらけです。

 

 そして方法1も方法2も、動作確認できませんでした笑

挫折感を味わいつつも、他のチュートリアルで経験を重ねて後日再チャレンジしたいと思います!

 

と思い、記事を読み進めたら、動くわけなかった笑

後半にRaycastをカメラに追加と書いてありました。

Rayを飛ばさずして方法1も2も動くわけないですよね!

 

教訓=記事を最後まで軽く読んでからチュートリアル実装に至るようにする!

 

と思い意気揚々と設定しようとするも、今度はPhysics Raycasterコンポーネントを追加できません笑

チュートリアルのGIF画像と、さわっているUNITYのメニューが違う!

Add Component>Physics>Physics Raycasterコンポーネントが選択肢にありません笑

UNITYのバージョン(2017.1.0f3)がチュートリアル記事のと違うんでしょうか。。。

 

と思ったら、EventSystemをシーンに配置する工程をすっ飛ばして作業してたのに気付きました。

でもやっぱりRaycasterコンポーネントは出現しません笑

 コンポーネントって内包されているモノじゃないんですか~!?笑

 

と思い調べてみても、さっぱりわかりません。

わからないことだらけですね。慣れるとそのうちわかるようになるんでしょうか。

uGUI (UnityのUI機能) の使い方まとめ - mikan_daisuki’s blog

uGUIチュートリアル – Metal Brage

ふむふむ。。。

nGUI uGUIの比較&選択 - Qiita

プラグイン??何らかダウンロード等しないといけないんでしょうか。

【Unity】Rayの使い方まとめ - 藍と淡々

Unityのレイキャストとは何ぞや?(自分用) - Qiita

えっ!?公式のチュートリアル動画があるんですか?

知らなかった。でも英語?

 

とりあえず、いったん挫折することに!

 

いろいろ調べると断片的に知識は増えるので、たゆまず取り組むのは価値があると感じつつも、達成感は味わえず、迷宮をさまよい続けている感じです笑

クリックのチュートリアルでまたハマってます!笑

[Unity初心者Tips]オブジェクトがクリックされたか検知する方法、よく見かける?あの方法と比較 - Qiita

Raycastでクリックされた物を刺す方法は、スムーズに(チュートリアルを入力しただけで)動作しました!

 

が!次(EventSystemを用いた方法の[方法1])で、ず~っとハマっています!笑

あきらめて、更に次([方法2])を試したほうが良いのかなぁ。

でも、な~んか気持ち悪いので、[方法1]を動作させたいんですが。。。

 

ブロック崩しがプレイできるようになりました!

前回のチュートリアルを進めブロック崩しがPCで遊べるように!

PrefabとInstantiateの基本(2)効率的にBlockを並べる:「はじめてのUnity」のブロック崩しを改造しながら学ぶ - Qiita

といっても、ブロックをC#スクリプトで配置するところまで。

まだ終了判定や表示などゲームとしては未完成ですが、マウスで左右にパドルを動かしブロックを消せるところまで進めました。

 

しかも、配列するプログラムは途中から自己流で作ったんです!

後でチュートリアル読んだら全然方式が違ってわたしの方法がダサすぎて死にそうになりました!

大幅に教材と比べて機能劣化しています笑

 

まだチュートリアルの残りがあるようなので、自己流が災いしなければ良いのですけど笑

 

そしてなんと目次を後に見つけてしまいました。ネットで学習するのは難しいですね。  

Unityチュートリアルindex - Qiita

 

スクリプトアレルギーなので、このわかりやすい解説にすがるようにとりあえずザっと読んでいくことにします。 

[超初心者向け]UnityでのC#の基礎(1)基本の型float,string,bool,byte - Qiita

Unityの核であるMonoBehaviourについて - Ideals and Reality

 

 

さっぱり頭に入ってきません!笑

きっと、知らない言葉と具体例不足で抽象的すぎて何も掴めてないんだと思います。

とりあえず現時点では、こんな便利なページがあるんだくらいに思っておくことにします。

 

マイクロソフトが作ったC#、そしてそれを改造している?UNITY。

この基礎の基礎からちゃんと学習しないといけないんだろうなぁと思いました。

近々UNITY抜きでC#のプログラムの基礎を学ぶ必要があるのでしょう。面倒ですね笑

しばらくはチュートリアルと教本教材の改造で行きます。

 

[Unity初心者Tips]オブジェクトがクリックされたか検知する方法、よく見かける?あの方法と比較 - Qiita

Unity - スクリプトリファレンス: Input.GetMouseButtonDown

知りたいことが丁寧に書いてあったので、習ってプロジェクトを作ってみます。

 

 

あと、チュートリアルの検索に限界を感じ、UNITY本とC#本を購入しました。泣きそうなくらい高かった!合計5000円と少し!

本については、使うときに触れていきます。

 

チュートリアル改造に挫折したので、別のチュートリアルやります!

できるかわからないけれど、チュートリアルで作ったAPK用のプロジェクトを改造して、スマホでタップして何かさせたいと目論んでいます。挫折しそうなら別のことやります。

 

で、検索してたら、C#ソースコードで知りたかったことを解説しているサイトを発見!

[超初心者向け]やっと納得、Unityを初めて触ると出てくるC#の何だあれの答え - Qiita

パッと流し読みしたところ、さっぱりわからないけど便利そう!と思ったので後日また読もうと思います笑

 

 タップの方法を検索。

UnityでiOS/Android/Editorの共通タッチ処理を実装する - Qiita

 うーん、難しい!

C#の基本や、ベースのチュートリアル構造を理解していないから改造できないんだと思いました。

 

あっさり挫折して、別のチュートリアルを実装してみたいと思います笑

どのチュートリアルにするか検索してみます。

期待している内容のチュートリアルが発見できないです。

できるだけ簡単な構造をゼロから作りスマホで動作するチュートリアルが希望です。

 

理想のチュートリアル探しに疲れたので、とりあえずこちらを入力してみようと思います。

Unityで超入門3Dゲームを作ってみる | SONICMOOV LAB

短そうなので数時間で終わると思ったら、スクリプトがエラーで動かずハマりました笑

エラーメッセージをgoogle翻訳したら、UNITYのバージョンが違う?のかな。

さっぱりわからないのであきらめることにしました笑

 

もう数をこなしたほうが良いかも!ってことで 

Unity - Developer - はじめての Unity

[超初心者向け]Unityチュートリアル「はじめてのUnity」のブロック崩しと同等をC#で::(3)動くボール - Qiita

 この2つに絡んでみようと思います笑

 颯爽とチュートリアルを進めるも、似た非なるチュートリアルを見ながら作業したせいか、途中で大混乱してしまいました!

Qiitaのほうだけで良いと思いました。C#だし。

 

 

 

apkできました!

さんざんハマりましたが、やっとapkファイルが作れて、android端末上でチュートリアルゲームが動作するようになりました!(たぶん)

 

apkがビルドされない問題をどうやって解決できたか、というと。。。

 

起動しっぱなしのUNITYを一度閉じて、再起動したらビルドできました!(汗

推測ですが、インストールしたSDKJDKが有効になった?気がします。

 

気を紛らわすためにWebGL版をビルドしようとして、もしかしてUNITY再起動が必要なのではっ!と思いついたわけです。

 

UNITYでゲーム作りを覚える前の環境設定で、かなーりハマり続けましたが、やっとこれから勉強開始できそうです笑

 

やっぱり一人っきりで挑戦すると厳しいですね~。誰か教えてくれないかなあ。

 

 

さて、次は何しようかな。

スマホでタップ操作?それとも別のチュートリアル

悩むな~。

andoroid用にビルドできない!

めっちゃハマってましたが、よくよく検索したら皆同じところでハマってたようです。

【Unity、Android】最新のAndroidStudio入れたらUnable to list target platforms.が出て困った - naichi's lab

ここ見て解決!

10時間くらいハマりました。もー!なんだったの!

 

と思ったら、またエラー出ました。敷居高いです。

f:id:jknimo:20170911235925p:plain

また調べないと。

 

UnityのBundle Identifierには何を入力するのが妥当なの? - 器用貧乏研究所

こんな感じの記法で、どこかに入れればいいんでしょうか。

 

Unity での Bundle Identifier の設定方法 - Over&Out その後

ここ見て適当に入れてみました。

 

[Unity] Android APK ファイルをビルドする - Unityプロジェクトのビルド

大枠でこの通りなのに、何もできない!なんで~!?

apkが生成されるフォルダに何もファイルが無いけれど、エクスプローラで見ると0kbのファイルがあるけどフォルダ内にはapkファイルが無い現象に。