BMS Playerを作ってみた(ほんとに再生するだけ)

学校が死ぬほど忙しかったり、メインで使ってるPCが壊れたりして全然時間が作れないので、 Flantter.MilkyWay(Ver.3)の開発は当分おあずけです。

なんでBMSPlayer作ってるんだっていうのは、あくまで気分転換です。

BMSって

Beatmaniaに似たゲームです。 詳しくはぐぐって

BMSPlayerって

BMSというフォーマットの何かを再生するソフトです。 現在(2015.05.24)の主流は主にLR2でしょうか。

BMSの再生がどれだけ大変なのか気になったので試しに作ってみました。

ソースコードは↓ github.com

ライブラリにBoost先生を使っています。Boost先生は非常に便利です。 ちなみに音を再生するだけのソフトです。 BPMの変化やストップモーションについていけません。(BPMの変化だけならちょっと再生部を書き換えるだけだと思う) あとWAVの読み込みしかできません。 サウンドの再生部分についてはほとんどがhttp://www.charatsoft.com/develop/otogema/index.htmにあるもののパクリです。

感想

2日で作ったゴミですが、なんとか再生できるのは再生できます。(XhroriaとかBloomingとか) 再生した後にエラー落ちします。直せたら治したいです。

感想ですが、BMSプレイヤーを作るのはこんなに難しかったんだなと思いました。 再生するだけでこれなので、実際にプレーできるくらいのソフトになると死ぬほど大変でしょう。 LR2などのプレイヤーは神だと思いました。

気が向いたら今後もいじるかもしれません。

超参考(ここだけ見て作った)

http://www.charatsoft.com/develop/otogema/index.htm http://hitkey.nekokan.dyndns.info/cmdsJP.htm

Twitterの検索APIについて

便利なクエリとかsearch/universalで引っかかった点とかいろいろ新発見があったので, ブログにまとめておくことにしました.

gist

Twitterの検索API

新発見

min_retweets とか filter:image とかだいぶ使いやすいと思います. これらおそらく全部普通の検索APIでも使えるので便利です.

search/universalとかは使いドコロがあまり見つかりませんが, 特定のWebサービスとかだったらAppOnly認証の代わりに適当なアカウントと公式CK/CSで認証して使うと便利かもしれませんね.

消えないSettingsFlyoutを考える

設定関連のUI要素を載せるものとして便利なSettingsFlyoutですが、 ツイッタークライアントなどでユーザーの情報を表示するようなコントロールとして考えると ウィンドウサイズの変更などで消えてしまい若干不便です。

適当にゴニョゴニョしたところ構造が案外簡単だったので作りました。 デフォルトのStyle.xamlから必要なところを引っ張ってきていじるだけです。

わざわざStyle.xamlから持ってこないでSettingsFlyoutを継承してもできると思います。 今回はWindows10のために今後いじりやすいようにコピペして使ってます。

コード自体はながったらしいので続きから

続きを読む

Windowsストアアプリの認定作業で社員にエロ動画をリツイートされた話

Microsoftの社員にエロ動画をリツイートされました(おそらく)

なんで?

Windowsストアアプリというのは、アプリをストアに掲載してもらう際にマイクロソフト社員からアプリをチェックしてもらう必要があります。

ここの要件の一つに次のようなものがあります。

  • 一般にわいせつまたは露骨な性描写であると感じるコンテンツをアプリに含めたり、アプリで表示してはならない

この要件を確認するためにエロ動画にアクセスできるかどうかを調べる必要はあったのかもしれません。 しかし、エロ動画までリツイートされると正直・・・

しかもその後のメールでアプリが認定されるというオチ。 (まあリジェクトされたら当然Twitter公式アプリもリジェクトされるべきですけど)

マイクロソフト社員は普段からこんななんでしょうかね? 正直頭に来ましたし、なんか、がっかりしてしまいました。

このアカウントは Flantterのサポートアカウント 兼 アプリ認定用提出アカウント であるため, アカウントのパスワードを知っているのはMicrosoftと私(@cucmberium)以外にいません。

今後はアプリ認定用にいらないサブ垢を作る予定です。

追記:

ユーザー名とパスワードの提供はサービスへのログインが必要になる場合必須です。

画像

  • 問題の画像(該当リツイートはすでにこちらですでに削除)

f:id:cucmberium:20150119200010p:plain

  • 何故かNHKとエロ動画ボットが社員にフォローされている

f:id:cucmberium:20150119200527p:plain

SystemFontのリストを取得する

C#からはシステムにインストールされているフォントの名前を取得することができません。 その場合C++/CXを使えばいいらしいです。(そこらへんよくわかってない)

C#でたたけないとAnyCPUが使えなくなっちゃうので不便。 こんなの使うよりもSharpDX使ったほうが何かと便利でいいです。

できたもの

使い方

public IEnumerable<string> SystemFontList
{
    get
    {
        return WinRTSystemFontList.Core.GetSystemFontNameCollection("en-us");
    }
}

参考にさせていただいたサイト

SearchBoxでサジェストを上に出す

WinRTでは検索に便利なSearchBoxというコントロールがありますが、 検索時に出るサジェストを表示する位置が下で固定になっていて、自分的には少し不便です。

なので上に出せるSearchBoxを作りました。

SearchBox Suggestion to Top

使い方

<controls:CustomSearchBox SuggestionToTop="True" />

既出だったら申し訳ないです。