こたつにっき

Unityで遊びつつメモとか書きます

Googleフォームから自動でカレンダーへイベント登録&メール送信

5ヶ月わ!(5ヶ月ぶりにお会いしましたねの意)

 

アドベントカレンダーの時ぐらいしかブログを書かない男

ことkotatuです。冒頭の挨拶も前回のコピペで失礼します。

 

この記事はK何某アドベントカレンダー5日目の記事となります。

 

 

早速ですが、この記事で何を書くかと言いますと、タイトルの通り

 

Googleフォームから自動でカレンダーへイベント登録&メール送信」

するシステムです。

 

 経緯

僕は所属団体上、大学各地で行われる様々な団体のイベントを駆けずり回っているのですが、いかんせん数が多いし広報媒体はバラバラだしで

 

把握するのが面倒

 

なんですね。そこで、各団体が勝手にイベント予定を登録したらイベントカレンダーになってる!みたいなシステムが欲しくなりました。

 

ので

 

作りました。そんな感じです。みんな使ってクレーーーー!!!!!(届かぬ叫び)

 

 

 実装

実装です。色々調べてコピペしました。

使っているのは「Googleフォーム」「Googleスプレッドシート」「Googleカレンダー

スクリプトは当然「Google Apps Script」です。ありがとうGoogle

 

スクリプトはこちら

googleフォームからカレンダーへ登録するスクリプト

 

怒涛のif文連打とか恥ずかしい部分は山々なのですが、

動くので僕は気にしません。

 

ごめんなさい。

 

カレンダー登録はここだけですね。

id="自分のカレンダーID";
nt = CalendarApp.getCalendarById(id)
nt.createEvent(title+":"+groupName, new Date(start), new Date(end),{description:groupName+":\n"+message,location:loc});

 自分のGoogleカレンダーのidを取得し、

createEventのパラメータにタイトル・日時・詳細情報({}部分:概要&場所)を入力すればカレンダーにイベントが追加されています。

 

感動。

 

パラメータの説明はこちら

[GAS][カレンダー]予定を作成するには : 逆引きGoogle Apps Script

Googleカレンダーのidを調べる方法はこちら

一般公開にした自分のgoogleカレンダーのIDを調べる方法|ホームページ制作・アプリ開発のハウツーをより実践的に。- ウェブ式 –

 

メール送信部分はコピペです。【コピペでOK】と書かれていたからです。

liapoc.com

 

完成

というわけで、カレンダー登録スクリプトとメール送信スクリプトコピペ融合して出来上がったのがこちらです。

GoogleFormtoCalender

 

ちなみに、メール送信部分はコメントアウトしてますので、メール来ません。

安心してイベント登録しまくって下さい。

 

こんな感じでカレンダー下のフォームに入力して…

 

f:id:kotatu99:20161205183459p:plain

送信! 

 

更新すると…

 

f:id:kotatu99:20161205183547p:plain

 

イベントがぽいっと出来てます。

 

 

余談ですが、このカレンダー&フォーム表示してる「Googleサイト」って初めて使ったんですけど、めっちゃいいですね。

URLが自由だし、埋め込みがGUIからポチポチで出来るのも便利。

 

f:id:kotatu99:20161205184419p:plain

 

スプレッドシートやグラフの埋め込みとかも出来るので夢が広がリングですね。

 

 

そんな感じ

なんだか話がズレちゃいましたが、

Googleフォームから自動でカレンダーへイベント登録&メール送信」

でした。

 

GASはちょくちょく使ってますが、やっぱりGoogleのサービスと連携できるってのはいいですね。(僕が)欲しい機能は大体ある!多分

 

そんな感じ。

 

我ながら真面目な記事を書いてしまった気がします。 ググって出てきたのをコピペしただけ

 明日はアドベントカレンダーどんな記事でしょうか?

楽しみにして待ちましょうね。

 

f:id:kotatu99:20161205185320p:plain

 

 

 

f:id:kotatu99:20161205185332p:plain

 

俺たちに明日はない

 

 

〜おわり〜

誰か書いて

モニタを買った話

お久しぶりです。

 

物を買った事ぐらいしかブログに書くネタがない男

ことkotatuです。ご無沙汰してます。

 

 

という訳で日がな一日Amazonを巡るだけの僕なのですが、

とある日からずっと気になっている子がいたんですよね。

f:id:kotatu99:20160703140920p:plain

 

 

アマゾナー(アマゾンを毎日眺めるだけの人、女性形はアマゾネス)

の皆さんなら一度は見たことがあるであろうコイツです。タイムセールの常連です。

 

最近自作PC欲が高まっている僕ですが、このままだと収まりがつかずテスト前なのにPCを組み始めてしまうんじゃないかという懸念があり、とりあえずモニタを買う事でお茶を濁すことにしました。

 

そこでコイツです。いい加減俺のモノにしてやりますよ。ええ。

ちなみにプライム会員先行セール中に買いました。プライムは神

 

 

 

 

 

ポチ

 

 

 

 

 

~18時間後~(15時ポチり9時着 プライムは神)

 

 

 

はい来ました!

ドン!!

 

 

f:id:kotatu99:20160703142123j:plain

 

 

おっと、すいません僕の相棒MITSUBISHI Diamondcrysta RDT175-M

の写真を載せてしまいました。

まだ使えるんですよこの子。Twitter専用ディスプレイにしようと思います。(現状既に成ってる)

 

 

 

 

本命に行くぞ!

ズドドン!

 

 

 

 

デカイ!

f:id:kotatu99:20160703143720j:plain

 

僕史上最大のディスプレイのデカさですけど、23型って世間じゃそんな大きくないんですかね?

配置とか何も考えてなかったんですけど丁度机に収まったのでサイズはバッチリでした。

 

f:id:kotatu99:20160703144058j:plain

 

デュアルディスプレイ(HDMI)で使ってます。

 

windows10でもHDMIケーブル挿すだけでOKでした。めっちゃ楽ですね。

f:id:kotatu99:20160703144242j:plain

 カワイイ

 

 

そろそろレビューみたいなのしますか

 

 

裏面はHDMI*2 D-Sub イヤホンジャック 電源 かな?

HDMIが2つってのが地味にいいですね

f:id:kotatu99:20160703144702j:plain

 

電源は約リップクリーム1.2個分くらいでコンパクト

f:id:kotatu99:20160703144927j:plain

 

一つ難点なのはVESA対応してない、つまりディスプレイアームに非対応なんですよね。

例えばRDT175だとこのように裏側に4つネジ穴があってここに金具を取り付けて動かすわけですが

f:id:kotatu99:20160703145043j:plain

 

このモニタは裏側つるっつるです。僕はモニタアーム使う予定は当分無いし着けるとしてもまずクソ重いRDT175の方なのでまあいいかなーという感じです。

 

モニタグリグリ動かしたいぜ〜って人は注意。ただ、モニタ自体がめっちゃ軽い(2.6kg:デカイから体感もっと軽い)ので動かすのは楽です。

 

 

画質、発色については文句無し!最初ドット欠けかな?って思ったら発泡スチロールがついてるだけでした。

遅延速度とかはよく分かんないんですけどゲームイング用遅延1msとか書いてありました。ニュルニュル動きますね。

画面テストのためにゲームしてみようと思います。画面テストのために。

 

 

そんな訳で本日の衝動買いASUS Gaming モニター 23型でしたが

 

総評として大満足です!!!ありがとうAmazon!!!

7月12日からはプライム会員限定セール「primeday」が始まるしもうプライム会員になるしかない!

 

 

 

 

 

さ〜てプライム会員先行セールで買ったディスプレイでプライム会員なら見放題のプライムビデオに配信中の孤独のグルメでも見て来ようかな〜〜〜!それでは!

 

 

 

この記事はAmazonプライムの宣伝記事ではないです。

 

今まで読んだ本 #1

お久しぶりです。kotatu99です。

 

前回の更新から2週間(以上)経ちましたがその間何をしていたかと言いますと、

 

 

Unreal Engine 4で極めるゲーム開発:サンプルデータと動画で学ぶUE4ゲーム制作プロジェクト

Unreal Engine 4で極めるゲーム開発:サンプルデータと動画で学ぶUE4ゲーム制作プロジェクト

 

 

この本を読んでいました。アンリアルエンジンの参考書です。

 

Unreal Engineスマートフォン3Dゲーム開発講座 Unreal Engine 4対応

Unreal Engineスマートフォン3Dゲーム開発講座 Unreal Engine 4対応

 

 

もう1冊ちょっと前にやってた本はMacでやってて落ちまくってたので最後まで行ってません…Windows入れたのでやり直そうと思います。

 

で、この「Unreal Engine 4で極めるゲーム開発」通称「極本(ごくぼん)」。

ゲームジャムでも何度もこの「極本」の名を耳にしたので、実は去年の夏に1度少し読んで放置していたのを「やっぱアレやるか!」となった次第です。

 

感想ですが、全29章という大ボリュームで時間がかかってしまいましたがとてもいい本でした。

バージョンが違うせいかいくつかエラーが出て実装できなかった部分もありましたがとりあえず1周という感じ。

 

UE4でゲーム作りたい!!!でも強制終了だけは簡便な!

 

 

 

 

 

話は変わりますが、今回はUE本を1冊読み終わって一区切りついたので今まで僕が読んだUnityの参考書を書いておこうと思います。時系列順に書きますが2014年夏~なので、バージョンアップ等もあり今では古い内容となってるものも有るかも知れません。あくまで参考までに。

 

 

 

 

まず1冊目!僕の初Unity本は…デケデケデケデケデケデケデケデケデケ(ドラムロール)

 

 

 

 

これです!

 

 

 

Unityによる3Dゲーム開発入門 ―iPhone/Android/Webで実践ゲームプログラミング

Unityによる3Dゲーム開発入門 ―iPhone/Android/Webで実践ゲームプログラミング

 

 

 

 

 

地味

 

 

 

はい、オライリーです。とりあえずオライリー読んどけばいいだろみたいな安直な発想です。実際中身はモノクロだし地味ですがUnityの基本と下敷きになるものをしっかり学べる本でした。

http://kotatu0909.tumblr.com/post/104542685701/balloonfight

kotatu0909.tumblr.com

 

 

 この本を基に作ったのがこれです。この本では今は亡きUnityマスコットキャラ配管工おじさんがプレイヤーとして使われているのでこの時代を知るのもいいかも…?

ちなみに自分のゲームではモデルをUnityちゃんに変更しました。可愛いからね。

 

 

次の本は~デケデケデケデケデケデケデケデケデケ

 

 

 

 

 

 

 

 

 

 

忘れた

 

 

 

 

 

 

 

 

 

いや、オライリーを読んでから色々サイトを巡ったりしながら作ってたので記憶が曖昧で…とりあえず読んだ記憶のある本を紹介します。

 

Unityではじめるゲームづくり (DVD付) (ゲープロシリーズ)

Unityではじめるゲームづくり (DVD付) (ゲープロシリーズ)

 

 

 まずはコレ。通しで読んだのではなく、アイテムやらリスポーンの仕組みやらが目についたのでパラパラっと見た程度。でも1本のゲームを作っていく形式なので最初に読むにはいいかも。

 

 

Unityゲーム開発 オンライン3Dアクションゲームの作り方

Unityゲーム開発 オンライン3Dアクションゲームの作り方

 

 

 次はコレ。オンラインという単語に釣られ1通り読んでみるも丁度新しいUnityのオンラインシステムが出てきたのでオンラインはあまり参考にならなかった…。UIについても同様。

しかし、攻撃システムやモーションの管理が結構参考になった。攻撃判定のコリジョンを攻撃時のみONにする等。

 

 

Unityでゲーム開発者になる本 ?上巻?

Unityでゲーム開発者になる本 ?上巻?

 

 

書きながら気づきましたが多分これが2(と3)冊目に読んだ本です。

中々難しかった記憶。アドベンチャーゲームを作ります。この本でクリックイベントを学びました。ただ、付属のデータをゲーム中に持ってくると本と相違があったりでちょっと大変でした。

 

 

 

 

 

 

さて、僕の記憶ではこれで全部です。振り返ると全5冊。少ないですね。

みんなUnity4時代の本なのでUnity5の参考書を1冊読んでおきたい所。

にしても最近はUnity本もいっぱい出てますよね。おススメ教えてください。

 

 

 

と、言いつつ次読む本はコレ。プロジェクションマッピングするよ。

AEでの作り方が書いてありますがインタラクティブな奴を作りたいのでこれを基にvvvvやoFでの実装が目標だよ。

 

プロジェクション・マッピング入門 (特別付録 DVD-ROM・紙模型付録付き) (玄光社MOOK)

プロジェクション・マッピング入門 (特別付録 DVD-ROM・紙模型付録付き) (玄光社MOOK)

 

 

 

 

※ちなみに、K学院大学の図書館に今まで挙げた本(プロジェクションマッピング以外)全部あります!!!K学院大学生は読め!!!

 

 

 

 

~おわり~

グローバルゲームジャム(GGJ2016TUT)行ってきた

みなさんゲーム作ってますか?

 

 

 

僕は作って来ました。

 

 

 

そう、グローバルゲームジャム(GGJ)です。

週末に世界各地の会場に集まって、ゲームをつくろう
Innovation. Collaboration. Experimentation.

Game Jamは、ゲーム開発を行うハッカソンです。
その中でも、Global Game Jam (以下、GGJ) は、ギネス記録を持つ世界最大のGame Jamです。

全世界にハッカソン会場が設けられており、全世界で同じ日に同じテーマでゲームを開発します。GGJは、2009年の初開催以降年々規模を大きくしており、2015年1月のGGJでは、世界78ヵ国の国と地域で、518のハッカソン会場が設置され、28,837人が参加し、5,438の作品が制作されています。

 

 

要するに集まった人たちでゲーム作るイベントです。(雑)

 

 

 

今回は八王子の東京工科大学会場での参加です。遠かった。あと寒い。

f:id:kotatu99:20160202154145j:plain

 

 

 

ここです。このビル自体めっちゃデカイんですけど振り返ると

 

 

 

f:id:kotatu99:20160202154236j:plain

 

うわ振り返ってもデカイ。広過ぎ。新興宗教団体みたい

 

 

ちなみに横向くと

f:id:kotatu99:20160202154457j:plain

パルテノン神殿があります。やっぱり宗教団体・・・

 

まあキャンパス見学はこれくらいにして(迷ってただけです。最初間違えて受験生について行ったので父母控え室に到着しました。)

 

 

開会式会場

最終的にここが満員になります。参加者106名!

f:id:kotatu99:20160202161851j:plain

 

 

 

テーマ発表!!!のムービーが流れます。

 

 

 

f:id:kotatu99:20160202155044j:plain

 

うわ見難い!!!!!!

デジカメ持って行くべきだった…

 

というわけでテーマは「RITUAL」でした。

僕はテーマ見て

 

 

 

 

 

 

 

 

 

 

 

 

は?

 

 

 

 

 

 

 

 

ってなったのでRITUALの意味ググってました。

儀式やら繰り返す行為やらってことですね。

単語の表示の前にRITUALに関連するピクトグラム(犬の散歩、重量挙げ、あとなんか色々(忘れた)…)が流れてました。

 

 

 

開発室へ移ります。

 

まずイデア出し!!

テーマからどんなゲームにしようかとチームで付箋に意見を書いてホワイトボードに貼って行きます。はい写真撮り忘れましたすいません。

 

ちなみに、1チーム8人でした。多いですよね?僕はうわめっちゃ多くね?ってなりました。4~6人だと思ってました。

内訳はプランナー2,プログラマー4,グラフィック2,サウンド2って感じでした(兼業有りで)

僕は一応プログラマーですけど大したことしてないです。

 

 

色々なゲーム案が出てたのですが結局チームのテーマは

 

 

「卵をたたくと割れる(悲しい)」に決定!

f:id:kotatu99:20160202155048j:plain

 

 

 

 

 

 

 

 

 

は???

 

 

 

 

 

 

 

 

ってなる人が多いと思いますが色々紆余曲折がありコレになったんです。深い意思が篭ってます。

ちなみにこのアイデア出したの僕です。は???とさせてしまった方申し訳ありません。

 

 

 

画面レイアウト等を決めて(写真なし)タスク割り振りをし(写真なし)、開発スタート!

この時点で上記のテーマから卵をなんやかんやしながら育てて色んな動物を生み出そう!というゲームにしようとなりました。

僕はそのモンスター図鑑的なものを作ってました。

 

 

今までの僕のゲームをプレイして下さっている方にはわかると思うのですが

全くUIを凝っていないのとそもそも2Dゲーム作ったことないなとこの辺で気づきました。

でもグラフィックの人数が多かったので2Dで良かったと思います。

実際UnityのGUI(uGUI)で初めて使う機能とかあったりして勉強になりましたね。

 

 

 

 

//ここら辺でゲーム開発の激闘(記憶が薄い)

 

 

 

 

 

とりあえず開発室の風景を貼っておきます。

一番手前が僕の席です。レッドブル3連星が見えますね。

f:id:kotatu99:20160202162158j:plain

 

 

こちらがチームのホワイトボード。

左がゲームの画面構成、

その右がタスクの一覧ですね。この開発進行のワークフローはGGJ3年連続で出ているチームの方が引っ張ってくれたもので参考になりました。

僕もゲームジャム出るときは使わせてもらおうと思います。付箋もその方が持ってきてくれました。付箋大事。マストアイテム。

f:id:kotatu99:20160202155047j:plain

 

 

 

 

 

 

睡眠場所

f:id:kotatu99:20160202172848j:plain

 

はい。ここで寝ます。寝袋持って行って良かったです。マストアイテムその2。

ただ、床がカーペット的なものが敷いてあるわけではなく床。

THE・床。って感じなので敷物持って行けば良かったかな。

 

 

 

 

 

 

そんなこんなで何回かの食事をし、

f:id:kotatu99:20160202155046j:plain

 

 

 

 

 

 

何回かの朝を迎え、

f:id:kotatu99:20160202155049j:plain

 

 

 

 

 

何回かの夕日を見て終了です。

f:id:kotatu99:20160202155050j:plain

 

 

 

お疲れ様でした。

 

 

 

 

というわけで出来たゲームがこちら!

f:id:kotatu99:20160202174414g:plain

incubate | Global Game Jam®

 

はい。見ての通り卵が割れても何も出てこなかったりとちょくちょくバグがあります。

完成度80%ぐらいのところで時間が来てしまいました…。

 

反省として、ゲームシステムの全容を最初に決めていたので肝心のゲーム本体がおろそかになってしまったのかなと思います。

僕の作っていた図鑑システムとかもそうですけど、まず卵を育てる→孵化して出てくるってところを詰めるべきだったのかと。ゲームジャム後の懇親会でもゲーム会社に勤めている方と「ゲームを完成させる」難しさについて話していました。

 

本当ゲームを完結、一巡するまで持っていくのは難しいです。特にゲームジャムでは時間もリソースも限られていますからね。

そういう限られた状況での開発はここ数ヶ月ニコ動横目にゲーム作ってた僕にはかなり厳しかったですが複数人での開発ワークフローを少しでも学べてとても勉強に成る3日間でした。

ゲーム作り頑張るぞ!!!(と言いつつここ2日惰眠を貪ってます。寝れるっていいね)

 

 

 

 

 

 

 

 

 

 

でも当分グローバルゲームジャムはいいかな・・・

 

 

 

 

 

 

 

ってだから1年ごとなのか!

 

 

 

 

 

 

なんてね 

 

 

 

 

 

 

とにかく!

 

 

 

 

 

 

ありがとう東京工科大!そして運営さん!そしてそして全世界の参加者お疲れ!

f:id:kotatu99:20160202155052j:plain

 

 

 

ブレブレじゃねえか!!!!!!!!!

 

 

 

 

〜おわり〜

vvvvでクリスマス気分

この記事はKogaくんなんとかカレンダー12/12の記事です。

www.adventar.org

 

 

最近彼女ができたのでデートスポットの下見に行こうと思います。

 

 

f:id:kotatu99:20151212114633j:plain

ソザイングより

 

 

あら、いいですね。

 

 

 

 

でも何か足りない・・・

 

 

 

 

 

 

そう!デートするならホワイトクリスマスだといいですよね。

雪を降らせよう!

 

まずvvvvを開きます。

 

雪はパーティクルで降らせたいので…

huge huge small world: vvvv tutorial を試す その4 パーティクルを出す(2D)

 

ちゃかちゃかっと書きます。

 

 

f:id:kotatu99:20151212115107p:plain

 

 

 

 

f:id:kotatu99:20151212115012g:plain

 

 

 

雪が降りました!ホワイトクリスマス!

 

 

 

 

 

うーん・・・

 

 

 

 

もうちょっとイルミネーションがあるといいですね。

 僕は暖色系のイルミネーションが好きです。

デート先はそんなとこがいいですよね〜〜〜

 

 

 

 

f:id:kotatu99:20151212121234p:plain

 

f:id:kotatu99:20151212115802g:plain 

 

 

 これや!!!この色や!!!

クリスマス感出てますね。

 

 

というか彼女と同棲してるので家でこれを眺めて過ごせばいい気がしてきました。

 

 

みなさんよいクリスマスを!

 

ハッピーニューイヤー!!!!!!!!

 

 

 

 

 

f:id:kotatu99:20151212121635p:plain

 

 今回使ったパッチ。右側1/3がイルミネーション部分です。

ゴォーーーーーー!!!

この記事はKogakuin Univ Advent Calendar 2015 - Adventar12/9の記事です。

 

アドベントカレンダーの季節ですね。

 

 Kogakuinに通っていたらアドベントカレンダーおばけに取り憑かれてしまったので

コーガくんがマスコットの大学とは何も関係ないのですが作ったゲームをここで公開しようと思います。

 

ちなみに、ゲームはコーガくんと何も関係ないです。てかコーガくんって何?

 

 

f:id:kotatu99:20151208213104p:plain

 

はい。

 

本題に移ります。

色々ビームやら爆破やらのエフェクトを集めていたのでそれを使ってみたく制作しました。

 

ゲームジャンルはアクション…?ディフェンス…?的なやつです。

矢印キーとz,x,c,vキーだけのお手軽操作なので気楽にどうぞ。

(UnityWebPlayerのインストールを求められることがあります。)

(GoogleChromeではプレイできません。)

 

レッツプレイ

f:id:kotatu99:20151208215055p:plain

 

 

Unityちゃんがドッカンドッカン青色の謎の物体を爆破します。

 

毎度Unityちゃんにはお世話になっています。

ついには歌ってくれるそうで楽しみですね!!!

 

 一般公開し難いゲームを作ることに定評のある僕ですが次のゲームは諸手を振って公開できるようにしたいです。

 

 

これからも宜しくお願いします。良いお年を!!!ハッピーニューイヤー!!!!!!

EventSystemを使ったオブジェクトの選択

もう12月です(ヤベえ!)

 

11月の更新0でした。

申し訳ないです。

ゲームは1つ完成したので近々このブログで紹介します。

 

今はboard game(自動変換で英語になった)を作ってます。

そんな中で1つ自分では初めてのやり方をしたので紹介。

 

ボードゲームというかタダのすごろくなのですが、マス目の詳細(1回休み・2マス戻るetc...)を選択して知りたかったのでこんなのを作りました。↓

f:id:kotatu99:20151207113652g:plain

 

参考はこちら

acguychan.hateblo.jp

 

参考にしたものは、マウスの座標からRaycast飛ばして光らせるという感じだったんですが、それだとゲーム画面左上のルーレット画面も貫通して背景のパネルを光らせてしまうんですね。

 

レイヤーで指定してもよかったのですが、そういえばEventSystemでUIと同じようにオブジェクトを選択できるようになったとどこかで聞いたので調べました。

anz-note.tumblr.com

 

 ここを参考に

CameraにPhysics Raycasterを取り付け…

f:id:kotatu99:20151207115411p:plain

 

GameObject > UI >EventSystem をSceneに追加します。(何もいじらなくておk)

 

出来上がったものがこちらになります。

 

選択された時色を変えるタイル

 

 

 

 

 

 

IPointerEnterHandler, IPointerExitHandler,IPointerDownHandler

はそれぞれ

OnPointerEnter(PointerEventData eventData)

OnPointerExit(PointerEventData ped)

OnPointerDown(PointerEventData _data)

に対応してます。

EventDataの引数名がガバガバですね。 まあ今回使わないので…。

 

最初にmaterialの色(デフォルトの色)を取得し、

選択された時materialの色を青(cyan)に、オブジェクトから出たら元の色に戻す

といった処理をしてます。

ついでにクリックイベントもつけました。log出すだけ。

 

 

アドベンチャーゲームがこれ使うとばつ牛ンに作りやすくなりそうですね。

作りたくなってきた。。。

 

更新は定期的にします!(戒め)

 

 

 

 

 

 

 

おまけ

 

OnPointerExit部分を消すとスプラトゥーンごっこが出来る。

f:id:kotatu99:20151207120407g:plain