困った時の自分用メモ

読んだ本を考察してメモったり、自分でいじった物の感想をメモったりする場。週1更新を目指します。

自分の話~すべき事の整理~

FBで、フォローしてる人のシェアした記事を読んだ

shigotonadeshiko.jp

今まで、自分は需要が多いアプリ制作の技術を持つ技術者だから、例え今居る会社が潰れたとしても、次の「職場」を得るのは容易だと思っていた。

 

だが、もし仮に自分が何らかの事情で「会社」という組織の所属できなかったとして、自分に出来る事はなんだろう、どのように金を生み出せるだろうかと考えた時、自分にはいくつか不足している物があると、今更ながら改めて思った。

 

まず、「貯蓄」の少なさ。
現時点で職を失ったとき、働かなくてもいい期間が2か月くらいしか得られない程度の貯蓄しかないのが問題だ。失業保険をフルで3か月得られたとしても、合計5か月しか猶予期間が無いのは問題だ。もちろん、今後の方針を決めるという期間と考えれば十分すぎる時間なのだが、もしこの期間内に何か物を作らなければならないといった場合、焦らないで済むかと言われると微妙な所である。
最低でも半年、できれば1年猶予が欲しいというのが本音だ。

 

次に、個人で開発したアプリで行う集金の「技術蓄積(ノウハウ)」不足。
もう少し具体的に言うと、「アプリを製品化する為の仕組み」と「課金につながる物の機能実装」が不足している。
確かに、アプリを作る技術はある。優秀な開発環境(=Unity、Cocos)もある。ただし、それだけだ。何も金を生み出せる状態になっていない。

 

今、アプリを作ろうと思ったら、「空の新規プロジェクト」を作り「必要なコンポーネントを1から入れていく」という、アプリ内容とは何も関係ない作業を行う必要が出てくる。これは非効率すぎる。

 

似たような理由で、アプリを作成してリリースしただけでは金にならない。アプリからお金を得る機能、仕組みを入れられないと、「金を得る」という目的に対しては何にも意味をなさない。そういう意味で、広告も入れたこともなければ、課金機能を入れた事もないし、それらで実際に金を口座に入金されたことを確認したこともない。

 

というわけで、俺が直近で金を得たい理由とアプリ制作をしている理由がより明確になった。
金の面では、1年働かなくても済む金を得る事。
アプリ制作の面では、アプリ作成のスタートアップをしやすくするのと、課金で実際に金を得たという実績を作る事。

 

Luaの話~オブジェクトと参照渡し~

以下のようなコードで詰まった。

-- クラス定義
-- 2点を表すオブジェクト
Vector2 = {}

-- コンストラクタ
function Vector2.new(x, y)
    local this = {
        x = x,
        y = y
    }

    -- メソッド定義
    --this.Function = function()
    --end

    return this
end

    TablePos = Vector2.new(100, 100)--定数扱いにする物と思ってくれていい
    BasePos = TablePos--ベース値。基準にしたいので、編集しないようにしたい
    WorkPos = TablePos--作業値。
    UnityDebugLog(BasePos.x)--100
    UnityDebugLog(WorkPos.x)--100
    
    WorkPos.x = 90--作業用のデータを書き換え
    UnityDebugLog(BasePos.x)--90!!!!!
    UnityDebugLog(WorkPos.x)--90

 

冷静に考えれば、オブジェクトの参照をお互い持っているわけで、その同じ物を指している物を書き換えるのだから

書き換えた先の物は同じ物を見ているわけで当然だと思えるだろう。

 

ただ、TablePosが関数の引数として渡されて、それを保持する時に結構詰まった。
その場合は、BasePosに該当する側は、新しいVector2オブジェクトを生成しないとダメ。

年末年始のご挨拶

おはようございます、大みそかでございます。
皆様、いかがお過ごしでいられますでしょうか。
本年は各方面、大変お世話になりました。
来年もどうぞよろしくお願いいたします。

私は、26日からがっつり風邪をひいてしまいまして、昨日あたりからようやく回復してまいりました。
一年の蓄積した疲労が爆発したようでございます。
今年の疲れは今年中に癒して、来年を迎えたいと思います。


-----
はい、年末年始恒例の振り返り記事です。

Facebookを遡り、何があったのかまとめたら、結構な量になってしまったので、
個人的に印象に残った物をピックアップしていき、
最終的に来年はどうするかーみたいな事を考察できればなーと思います。


▼プライベート思い出編
水樹奈々ライブ
東京ドームライブで、まさかのアリーナ席。しかも、サブステージほぼ目の前という超いい席で
ライブ楽しませていただきました!
ライブはしばらく行かないと思うけど、近々アルバム出すみたいなので、それは聞きたいなぁと思います。

f:id:mochimoffu:20161231173712j:plain



○家族と京都旅行
15年以上ぶりくらいに、実家家族・兄弟・妻と一緒に、父の故郷・京都へ旅行に行きました。
腹割った話みたいなのはありませんでしたが、今後も出来るうちに孝行できるといいですねぇ。

f:id:mochimoffu:20161231173715j:plain


▼プライベート生活編
○ランニング開始
5月に、ヘッドロック時代の後輩と飲みをして、その時に彼は「山登り」をしていて体を鍛えていると聞き、
何を思ったか、次の休日から少しランニング始めました。
地味に筋トレも平行して行い、きつくない範囲で今まで続いています。
そうそう、ユニクロヒートテックって凄いですね!
真冬の今の時期に、ヒートテック+薄いスポーツアウター/ヒートテック+バスパン で、普通に快適に走れます。
今後は、ランニングシューズでも買って、来年の今頃も走る習慣が終わっていない事を目標にします。

○お引越し
これがでかい。地味にでかい。
金沢文庫京急蒲田に越しました。
勤めている会社の性質もありますが、もう朝夜の混んでいる通勤電車から解放されたのは大きいです。
電車乗ってて腹痛くなる病も発症しなくなりました。
自覚がないだけで、通勤するだけでストレスダメージがあるようでした。

はてなブログ開始
今、2作目アプリ作成中なので、その過程をメモしようとブログ始めました。
初代FC2ブログ「ハッテンと場国」は、僕のMMOプレイ思い出日記として残しておき、新しいブログで1から書いてます。
とりあえず週1更新してます。

○メモるくんリリース
見た目は適当だけど、中身は結構真面目に作ったAndroid向けアプリ。
ダウンロード数が10-50になってたwwww
アプリリリースした実績が出来てよかった。
近々IOS版も出す予定。

play.google.com



○株始めた
PC買ったと思って、10万くらい株につぎ込んで実体験してみました。
株主優待を貰えたり、現時点で4万負けてたりしますが、比較的面白いです!
サンキュー、ディアライフ、東海HD。
ファッキュー、文教堂

▼お仕事関係
かなり、時間が自由になる環境になった。
ただ、その利点を自分自身があんまり活かせていない。
今年は仕事の面では、あんまり飛躍するような事はなかったので、来年は与えられている恵まれている環境を
きちんと自分自身で活かして成果をあげられるようにしたい。

▼来年やる事
・2作目アプリ出す(ゲームの内容ではなく、実験したい事がある為)
・ランニングと筋トレ続ける
はてブロも更新する
・メモるくんIOS版だす
・一回くらい、ちょっと大規模なアナログゲーム会やれたらいいなと思ったり思わなかったり
・仕事、せめて3か月は集中する

では、よいお年をノシ

Luaの話~Luaのos.clock~

PC実機だと、ほぼリアルタイムの経過時間を返してくれるが、

Android実機でやった場合は、リアル時間1秒につき0.6秒くらいしか経過しなかった。

 

おそらく、

http://www.mm2d.net/main/prog/c/time-02.html

 

これはC言語だが、clock(CPU処理時間)ってのは、そもそも時間経過に使う物ではないという事だね。

 

え?じゃあ時間計測どうしたかって?

 

UnityからTime.deltaTimeもらうようにしましたよ(殴

 

ーー追記ーー

ただ、よく考えたら今作ってるアプリは1実行当たり0.1666、時間を計測している変数を更新すればいいので、deltaTimeすら使っていない。

Unityの話~Lua連携を頑張る話2~

UnityとLuaの相互呼び出しを検証してるうちに、コルーチンをテストする前段階で

1. Luaから呼び出したUnityメソッドの戻り値は、Lua側でどのように判断されるのか
2. Unityから呼び出したLuaのメソッド内で、無限ループを発生させたら処理は戻ってくるのか

を検証した。

1
⇒全部nullオブジェクト。つまり、戻り値は検出されない。

2
⇒Unityが固まる。つまり、処理は戻ってこない。

つまり、UnityとLua間は一つの処理ブロックとして考える必要がある。

非同期処理をやる時は、この辺頭に入れて設計しないと、色々躓く事になると思うのでご注意あれ。

Unityの話~Lua連携を頑張る話1~

以前、アプリ更新をしないでゲームの内容を更新する事は出来ないか?と考えた時期があり、
それを可能にする可能性を、Luaに見出して検証/実験をしていた時期があった。

その当時は
・処理速度、メモリ使用量、アップル申請のグレーゾーン等の懸念は度外視する前提
・UnityからLuaの関数を呼び出す事はできる
Luaから、Unityの関数を呼び出す事はできる
・これらは、PCとAndroid実機では確認出来た。IOS実機は、記憶が曖昧

というところまで実験して、一度断念してしまった。

そして、最近またそれに挑戦してみようと思い、今色々と実験中でいる。



スマフォアプリ開発が主流となり、結構時間がたったが
アプリ更新無しでゲームの内容を変えるといった話は、あまり聞いたことが無い。
自分が知らないだけで、やっている会社があるのかもしれないし、
コストが逆にかかりすぎてあえてやっていないのかもしれない。
ただ、ゲームの処理を外部スクリプトに逃がすという考えは、今後も使っていけそうだと思ったので、
無駄になるかもしれないが、また実験しようと思い立ったのだった。

技術的な話は、次回以降メモがてらつづっていこうと思う。