情報は力ではない

VimとかC++とかCUDAとか。

Hit Stopの実装の仕方

UE4

自分用にメモ。 Version Unreal Engine 4.16.3 Sample U-MA/HitStopSample · GitHub Content Hit stopの検証用にプロジェクトを作成。今回はTwin Stick Shooterを選択。 敵となるEnemyPawnを作成。 1M_CubeとBox Collisionを設定した簡素なものです。 ブルー…

仮で目を作る時のメモ

最近、Autodesk Maya キャラクターモデリング造形力矯正バイブルをやってます。 Mayaの本だけど作り方は参考になると思って読みつつモデリングをしてます。 www.borndigital.co.jp その中で仮の、眼球のシェーダを作る工程があって blenderではどうすればで…

Level Designer Quick Startをやった。

UE4

ちゃんとUE4を1から学び直さないといけないなぁと思ってラーニングをやってる。 Level Designer Quick Start docs.unrealengine.com ちっちゃな部屋を作りながら操作の仕方やアセットの配置の仕方、マテリアルの設定の仕方を学べる。 ここでちゃんと知ったこ…

Blender勉強会 Step 3に行ってきた。

Blender勉強会に行ってきた。 https://togebu.doorkeeper.jp/events/57339 今までスカルプトはとっつきづらいと思ってやってこなかったので 良い機会だなと思って参加した。東ゲ部、初参加でした。 @kurosaurusさんによるスカルプト講座 Blenderで学ぶスカル…

武器をアタッチする方法

武器をActorにアタッチする方法について少し調べたのでメモ。 アタッチする方法 端的に言うとattachToComponentを使えば良い。 これを使うことでParentのSocket NameにTargetのActorをアタッチすることができる。 docs.unrealengine.com Targetへの値の渡し…

Blenderで作ったモデルをUE4にインポート

Blenderで上図のようなモデルを作ったのでUE4に持ってきた時のメモ。 バージョン Blender 2.77a Unreal Engine 4.14.2 Export Blenderで作ったモデルをfbxでエクスポート。設定は特にいじってないつもり。アニメーションはつけてないので、アニメーションの…

新年の目標

新年一発目なので、簡単に目標をば。 去年まで特に目標とか決めずにきたけど、一旦決めてみようかと思う。 ゲームを作る。 ぷちコンに出る。 UE4もしくはBlenderの記事を12本書く。 とりあえずこんなものかと。 去年入門したUE4とBlenderを今年はもっと使っ…

Yokohama.vim #8に行って来た。

Yokohama.vimに初参加して来ました。 yokohamavim.connpass.com @gu4さんによる挨拶 Yokohama.vim#8 from gu4 www.slideshare.net 最初にYokohama.vimとVimの軌跡の比較をしていた。 スライドに記載していたはずのYokohama.vimの軌跡が残念ながら消えてたら…

Vim 8.0にした。

vim

先々週9/12にVim 8がリリースされたので、だいぶ遅れたがVim 8をインストールした。 今回はソースコードビルドに挑戦してみたので、そのメモを書きます。 何気にソースコードビルドは初挑戦(お恥ずかしいことに今までVim 7.4.729を使っていた...)。 やり方…

TaPL 演習4.2.2

問題 arithの実装におけるeval関数の定義を、大ステップスタイルに変えよ。 答案 もう少しうまく書きたい。 let rec eval1' t = try match t with TmIf(_, t1, t2, t3) -> ( let t1' = eval1'(t1) in match t1' with TmTrue(_) -> let v2 = eval1'(t2) in v2…

vim-ocaml-stdlib-helpを作った。

vim

最近、OCamlを勉強していて、VimでOCamlを書いてます。その時に標準ライブラリの機能を調べたいなと思うのだけれど、いちいちブラウザで調べるのも面倒なのでVim pluginを作りました。 github.com 使い方は :OCamlStdLibHelp {module-name} という感じです。…

TaPL 演習3.5.14

問題 定理3.5.4が算術演算の評価関係に関しても成り立つことを示せ。 すなわち、 かつ ならば であることを示せ。 証明 の導出に関する帰納法を使用し、 の導出で最後に使った規則に対する場合分けにより証明する。 E-SUCCの場合 は という形であり、またあ…

JavaScriptの論理演算子の評価値

最近、サイ本を読んでいます。 その中で少し驚いたものを一つ紹介したいと思います。 以下の論理演算子が何を返すかという話をします。 var o = { a: 0 }; var b1 = o && o.a; var b2 = undefined && o; var b3 = o || ""; var b4 = null || undefined 値の…

Vimの起動時間を計測する。

vim

概要 Vimの起動時間を計測するには次のようにする。 {fname}にその結果が書き込まれる。 vim --startuptime {fname} 内容 Vimの起動時間を計測するには、--startuptimeオプションをつけてVimを起動する。このオプションには引数としてファイル名が必要。 hel…

Mockitoの@InjectMocksは何を見てInjectするのか

InjectMocks (Mockito 2.0.36-beta API)に書いてます。 思った挙動と異なっていたので、自分のためにメモ。次のようなSampleクラスがあったとする。 public class Sample { private final Hoge hoge; private final Fuga fuga; private HogeHoge hogehoge; p…

ハル研究所プログラミングコンテスト2015

一昨年のハル研プロコン2014に引き続き、去年もハル研プロコンに参加しました。 ハル研究所 プログラミングコンテスト2015 | TOP今年の問題は宅配便でした。 問題の雰囲気は、車両配送問題(Vehicle Routing Problem, VRP)っぽい感じです。開催されてからすぐ…

Material Design GuideのListsを読んだ。

そろそろMaterial Designについても知りたいなぁと思ってきたので、Material Designのサイトの気になるところから読んでいる。 今日はListsとLists: Controlを読んだ。 Lists - Components - Google design guidelines Lists: Controls - Components - Googl…

VimConf 2015に行ってきた。

VimConf 2015に行ってきました。発表者の方々のスライドへのリンクは次のURLにあります。 http://vimconf.vim-jp.org/2015/#agendaセッションについては他の方々が紹介していると思うのでそちらにお任せしたいと思います。 申し訳ありません。*1 懇親会 懇親…

Android Data Bindingを使ってみた。

最近ちょこちょことtechbooster.fmを聞いているのですが、第11回でDataBindingの話をしていて、その存在を知ったのでちょっと使ってみた。 詳しい使い方についてはData Binding Guide | Android Developersに詳しく書いている(はず)です。まだ読んでないで…

ImageButtonを使ってみた。

上の画像の再生ボタンのようなボタンを作成したかったので、そのためのメモ。 ImageButton このようなボタンを作成するためにはImageButtonを使う。これは、その名の通り画像付きのボタンを表す。 例えばこんな感じに表示される。 このImageButtonの結果は次…

ActivityUnitTestCaseでIllegalStateException

Androidのテストを学ぶためにCreating Unit Tests | Android Developersを読みながら、そのサイトに載っているAndroidTestFunを写経していた。その時、ちょっと詰まってしまったのでメモ。 ActivityUnitTestCaseのstartActivity()を起点にした例外 AndroidTe…

Notificationをユーザに消されないようにする

AndroidでのNotificationをユーザに消されないようにするには次のようにすれば良い。 NotificationCompat.Builder builder = new NotificationCompat.Builder(context) .setOngoing(true); // このメソッドでtrueを指定する 主な使用用途として考えられるの…

GitHub実践入門を読んだ。

今日、友達に頂いたGitHub実践入門を読んだ。読みたい本だったのだけれど、お金が無くて買えなかったから非常にありがたい。www.amazon.co.jp普段からGitやGitHubは軽く使っているので、すらすらと読むことが出来た。 本の中でgit log -pやgit reflog、git r…

RecyclerViewとCardViewを使ってみた。

Androidの開発をしたばかりで、わからないことが多い。今回はRecyclerViewとCardViewについて少しだけ学んだ。Getting Started With RecyclerView and CardView on Android - Tuts+ Code Tutorial 少し古い記事だけど、このサイトのコードを写経してRecycler…

メインスレッドではネットワーク操作を行ってはいけない。

最近、ちょこちょことAndroidの開発を行っている。色々と学ばなければいけないことが多いので、少しずつしか開発が出来ない。 だいぶ古い記事だけど、Androidで広がる,携帯アプリ開発の世界 - 第4回 簡単なRSSリーダーを作ってみる:ITproを写経して 簡単な…

va_list型というものを知った。

C++

ゲームエンジン・アーキテクチャを読んでいて9章のサンプルコードで出てきたva_listとそれに関連するマクロや関数を初めて知ったので簡単なコードを書いてみた。特に使い道のないコード。 va_listのサンプルva_list型は可変長引数を扱うために使う型。 詳し…

ゲームエンジン・アーキテクチャ第2章

第2章のタイトルは「仕事用ツール」。この章では主にバージョン管理システム、Microsoft Visual Studio、それからプロファイリングツールとメモリリーク、メモリ破壊の検出について記述している。 2.1 バージョン管理 バージョン管理システムを幾つか紹介し…

ゲームエンジン・アーキテクチャ第1章

www.amazon.co.jp 今読んでいる本です。ゲームエンジンの作りに興味があるので読むことにしました。 本を読んでいるとインプットばかりでアウトプットをしないことが多くなるのが自分の悪いところなので、不定期にアウトプットをしようと思い、メモを残すこ…

Vimで条件に一致する要素の個数を返す関数

vim

ふとVimで条件に一致する要素の個数を返す関数みたいなの欲しいなと思ったので実装してみた。 条件に一致する要素の個数を返す関数簡単なものであれば動くと思う。 例えば let s:list = range(10) echo s:count_if(s:list, 'v:val < 3') " => 3 他のみなさん…

replaceScene()とEventListener

普段、cocos2dxで開発している訳ではなく、あまりcocos2dxを知らないのだけれど、少し疑問が湧いたのでそれを書いてみる。 疑問: replaceScene()したあと、それまでに登録していたEventListenerはどうなるのか 例えば、あるシーンをタッチすると次のシーンに…