unityと実行しようとして偶に単純な構文ミスでつまずくことがあります。
構文エラーメッセージは以下です。
error CS1041: Identifier expected: `XXX' is a keyword
例えばusingに間違いがあると
error CS1041: Identifier expected: `public' is a keyword
といった風に。エラー箇所の近くを教えてくれます。
他にもカッコの合わせやセミコロンが付いているかなど、全般的なエラーメッセージです。
2015年9月29日火曜日
2015年9月22日火曜日
550円分のGoogle Playギフトカードがメールで無料配布
Googleから550円分のGoogle PlayギフトカードがGmailへ配られています。
他にも、アカウントが関連付けられていると一つのアカウントにしか届かないかもしれません。以前にAmazonAppは全ユーザーアカウントに500円分配布してくれたけど、今回はクーポンコードでの配布なのでしかたないか。
受け取り条件
- web版のGooglePlayの設定に「クーポンとニュースを受け取る」にチェックを入れている
- ギフトカードの使用体験のために配られているため、購入歴がないこと
他にも、アカウントが関連付けられていると一つのアカウントにしか届かないかもしれません。以前にAmazonAppは全ユーザーアカウントに500円分配布してくれたけど、今回はクーポンコードでの配布なのでしかたないか。
2015年9月20日日曜日
猫用アプリ iPad用をリリースしました。
無料の猫用アプリ「猫用アプリ ボール版」をリリースしました。
iOS版のダウンロードはこちら
無料で広告無し。
猫の目に優しい、黒背景に緑ボールです。
ボールがランダムに動いて猫がじゃれます。
ボールは速度によって音量が大きくなります。
動画で使用している端末は4.3インチのスマホです。
iPadくらいのサイズなら猫が遊びやすいかもしれません。
2015年9月14日月曜日
Unity Replaceが機能しない。置き換わらない。
C#とJavaの文法が似ているため時々勘違いをしてしまいます。
Javaの変数にはプリミティブ型とラッパー型の二つがあり、それぞれ値渡し、参照渡しのどちらかしかできません。
C#の変数は全て値渡しで、refやoutキーワードで参照渡しにすることができます。
勘違いしやすいのが文字列操作です。
String.Replace()でString内の文字列が変更されると思いきや、変更されず。
String = String.Replace()と書く必要がありました。
Javaの場合はStringは全て参照渡し扱いなので動作が異なります。
関数の設計の際は注意をしないと。。
Javaの変数にはプリミティブ型とラッパー型の二つがあり、それぞれ値渡し、参照渡しのどちらかしかできません。
C#の変数は全て値渡しで、refやoutキーワードで参照渡しにすることができます。
勘違いしやすいのが文字列操作です。
String.Replace()でString内の文字列が変更されると思いきや、変更されず。
String = String.Replace()と書く必要がありました。
Javaの場合はStringは全て参照渡し扱いなので動作が異なります。
関数の設計の際は注意をしないと。。
2015年9月13日日曜日
unity PCのローカルへファイルを保存するサンプル
pcのローカルへファイルを保存するサンプルです。
assetsフォルダと同じディレクトリにassets2フォルダをあらかじめ用意ししてください。
以下使用例
FileSaveText ("/../assets2/pass.csv",datas);
EditorUtility.DisplayDialog("Information", "SYUURYOU !!! TEXT", "OK");
//テキストデータの保存
public void FileSaveText(string fileName,String fileData){
StreamWriter sw;
FileInfo fi;
fi = new FileInfo(Application.dataPath + fileName);
sw = fi.AppendText();
sw.WriteLine(fileData);
sw.Flush();
sw.Close();
}
//バイトデータの保存 public void FileSaveGazo(string fileName,Byte[] fileData){
string path = string.Format("{0}/{1}", Application.dataPath , fileName);
File.WriteAllBytes(path, fileData);
}
assetsフォルダと同じディレクトリにassets2フォルダをあらかじめ用意ししてください。
以下使用例
FileSaveText ("/../assets2/pass.csv",datas);
EditorUtility.DisplayDialog("Information", "SYUURYOU !!! TEXT", "OK");
//テキストデータの保存
public void FileSaveText(string fileName,String fileData){
StreamWriter sw;
FileInfo fi;
fi = new FileInfo(Application.dataPath + fileName);
sw = fi.AppendText();
sw.WriteLine(fileData);
sw.Flush();
sw.Close();
}
//バイトデータの保存 public void FileSaveGazo(string fileName,Byte[] fileData){
string path = string.Format("{0}/{1}", Application.dataPath , fileName);
File.WriteAllBytes(path, fileData);
}
2015年9月11日金曜日
猫用のスマホアプリ
android版の猫じゃらしアプリ「猫用アプリ ボール版」をリリースしました。
ダウンロードはこちら
無料で広告の無いアプリです。
黒地の背景と緑のボールで猫の目に優しいです。
ボールは触ると音を立てて逃げます。
ダブルタップでボールのサイズ変更ができます。
ダウンロードはこちら
無料で広告の無いアプリです。
黒地の背景と緑のボールで猫の目に優しいです。
ボールは触ると音を立てて逃げます。
ダブルタップでボールのサイズ変更ができます。
猫用アプリ ボール版
猫用の無料アプリ「猫用アプリ ボール版」をandroidとiosでリリースしました。
緑色のボールが動き回ります。ボールが転がる音はボースの速度で大きくなります。
画面をダブルタップするとボールのサイズを変更できます。
ダブルタップで猫の注意を引くカサカサ音がなります。
無料で広告無し。
猫じゃらしアプリシリーズ。
2015年9月10日木曜日
unityタッチイベント
unityのタッチイベント
if (Input.touchCount > 0) {
switch(Input.GetTouch (0).phase){
case TouchPhase.Began:
Debug.Log ("Began");
break;
case TouchPhase.Stationary:
Debug.Log ("Stationary");
break;
case TouchPhase.Moved:
Debug.Log ("Moved");
break;
case TouchPhase.Ended:
Debug.Log ("Ended");
break;
}
}
if (Input.touchCount > 0) {
switch(Input.GetTouch (0).phase){
case TouchPhase.Began:
Debug.Log ("Began");
break;
case TouchPhase.Stationary:
Debug.Log ("Stationary");
break;
case TouchPhase.Moved:
Debug.Log ("Moved");
break;
case TouchPhase.Ended:
Debug.Log ("Ended");
break;
}
}
2015年9月9日水曜日
unity c#:数値の符号を取り除く
三次元で座標や加速度を計算する際にプラスとマイナスが混ざって分かりにくいです。
unityでは符号を取り除く関数Mathf.Abs()があります。
以下のように絶対数を返してくれます。
Mathf.Abs(10.5f)=10.5f
Mathf.Abs(-10.5f)=10.5f
引数はintとfloatどちらも使えます。
unityでは符号を取り除く関数Mathf.Abs()があります。
以下のように絶対数を返してくれます。
Mathf.Abs(10.5f)=10.5f
Mathf.Abs(-10.5f)=10.5f
引数はintとfloatどちらも使えます。
unity2d:キャラクターを瞬きさせるサンプル
2dキャラクターの瞬きを実装するには、一定秒数間隔で動作するコルーチンを使用します。
以下の方法を使えば一定時間置きに動作させられます。
void 瞬き開始() {
//ループコルーチン
StartCoroutine(loop());
}
private bool FLML=true;//終了フラグ
private float fme=5f,MABATAKI=10f;//10秒間隔で瞬き
private IEnumerator loop() {
// ループ n秒間隔
FLML = true;
while (FLML) {
yield return new WaitForSeconds(fme);
onTimer();
}
}
private bool FLM=true;
private void onTimer() {
if (FLM) {
目を閉じる
FLM =false;
fme=0.2f;//閉じている時間は短く
} else {
目を開ける
FLM =true;
fme=MABATAKI;
}
}
キーワード。コルーチン、タイマー
以下の方法を使えば一定時間置きに動作させられます。
void 瞬き開始() {
//ループコルーチン
StartCoroutine(loop());
}
private bool FLML=true;//終了フラグ
private float fme=5f,MABATAKI=10f;//10秒間隔で瞬き
private IEnumerator loop() {
// ループ n秒間隔
FLML = true;
while (FLML) {
yield return new WaitForSeconds(fme);
onTimer();
}
}
private bool FLM=true;
private void onTimer() {
if (FLM) {
目を閉じる
FLM =false;
fme=0.2f;//閉じている時間は短く
} else {
目を開ける
FLM =true;
fme=MABATAKI;
}
}
キーワード。コルーチン、タイマー
private bool FLM=true;が抜けていたので修正しました。
編集したmp3ファイルの先頭に無音部分が追加される
ゲームの交換音を切れ目なくループさせようとしたところ、Audacityで編集した音声ファイルの開始部分に無音部分が追加されていた。
追加された無音時間は0.05秒。ノイズの効果音だと一瞬の切れ目が耳についてしまいます。
Audacityならoggで保存できます。unityでもogg形式を扱えます。
追加された無音時間は0.05秒。ノイズの効果音だと一瞬の切れ目が耳についてしまいます。
原因
mp3は圧縮の構造上無音部分が追加されてしまう。解決方法
wev、ogg、accなどの形式で保存する。Audacityならoggで保存できます。unityでもogg形式を扱えます。
2015年9月4日金曜日
amazon本日の無料アプリが終了
amazonの日替わり無料アプリ配布が2015年8月26日に終了しました。
欧米では代わりになるサービス「amazon underground」が開始されています。
「amazon underground」は有料アプリを無料で使用できるサービスです。利用者にとっては本日の無料アプリと同じです。※一日限りではなく常時配布されている。
違いは開発者への見返りです。アプリの使用時間に応じてamazonが開発者へ代金を支払います。※今までは開発者には一銭も入ってこなかった。
日本でのサービス開始は2〜3ヶ月後かと思われます。
欧米では代わりになるサービス「amazon underground」が開始されています。
「amazon underground」は有料アプリを無料で使用できるサービスです。利用者にとっては本日の無料アプリと同じです。※一日限りではなく常時配布されている。
違いは開発者への見返りです。アプリの使用時間に応じてamazonが開発者へ代金を支払います。※今までは開発者には一銭も入ってこなかった。
日本でのサービス開始は2〜3ヶ月後かと思われます。
登録:
投稿 (Atom)