C#は電気羊の夢を見るか?(引っ越し中)

dtiブログが閉鎖とのことでhttp://tanocs.blog.fc2.com/へ引っ越します。

ネットからダウンロードしたアセンブリを読み込む

どうにも思うようにmkbundleが動作してくれないので、いよいよとパッチ作業を始めた。その中で以下のエラーが出て先に進めなくなったのでメモ。

ネットワーク上の場所からアセンブリを読み込もうとしました。これにより、以前のバージョンの .NET Framework で、アセンブリがサンドボックス化された可能性があります。このリリースの .NET Framework では、CAS ポリシーが既定で有効になっていないため、この読み込みは危険な場合があります。この読み込みがアセンブリのサンドボックス化を目的としない場合は、loadFromRemoteSources スイッチを有効にしてください。詳細については、http://go.microsoft.com/fwlink/?LinkId=155569 を参照してください。

要約すると、
『読み込んじゃいけないっぽいアセンブリを読みこもうとしてますぜ、旦那。
どうしてもって言うなら、フラグ変えると幸せになれるかもな。
続きはWebで。』


じゃぁ、続きをと思って見てみると、以下のメッセージが目に入った。
「Visual Studio プロジェクトのエラー一覧に表示されたエラー メッセージ、またはビルド エラーによってこのトピックにたどり着いた場合は、「方法: Visual Studio で Web からダウンロードしたアセンブリを使用する」を参照してください。

要約すると
『お前も、かの場所から来たのか。
ならば、お前の進むべき道は・・・
続きはWebで。』


というわけで続きを開いてみると
方法: Visual Studio で Web からダウンロードしたアセンブリを使用する

あぁ、なるほど。
このエントリーをはてなブックマークに追加
LINEで送る

Unity小ネタ小技集

Unityを始める上でハマったこと、悩んだことをメモ
初心者の書いた内容なので、間違ってる所があったら指摘お願いします。

○VisualStudioで開発する
メニューからEdit→Preferences→GeneralタブのExternal Script Editorから選択

○スクリプトを実行するときの注意点
VSで編集した奴は保存しないと反映されない。

○ステップ実行
VSでは現在のところできない。MonoDeveropならできる

○グローバル変数が表示されない
オブジェクトにグローバル変数(プロパティ)が表示されていないのはPublicになっていないから

○UIをプレビューする
プレビューはクラスの先頭に[ExecuteInEditMode()]をつける

○UIでテクスチャが表示されない
カメラオブジェクトにUIのスクリプトを仕込んでテクスチャを表示しようとすると表示されない。
メニューのGameObject→CreateEmptyで出来上がったオブジェクトに仕込む

○ボタンが文字化けする
VisualStudioのメニューからファイル(F)→名前をつけて〜.csを保存(A)→
上書き保存(S) 横の ▼ を押下→エンコード付きで保存→Unicode - コードページ 1200を選択

○Texture2Dのシリアライズ
標準のTexture2D.EncodeToPNG()でbyte[]を取得可能
Texture2D.LoadImage(byte[])でTexture2Dを取得できる

jpegエンコーダーは海外サイトで見つかる。


○EditorUtilityはビルド後使えない
exメッセージボックス、ファイルダイアログ
SaveFilePanelやDisplayPopupMenuは使えないので自力実装する必要がある


【エラーメッセージ】
○the referenced script on this behaviour is missing!
身に覚えのないスクリプトがオブジェクトに無いかチェック
余分なスクリプトや使わなくなったスクリプトがのこってる場合がある

○unity Unexpected symbol `'
コメントの前とかに全角空白が残ってるとエラー

○NullReferenceException UnityEngine.Camera.ScreenToWorldPoint
カメラのtagにメインカメラの指定が必要

【Tips】
○String.EmptyボタンはiPhoneで重い
1*1の透明テクスチャボタンを使う
このエントリーをはてなブックマークに追加
LINEで送る

mkbundleで発行されるgccのオプション

普通にcygwinからmkbundleをやるのもつまらないので
MinGWとMSYSをつかいcmd.exeだけで処理を完結させようかと思う。


そのため、gccのコマンドを自力発行するべく
mkbundleで発行されるオプションと、
使えそうなオプションを調べてみた。

●書式
gcc「リンカへ渡すオプション」
-o「実行ファイル名」
「コンパイルオプション」
「ソースファイル名」
「オブジェクトファイル名」

●mkbundleで発行されるgccコマンド
○gcc

○-mno-cygwin
cygwin1.dllを必要としないバイナリを作る

○-g
デバッグ情報を生成する

○-o NAME
作成するバイナリの名称を指定

○-Wall
警告を表示する

○temp.c
ソースコード

○`pkg-config --cflags --libs mono-2|dos2unix`
・オプション文字列の自動生成 リンク -lフォルダ名を列挙
CFLAGS=`pkg-config --cflags mono-2`
LDFLAGS=`pkg-config --libs mono-2`

中身はオプションの情報をまとめたもの。

pkg-configコマンドを利用して展開すると以下の様な感じ
(今回は直接MinGWを利用するので-mno-cygwinは全て不要)

dos2unixは改行コードを[CR+LF] -> [LF]とする
(これも同様に不要)

○temp.o
オブジェクトファイル名
(DLLとかもここに書く)


●使用されていないけど、使えそうなオプション
-shared DLL作成用オプション(リンカオプション)
-s オプションでファイルサイズを減少させられる らしい(リンカオプション)
-O1 オー 最適化オプション(リンカオプション)
-O2 高度最適化
-O3 超高度最適化
-O0 最適化を行わない
(最適化のデフォルトは不明)

最適化の詳細はこちらのサイトが詳しい
http://www.cqpub.co.jp/interface/column/freesoft/2002/200208/08-4.htm
このエントリーをはてなブックマークに追加
LINEで送る

Win32用のmkbundleのオプションを、とりあえず訳してみた

Monoを本格的に利用するためにWin32用のmkbundleのオプションを、とりあえず訳してみた。
このエントリーをはてなブックマークに追加
LINEで送る

SlimDXの問題点とSharpDX

ある程度SlimDXでの開発を終え、テストもボチボチ進んだ頃、
「さぁ、仲間内に配布」という所で有る問題が持ち上がってきた。

それは、「必要とするライブラリが多い」という事実。

もともとXNAからSlimDXへ移行したのは
実行するユーザーの負担の少なさを期待してのものだったのだが、
これが外れたのだ。

.Netはそもそも標準インストールではないので、
インストールされていないPCにはインストールが必要となる。
そしてSlimDXはC++ Runtimeが必要なのでこれも必要となる。

結局、これだとユーザーに付随するライブラリを2つ以上要求することになる。
ダメだったときに「.Net入れてね」だけで済まないのだ。

.Netだけであれば「わりと入っているだろう」という楽観の下
.Net 2.0環境で開発を続けていた。
ところが、そうは行かなかった訳だ。


困っていたところに、面白いものを見つけた。
SharpDX
http://code.google.com/p/sharpdx/

これの良いところは
・もちろんC++ Runtimeが不要
・Mono上で動作する(.NET Frameworkも不要)
・SlimDXより高速らしい

悪いところは
・日本語の情報がない


言語の壁があるが、
ある程度対応するAPIが有るであろうことを期待して、
SlimDXから移行をしてみようかと思う。
このエントリーをはてなブックマークに追加
LINEで送る

使い捨てメアドを本当に使い捨てる

取得に情報入力が不要で、破棄も自動的。
本当にページを表示してすぐに使えるメアドサービス。

その名も「10分メアド」
http://10minutemail.com/10MinuteMail/

前は英語のみだったんだけど、いつの間にか日本語に対応してた。


使い捨てメアドを登録すると、そのサイトからメールが来たり、
結局ゴミを片付けるなどのメンテが必要だったりして、
「使い捨て」できていないメアドが増えてきてしまってたのだが、
これで、そういう煩わしさからおさらばできる。
このエントリーをはてなブックマークに追加
LINEで送る

 | HOME | 

PAGE TOP ▲

Appendix

■春条

■春条

生息地は愛知
車と甘い物が好きな31歳
特技は無限昼寝

MONOからSharpDXを使う
変態的な手法で、
.NET Frameworkを使わずに
ゲーム作りやってます。

Search

Calender

« | 2012-01 | »
S M T W T F S
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 - - - -

Twitter

Recent Entries

DTIブログポータルへ
このブログを通報
Report Abuse

利用規約