どこかのだれかへ

職業ゲームプログラマ。気になったニュースのピックアップや開発日記などを書いています。

2の累乗かどうかの判定

2の累乗ということは、ビット演算的には1が一つだけの状態です。 2の累乗の場合、 -1すると繰り下がって下位ビットが全部1になるため、AND演算すると0になります。 2の累乗以外なら、 -1しても桁下がり発生しないため、AND演算にすれば1以上になります。 た…

バグ修正でQAコストを考える

開発がマスターアップに近づくと、重要でないバグをスルーする場合があるのですが、 これはバグ修正によって新たなバグを生み出す=エンバグのリスクを回避するためです。 スルーするかしないか、またどういう風に修正対応をするか、判断材料は色々あって、…

中途半端に引き継いでしまったので

仕事の話。 とある人のタスクがあふれちゃったので、終わりかけのタスク(でもバグがある)を1つを引き継いだんだけど、プログラムって書くより読む方が時間かかるし、理解するのに苦労する。 複雑だが大きなコードでもない、時間も無い、そもそもバグがある…

プルダウンリストの項目を検索選択するためのBookmarklet

でかいプロジェクトでRedmine使っていると人が多くてプルダウンで担当者を設定するのが探すのが大変。 IEだと日本語でも検索出来るけど、Chromeじゃそうはいかない。 そんな時に見つけたbookmarket。 htmlのセレクト要素をインクリメンタルサーチする bookma…

vimのvimfilesディレクトリをgithubで管理

Vim

会社でもVimを使いたいけど環境持っていくのが面倒でやっていなかった。 やっと重い腰を上げgithubでvimfiles(.vim)を管理するようにして会社でも同じVim環境で使えるようにしてみた。 GitHub - Tepp91/vimfiles ついでにNeoBundleからdein.vimにしたり。と…

積みゲー

ゲームをやる時間がなくて、まったく進まないのにどんどんやりたいゲームが出てくる。 FF15(プレイ中) Hollow Knight(プレイ中) 人喰いの大鷲トリコ キングダムハーツ 1.5 + 2.5 キングダムハーツ 2.8 アイドルマスター プラチナスターズ ニーア オート…

alignによるアライメントの変化で思ってたsizeofと違う結果になった

事の発端 頂点データを設定したが、うまく描画されず調べてみるとVertex構造体のサイズが思ってたのと違う! struct Vertex{ Vector4 pos; Vector2 uv; }; std::cout << sizeof(Vector4) << std::endl; // 16 std::cout << sizeof(Vector2) << std::endl; //…

WPFのListViewでダブルクリックでコマンドを実行する

サンプルを作成したのでGitHubにアップした。 GitHub - Tepp91/WPFSampleCollection にあるListViewDoubleClickがそれだ。 当初、ListViewのOnDoubleClickイベントを使おうとしたが、大まかうまくいくもののListViewのヘッダー部分でもダブルクリックに反応…

Visual Studioの外部ツールからVimを起動する際の引数

--servername $(ProjectFileName) --remote-silent +$(CurLine) $(ItemPath)

Adornerを利用して、プレースホルダを表示する

WPF

プレースホルダって検索すると「(UIデザイン的に)プレースホルダは止めておけ」という記事があるけれど、それは気にせず実装してGithubにアップしたので紹介しておく。 GitHub - Tepp91/WPFSampleCollection にPlaceholderサンプルを追加した。 プレースホ…

Boseのイヤホンが壊れたら、直営店に持って行こう

今日Boseのイヤホンが壊れたので、直営店に持って行ったら、 その場に在庫があったので、すぐに有償交換することが出来た。 普段、作業するときはBoseのノイズキャンセリングヘッドホンを使っている。 会社では、Quiet Comfort 20(イヤホン)、自宅ではQuie…

開発ネタ:Excelのシートビュー

時間があったら作りたい。 会社の仕様書はExcelなのだが、たまにシート数がかなり多い場合がある。 既存の機能ではシートのすべてが常に一覧として表示されているわけがないので、 これを一覧できるアドオンがほしい。 データ自体は共有データなので、変更し…

Doxygenで出力されるドキュメントを確認

家でC++のコードを書く時はコメントをDoxygen(JavaDocスタイル)で書いている。 ふと普段書いているスタイルでちゃんとドキュメント化されるてるのかが気になったので、確認用にプロジェクトを作ってみた。 GitHub - Tepp91/TryDoxygen P.S. なんとなく開発…

GitHubで見る注目すべきOSSなゲームエンジン

GitHubから「Discover interresting projects on GitHub」というメールが飛んできた。 内容はExploreページ(GitHub内の注目プロジェクトの紹介)へのリンクで、その中に「Game Engine」項目があったので興味がある人は見てみると良い。 Game Engines · GitHub…

気付いたら命名に1時間(CategoryかTypeか)

今日仕事でデータの命名に1時間かけてしまった。データの名前はあとで変更が出来ないので変数の命名なんかよりも数倍気を使う。 気を使うにしても1時間は使いすぎだろとは思うけれど、 この1時間の大半は「○○Category」か「○○Type」のどちらがよいか、と…

初級プログラマによくある「The XY Problem」とは

とある掲示板で「The XY Problem」という単語が目についた。 ぐぐってみるとあまり日本語ではヒットしないのだが、考えとしてはよくあるものだ。 The XY Probremは、端的に言えば、問題の本質を見失っている状態だ。 よくあるコピペがその良い例だ。 アメリ…

TreeViewのSelectedItemにデータバインディング出来ない

WPF

掲題の件、どうやらTreeView.SelectedItemPropertyはリードオンリーのようだ。 そしてリードオンリーの依存関係プロパティの場合、データバインディングは出来ないようだ。 MSDNに「読み取り専用の依存関係プロパティ」というトピックがあった。 https://msd…

自分が作っているゲームの事はTwitterにつぶやけない

意外と開発者たちは自分たちのゲームをエゴサーチしていて、たまに社内チャットとかで気になったつぶやきとかが流れてきたりする。 つまり下手につぶやくとそのツイートを見られる可能性がある。タグを付けなければ引っかかる可能性は低いだろうがゼロではな…

ボトルネックが…違う!

仕事で少しの間暇だったので、「じゃあこの軽いタスクをやってよ」と言われて別担当の人のタスクを実装したのだけど、どうにも気持ちカクつく気がする。 これは参ったなと思いつつ、今日は当初の予定よりももう少し広くコードを見たところ、問題箇所っぽいの…

今日見たクソース

// ...を確認する bool CheckHoge(); bool TestHoge(); bool CheckHoge() { // 略 } bool TestHoge() { // 略 } 同じようなやつが2つ合って違いが分かりづらかった。

PlayStation VR、9月24日に予約再開

いつもならメルマガのほうが早いのに、今回は4gamerで知った。 発売日まではこれが最後みたい。 過去2回の時は、当日なぜか忘れていたと言う教訓から、既にOutlookで予定を入れて1日前にアラームを設定しておいた。これで大丈夫なはず!

「人喰いの大鷲トリコ」発売日延期

2016年10月25日 → 2016年12月6日 FF15も11月末に延期したし、忙しくなりそう。

VirtualizingPanelを実装するにあたり

現在、2Dレイアウトツールのメインである、レイアウト機能を作成中(まだまだ先は長い)。IScrollInfoは「IScrollInfoの実装するにあたり - どこかのだれかへ」を読んで、スクロールすることは出来たので、いよいよ本丸のVirtualingPanelの実装に入る。参考…

思っていたほど悪くないコードだと気付いた。

先ほどまで「これはマジで止めて欲しいコード!」っていうのを書いてて、その理由を説明するために色々検証したんだけど、以外とそこまで悪くなかったという結果になったため、記事を破棄。どうやら完全に食わず嫌いだったようだ。 ちなみにコーディングスタ…

IScrollInfoの実装するにあたり

発端はVirtualizingPanelのための実装で、IScrollInfoの実装が必要になったため。 IScrollInfoは、ScrollViewerで論理スクロールを行うためのインターフェースで、Scrollさせたいコントロールが継承して実装する。既存のコントロールではStackPanelなどが実…

VRはコンテンツが大事な気がする

Vive、Oculus Riftと徐々にHMDが発売されているが、やはりPlayStation VRがほしい。 まず、ハードウェアのハードルの低さ。Vive、Oculus Riftはどちらも最新グラフィックスボードのハイエンドモデルなど要求スペックが高く辛い。それはそのはずで高解像度の…

Wwise入れてみようかな

jp.gamesindustry.biz 結構良い感じっぽいので今作っているゲームに入れてみようかな。 学生時代、サウンド関係の人と少し仲良くなって、ある程度ゲームが形になったら、彼に相談しようかどうか迷っている。迷っている理由は、彼とは5年前から音信不通で、一…

アイドルマスターPSがすごい。刺激的すぎる。美希可愛い。

美希が可愛い。可愛すぎる。 なんだこのクオリティは。PS3時代のセンシティブトゥーンを見たとき、たしかにすごいと感じたけどやはり自分が求めていたトゥーンではないと感じていた(PS3の少ないメモリであれだけやっていたのはすごいのだけれど)。 しかし…

主要なゲームショウまとめ

今日4Gamer見たらgamescomの記事が多かったが、そもそも主要なゲームショウはなにがあるのだろうか。軽く調べてみた。 3大ゲームショウ E3 正式名称はElectronic Entertaiment Expoで略してE3。言わずと知れた世界最大のゲームショウ。 6月頃にアメリカ・ロ…

IPA(情報処理推進機構)によるOSSライセンスまとめ(古め)

作成中のツール(C#、WPF)でProperty Gridを使いたいけれど、WPFには標準にはないので外部ライブラリの力を借りようと色々探していた。 探しながら、いいのがあればライセンス見て、そのライセンス内容を調べる。MITとかBSDとかならいいけど他はよく分からな…