2019-08-01から1ヶ月間の記事一覧

なが月・30日目

30日目 いよいよ最終日である。 幾多の苦難を乗り越えついにHalt!: VR Road Traffic Madness v0.2.0をリリースできた( https://0bsoletelab.itch.io/halt-vr-traffic-officer-simulator , Viveport審査中 )。まずいアーキテクチャで設計すると拡張が大変だと…

なが月・29日目

29日目 いよいよなつやすみがんばり月間も終わりを迎える。今日は車線変更の方式をいろいろ模索しつつ、通れる経路を厳しく制限することで正常な交通を実現している現在の方式から、柔軟にどの段階からでも車線変更ができるようにするためにはどのようにすべ…

なが月・28日目

28日目 帰宅後から開始。 360度を超えて回転するときの逆回転問題を解決してくれるMathf.LerpAngleを発見し、UIがいかなるfps・timeScaleでもスムーズに追従するようになった。また懸案事項であったタイムアップ時の結果処理や車間距離検知もテストしたとこ…

なが月・27日目

27日目 帰宅後から開始。スポーン地点を全て設定し、UIボタンインタラクトを実装した。あとは閉塞区間を導入しテストを行うだけだが、閉塞の実装が一番困難である。 VR制作は新しいことを学べるわけではないので書くことが途端に減ってしまう。来月と言わず…

なが月・26日目

26日目 8月中にアップデートをリリースするために一日Unityと向き合っていた。 3種類の目標を設定し、終了時に各目標が満たされていれば星が点灯するようにした。またメニューウィンドウを首の回転に遅れて追従するようにした。OVRCameraRigを古いものから新…

なが月・25日目

25日目 午前 並列プログラミング入門、今日はreductionを実際に書いて確かめた。 #include <bits/stdc++.h> #include <omp.h> int main() { std::vector<int> a = {1, 2, 3, 4, 5, 6, 7, 8}; std::vector<int> b = {1, 2, 3, 4, 5, 6, 7, 8}; int dotProduct = 0; // 1 + 4 + 9 + 16 + 25 + 3</int></int></omp.h></bits/stdc++.h>…

なが月・24日目

24日目 午前 今日はまず先週できなかった並列プログラミングに再挑戦した。最も初歩的なコードとして //出典: http://onoono-life.blogspot.com/2014/04/ccopenmp.html #include <stdio.h> int main() { #pragma omp parallel { printf("parallel\n"); } return 0; } </stdio.h>…

なが月・23日目

23日目 VR制作を今月中に一区切りつけるため、今日は一日中Unityと向き合っていた。 車のスポーン地点ごとに同じものを取り付ける上、Instantiateの方向をインスペクタ上で入力しなければならず、また2種類しかスポーンさせられなかったひどい過去のコードを…

なが月・22日目

22日目 帰宅後から開始。 今日はhttps://helpx.adobe.com/after-effects/how-to/keyframe-animation.htmlでキーフレーム補間方式などを学んだ。線形補間だとキーフレームは菱形、easy easeだと砂時計型になる。アニメーションパスはハンドルを操作することで…

なが月・21日目

21日目 帰宅後から開始。 AfterEffectsで背景アニメーションを作る(https://helpx.adobe.com/after-effects/how-to/create-animated-background.html)チュートリアルは動画ファイルがないからか練習素材が2MBで小ささに驚いてしまった。チェッカー模様を一列…

なが月・20日目

20日目 帰宅後開始。 まずはAEでクロマキー合成の方法を理解した。緑一色ならよいというわけでもなく、光の当たり具合によって色は変わってくるため、KeyLight(1.2)においてはゲインを上げてより広い色域を透過対象にさせるよう調整しなければならない。また…

なが月・19日目

19日目 午前 今日は予約図書を借りに行くなどいくつか所用があったので午前はそれに費やされた。 午後 借りてきた「並列プログラミング入門」(片桐孝洋著)を読み進める。 複数のCPUでアクセスできるメモリ単位の計算機資源をノードという、という説明でど…

なが月・18日目

18日目 午前 ABC133A-Dを解いた。C問題は「剰余の積は積の剰余だから、LとRの商が異なるならば剰余が0のものがLR間にあるので答えは0(注:これは正しい)、LとRが同じ商ならL%2019 < R%2019だから(注:ここまでは正しい)積の剰余の最小はL%2019 * (L+1)%2…

なが月・17日目

17日目 午前 早く起きたのでポートフォリオの更新をしていた。テキストが多くなると読みづらいのでBootstrapカードに置き換えた。 ABC132のC問題において、もちろん問題なく正解(35ms)はできたものの、C++答案の中で2倍の速度(15ms)のものがあったので調べた…

なが月・16日目

16日目 午前 ABC131A-DをC++で解いた。C問題ではC++17ではないのでstd::gcd, std::lcmが使えないとあって、さっそく関数テンプレートでmyGCD, myLCMを書いた(gcc拡張で__gcdがあるようだが、それを使うのはコンテスト中ならともかく過去問ではしたくなかっ…

なが月・15日目

15日目 帰宅後から開始。今日はC++の参考にしているサイトがDNSエラーでまったくアクセスできず、Googleでホスト名を検索してページのキャッシュを読むという苦行を行った。ただインライン関数の概念だけであった(はず、画像が表示できないので確信は持てな…

なが月・14日目

帰宅後から開始。そろそろ忘れられているがタイトルの読み方はなつやすみがんばり月間なので「ながげつ」である。 C++ではデフォルト実引数を指定することも可能になった。関数プロトタイプ宣言をする場合は宣言部分でデフォルトを指定しておき、実装部分に…

なが月・13日目

13日目 帰宅後から開始。C++のリファレンスはT& 変数名 = T型の変数;と記述し、 #include<bits/stdc++.h>using namespace std;void mySwap(int& a, int& b){ // std::swapがあるので int tmp = a; a = b; b = tmp;}int main(){ int p = 5; int q = 3; mySwap(p, q); cout <<</bits/stdc++.h>…

なが月・12日目

12日目 午前 さっそくC++14(GCC 5.4.1)で解答した。GCCでは#include <bits/stdc++.h>するだけで標準ライブラリをすべて利用できるようになるということで使うことにした。手元の環境はCLion(C++14)で、出力ログを見る限りMinGWのgcc/g++を使っているようなのでこれでよさそ</bits/stdc++.h>…

なが月・11日目

11日目午前ABC129A-Dを解いた。Cは最も初歩的な動的計画法であり、k段目に至る上り方を通りと表すときの漸化式が成り立つ。ところが階段は一部崩れており、その段への上り方は通りである。ナイーブに実装すればであるが、if k in aの処理が重くTLEする(うっ…

なが月・10日目

10日目 午前 昨日に引き続きABC137D。Python3での1st AC解はこのような流れになっている: 入力A, Bを受け、「今すぐ働いても支給が間に合わない仕事(A > M)」なら無視する。そうでなければ仕事候補リストに(A, B)を入れる。 【入力終了】 支給が一番早いも…

なが月・9日目

午前 今日はABC137があるため、過去問の代わりに今まで時間を削られていたVR制作を行った。Baked Indirectモードで間接光をベイクしたことで、日陰部分にも影ができ凹凸が明確になった。また久しぶりに実機でテストしたところ、Oculus Touchのゲーム中での「…

なが月・8日目

8日目 帰宅後から開始。 C言語、今日は構造体をポインタで参照する場合について学んだ。構造体struct someStruct fooのメンバにアクセスするにはfoo.someMemberであるが、構造体のポインタstruct someStruct* fooを通してアクセスする場合はfoo->someMember…

なが月・7日目

7日目 今日も帰宅後から開始。 C言語の構造体はC#でも引き継がれているので特に問題はなかった。構造体型を要素とする配列で初期化せずに後から代入する場合、new 構造体名 {メンバ}とすることができないので構造体型の変数を宣言してその変数を要素として代…

なが月・6日目

6日目 今日はアルバイトの日なのでC言語とPhotoshopチュートリアルをした。 悪名高きポインタであるが、それほど苦しむことはなかった。&aとはaという変数が格納されているメモリアドレスを意味し、*bとはbというメモリアドレスに格納されている変数の中身を…

なが月・5日目

5日目 午前 ABC128A-Cを解いた。レポートの続きをやるためDをやる時間はとれなかった。 Cはbit全探索の問題で、自分はたぶん初めて実装したと思う。ON/OFF→1/0→全スイッチの状況は0110010..すなわちbin(pattern) for pattern in range(2**N)と表せる(実際は…

なが月・4日目

4日目 午前 ABC127のA-Dを解いた。D問題は10^9個の要素をもつリストでk以下のカード枚数を管理して小さいほうから書き換える=数を減らしていこうという愚直解を考えたが最大値付近にカードが固まっていた場合10^9回の値チェック×10^5回の書き換えでどう考え…

なが月・3日目

3日目 午前 MATLABを利用した解析・線形代数演習の課題をやった。課題からnつを選んで解答しレポートとして提出せよということだが、全講義課題中からn問だけ選ぶのではなくn回分の講義課題全問だったらどうしようと不安になってガリガリ解いていた。問い合…

なが月・2日目

な(つやすみ)が(んばり)月(間)です。 2日目 午前 ABC126A-Dを解いた。D問題では木構造を効率的に実装する方法をつかめていないので、Python3での1st ACを写経した。1st ACなのに速度面でも最速と比べて60msしか差がない、すごい そして何回か提出して…

なつやすみがんばり月間・1日目

なつやすみがんばり月間・基本方針 何もない日は2時間をゲームに費やす(夕食前を予定)。2時間をAtCoderまたはKaggle(まずはAtCoder優先)、2時間をVRゲーム開発、1時間半をAdobe他のDCCツール習得、1時間を秋学期の並列コンピューティング授業で使うOpenMPの…