しゃべりながらゲーム制作やってみます #23 探索経路自動生成1

マップに壁を作ったことにより、自動で動くユニットが、道なりに移動できるように経路を探索できるようにする必要があります。

通常は経路をマップに合わせて手動で作るのですが、マップ自体が自動生成されているため、探索経路も自動で作る必要があります。

]]>

Vaio Duo 13 (Vaio 系列含む) を Windows 10 にアップグレードした後に動画再生が乱れる現象を直す

Vaio Duo 13 を Windows 8 (8.1) から Windows 10 にアップグレードすると、VAIO TV with nasne やその他動画再生ツールによる動画再生で画像が乱れる場合があります。下の画像のように右側4割ぐらいが真横に伸びたような感じになります。

2015-11-14 09_23_21-TopWindow_600px

これを直すには Vaio の設定を変える必要があります。

スタートメニューから「すべてのアプリ」を選択して「VAIO Control Center」を起動します。

2015-11-14 09_26_30-検索

左のリストから「画質」を選択し、右の項目から「X-Reality for mobile」の上の項目チェックを off にします。

2015-11-14 09_25_28-VAIO の設定_600

動画を再生すると直ることが確認できます。ただし、高画質モードを off にするので映像が若干ぼやけるような感じになるかもしれません。

2015-11-14 09_26_01-TopWindow_600

]]>

Windows ストアアプリのデバッグ実行で認証関連のエラーで起動できなくなった時の対処法

環境

  • Windows 10
  • Visual Studio 2015
  • Windows ストアアプリ 8.1 UWP

内容

あるタイミングで Visual Studio から Windows ストアアプリをデバッグ実行しようとしたときにエラーが発生して実行できなくなったので、それの対処法を書いておきます。

デバッグ実行しようとすると、ストアアプリのウィンドウは表示されるけど、その後エラーダイアログが表示されてアプリケーションが終了してしまいます。ダイアログの表示内容は

Windows ストア アプリ '{GUID}!App' をアクティブにできません。{AppName}.Windows.exe プロセスが開始されましたが、アクティベーション要求がエラー 'アプリは開始されませんでした' で失敗しました。

という内容です。(キャプチャ忘れました。)

一応この件についてヘルプを見ろという指示がでるので、見てみると以下の URL に誘導されます。

そこではイベントビューアーを使ってログの内容を見ろという内容が書かれているので、ログを確認してみました。すると内容は

エラー アプリは開始されませんでした。 によりアプリ {GUID}!App を Windows.Launch コントラクトに対してライセンス認証できませんでした。

と書かれていました。文章がおかしい気もしますが、ライセンスやアクティベーションがらみでのエラーと読み取ることができます。

ですが、Microsoft アカウントや Visual Studio の認証系を一通りチェックしたのですが、エラーはなくなりませんでした。仕方ないのでエラーメッセージをもとに調べてみると「bin フォルダを削除しろ」というお達しを見つけたので、指示通りに削除して再実行したところ正常に起動できるようになりました。

私の環境では複数の PC でファイルを同期させているのですが、 bin フォルダ内も対象であるため、ほかの PC の認証情報が別 PC にコピーされて、それで正常に起動できなくなったのかもしれません。

]]>

しゃべりながらゲーム制作やってみます #22 マップの自動生成2

マップの自動生成、後半の動画をあげました。前半は説明が大半だったのですが、後半は実際にマップデータを自動生成する部分の内容と、できたマップをキャラクターを操作して歩くデモを行っています。

]]>

[SSRS] レポートマネージャーでレポートがサブスクリプションによって自動エクスポートされたときのログを確認する

メモ書きです。

環境

  • SQL Server : SQL Server 2008 R2

内容

ログを確認すると、エクスポートされたレポートの種類や、エクスポートにかかった時間、結果、出力サイズ、行数などが参照できます。

ログを確認するには SQL Server Reporting Services をインストールした時に作成されるデータベース「ReportServer」のテーブルを参照します。

以下の SQL を実行するとログの内容を確認できます。

use [ReportServer];
select
  B.[Path]                -- レポートのパスと名前
 ,A.[LogEntryId]
 ,A.[InstanceName]        -- レポートサーバーインスタンス名
 ,A.[ReportID]
 ,A.[UserName]            -- 実行ユーザー
 ,A.[ExecutionId]
 ,A.[RequestType]
 ,A.[Format]
 ,A.[Parameters]          -- レポートの出力に指定したパラメーター
 ,A.[ReportAction]
 ,A.[TimeStart]           -- 出力を開始した時間
 ,A.[TimeEnd]             -- 出力が完了した時間
 ,A.[TimeDataRetrieval]   -- データの取得にかかった時間 (単位はミリ秒)
 ,A.[TimeProcessing]      -- レポートの処理にかかった時間 (単位はミリ秒)
 ,A.[TimeRendering]       -- レポートの表示にかかった時間 (単位はミリ秒)
 ,A.[Source]
 ,A.[Status]              -- rsSuccess(成功) またはエラー コード
 ,A.[ByteCount]           -- レポートのファイルサイズ
 ,A.[RowCount]            -- クエリ結果の行数
from [ExecutionLogStorage] A
inner join [Catalog] B
  on B.[ItemID] = A.[ReportID]
where convert(varchar(8), A.[TimeStart], 112) = '20151104'  -- いつのデータを取得したいか、などの条件
order by A.[LogEntryId] desc;

各パラメータの詳しい情報などは以下の URL 先を参照してください。SharePoint について書かれていますが、内部では Reporting Service を使っているので大体同じです。

]]>

しゃべりながらゲーム制作やってみます #20 壁の当たり判定

制作のほうがなかなか詰まってて進んでいない状態なので動画の公開のほうも滞っているのですが、なんとか3週間ぶりにあげることができました。今回の実装と次回分の実装が形になってきたので、問題なければ数回にかけて毎週1個ずつ動画を上げられるかもしれません。

あと、Ver 0.2 のデモ版についてもそろそろ視野にいれようかと思っています。Ver 0.1 からはそんなに機能は追加する予定はないのですが、大まかに XNA 対応とマップ対応あたりになるかと思います。まだざっくりとしか決めていないので、決まりしだい書いていきたいと思います。

]]>

しゃべりながらゲーム制作やってみます #19 開発環境移行

すみません、動画を投稿していたのにブログのほうで告知するのを忘れていました。

開発環境を移行していたので、しばらく動画投稿できていなかったのですが、1か月ぶりに再開しました。今回は番外編ということで開発環境移行についていろいろ話しています。

番外編なのでほんとは18.5とかにしようと思ってたのですが、番号を並べた際にここだけ浮いちゃうので19にしました。(^^;)

]]>

ホームページ「sorceryforce.net」の実行環境を変更しました

内部フレームワークを変えただけなので見た目とかは特に何も変わっていません。

開発環境を Windows 10 や Visual Studio 2015 に移行したりしていたのですが、ついでなのでホームページを動かしている ASP.NET の中身もいろいろバージョンを上げてみました。もし挙動などがおかしければコメントいただけると助かります。(WordPress 側は特に変えてないのでブログのほうは大丈夫だと思います)

一応変えてみたものは次の通りです。

  • ASP.NET 4 → ASP.NET 4.5.2
  • .NET Framework 4 → .NET Framework 4.5.2 (サーバーがいつの間にか 4.5 対応していたので上げました)
  • Entity Framework 5 → Entity Framework 6.1.2 (4→5 みたいに API 変わってなくてよかったです)
  • jQuery 1.8.2 → jQuery 1.10.2

ただ、Web サーバーのほうが権限の問題で Roslyn を使おうとするとアクセス権エラーが発生してホームページがまったく動かなかったので、web.config から「system.codedom」を抹消して使用しないようにしました。というか自作サーバーでテストしていたときは普通に動いていたのに、いざ本番ホームページサーバーにあげたら不明なエラーが発生して動かなかったので結構焦りました。一時期ホームページが開けなくなっていたのはこのためです。

ちなみに、作り直す前のプロジェクトを VS2013 から VS2015 に移行した時に図のような警告が出ていたので、SQL Server 2012 Express LocalDB を入れようかと思ったのですが、新規に作り直した時に認証系などをすべて外したので警告は出なくなりました。

2015-09-09 20_17_36-Microsoft Visual Studio

]]>

Visual Studio でアセンブリ署名を作成・登録しようとするとエラーがでる (解決済み)

環境

  • Windows 10 Pro
  • Visual Studio 2015 Community

現象

環境を Windows 10 (新規)に移行して Visual Studio 2015 を入れたのですが、以前のプロジェクトを編集していると一部のプロジェクトでアセンブリ署名がうまく設定されない現象に出くわしました。

原因を探るために新規プロジェクトを作成して試してみました。今回はコンソールアプリケーションです。プロジェクトを作成しただけで特に何も追加していません。

2015-09-16 22_34_37-3D Builder

プロジェクトのプロパティを開き、アセンブリの署名キーを作成します。

2015-09-16 22_35_20-3D Builder

ファイル名とパスワードを入力します。

2015-09-16 22_35_44-厳密な名前キーの作成

しかし、「操作を完了できませんでした。アクセスが拒否されました。」のエラーメッセージが出てしまいました。

2015-09-16 22_36_23-Microsoft Visual Studio

プロジェクトにもキーファイルは追加されていません。

2015-09-16 22_36_36-3D Builder

ただ、エクスプローラーを見るとファイルだけは作成されているようです。

2015-09-16 22_36_46-

試しに、このpfxファイルを参照して設定してみます。

2015-09-16 22_36_57-3D Builder

作成されたpfxファイルを選択します。

2015-09-16 22_37_05-3D Builder

先ほど入力したパスワードを入力します。

2015-09-16 22_37_15-ファイルを開くためのパスワードを入力してください。

しかし今度は「存在しないトークンを参照しようとしました。」というエラーメッセージが表示されました。

2015-09-16 22_37_18-キーのインポート エラーです。

もちろん、キーファイルは設定されていません。

2015-09-16 22_37_26-3D Builder

しかし、今度はプロジェクトには追加されているようです。

2015-09-16 22_37_31-3D Builder

解決方法

正規の解決方法なのかはわかりませんがうまく対応できたので手順を載せておきます。

いろいろ調べてみると「C:ProgramDataMicrosoftCryptoRSAMachineKeys」フォルダに対して更新権限がないために起こっているエラーのようでした。試しに、そのフォルダに対してファイルを作成しようとしても作成できないことが確認できます。

2015-09-16 22_38_56-MachineKeys

ちなみに、正常に動作している環境ではファイルが作成できるようになっていました。

2015-09-16 22_39_42-yuuichi-main_3404 - リモート デスクトップ接続

なぜこのような違いが起こったのかわかりませんが、とりあえずログインしているユーザーでフルコントロールを割り当ててみました。ちなみに正常に動作している環境のセキュリティを確認したところ、「Everyone」「Administrators」のみで、どちらもアクセス許可にはすべてチェックはついていませんでした。

2015-09-16 22_40_20-MachineKeys のアクセス許可

セキュリティの設定を行ったところ、作成したプロジェクトでキーファイルが設定できるようになりました。

2015-09-16 22_41_54-OneNote

もともと正常に動作している環境、動作しなかった環境はいずれも「Windows 10 Pro」「Visual Studio 2015 Community」なのですが、Windows 10 に移行した際の手順によってもしかしたら違いが出たのかもしれません。

Windows 10 新規インストール OK
Windows 8.1 Professional から Windows 10 へアップグレード OK
Windows 8.1 Enterprise から Windows 10 へアプリ以外をアップグレード NG

また、今回は「C:ProgramDataMicrosoftCryptoRSAMachineKeys」フォルダにセキュリティのアクセス許可を追加しましたが、セキュリティ的にリスクがないかどうかはよくわかっていません。試される方はその点を認識したうえで行ってください。

]]>