【3Dゲームエンジン】Unity質問スレッド1
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
2012/04/20(金) 13:11:07.27ID:wu5IoHobWindows/Mac用。JavaScript/C#/Booといった汎用言語を使用できるのが特徴です。
フリー版で開発したゲームは個人・法人を問わず追加のロイヤリティーなしで販売できます。
プラットフォームサポートはiPhone/iPod Touch/iPad、Mac、PC、Web、Wii、Xbox360、Android、PlayStation 3他
次スレは>>970を踏んだ方が建てること。ダメなら>>980か>>990が建てて下さい。
■本スレ
【3Dゲームエンジン】Unity 13
http://toro.2ch.net/test/read.cgi/gamedev/1334399781/
■Unity 2ch Wiki(まとめ、過去ログ、リンク集)
http://www24.atwiki.jp/unity2ch/
●リンク
・Unity(日本公式サイト)
http://unity3d.com/japan/
・ユーザーガイド&リファレンス
http://unity3d.com/support/documentation/
(日本語訳)
http://ws.cis.sojo-u.ac.jp/~izumi/Unity_Documentation_jp/Documentation/Manual/
・チュートリアル
http://unity3d.com/support/resources/tutorials/
・FAQ
http://answers.unity3d.com/index.html
・Unityのスクリプト公式
http://unity3d.com/support/documentation/ScriptReference/index.html
・MSDN
http://msdn.microsoft.com/ja-jp/ms348103←スクリプトのエラー番号をこれで検索すると原因が日本語で出てきます。
0604名前は開発中のものです。
2012/06/14(木) 03:47:42.31ID:bBUcpGXN普通にLLパーサ書いて式をツリーで表すか
数値、演算子、括弧だけ識別してRPN(スタック計算)で算出
後者は昔のプログラムの教本レベルだし。
0605名前は開発中のものです。
2012/06/14(木) 06:00:31.79ID:pgY+7+b7課題で良く出るアルゴリズムだなw
0606名前は開発中のものです。
2012/06/14(木) 07:47:56.51ID:zJuR+2f/Cubeをすり抜け、中に入っちゃうんですがこれって仕様?
しかも物体の中に入っちゃったらその段階でも物理演算が有効になってるから
身動き取れない状態になる
なんか特別な解決方法ってあるんですかね?
0607名前は開発中のものです。
2012/06/14(木) 08:08:27.96ID:779ut7P60608名前は開発中のものです。
2012/06/14(木) 09:13:35.70ID:+/Yt959Q・当たったときの反動を強くする
・当たり判定を、小刻みタイプか直線補間タイプか、何種類か選べるので、
切り替えて試す
・物理演算のステップを細かくする
・入力による移動方向のベクトルで移動の前に障害物ズとヒット判定を行って
当たってたらそっちの方向に動かさない
・あきらめる
0609名前は開発中のものです。
2012/06/14(木) 09:37:55.13ID:PAU+rgx7ぱっと考えたサンプル、NewSceneしてMainCameraにtest.jsを付けたら動くハズ
btn.js
var rect : Rect;
var text : String;
btn_draw.js
function OnGUI () {
var temp : GUISkin = GUI.skin; GUI.skin = skin;
for (var b : btn in btnList)
if (GUI.Button(b.rect, b.text)) b.SendMessage("func", null, SendMessageOptions.DontRequireReceiver);
GUI.skin = temp;
}
log_name.js
function func () { Debug.Log(name); }
test.js
var skin : GUISkin;
function Start () {
var list : btn_draw = GameObject("btn_draw").AddComponent(btn_draw);
list.skin = skin;
var btns : btn[] = new btn[10];
for (var i : int = 0; i < 10; ++i) {
btns[i] = GameObject("btn"+i).AddComponent(btn);
btns[i].gameObject.AddComponent(log_name);
btns[i].text = btns[i].name; btns[i].rect = Rect(0,i*50,100,50);
}
list.btnList = btns;
}
0610名前は開発中のものです。
2012/06/14(木) 10:14:00.79ID:PAU+rgx7コストに関しては毎回読み込まれないと思う
最初から読み込まれてるか初回使用時に読み込まれるか
GUI.skinの変更はシャローコピーだろうからあまり気にしない
あとbtn_draw.jsに↓を書き忘れてた
var btnList : btn[];
var skin : GUISkin;
btnListはListとかにしたら追加・削除がしやすいかも
0611名前は開発中のものです。
2012/06/14(木) 15:58:18.86ID:w6Q2C++U調べてみたら非常にシンプルに解決することが出来ました。
教えて頂きありがとうございます!
0612名前は開発中のものです。
2012/06/15(金) 22:01:16.54ID:UfZ8o6Ek0613名前は開発中のものです。
2012/06/15(金) 22:31:17.15ID:OPSrw/TQ0614名前は開発中のものです。
2012/06/16(土) 10:01:44.23ID:MKyMV4YEうんち
似てなくもない
0615名前は開発中のものです。
2012/06/16(土) 10:45:41.51ID:Sp/+kX7Gうんこはまだ腸にある。既出ではないはず。
0616名前は開発中のものです。
2012/06/16(土) 11:15:47.44ID:XzCu8Rl50617名前は開発中のものです。
2012/06/19(火) 02:22:03.36ID:dy6u5EbRvar cube : GameObject;をクラス外に宣言して、
inspecterからcube にprojectの適当なオブジェクトを選択。
それでカメラのスクリプトのstartで以下の文でcubeのインスタンスを生成。
Instantiate(cube, Vector3 (0, 0, 0), Quaternion.identity);
あとはhierarchyに適当なオブジェクトを作って、それにスクリプトを設定、
中身はUpdateで前に進む処理を書いてcubeのインスタンスに進んだらぶつかるようにして画面に置いて、
OnCollisionEnterにDebug.Log(collision.gameObject.tag);を書いて、何かぶつかったらそれのタグをログに出すようにしました。
これで、作成したインスタンスに動的にタグを設定したいのですが、
インスタンス生成前にcube.tag = "Finish";としてもログで確認できるタグは初期値の"Untagged"が帰ってきます。
ためしにcube = Instantiate(cube, Vector3 (0, 0, 0), Quaternion.identity);
でインスタンス生成後の戻りを付けとって、それにcube.tag = "Finish"をしても同様に"Untagged"が帰ってきます。
ログが出ていると言うことはオブジェクト同士がぶつかっている(見た目にもぶつかっている)はずなので
タグの設定方法が悪いと思うのですが、どのように書けばtagを設定できるのでしょうか。
0618名前は開発中のものです。
2012/06/19(火) 03:16:08.87ID:IgQBUWYYやり直し。
0619名前は開発中のものです。
2012/06/19(火) 06:37:59.24ID:EV22AP+5GameObject go = Instantiate(cube, Vector3 (0, 0, 0), Quaternion.identity);
go.tag = "Finish";
0620名前は開発中のものです。
2012/06/19(火) 08:24:31.59ID:I8ukIoeuインスタンス生成前にcubeの属性を変えておくわけでもなく、
GameObject型のcubeを使いまわしても駄目で、新たに宣言する必要が有ると。
しかし、どうしてこれで出来るのかわかりません。
そこで変数を宣言してもここで言えばStartが終わった時点でGameObjectのgoが破棄されてしまうと思うのですが。
これってunity特有の作法なのでしょうか、それともjavascriptの作用なのでしょうか。
インスタンスを作った時点で3D空間にオブジェクトが出来て、goはその属性を操作する一時的な変数とでも解釈すればよいのでしょうか。
0621名前は開発中のものです。
2012/06/19(火) 09:34:38.78ID:9HRiJaJUInstantiateされたオブジェクトは、Destroy関数で破棄されるまで消えないよ。
goは単なるオブジェクトのハンドル。
Cで言うところのポインターや参照と同じ。
0622名前は開発中のものです。
2012/06/19(火) 11:24:35.87ID:E5VXzLUT今UnityのProを買おうと考えているのですが、4.0が出るまで待ったほうが良いのでしょうか
今Unity4.0を予約すると200$のクーポンがもらえると聞きましたが、どうなのでしょうか
よろしくお願いします。
0623名前は開発中のものです。
2012/06/19(火) 11:26:35.87ID:IkWSGPGvそれはここじゃなくてベンダに聞くべきかも
それか、なんかアナウンスあれば見るとか
0624名前は開発中のものです。
2012/06/19(火) 11:39:53.11ID:UaBVU06mメジャーアップデートはお金かかるよ。
もちろん普通に買うより全然安いけど。
今から買うなら4でしょ、やっぱり。
0625名前は開発中のものです。
2012/06/19(火) 12:08:32.48ID:E5VXzLUT今公式から買おうとするとすでに4.0になってました。
クーポンもつくらしいので買おうと思います。
0626名前は開発中のものです。
2012/06/19(火) 12:09:28.35ID:l5o4HiWgそのかわり200$のクーポンがあるよ、って書いてあるな。
0627名前は開発中のものです。
2012/06/19(火) 12:25:07.16ID:IgQBUWYY10万円ほどだな。
0628名前は開発中のものです。
2012/06/19(火) 15:01:34.74ID:UaBVU06m0629名前は開発中のものです。
2012/06/19(火) 21:23:48.37ID:X6I6qilmありがとうございます。
ポインタだと考えれば納得です。
0630名前は開発中のものです。
2012/06/19(火) 22:14:00.36ID:KaCxjqgKげ、2.xから3.xは半額くらいだったのに
ちとたけぇ orz
0631名前は開発中のものです。
2012/06/20(水) 05:44:33.71ID:dhyfER3uC#ではclassオブジェクトは全部参照扱い、
structオブジェクトは全部値扱いって決まりがある。
これ意識してないとたまにハマる。
0632名前は開発中のものです。
2012/06/20(水) 15:00:12.28ID:dyFAPPaqロゴ的な画像をのせるにしても背景の色を黒以外にかえたいのですが。。。
0633名前は開発中のものです。
2012/06/20(水) 20:36:02.43ID:9hegGRF0var array : Array = new Array(10);
array[0] = new Array(10);
array[0][0] = 1; ←でエラーがでよる
これって仕様?
0634名前は開発中のものです。
2012/06/20(水) 20:43:04.53ID:Rsbpp+ePそれUnityじゃなくてJavaScriptの言語仕様の話
C#で書けばおk。どっちもコンパイルされたら同じだから
0635名前は開発中のものです。
2012/06/20(水) 20:56:14.21ID:Rsbpp+ePArrayオブジェクトの中にArrayオブジェクト放り込んだ後か
JavaScriptにはC系言語にあるような配列自体がそもそもない=動的リストオブジェクトしかない、けど
そのコード内容なら、本当はエラーでないはず
外側のオブジェクトはArrayとして認識されてるけど、
要素については型が明示されてないから、それでダメとか言われてるんだろうか
普通ありえないが…
0636名前は開発中のものです。
2012/06/21(木) 00:17:11.06ID:WjH1iTVx0637名前は開発中のものです。
2012/06/21(木) 09:22:07.21ID:GOl6AJTh単なるオブジェクトとしてインポートすることならできたのですが
terrianとしてインポートする方法はあるでしょうか?
0638名前は開発中のものです。
2012/06/21(木) 10:49:53.22ID:u1KbMJy+terrainペイントエディター使いたいというのでなければ
terrainシェーダーはどこかに在った、LODは探せばあると思う
0639名前は開発中のものです。
2012/06/21(木) 12:03:03.97ID:Vc98TddLてかTerrarainとしてImportする、の意味が若干不明
0640名前は開発中のものです。
2012/06/21(木) 12:22:42.54ID:7axLOC8tNormals & Tangentsをnoneにすればいけるんだけど影つかなくなっちゃうしどうしたものか
0641名前は開発中のものです。
2012/06/21(木) 16:47:11.70ID:06U0DW3iレスがつかないんで分からないながらも少し調べて見たけど、あまり情報が無いね。
いっそスプラッシュ画像を1*1の黒一色にして、擬似的にスプラッシュ削除
その後に読み込ませるシーンで、自分でスプラッシュっぽく表示しちゃうのはどう?
表示のタイミングはズレるけどね……
0642名前は開発中のものです。
2012/06/21(木) 21:17:08.94ID:GOl6AJThありがとうございます
ペイント自体はそれほど興味はないです
639さんのおっしゃる通り障害物としての判定と地形としての判定が欲しいと考えています
>>639
言葉がうまく使えなくすみません
やりたいことは3dsmaxで作った空間全体にcollisionというか判定をつけることです
結局やりたいこととしてはterrainとして着地?できるようになれば同じことかなと解釈してこう書いてしまいました
0643名前は開発中のものです。
2012/06/21(木) 21:30:24.35ID:Vc98TddLやっぱそうだよな。つまり、地形として機能させたいと。
それ、結論から言うとTerrarainそのものである必要はなくて、要は要所要所にコリジョンが設定されていればいいだけ。
これは意味的に、Unityに限らない話。
で、その時例えば、その地形オブジェクトが一つの大きなメッシュだったりして、そこに
一発メッシュコライダとか使って凸包で接触判定とかは上手くないので、
その背景パーツをバラして、適切にキューブや板や珠、または接触判定用の荒いメッシュを割り当てて、
「見かけの地形」とは別に「判定用の地形のようなもの」を用意すんの
Unityに限らず、その手のゲーム処理の基本みたいな物
0644名前は開発中のものです。
2012/06/21(木) 22:57:21.86ID:U2ZGw8Du良ければやり方を教えていただきたいのですが、
アニメーションのついてるキャラを動かすと、
ttp://www.dotup.org/uploda/www.dotup.org3116114.png
こうなってしまうのですが、
これってどうすればいいでしょうか?
rootに入れるとアニメーションはしないと聴いたのですが、
何がなんだかわかりません。。
ヒントだけでもくださると嬉しいです!
宜しくお願いします。
0645名前は開発中のものです。
2012/06/21(木) 23:02:58.35ID:Vc98TddLゴメン、アニメーションが付いているキャラを、どう動かしたら、どうなったの?
多分その画像は、そのモデルのボーンが動いていない、デフォルトの状態形状なんだろうと思うが
どうなっていれば良いの?どうなるはずだ、そのつもりだった、とかその辺をkwsk
0646名前は開発中のものです。
2012/06/21(木) 23:10:52.84ID:hpnEeUDBアニメーションはそのキャラクタモデルに元々入っているの?
それとも、キャラクタモデルとアニメーションデータは別で、Unity上でキャラクタモデルにアニメーションデータを当てはめたの?
それともアニメーションの付いてるキャラをアニメーションさせたくないってことかな?
とにかく説明が足りてないよ
0647名前は開発中のものです。
2012/06/21(木) 23:12:02.96ID:U2ZGw8Duありがとうございます!
このデータはアセットストアで購入したキャラクターなのですが、
ファーストパーソンコントローラーに追加し、
既存の白いグラフィックの代わりにこのキャラを入れたいと思っています。
他のキャラクター(例えばmonster caveのサンプル)などはうまくキーボードで操作できるのですが、
このキャラに関してはキーボードで動かしても、アニメーションが作動しません。
なので、キーボード(wasd)やジャンプ(space)を押した時に、
アニメーションしてくれると非常に嬉しいです。(停止時はidle? など)
具体的に書いてなくてすみません、
何卒宜しくお願い申しあげます。
0648名前は開発中のものです。
2012/06/21(木) 23:13:40.92ID:U2ZGw8Duこのキャラクターを購入した時にアニメーションのデータは付属していました、
ボーンデータも存在しています。
具体的にキャラクターが動かない状態にあります。
0649名前は開発中のものです。
2012/06/21(木) 23:20:37.97ID:hpnEeUDB既にアニメーションコンポーネントに各種アニメーションが登録されてるならスプリットアニメーション云々は飛ばして良い
■Unityドキュメント■
http://gp-portal.jp/material/refMaterial/2255_Unity_document01.pdf
0650名前は開発中のものです。
2012/06/21(木) 23:23:33.48ID:U2ZGw8Du素早い回答ありがとうございます!!
勇気を出して書き込んで良かったです。
皆さん本当にありがとうございました!!
0651名前は開発中のものです。
2012/06/22(金) 00:09:34.70ID:LABS3NhEそれは要するに3dsmaxで作った物はあくまでレイアウト位置の目安でしかなく
新たにUnity内で3dsmaxの位置を参考にしながら全部を入れ替えてしまう必要があるということでしょうか?
0652名前は開発中のものです。
2012/06/22(金) 01:09:58.28ID:QM0RxYR4まず、メッシュそのものに接触判定をもたせる方法としてメッシュコライダと言うものがあって、これで恐らく>>651の目的は達成可能
しかし、全部メッシュコライダにしてしまうのは無駄に計算させてしまうので工夫が必要だと>>643は言っている
↓工夫の一例
1,キャラクターが通る&凸凹した道=メッシュコライダ
2,キャラクターが通る&まっ平らな床=キューブコライダ
3,小物類=その形状に適したコライダ(キューブ/スフィア/カプセル/そもそも付けないetc...)
4,壁=キューブコライダ
5,キャラクターは行く事ができない背景等=メッシュのみでコライダは要らない
という風に分けるのがうまいやり方
しかし、そこまで処理系統困ってないなら気にする必要も無し
0653名前は開発中のものです。
2012/06/22(金) 02:35:30.15ID:x0ck3SAI先ほどのサイトを参考にさせていただいているのですが、
FPSWALKERとCHARACTERCONTROLLERを割り当てても、
キャラクターは動きませんでした。
左下にはエラー内容として、
NullReferenceExceptionと表示されています。
これは関係あるのかどうか分りませんが、
解決策などありましたら教えていただけると助かります
何度もすみません
0654名前は開発中のものです。
2012/06/22(金) 02:52:20.19ID:8LF7X5U/0655名前は開発中のものです。
2012/06/22(金) 04:44:47.69ID:9VY+vhBhとりあえず、例外起きてる時点でダメ
コード追いかけて
0656名前は開発中のものです。
2012/06/22(金) 06:24:30.27ID:LABS3NhEありがとうございます
確かにあまり煩雑なものを作っていないのでそのままメッシュコライダにしてみようと思います
丁寧にありがとうございました
0657名前は開発中のものです。
2012/06/22(金) 08:41:45.48ID:5cku1Zygcubeの表面にテキストを貼付ける方法を
捜しています。ご存知の方、よろしくお願いします。
0658名前は開発中のものです。
2012/06/22(金) 08:42:27.05ID:5cku1Zygキャラクターの頭の上に吹き出しを出す方法を
捜しています。サンプル等ありましたらお教えください。
よろしくお願いします。
0659名前は開発中のものです。
2012/06/22(金) 10:11:43.40ID:8LF7X5U/よろしくお願いします。
0660名前は開発中のものです。
2012/06/22(金) 10:16:53.73ID:7RNgssVZ動的にテクスチャを作って適用すれば出来るかと思いますが、
私では上手い方法が思いつきませんでした。申し訳無いです。
>>658
もう少し問題を切り分けて下さると答えやすいです。
1.吹き出しオブジェクトを作る(モデル、テクスチャ、GUItext、etc)
2.吹き出しをキャラクターの子オブジェクトにする&位置調整
3.スクリプトから吹き出しの内容と表示・非表示を制御
という流れで出来るかと思いますが、
どの段階で詰まっていますか?
0661名前は開発中のものです。
2012/06/22(金) 10:30:06.91ID:vNA9RotHCamera.WorldToScreenPointでスクリーン座標とってきて
GUIならそのまま使えばいいし
板ポリならOrthographicのカメラに映しゃいけるんじゃないか?
0662名前は開発中のものです。
2012/06/22(金) 10:52:05.26ID:EyKt7WmNここだよ
http://unity3d.com/unity/download/
0663名前は開発中のものです。
2012/06/22(金) 11:34:20.41ID:8LF7X5U/レスしていただきありがとうございます。
ですがそのリンクを踏んでも大丈夫なのか判断に迷っております。
判断材料をご提供ください。
0664名前は開発中のものです。
2012/06/22(金) 11:41:39.86ID:XUQ6NUkj0665名前は開発中のものです。
2012/06/22(金) 12:07:58.48ID:vNA9RotH踏んでも大丈夫でも大丈夫かとか、unity3d.comは公式なんだから
それを疑っちゃどうしようもないw
0666名前は開発中のものです。
2012/06/22(金) 12:12:30.58ID:zkUCvOyU普通にダウンロードすればいいよ、金はかからない。
張られているリンク自体が怖いならUnity ダウンロードでググれば
検索トップに出てくると思うのでそこから。
0667名前は開発中のものです。
2012/06/22(金) 12:33:00.68ID:8LF7X5U/0668名前は開発中のものです。
2012/06/22(金) 12:56:16.19ID:zkUCvOyUダウンロードにたどり着けないかわいそうな子は
最初からいなかったんだね。
0669名前は開発中のものです。
2012/06/22(金) 13:22:53.18ID:9VY+vhBhちょっと可愛いと思ってしまったちきしょう
0670名前は開発中のものです。
2012/06/22(金) 15:12:31.33ID:51bk3XyPありがとうございます。たしかにそういうやり方もありますね。検討してみます。
0671名前は開発中のものです。
2012/06/22(金) 15:17:29.52ID:51bk3XyPJNI method called with exception raised というWarningが出てAndroid実記で落ちてしまう。
ほかにやってみた人いないですか?
https://sites.google.com/a/gclue.jp/unity3d/unity-plugin/toastwo-biao-shisuru
0672名前は開発中のものです。
2012/06/22(金) 15:18:59.55ID:9VY+vhBh上手くスケーリングされないとは、どういう状態?
UnityでAndroidは経験無いのでなんとも言えないんだけど
0673名前は開発中のものです。
2012/06/22(金) 15:25:51.03ID:9VY+vhBhJNIって、Javaとのマーシャリング用インタフェース(Java Native Interface)を実装させて、
ネイティブコンパイラでコンパイルしたバイナリを含む物だけど、
その C++ 側のコードはちゃんと x86 CPU とかじゃなくて ARM CPU 向けとか
Android実機に合わせてコンパイルして、正常に動く事も保証されてるの?
あと、その警告にある通り、ネイティブ側からの例外発生を伴う呼び出しも、許可されてる物?
0674名前は開発中のものです。
2012/06/22(金) 15:31:18.00ID:9VY+vhBhUnity から Javaのクラスを利用する、ってだけの物じゃね。間にブリッジにするネイティブDLL挟んで。
Unity → ネイティブDLL(JNIインタフェース実装) → Javaクラス
ってだけの
0675名前は開発中のものです。
2012/06/22(金) 15:32:28.09ID:h0LtdxDDそういうのは本スレでやれ
0676名前は開発中のものです。
2012/06/22(金) 19:02:34.82ID:51bk3XyPAndroidの場合、アス比が端末によってちがうのでピュアで開発する場合、ロゴ画像と背景を分離して
ロゴ画像を表示させたい位置にだすような画面をくむけど、
Unityの場合、1枚のTextureを設定して、微妙なオートスケールのオプションを選べるだけなので、
画像の比率が維持されないでスケールされます。
671の件はインタフェースの実装が間違っているという認識で良いのでしょうか?
ブリッジするあたりの事情がJNIを触ったことがないのでわからないです。
0677名前は開発中のものです。
2012/06/22(金) 19:39:46.32ID:9VY+vhBhあぁそういう事か > アス比の件
そして
>671の件はインタフェースの実装が間違っているという認識で良いのでしょうか?
いやどっちかって言うと、>>673-674 をよく読んで
0678名前は開発中のものです。
2012/06/23(土) 01:55:31.80ID:YnprfPlxChinaGIRLのほうは普通に動くのですが、
自分のキャラクターは1度動いて停止します。
ループ設定にしても1度しか動かないので、
何が原因かと調べた所、ChinaGIRLとは仕様が違うということでした。
自分の持っている素材ストアで購入したキャラクターは、
確かにアニメーションやボーンもきちんと収録されてるのですが、
そもそもここのサイトのやり方では、このキャラクターは動かないようです。
キャラクターを動かすの為には、コードが必要なようで、
そのコードは自分で考えて作るしかなさそうです。
もちろん、コードは自分でかけたほうが自由度は広がるので、
まずはもっと基礎的な部分から勉強してこようと思います。
他のツールも参考にさせて頂いたのですが、なにぶんクオリティが低いので、
Unityのほうが使いやすそうな印象はあります。
皆さん色々お手数おかけしました。すみません。
0679名前は開発中のものです。
2012/06/25(月) 03:15:06.40ID:P/8Ta9VgAce Combatのように敵機を四方八方どの位置から見ても正方形のマークが着くようにしたいですが、うまく出来ないのでお力を貸してください。
自分は、Texture2D型で宣言した画像を回転させてマークがついているように見ようと考えたのですが、どのようなコードを書けば良いのかわかりません。
どのようにすればよいのか、考え方などを教えてください。よろしくお願いします。
0680名前は開発中のものです。
2012/06/25(月) 03:27:08.08ID:TtpiG09Aビルボードで検索すると望む答えが出てくると思われるんだが、それとは違うのだろうか?
0681名前は開発中のものです。
2012/06/25(月) 04:32:28.47ID:P/8Ta9Vgなるほど、まさにそれです。
ありがとうございます。
0682名前は開発中のものです。
2012/06/25(月) 06:24:53.87ID:ThsLciVz距離によって大きさ変わっちゃうよ。
AceCombatの正方形ってミサイルの標準だいね?
常に同じ大きさならHUD扱いかと。
0683名前は開発中のものです。
2012/06/25(月) 08:01:49.99ID:0vA3p8LSAndroidのViewとかは自分も出してみた事あるけど
NativeJavaBridgeみたいなのは作らなかった
ActivityにViewを追加するような処理を持つクラスの.jarを作ってPlugins/Androidに置く
Unity側でAndroidJavaObjectとかAndroidJavaClassのCallとか使ってその処理を呼び出す
って感じだったな
0684名前は開発中のものです。
2012/06/25(月) 08:27:01.76ID:0vA3p8LSとりあえず出せたのでコード
Toast表示用の.jar化する処理、クラスやimportは省いてる
public static void Show (final String text) {
final Activity activity = com.unity3d.player.UnityPlayer.currentActivity;
activity.runOnUiThread(new Runnable() {
public void run() {
Toast.makeText(activity, text, Toast.LENGTH_LONG).show();
}
});
}
Unityで呼び出す、「com.test.ToastClass」は自分で作ったクラス名に置き換える
var text : String[];
function OnGUI () {
var area : Rect = Rect(0,0,Screen.width,Screen.height/text.Length);
for (var i : int = 0; i < text.length; ++i) {
if (GUI.Button(area, text[i])) {
#if UNITY_ANDROID
if (Application.isEditor == false) {
AndroidJavaClass("com.test.ToastClass").CallStatic("Show", text[i]);
}
#endif
}
area.y += area.height;
}
}
0685名前は開発中のものです。
2012/06/25(月) 18:12:42.36ID:iRcWheUY以前までいたプログラマが見捨てなかったんだなぁ…
ありがたや〜
0686名前は開発中のものです。
2012/06/25(月) 18:20:03.76ID:mnENRXkXそこは理解しといてね
0687名前は開発中のものです。
2012/06/25(月) 20:19:01.82ID:b8fMFTsZソース書いて晒すと持ち上げてもらえるスレ
0688名前は開発中のものです。
2012/06/25(月) 21:03:13.28ID:lZakMGqr0689名前は開発中のものです。
2012/06/25(月) 21:06:07.86ID:vTDgXhK2>685 の思惑どおりなのかもしれないが。
0690名前は開発中のものです。
2012/06/25(月) 23:46:44.82ID:P/8Ta9Vg>>682
http://bis.cocolog-nifty.com/photos/uncategorized/2011/07/22/acah_demo_ms01_05.jpg
正方形のマークは、この写真で、TGTについている四角いマークです。
一応、ミサイルの照準>>682さんのを参考に出来ました。
WorldToViewportPointとDrawTextureWithTexCoordsで出来ると思ったのですがうまく出来ません。
http://ux.getuploader.com/apaku/download/1/Unity+Project.zip
プロジェクトを置いておきますので、よろしくお願いします。
0691名前は開発中のものです。
2012/06/26(火) 05:18:43.30ID:GS/aLOLaTPS視点のモードにするとバグが発生することや、敵機が画面外に消えてもマークが残ってしまうことなどのバグがありますが、
一応、敵機にマークを描画することができました。
時間をかけてくださったみなさん、ありがとうございます。
0692名前は開発中のものです。
2012/06/26(火) 10:50:52.54ID:ulDSHZTCこれどのファイルひらけば見られるの?
0693名前は開発中のものです。
2012/06/26(火) 20:37:46.52ID:GS/aLOLaそれを書き忘れていました。
Game Scene/Version/Game16.unityです。
http://ux.getuploader.com/apaku/download/3/Unity+Project.zip
これで一応、FPS視点にすると、敵機にマークがつくのですが、敵機が画面から消えてもマークが消えないことがあります。
度々で申し訳ないですが、Game Scene/Version/Game16.unityのプロジェクトを開いて解決していただきたいです。
自分は、OnWillRenderObjectで出来ると思ったのですが、描画されているオブジェクトを判別することが出来ないようなので、断念しました。
よろしくお願いします。
0694名前は開発中のものです。
2012/06/26(火) 20:51:31.84ID:GS/aLOLahttp://ux.getuploader.com/apaku/download/5/Unity+Project.zip
0695名前は開発中のものです。
2012/06/26(火) 21:21:51.66ID:mM/VKu0I2×2×2のキューブにランダムに選らばれた1×1のテクスチャを4枚貼るとか。
これでひとつのキューブオブジェクトでテトリスのような変形したキューブを
表現したいんですが、こんなことできますか?
0696名前は開発中のものです。
2012/06/26(火) 21:45:10.97ID:sniepP4q0697名前は開発中のものです。
2012/06/27(水) 00:54:18.43ID:k6oZa9Jg0698名前は開発中のものです。
2012/06/27(水) 03:03:24.96ID:S7XxYLC+>キューブにポジションを指定して複数のテクスチャを貼る方法とかありませんか?
ある
>これでひとつのキューブオブジェクトでテトリスのような変形したキューブを
>表現したいんですが、こんなことできますか?
できない
自分も695が言いたい事がこっちに伝わらなかった感があるんだが
とりあえず質問文に愚直に答えるとこんな感じだと思うんだ
でもたぶんきっとこんな答えは期待してないよね?ごめんよ
これが「テトリスのような形状を表現したいんですが、どんな方法がありますか」
ならもっと答えやすいんだけどな
答えにくく感じた部分は前の2行と「ひとつのキューブオブジェクトで」って部分だから
それを踏まえて質問文を書き直してくれると答えやすくなると思うんだが
0699名前は開発中のものです。
2012/06/27(水) 06:05:00.52ID:vN2x4NXPだから、いくら変形させてもテトリスのオブジェクトにはならんしな。
あれは複数のキューブの組み合わせだ。
0700名前は開発中のものです。
2012/06/27(水) 14:48:43.61ID:vUqOHYggありがとうございます。
activityのGUIを処理させる方法がわからなかったのですが、
勘どころがだいぶわかりました。
参考にして実装してみます。
0701名前は開発中のものです。
2012/06/27(水) 20:17:26.03ID:b0SUJyIuすいません。わかりやすく説明します
まあ書いてあるとうり立体的なテトリスを作ろうと思ったのですが、
とりあえず9×9×20の枠を作って色々な形のテトリスを落としていくというのを
つくってみたのですが、あのテトリスの形状をすべて立方体のCubeオブジェクト
でインスタンス化すると積み上がってきた時にインスタンスの数が多いのか、
動作がドンドン遅くなっていきます
なので、下に落ちて積み上がるオブジェクトはDestoryしてしまって
積み上がったものをひとつのオブジェクト組み替えて、にまとめて表現できないかと思って
>>695の質問をしました。
複雑な形状のオブジェクトはできないと思ったので透過のテクスチャやテクスチャの貼る
位置などをコントロールして積み上がった複雑な形や色のオブジェクトを動的に表現する
しかないかなと思いましたが、こういうので他になにかいい方法はあるのですかね?
0702名前は開発中のものです。
2012/06/28(木) 03:13:23.65ID:bRX4U8bHいくつかめぼしいのは読んだが。
0703名前は開発中のものです。
2012/06/28(木) 05:53:04.61ID:dVRfSimNああ、そういう事ね。
確かに落ちたブロックはまとめた方がいい。
大きいテクスチャに全部のブロックの色を詰め込めおk。
複数のテクスチャは使えない。
0704名前は開発中のものです。
2012/06/28(木) 09:25:01.79ID:f8iZLBkt一つのメッシュにまとめるのは
Mesh.CombineMeshesでできる
ttp://docs.unity3d.com/Documentation/ScriptReference/Mesh.CombineMeshes.html
模様違いのキューブとか使いたいなら、キューブに4種類の模様があるとして
1枚のテクスチャの中で4つの模様を並べたテクスチャを作る
UV違いのキューブメッシュを用意して全て同じマテリアルで描画できるようにする
キューブの位置は個別に管理できるようにしておいて
まとめる必要がある場合(テトリス形状、落ちて積みあがった時など)に
Mesh.CombineMeshesでまとめたメッシュを新しく作って実際の描画はそちらを使う
まとめた後のメッシュを描画するマテリアルは1つで描画するから
模様違いをUV違いのメッシュで行うのはそのため
って感じでどうかな、今度のはそこそこ期待されてる答えになってる気がする
■ このスレッドは過去ログ倉庫に格納されています