ホーリーのプログラミング日記

ホーリーのプログラミング日記

エキセントリック・スーパーアプリクリエイター / アプリ総DL数 約180万 / 全然分からない 俺は雰囲気でアプリを作ってる / iOS : apple.co/3m3HxSm / Android : bit.ly/3ma0liZ

テキストを音声に変換出来るサイト「Sound of Text」が便利すぎる件

f:id:gevvoihorry:20190314193801p:plain

 

Sound of Textってサイトを見つけたんですよ。

これテキストを音声に変換して、それをダウンロード出来るサイトなんですよね。

Sound of Text

 

ドットインストールのタグチさんが紹介されてるのが2014年なので、結構前からあったサービスなのかな?

僕は露骨に今日知りました。んで、こうやって紹介している次第ですw

Google翻訳で生成した音声をダウンロードできる『Sound of Text』 | 100SHIKI

 

分かりやすく言えば、グーグル翻訳の音声を、そのままダウンロード出来るサービスなんですよ。

グーグル翻訳使ったときって、音声流すボタンがあるじゃないですか。

 

f:id:gevvoihorry:20190314194000p:plain

(これですね)

 

この音声をそのままダウンロード出来るという代物です。

 

ちょうど来月あたり韓国語アプリを作ろうと思ってて、その音声に悩んでたんですよ。

やっぱ音声はあったほうがいいと思うんですけど、探すと有料のものしかないんですよね。当たり前っちゃ当たり前なんですが。

 

んで、バリエーションも限られてるんで、どうしようかと悩んでたんですが、このSound of Textを知ったので、ちょっとこれでやってみようと思います。

気になるのは商用利用可なのかって点じゃないですか。

しかしサイトを見る限り、どうもそのことが書いてないんですよね。

 

これ開発は個人開発みたいです。こちらの方の。

Nick Pierson (@NickOnTheWeb) | Twitter

 

んでグーグル翻訳のAPIを使ってると思うんですが、この場合の著作権的なことってどうなるんでしょうか?
よく分からないんですよね。本人に確認するしかないのかな?w

 

とにかくめっちゃ便利なので、このままアプリに使えたらいいなと思っています。

俺には〇〇がない

 

「俺には〇〇がない」って言う人が嫌いなんですよ。嫌いっていうか、人として興味がないって言った方が近いかな?

まあとにかく嫌なんです。そういう人と接するのが。

 

「俺には向いてない」

「才能がない」

「時間がない」

「人脈がない」

「金がない」

 

何かをやってみて、それからこういうセリフを言うならいいんですけど、何ならやる前から言う人いるじゃないですか。

これは解せん。解せないですよ。

 

何事もそうですけど、まずは「やれる!!」って確信の元に一歩踏み出してみないと分からないでしょう。本当に出来るのかどうか。

踏み出す足に体重を乗せるからこそ前に進むわけで、それで進むから先のことが分かるわけじゃないですか。

 

それを〇〇がないみたいな言い訳して、踏み出す足に全然体重を乗せない人が嫌なんですよ。

まだパフォーマンス的にでも、一歩踏み出してたらマシな方かな。

たいがいは一歩も踏み出さないですからね。確かめることすらしない。

 

そういう人が正直嫌いですね。見てて面白くもなんともない。

 

===

 

えー、このままいってしまったら、ただ単に悪口を書いて終わりになってしまうので、「こういう〇〇がない」は許せるよって事例を、いくつか紹介したいと思います。

そりゃ世の中、ないって言われても当たり前どころか、逆に共感することも沢山ありますからね。

それらを紹介していきましょう。こんな〇〇ないは許せるぞ。

 

ソースがない

これはあるあるですね。スーパーで揚げ物を買ってきたはいいものの、ソースがない。

マヨネーズとケチャップはあるのにソースが切れていた、なんてことは誰でも経験あるでしょう。

んで、こうなると通ぶって塩を出すわけですよね。スーパーで買ったメンチカツに塩を振って食べ始めるわけです。

 

「塩を振ることで本来の旨味が分かる。そもそもソースをかけると、カリカリの衣も台無しになってしまうからね」

なんてドヤりながら食べるんですが、もって5分ですね。

5分後にはコンビニまでソースを買いに行くことになります。

 

愛がない

「この事業には1つ大きなピースが欠けている。それは愛だ。愛がない」

なんていうキザなセリフを言ってみたいものですね。

会議に出席した人全員のアゴが外れるようなセリフを言ってみたいでしょう。

こういうロマンチストに憧れます。

 

財布がない

これは飲んだときの通常営業ですね。あるあるすぎるやつ。

なんなら「俺のおごりでもう一軒行くぞー!!」なんて言いながら、二軒目に着いた時点で財布ないんですよ。

かなり恥ずかしいっていうか、一気に酔いが覚めるやつですね。

 

記憶がない

これも飲んだときの通常営業ですかね。

翌朝起きたはいいものの、昨夜の記憶が全くない。金もない。領収書だけは山ほどある。

起きるたびにあれこれ思い出す作業がありますよね。

 

歯がない

これは酒飲みあるあるでしょうか。泥酔して、寝て起きたはいいものの、歯がないわけですよ。前歯が一本ない。

酔っ払って転んだ挙げ句、折っちゃってるわけですよね。

出社して間抜け面を笑われるパターンです。

 

家がない

これはパンクですね。パンクロッカーあるあるでしょうか。

「ここを〜曲がれば〜〜俺の〜家〜。はい、おかえりちゃん!!」

なんて言いながら家ないんですよ。泥酔してフラフラ歩いてきて、この角曲がれば家だと思った場所に家がない。

これは結構焦りますよね。かなりパンクな事例だと思います。

 

===

 

えー、適当に思いついた例を上げてみました。

こういうのはいいですよ。こういう〇〇ないは好きですね。

 

ちょうど前半に書いた悪口も中和されたと思うので、このへんで終わりにしようと思います。

 

この記事には悪意がない。

【Unity】ScrollRectのスクロール位置をスクリプトから変更する

 

自分への備忘録です。

 

ScrollRectを使って、長ったらしい文章を表示させてたんですけど、場面を切り替えても、スクロール位置が戻らないんですよ。

GIFで説明するとこんな感じです。

 

f:id:gevvoihorry:20190312070511g:plain

 

これいくつか方法があると思うんですが、今回はスクロール位置をスクリプトから変更しようと思いました。参考にしたのは公式のこれ。

Unity - Scripting API: UI.ScrollRect.verticalNormalizedPosition

 

public ScrollRect scrollRect;

 

ScrollRectを設定して。

 

scrollRect.verticalNormalizedPosition = 1.0f;

 

verticalNormalizedPositionを変更してやればOKですね。

一番上に戻すには1.0fを入れてやればOKでした。

サクッとアプリ開発

 

出来たら苦労しねーよ

 

それが出来たらどれだけ楽か。

やれどやれど終わらん。

そんなに難しいことしようとしてるわけじゃないのに、全然終わらんわ!!

 

、、、

 

序盤からエキサイトしすぎました。

どうもこんにちは。先日禁煙を試みた男ホーリーです。

 

毎朝早起きして、日の出までにタバコを1箱吸うのが日課だったんですが、これ大いに無駄だなと思い、禁煙を試みたんですよ。

んでタバコ代わりにフリスクを口にしてたんですが、慣れてないせいか5~6粒くらい出てくるわけです。こっちはちょうど2粒出したいっていうのに。

 

でも周りの目があるんで、「わしゃ最初から狙って5粒出しとるんじゃい」って顔しながらボリボリ食べてたんですけど、いつまでたってもその調子なんで、辛くなってきました。

フリスクが2粒出ないことが原因で、禁煙に挫折しましたよ。

 

いやー、あれはムズイ。フリスクはテクニックがいる食べ物なんですね。

 

===

 

えー、なんの話をしたいのか忘れましたw

とりあえず禁煙についてはあれですね。やらないといけません。

 

タバコは無駄ですよ。最近はタバコ吸える場所が限られてるんで、そこまでの移動時間が無駄。

また僕にはタバコ吸わないと集中出来ないっていう、クソみたいな悪癖があったんですが、これはだいぶ改善されてきています。

 

しかし、他人と会話するのにタバコがないとダメっていう悪癖は改善の兆しが見られません。

家族の前ではガチで1本たりとも吸いたくならないのに、他人の前ではダメなんですよね。

(最近は吸わない人が多数でしょうが、僕の周りは基本的にガテン系なんで、みんな吸うんですよ)

 

まあそんな幼稚なこと言ってられる年齢でもないので、このへんは即座に変えていきたいと思います。

百害あって一利なし、とまでは言いませんが、基本的に無駄ですよ。タバコってやつは。

自分ばかりか他人にも害あるし。

 

===

 

さて本題に入りましょう。サクッとアプリ開発ですよ。

これは昨日「サクッと付箋メモをリリースした」って記事を書いたんで、そのノリで付けたみたタイトルですね。

サクサク書けるメモ(ToDo)アプリ「サクッと付箋メモ」をリリースしました - ホーリーのプログラミング日記

 

だから特に書きたいことがあったわけではないんですが、とりあえずあれですよね。

開発スピード=技術力ってわけではないと思うんです。

これ何の仕事でもそうだと思うんですが、技術力の高い人が一番仕事が速いわけではないでしょう。

それよりは時間コントロールであったり、周りとの連携が上手い人の方が、仕事が速いと思うんです。

 

アプリ開発で言うとなんだろう?とりあえず話を副業限定にしましょう。

この場合、一番大事なのは時間の確保ではないでしょうか?

専業でわりと自由に時間使える人には、そこまで関係ないような話ですが、そうでない場合、一番大事なポイントは時間の確保だと思うんです。

 

会社員でもいいですし、独立してるけど受託の仕事が忙しいとかでもいいんですが、とにかく時間取れないと開発出来ないじゃないですか。自分のアプリは全然完成しないでしょう。

その場合、足りてないのは時間ですよね。

 

そりゃ技術力の低い人よりは高い人の方が開発スピードは速いんでしょうが、低い人が毎日5時間確保出来て、高い人が1時間しか確保出来ないってことだと、話は変わってきますよね。

「時間を捻出すること」って社会人にとって大切な能力だし、副業開発者のスピードにも直結する話だと思います。

 

あとは考え方ですかね。とりあえずザックリ完成させてリリースしちゃおうって考えてる人と、とにかく完璧なものを作りたいって人では、当然スピードは変わりますよ。

これどっちを選ぶかっていうか、程度の問題なんですけど、考え方もスピードに直結しますよね。

もちろん、どんな仕事にも共通だと思います。

 

「サクッとアプリ開発」っていうタイトルからはズレてしまったんですが、仕事(作業)スピードってやつを考えた場合、技術力はそこまで大きなウェイトを占めないってことが言いたいんですよ。

それよりは時間の管理力であったり、仕事に対する考え方の方が大事だと思います。

 

技術力の向上は永続的課題として、それ以外の要素にも目を向けないと、自分のスピードは上がらないでしょう。

サクサク書けるメモ(ToDo)アプリ「サクッと付箋メモ」をリリースしました

 

「サクッと付箋メモ」っていうアプリをリリースしました。

メモアプリっていうか、ToDoアプリと言った方が適切かな?

あれこれ書き込んで、それをチェックしていく感じです。

 

サクッと付箋メモ

サクッと付箋メモ

  • Taro Horiguchi
  • 仕事効率化
  • 無料

 

GIFで紹介するとこんな感じ。

 

f:id:gevvoihorry:20190310162755g:plain


うん。サクサク動いてる。

 

他のアプリと比べてどうか分からんが、実にサクサク動いてるぞ

 

(ちなみに動画はこれです)

 

===

 

えー、作った本人が言うのもなんですけど、これといった長所はないんですよw

作るにあたって、メモアプリ(ToDoアプリ)をちょこちょこダウンロードしてみたんですが、恐らく一番便利なのはこれですね。タブ型ToDoリスト。

 

タブ型ToDoリスト - シンプルなメモ帳 -

タブ型ToDoリスト - シンプルなメモ帳 -

  • Yoshiyuki Tanaka
  • 仕事効率化
  • 無料

 

んで、基本的にはこれで十分だと思ったんですけど、このアプリはバッジのコントロールが出来ないんですよ。

 

f:id:gevvoihorry:20190310162252j:plain

(バッジっていうのはこれですね。赤丸のやつ)

 

未チェックのタスク数をアイコンに表示することが出来るんですが、ON OFFの2択しかない。

僕は自分のToDoリストを作るとき、Today Later Maybeって3つに分けるんですよ。

今日やることと、後でやること、やれたらやることの3つですね。

 

んで、バッジ出せた方が便利なんですけど、Todayのタスクに関してだけバッジを出したかったんです。

なので、サクッと付箋メモの長所を1つだけ上げるとすれば、バッジのコントロールが出来るってことでしょうか。

 

繰り返しになりますが、あとは普通です。ビックリするくらい普通。

 

そんな普通のアプリをリリースしたというお話ですw

 

P.S.

自分で使ってみて思うんですけど、ToDoリストってパソコンからも触れた方が便利ですよね。

普段のタスク管理はiPhoneに最初から入ってるメモアプリを使ってるんですが、スマホとパソコン、両方から触れて便利だなと感じています。

(前はEvernoteだったんですが、iPhoneのメモアプリの方が入力しやすい)

 

だからサクッと付箋メモも、パソコン、つまりブラウザからもあれこれ出来た方が便利だと思うんですが、とりあえずアップデートの予定はないですね。

今作ってるゲームが一段落したら、ちょっと考えてみたいと思います。

 

P.S.2

そいや書き終わって思い出したんですが、Android版はバッジ出ないです。

出し方が分からなかったんで、とりあえず保留になってます。

この場合、Android版の魅力はなんだろう。。

ドットインストールにUnityの動画3本あるよ

 

そいやこないだ気付いたんですけど、ドットインストールにUnityの動画あるんですね。

https://dotinstall.com/

 

Unity入門。2Dシューティングゲームを作ろう。3Dゴルフゲームを作ろう。

この3本がありましたよ。

 

Unity入門

https://dotinstall.com/lessons/basic_unity_v2

 

2Dシューティングゲームを作ろう

https://dotinstall.com/lessons/2dshooting_unity

 

3Dゴルフゲームを作ろう

https://dotinstall.com/lessons/3dgolf_unity

 

Unity入門は誰でも見れるみたいですが、シューティングとゴルフは有料会員でないと見れないみたいですね。

しかし、ドットインストールは見るたびに気付きがあるので、Unity入門だけでも見る価値はあるでしょう。

 

んで、これシューティングのところに「三角関数を使って敵機に動きをつけよう」って回があるんですよ。

https://dotinstall.com/lessons/2dshooting_unity/47515

 

これ三角関数を知らない僕にとっては、めちゃくちゃ魅力的な回ですね。

このへんをサクッとやって、「三角関数知ってる感」を出したいと思います。

X対応の謎

 

こないだ「Unity製のアプリをXcodeのシュミレーターで立ち上げられることを知らなくて、めっちゃ恥ずかしい」みたいな話を書いたんですけど、どうもこれそんなに恥ずかしいことではなかったみたいですね。

結構ガチで恥ずかしいやつ - ホーリーのプログラミング日記

 

全国に2人は同志がいるはず、なんて書いたんですが、とりあえず身近なところに2人いらしたので、即座に考えを改めた次第ですw

 

そいや本とかにも、実機転送のやり方は書いてあっても、シュミレーターを作ったビルドは書いてないですよね。

「うおお。知らんかった。どうしよう。さすがにブログに書くのは恥ずかしいかな?ど、どなんだろ。。」なんて悩んでた自分こそ恥ずかしい。

恥晒してなんぼのブログなので、今回もバーンと書いていこうと思います。

 

===

 

えー、そんなわけで、シュミレーター繋がりから、iPhoneX対応の話を書きたいと思います。

書きたいっていうか、聞きたいって方が正しいかな?

iPhoneXが出てからというもの、画面サイズに対応するのって、めっちゃ面倒くさくなったじゃないですか。

 

(てかこれ書きながら画面サイズ一覧表みたいなの見たら、AndroidもXみたいな比率のスマホ多いんですね)

https://sounansa.net/archives/2796

 

それで、これってみんなどうしてるんですか?

Xcode × Swiftで開発されてる方は、Xcodeの方で合わせられるようになってると思うんですが、問題はUnityですよ。

僕も思いっきりUnityなわけですけど、UnityでXに対応するのって、どうしたらいいんでしょうか?

 

実はそんなに知らないんですよねw

 

僕のUnityは2017.4とかそのくらいのバージョンで、2018にすらしてないんですが、最新に近いバージョンだと、普通に対応出来るのかな?

本当に知識が浅いので、とりあえず自分がやってることと、最近悩んだことについて書いてみたいと思います。

 

===

 

僕が今日まで作ったUnity勢のアプリって、基本uGUIを使ったものが多いんですよ。

最初にCanvasを画面に置いて、サイズを設定して、そこにボタンとかイメージとかテキストを置くみたいな。

和尚本に出てくる脱出ゲーとか放置ゲーの作り方、そのままでやることが多いです。

 

んで、この場合のX対応なんですが、それはCanvasを縦に合わせるのか横に合わせるのかで変えています。

 

f:id:gevvoihorry:20190308172725p:plain



Matchってとこですね。この画像ではHeight(高さ)に合わせてるので1になっています。

 

んで、普段は9:16で開発してるんですが、Xにすると横が見切れちゃうので、横で合わせるように変えてるんですよ。

 

if(1.0f * Screen.width / Screen.height < 9.0f / 16.0f){
    GetComponent<CanvasScaler>().matchWidthOrHeight = 0.0f;
} else {
    GetComponent<CanvasScaler>().matchWidthOrHeight = 1.0f;
}

 

コードはこんな感じで、9:16を下回ってるかどうかを判定、それで縦横どっちに合わせるかを変える感じです。

このコードをCanvasにアタッチさせています。

 

実際の見た目なんですが、横に合わせるので、上下に黒帯が出ちゃうんですよ。

 

f:id:gevvoihorry:20190308173524p:plain


手元にX系統の実機がないので、これシミュレーターの画像なんですが、まあ大丈夫でしょう。綺麗に溶け込んでますよw 

(実機で確認しても、僕にとっては全然OKです。かなり自然な感じ)

 

Canvasにポチポチ置いてく系のアプリは、基本的にこうやって対応しています。

 

この記事と同じかな?

UnityのiPhoneX対応案 - Qiita

 

===

 

えー、そんなこんなでX対応をしてたんですけど、最近作ってるゲームのワンシーンで、オブジェクトをプレファブにして、画面に沢山出すところがあったんです。

 

f:id:gevvoihorry:20190308174045p:plain

 

これですね。まだ世を忍ぶ仮の姿だと信じたいんですが、こんなシーンがあるんです。

青い点々がプレファブ。

 

それで、この画面をXの比率にすると、どうも変なことになってしまうんです。

 

f:id:gevvoihorry:20190308174142p:plain

 

プレファブのポジション変わらずそのままで、他のが変わった分おかしくなる、みたいな。

 

Canvas内のことは先ほどの小手先テクで何とかなるんですが、ワールド座標で指定しているプレファブを、どうやって管理すればいいのか分かりませんでした。

てか正直な話、今も分かってませんw

 

とりあえずカメラを引いたらいい感じになったんですよ。

 

f:id:gevvoihorry:20190308174325p:plain

 

Main CameraのSizeってとこですね。

 

f:id:gevvoihorry:20190308174405p:plain

 

通常は5なんですけど、画面比率によって、それを6にしたりとすれば、現状いい感じになってます。

 

この手のアプリをそんなに作ったことがなかったんで、Canvas外のことがよく分かってないんですよ。

普通はどうやってXに対応するんでしょう?

てかさっきのuGUIのやつも、みんなどうやってるんでしょうか?

 

非常に重要なことだと思うんですが、とりあえず僕は適当です。全然分かっておりませんw