2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

【3Dゲームエンジン】Unity質問スレッド11

870 :名前は開発中のものです。:2014/09/16(火) 00:47:28.17 ID:rQuytVCn.net
>>866
エラーメッセージはUILabelという型が無いといってる
NGUIはちゃんとインポートされてるの?

871 :名前は開発中のものです。:2014/09/16(火) 00:50:57.44 ID:xuVTahtE.net
一応具体的に書いておくとNGUIをJSで使うときはNGUIのフォルダ構成を変更しないとダメ、ということ。

872 :名前は開発中のものです。:2014/09/16(火) 00:59:35.50 ID:sI57oppG.net
>>870
そうですよね?型がないと言われてるんですが、UILabelはちゃんとそんざいするんですよ。

>>871
フォルダ構成というのは、UILabelをLabel_Controllerと同じフォルダに入れるという事でしょうか?英語が不得手ですみません。

873 :名前は開発中のものです。:2014/09/16(火) 01:05:28.66 ID:xuVTahtE.net
>>872
プロジェクト直下にPlugins-NGUIとフォルダを掘って
NGUI-Scrpt下のInteraction,Internal,Tweening,UIの4つのフォルダを
その中に移動する。
公式のフォーラムに画像がある。

874 :名前は開発中のものです。:2014/09/16(火) 01:44:24.35 ID:sI57oppG.net
>>873
プロジェクトビューにPlugins-NGUIというフォルダを作るという事でしょうか?公式のフォーラムは英語がダメな物で
何が何だか。

本当に素人ですみません。

875 :名前は開発中のものです。:2014/09/16(火) 01:50:38.39 ID:xuVTahtE.net
>>874
いやフォルダを変更した画像あるからw
ttp://www.tasharen.com/forum/index.php?topic=1763.0
さすがに画像見てもわからんとかないだろw

あともとのブログ主の過去記事のコメ欄にも同じことが書いてある
ttp://blog.be-style.jpn.com/article/54284031.html#comment
これは日本語だから。

876 :名前は開発中のものです。:2014/09/16(火) 02:02:30.83 ID:sI57oppG.net
>>875
本当に細かい所までありがとうございます。うまく行きました!ここの人達は本当に親切で助かります。

877 :名前は開発中のものです。:2014/09/16(火) 09:03:25.10 ID:ISfSFelt.net
腕ボーンの子としてつけられたアイテムのワールド座標(絶対座標)での速度をとりたいと思うんですがどうすれば取れるのでしょうか?
RidgebodyがGetPointVelocityというメソッドを持っているみたいなのですが
これを使えば取れるのでしょうか
この場合引数は何を意味するのか教えていただけるとありがたいです。

878 :名前は開発中のものです。:2014/09/16(火) 11:06:31.12 ID:xuVTahtE.net
>>877
全部が物理演算で動いているならとれるんじゃないか?
引数はワールド座標での位置だろ。
キャラクターをアニメーションで動かしてるとかだと多分無理。
自分で速度割り出しを実装するしかない。

まぁ前フレの位置と今の位置の差をとってTime.deltaTimeで割るだけだけどな。

879 :名前は開発中のものです。:2014/09/16(火) 11:42:10.11 ID:rQuytVCn.net
>>877
Rigidbody.velocityプロパティでいい
Rigidbody.GetPointVelocityメソッドはポイントの速度を得るときに使うもので普通は使いません

880 :名前は開発中のものです。:2014/09/16(火) 13:08:56.74 ID:cEC0r6Ej.net
>>878
腕の方にアニメーション使っていますね
速度の計算は
・毎月フレーム位置情報だけ取得しておき、速度の情報が必要になったときだけ
 保持しておいた位置情報を使って速度を算出するか
・毎フレーム速度を計算するか
悩み所ですね

アドバイスありがとうございました

>>879
velocityの値で取るとうまくいきませんでした
もしかしたらvelocityは実際の速さではなく
Ridgebodyに与えられたforceによって出た速度しか取得しないのかと
思ったのですがどうなのでしょう・・・
GetPointVelocityの情報ありがとうございました

881 :名前は開発中のものです。:2014/09/16(火) 13:27:11.23 ID:PIdQj0Ea.net
>>880
アセっトをかえばできると思いますよ

882 :名前は開発中のものです。:2014/09/16(火) 15:07:57.38 ID:w3Ayv2uN.net
質問失礼します。
外部のunitypackageファイルを動的に(実行ファイル実行中に)読み込む事は可能でしょうか?
unitypackageファイルのバイナリデータを解釈するやり方ではなく、
UnityEngineが用意したLoadUnityPackageみたいな関数があるのか?という質問です。
分かる方、よろしくお願いします。

883 :名前は開発中のものです。:2014/09/16(火) 15:34:50.16 ID:PIdQj0Ea.net
>>882
アセット買うとどうにかなると思いますよ

884 :名前は開発中のものです。:2014/09/16(火) 15:49:05.41 ID:SwAqzR2+.net
>>882
そういう端的な関数はない

885 :名前は開発中のものです。:2014/09/16(火) 16:39:44.27 ID:yQwqIDCe.net
>>882
実行バイナリにはEditor機能は付かないから無い
AssetBundle作ってダウンロードコンテンツ扱いにする事で似たような事はできる。

886 :名前は開発中のものです。:2014/09/16(火) 17:04:48.48 ID:w3Ayv2uN.net
>>883
>>884
>>885
返答ありがとうございます。
無理そうですね。というより、お作法的にありえないようですね。
ありがとうございましたー。

887 :名前は開発中のものです。:2014/09/16(火) 18:20:11.65 ID:mqzn/qnA.net
アセットを買うと〜って書き込み
面白くもなんともないんだけどどうなの

888 :名前は開発中のものです。:2014/09/16(火) 18:23:44.09 ID:eiZFzr+m.net
質問失礼します。
ドラッグでオブジェクトの移動をしていて、
オブジェクトを画面内に収めたいのですが

transform.position.x = Mathf.Clamp(transform.position.x,-3,3);
transform.position.y = Mathf.Clamp(transform.position.y,-5,6);


だとドラッグしている間、画面外に出てしまいます。
ドラッグしてる間でも画面外に出ないようにするにはどうしたらいいでしょうか。
どなたかお助けを・・・。

889 :名前は開発中のものです。:2014/09/16(火) 18:48:44.78 ID:PIdQj0Ea.net
>>888
アセットをかえば解決しますよ

890 :名前は開発中のものです。:2014/09/16(火) 19:11:58.89 ID:SwAqzR2+.net
>>888
Clampのminとmaxの値を画面外に出ない値に調整すれば良いんじゃないのか…
何を言ってるのかよくわからんレベルだ…。

891 :名前は開発中のものです。:2014/09/16(火) 19:22:06.51 ID:JB9cJY9u.net
Androidで外部ファイル(オーディオとかテキストとか画像)にアクセスするにはどうすればいいですか?
誰か簡単でいいのでヒントください

892 :名前は開発中のものです。:2014/09/16(火) 19:27:43.88 ID:3y1jbxQF.net
>>889
調子に乗るなクズ

893 :名前は開発中のものです。:2014/09/16(火) 19:28:51.03 ID:yQwqIDCe.net
>>891
いっちゃん簡単なのはWWWクラスでhttp://やfile://なURLで読み込む、サンプルも結構転がってる

894 :名前は開発中のものです。:2014/09/16(火) 19:47:09.87 ID:PIdQj0Ea.net
>>891
あせっとをかえばかいけつしますよ

895 :名前は開発中のものです。:2014/09/16(火) 20:05:11.78 ID:eiZFzr+m.net
>>890
マウスボタンを離すと弾かれるように画面内に戻っては来るんですが、
ドラッグ中は画面から出てしまいます・・・。

896 :名前は開発中のものです。:2014/09/16(火) 20:09:43.15 ID:gDOUZjim.net
オブジェクトのポジションじゃなくてマウスのポジションを制限するとか?

897 :名前は開発中のものです。:2014/09/16(火) 20:16:52.48 ID:SwAqzR2+.net
>>895
そしたらドラッグ中の処理を書けよw
それ以外の部分のコード書かれても知らんわw

898 :名前は開発中のものです。:2014/09/16(火) 20:26:02.04 ID:o1BDq6Rn.net
カメラで撮影した画像を保存し
アプリで使うにはどうしたらいいんでしょうか

899 :名前は開発中のものです。:2014/09/16(火) 20:56:36.75 ID:eiZFzr+m.net
>>890
>>896
>>897

transform.position.x = Mathf.Clamp(transform.position.x,-3,3);
transform.position.y = Mathf.Clamp(transform.position.y,-5,6);
の書き込み場所を変えたら解決しました。
申し訳ないです。ありがとうございました。

900 :名前は開発中のものです。:2014/09/16(火) 22:53:07.89 ID:PIdQj0Ea.net
>>898
アセットをかえばいいんではないでしょうか

901 :名前は開発中のものです。:2014/09/16(火) 23:17:12.74 ID:0UBiUxq3.net
4.6のbuttonのonclickに他のオブジェに関連づけたスクリプトを追加しました。
引数が無い関数は問題ないのですが、引数がある自前の関数は
Missing ファイル名.関数
と出てしまい、クリックしても実行されません。
いくつかのファイルと関数を試したのですが同じでした。
何が原因なのでしょうか?

902 :名前は開発中のものです。:2014/09/16(火) 23:33:34.18 ID:PIdQj0Ea.net
>>901
アセットをかっていないのが原因だと思いますよ

903 :名前は開発中のものです。:2014/09/16(火) 23:35:46.74 ID:sI57oppG.net
昨日、こちらでNGUIでのHP表示について質問した物です。

お陰様でHPを表示出来る様になったのですが、HPゲージの方が良いかな?と思い、昨日教えて頂いた物にアレンジして
HPゲージを実装したのですが、GUIで表示すると遠くに居る敵のゲージも同じサイズで表示されてしまい、画面が非常に喧しい状態です。
NGUIで、遠近法の様な表現は出来るのでしょうか?遠くに居る敵のゲージは小さく表示したいのですが、何か方法をご存知の方教えて下さい。

またもや解りにくい質問ですみません。

904 :名前は開発中のものです。:2014/09/16(火) 23:39:32.96 ID:0UBiUxq3.net
>>902
自己解決しました
いつも的確なアドバイスありがとうございます!

905 :名前は開発中のものです。:2014/09/16(火) 23:51:51.69 ID:SwAqzR2+.net
>>903
カメラと敵の距離とってそれに応じてスケール掛けりゃ良いじゃん

906 :名前は開発中のものです。:2014/09/17(水) 00:15:33.55 ID:uxOiWrE2.net
>>905
返信ありがとうございます。
Vector3.Distance(this.transform.position,target(カメラ).transform.position)
で距離を取って、その値に応じてサイズを小さくするという事ですかね?ちょっと具体的なスクリプトが思い浮かばないんですが、そういう関数とかUnityで用意されてるんでしょうか?

本当に素人ですみません。

907 :名前は開発中のものです。:2014/09/17(水) 01:06:45.26 ID:TgClCkNf.net
敵オブジェクトの位置をenemyPosition、カメラの位置をcameraPositionとして
transform.localScale=Vector3.one/Vector3.Distance(enemyPosition,cameraPosition);
とでも書けばそれでカメラと敵の距離に応じて拡縮されるだろう。
これ素人とかそういう話じゃなくて殆ど小学校の算数レベルの話なのでちとまじめに数学やったほうがいいよ

908 :名前は開発中のものです。:2014/09/17(水) 01:44:57.57 ID:dCsQf4sl.net
ugui でImageのFillAmountいじって0と1の間ピョコピョコさせて
遊ぼうと思って、下のように書いたら一旦0から1まで正常に画像
サイズが変わった後、画像が表示されなくなる事案が発生した。
インスペクター上では0から1までの値を絶え間無く動いてるんだけど
なんで見えなくなったのか、心当たりある方いませんか?

909 :名前は開発中のものです。:2014/09/17(水) 01:46:01.90 ID:dCsQf4sl.net
using UnityEngine;
using UnityEngine.UI;
using System.Collections;

public class hptest : MonoBehaviour {

Image hp;
float point;

// Use this for initialization
void Start () {
hp = GetComponent<Image>();
}

// Update is called once per frame
void Update () {
if (point < 1f) {
point += 0.5f * Time.deltaTime;
} else {
point = 0f;
}
hp.fillAmount = point;
}
}

910 :名前は開発中のものです。:2014/09/17(水) 05:16:56.25 ID:L0ltBKpB.net
>>909
pointの値が0.9999ぐらいまで達した時、
結局1.0より大きい値を代入してしまうからじゃないかな。

エラーコンソールには何も出ないのかな?
とにかく、ログ出したりブレークポイント設定する癖は付けよう。

911 :名前は開発中のものです。:2014/09/17(水) 05:32:19.35 ID:L0ltBKpB.net
void Update () {
point += 0.5f * Time.deltaTime;
if(point > 1.0f){
point = 0f;
}
hp.fillAmount = point;
}
}

こうかな。

あと0.5fみたいなマジックナンバーは、
少なくとも人にコード見せる時には望ましくない。
まぁ適当な試し書きなんだろうけど、
public float duration = 0.5f;
とでもして調整しながら遊ぶんだほうが楽だし、一石二鳥。

912 :名前は開発中のものです。:2014/09/17(水) 08:59:27.56 ID:3TtavMW+.net
>>911
なるほど
特にエラーコンソールには何も出てませんでしたね。
今外だから確認できないけど、あとで書き方直してみるよ。

あ、ちなみに私は903です

913 :名前は開発中のものです。:2014/09/17(水) 19:15:23.65 ID:PCuRqwcr.net
proが無償提供されましたが、単に高機能だから、で移行していいのですか?
何か罠があったりします?

914 :名前は開発中のものです。:2014/09/17(水) 20:25:43.98 ID:lKIQahDY.net
それ、PS3、PS4 VITA開発用ライセンスだよ。
フリーの人はフリーの機能しか使えない

915 :名前は開発中のものです。:2014/09/17(水) 20:42:29.24 ID:VDrmalKG.net
それ様に作っても普通の人は発表も出来ないんじゃー

916 :名前は開発中のものです。:2014/09/17(水) 21:16:24.10 ID:v03MWI3F.net
実行ボタン押すとGame、Scene以外が真っ黒になるんですけど
何が問題だと考えられますか?

一度アンインストールして入れなおしたり、
プロジェクト読み込みなおしたりはしました。
再起動もしました。

917 :名前は開発中のものです。:2014/09/17(水) 21:27:10.42 ID:cOvTCFWZ.net
ソニーにお金払えば売ってもらえるんでしょう?

918 :名前は開発中のものです。:2014/09/17(水) 21:34:11.38 ID:vCDmkxyV.net
>>916
メニューの[Edit]→[Preferences...]→Colorタブ→Playmode init
はどうだい?

919 :名前は開発中のものです。:2014/09/17(水) 22:00:41.35 ID:dCsQf4sl.net
903の続きだけど
>>911みたいに書いたがダメみたいだった。
そこで、試しに代入する値を0じゃなくて0.1とか他の値にするとその値からの画像はgame windowにも反映されました。

本当は0使いたいけど、とりあえず確認ついでに報告

920 :名前は開発中のものです。:2014/09/17(水) 22:09:24.55 ID:v03MWI3F.net
>>918
ありがとうございます!解決しました。

921 :名前は開発中のものです。:2014/09/17(水) 22:54:47.83 ID:6eZ6UBuv.net
Animatorコンポーネントを利用したアニメーションで、スクリプトを用いて
アニメーションを途中から開始する方法など無いでしょうか?
(1ループ60フレームのアニメーションを30フレーム目から始めるとか)

922 :名前は開発中のものです。:2014/09/18(木) 05:47:40.83 ID:1IwjnSZ3.net
ごめん、909って無償提供されるのはUnity ProじゃなくてプレステPSVITA用のUnity Proの一機能ってこと?
フリーの人には関係ないんだよね?

923 :名前は開発中のものです。:2014/09/18(木) 08:51:03.54 ID:KWchqHT+.net
>>922
便乗質問
パブリッシャー登録してるんだけど
そのときに使えるPSMとは違うのかな?
この辺に詳しい人いませんか

924 :名前は開発中のものです。:2014/09/18(木) 09:06:58.22 ID:mFsSOliH.net
今回の話は基本的に個人開発者は関係ないよ
UnityProを貰うためにはソニーと正式に契約を結ばないと駄目
もちろんPSMとは全く別

925 :名前は開発中のものです。:2014/09/18(木) 09:52:56.86 ID:aS/F3+Tz.net
プロの開発テクニックがあちこちで共有されはじめたら、
おまんま喰えませんから、素人には解放いたしません

926 :名前は開発中のものです。:2014/09/18(木) 12:16:20.41 ID:1IwjnSZ3.net
なんだ、関係ないんですか
すべての開発者じゃなくて開発社ってことか・・・

927 :名前は開発中のものです。:2014/09/18(木) 13:26:58.60 ID:lMrEffR+.net
質問よろしいでしょうか?
アクションゲームを制作していて、プレイヤーがエリアに入ると敵が出現するスクリプトを書いたのですが、
プレイヤーがそのエリアを出た時にOnTriggerExitでそのエリア内の敵をまとめて削除しようと思っています。

その為、空オブジェクトをInstantiateしてエリアの子要素に。次に敵をfor文で一定数Instantiateして、先の空オブジェクトの子要素に。
と言う方法をとっているのですが、こうするとランダムの座標で生成された敵が空オブジェクトの座標に固まって生成されてしまいます。

敵をエリアの子要素にして、プレイヤーがエリア外に出た時には、敵の生成、削除自体はきっちり行われたのですが、
Transform child out of bounds
というエラーが出てしまった為、(for分で一つずつ子要素をDestroyしていたせいだと思います。)上記の方法を取っています。

エリアから見て子要素にした時はランダム座標が維持されるのに孫要素にすると一点に固まってしまうのはそういうものでしょうか?

何か良い解決策があればご教示願います。

928 :名前は開発中のものです。:2014/09/18(木) 13:40:40.80 ID:+AXSMCOr.net
できない訳がないのでおかしなプログラムを書いてるだけだろう。
Transform child out of boundsは要素を超えてオブジェクトを削除しようとしてるだけだ。
5つしかないものを6回消そうとしているってこと。
for文の書き方を理解していないということであり固まって生成されるのも同じようなプログラム上のミスだろう。

929 :名前は開発中のものです。:2014/09/18(木) 13:46:18.21 ID:19YDDXs0.net
>>927
forかwhileでtransform childrenをループして消そうとしてるんじゃねぇの?
ループの中で数が減らされた分が考慮されてない感じ。

あとエリア纏めてるオブジェクトに子オブジェクトつるしておけば出口では纏めてるオブジェクト一個destroyするだけで纏めてパージできるよ

930 :名前は開発中のものです。:2014/09/18(木) 14:09:51.74 ID:lMrEffR+.net
>>928
ですよね?もう一度見直してみます。

>>929
おっしゃる通りfor分でループして消そうとしていた為に出たエラーだと思います。
エリア自体は再利用というか、またプレイヤーが入った時に敵を生成したいのでその子要素にから纏めて削除する様の
空オブジェクトを作ったのですが、そこで上記の様な状態になってます。

931 :名前は開発中のものです。:2014/09/18(木) 17:49:40.56 ID:Z8+2C39O.net
blenderでunity用のモデルを作っているのですが、
両面かするとblenderでの認識がおかしくなってしまいます・・・
unity側で両面化などは行えるのでしょうか?

932 :名前は開発中のものです。:2014/09/18(木) 18:08:13.36 ID:d+bCV3Yw.net
両面化ってそもそもどういう操作を言ってるのか。
ダブルサイデッドなシェーダーはデフォルトだとパーティクル系しかない。
ちょっと調べれば自分でシェーダをダブルサイデッド化するのは可能。

933 :名前は開発中のものです。:2014/09/18(木) 18:38:14.11 ID:d+bCV3Yw.net
あとついでに言うとBlenderで作っててBlender内での認識がおかしいのは
モデルのデータが既におかしいのではないか。

934 :名前は開発中のものです。:2014/09/18(木) 18:46:54.72 ID:lMrEffR+.net
またもや質問失礼しまうす。

NGUIを使って敵のHPゲージを画面内に敵の座標に表示しているのですが、敵がカメラの視界外になった出た時に
SetActiveをfalseにして視界に入ったら、trueにするというスクリプトを書いているのですが、

var viewPos : Vector3 = Camera.mainCamera.WorldToViewportPoint(transform.position);
//Debug.Log(viewPos);
if( viewPos.x < -0.5f || viewPos.x > 1.5f || viewPos.y < -0.5f || viewPos.y > 1.5f ){
labelNameObj.SetActive(false);
}else{
if( viewPos.x > 0.0f || viewPos.x < 1.0f || viewPos.y > 0.0f || viewPos.y < 1.0f ){
labelNameObj.SetActive(true);
}


こう書くとカメラの視界の真後ろに居る時もtrueが送られてしまいます。視界外に消えた時の処理として根本的に間違ってるんでしょうか?

どなたかご教示下さい。

935 :名前は開発中のものです。:2014/09/18(木) 18:59:23.02 ID:dqVmO5Q1.net
2Dのジャンプで詰まったので質問させてください。

rigidbody2D.AddForce(new Vector2(0.0f, -jump_power), ForceMode2D.Impulse);

上記のようにしてジャンプを実装しているのですが、

右に移動中にジャンプをした場合、右移動がキャンセルされてジャンプしようとします。
(垂直ジャンプしようとします)

やりたい事は移動中の力を反映したジャンプ(斜め方向のジャンプ)なのですが、どうしたらよいでしょうか?

分かる方、お願いします。

936 :名前は開発中のものです。:2014/09/18(木) 19:14:52.01 ID:mabT2JWT.net
>>935
移動の処理もAddForceにすればいい!
駄目かな

937 :名前は開発中のものです。:2014/09/18(木) 19:15:29.13 ID:aG6fkobJ.net
>>934
viewPos.zが正数ならカメラの前方,負数ならカメラの後方にある

ただ、そういう処理はMonoBehavior.OnBecameVisibleとOnBecameInvisibleでやった方が楽ではないかと思う

938 :名前は開発中のものです。:2014/09/18(木) 19:28:37.75 ID:d+bCV3Yw.net
OnBecameVisible()とかはrendererコンポーネントがついてないと
ダメなんじゃなかったかな〜。
なのでview.Pos.zの正負で判断するのがこの場合は正しいと思う

939 :名前は開発中のものです。:2014/09/18(木) 19:31:24.66 ID:d+bCV3Yw.net
>>935
左右移動の処理をジャンプ中も続けさせれば良いんじゃね?
もしくは前フレの位置を常に取っておいてジャンプした時に
左右方向の速度を計算してVelocityに放り込む。

940 :名前は開発中のものです。:2014/09/18(木) 19:32:44.35 ID:aG6fkobJ.net
>>938
>OnBecameVisible()とかはrendererコンポーネントがついてないと
そうだったか、嘘教えてごめんなさい>>934

941 :名前は開発中のものです。:2014/09/18(木) 19:36:55.77 ID:lMrEffR+.net
>> 933
ありがとうぞざいます!無事望んだ結果になりました!

確かにOnBecameVisibleの方がスマートなのですが、OnBecameVisibleはオブジェクトにRendererが無いと機能しないそうなんです。
HPゲージはGUILabelをしようしているので、働いてくれない様です。

何はともあれ、本当にありがとうございます!

942 :名前は開発中のものです。:2014/09/18(木) 19:39:05.03 ID:lMrEffR+.net
すみません、アンカーをミスってました。

>>937の方も>>938の方もありがとうございます!

943 :930:2014/09/18(木) 20:00:10.37 ID:dqVmO5Q1.net
>>936
>>939
返答ありがとうございます。

>移動の処理もAddForceにすればいい!
x * Time.deltaTime ですと、あるきっかけでフリーズした場合、
Time.deltaTimeが大きくなりすぎて、早いスピードで飛んでいく可能性があります。

>左右移動の処理をジャンプ中も続けさせれば良いんじゃね?
すでに左右の移動はジャンプ中もForceに入れ続けています。
ジャンプした瞬間に移動がキャンセルになってしまう課題を解決したいです。

>もしくは前フレの位置を常に取っておいてジャンプした時に
>左右方向の速度を計算してVelocityに放り込む。
こちらの方法で試してみます。

ありがとうございました。

944 :名前は開発中のものです。:2014/09/18(木) 20:25:04.91 ID:b6lugVGiA
>>933
説明が足りませんでしたね。
blenderには両面化の機能がないらしく、
メタセコで両面化したものをインポートすると処理がおかしくなってしまうんです。
ダブルサイデッドに関して調べてみます。ありがとうございました!
ちなみにID変わってますが>>931です。

945 :名前は開発中のものです。:2014/09/18(木) 22:08:51.88 ID:kK9bImeB.net
C++でやりたいからってだけでPro買ってる人いる?

946 :名前は開発中のものです。:2014/09/18(木) 22:39:20.02 ID:YzkdkCym.net
いらない

947 :名前は開発中のものです。:2014/09/18(木) 23:07:49.43 ID:YNjSCuIV.net
c++のためにpro買うならc#の教本買ったて学んだ方がためになると思う
何のためになるのかは知らん

948 :名前は開発中のものです。:2014/09/19(金) 07:28:20.71 ID:kQLz7WZJ.net
UnityでC++って、どゆこと?
dll?

949 :名前は開発中のものです。:2014/09/19(金) 13:06:10.84 ID:34wbMNwL.net
ProだとC++使えると聞いて今まで作ったゲームの移植も少しは楽になるのかなと思って
C#勉強しつつやってみます

950 :名前は開発中のものです。:2014/09/19(金) 16:35:32.69 ID:6H4QSqzF.net
質問です。

敵に攻撃を加えるとNGUIでダメージを表示する様にしたのですが、敵が出現するエリア(OnCorrisionEnterでPrefabから生成)にプレイヤーが居る時だけ、
ダメージが表示されません。試しに、敵の居ないエリアで同数の敵をプレファブからシーンビューに置いて、攻撃するとちゃんとダメージが表示されます。

エラーログは出ていないのですが、敵をInstantiateした場合だけ表示されない等という事があり得るのでしょうか?

他にNGUIでプレイヤーと敵のHPゲージを表示していて、それらの表示は正常です。どなたか解る方教えて下さい。

951 :名前は開発中のものです。:2014/09/19(金) 16:45:03.43 ID:7f+A6pyf.net
>>950
そのゲームがどんなデータ構造でどんな風にデータのやり取りしてるかも
わからんのに判る訳ねぇw

まぁありがちな例としてはFindで何かを取得しててInstantiateした場合
名前に(clone)がついてるので取得に失敗してるとかくらいか。

952 :名前は開発中のものです。:2014/09/19(金) 17:10:33.51 ID:6H4QSqzF.net
>>950
説明が足りなかったですね。

今、表示されない部分ではデータのやり取りは、プレイヤーの弾丸からSendMessageで敵オブジェクトにDamegeを
送り、敵側のDamage関数でLabelをInstantiate、InstantiateしたLabelにdamageを送って表示という流れなんですが、
おっしゃるような名前でFindしているのはLabelをPanal配下に置く時しか使っていません。
後、エリアに居る時でもDebug.Logで調べるとLabelにdamageは送られています。にも関わらず、表示だけされません。

説明が非常に解りにくいかと思いますが、よろしくお願いします。

953 :名前は開発中のものです。:2014/09/19(金) 17:12:41.72 ID:6H4QSqzF.net
あぁ、すみません、敵側のスクリプトではInstantiateしたLabelにはGetComponentしてdamageを送っています。

954 :名前は開発中のものです。:2014/09/19(金) 17:29:08.42 ID:PzaFcNaq.net
InstantiateしたラベルのレイヤーをNGUIにしてないとか

955 :名前は開発中のものです。:2014/09/19(金) 17:34:38.06 ID:6H4QSqzF.net
>>954
ありがとうございます。確かになってなかったです。でも、レイヤーをNGUIにしてもやっぱりそのエリアに居る時だけ、
というか、そこでInstantiateした敵だけダメージが表示されません。

他のエリアで直接シーンに置いたプレファブはちゃんと機能しているのに何故なのかが解りません。

956 :名前は開発中のものです。:2014/09/19(金) 17:53:38.76 ID:7f+A6pyf.net
なんか面白いな。ホントに何か制限があるのかもしれんね。
ちょっと自分で試してみる。

957 :名前は開発中のものです。:2014/09/19(金) 18:08:36.74 ID:6H4QSqzF.net
>>956
何か、わざわざすみません。自分でも色々弄ってみます。

958 :名前は開発中のものです。:2014/09/19(金) 18:55:24.18 ID:pg++7joH.net
セール中のbreadcrumbAIてどうなん?
買った人いませんか?

959 :名前は開発中のものです。:2014/09/19(金) 19:25:23.43 ID:ousSC5Zw.net
javascriptで2進数を10進数に変換する方法はないでしょうか
parseInt("01001",2)だと
No appropriate version of 'UnityScript.Lang.UnityBuiltins.parseInt' for the argument list '(String, int)' was found.
が出てしまい基数の指定がどうしてもできないのです

960 :名前は開発中のものです。:2014/09/19(金) 19:45:18.71 ID:PzaFcNaq.net
>>959
System.Convert.ToInt32("01001",2)

961 :名前は開発中のものです。:2014/09/19(金) 19:52:15.69 ID:ousSC5Zw.net
>>960
おお!迅速な解答ありがとうございます!上手く2進数変換できました!

962 :名前は開発中のものです。:2014/09/19(金) 19:52:30.40 ID:7f+A6pyf.net
>>957
あれ?うん、全然できたわw
実は前にちょっと同じようなとこでおかしくなったようなことがあった気がしたんで
試してみたんだがすまん、全然できるわw
つまりキミのプログラムがおかしいんだよw

その時はinstantiateからさらにResources.Loadしてたかもしれない。
とりあえずこれからそれも試す。

Nguiとか含んでるからプロジェクトさらすのはアレなんで
WebPlayerにビルドしたものだけあげとく。
基本的には説明されたのと全く同じデータの流れになっているはず。
ttp://www1.axfc.net/u/3323483
ADで回転WSで前進後進左クリックで射撃。

963 :名前は開発中のものです。:2014/09/19(金) 20:11:57.93 ID:SY+5mhWp.net
live animationでアニメーション作ってる人って居ますか?
フリーで作るならあれがいいのでしょうか

964 :名前は開発中のものです。:2014/09/19(金) 21:06:10.36 ID:6H4QSqzF.net
>>950です。まだ解決はしていないのですが原因が解りました。
LabelをDestroyせずに実行して、確認した所Labelは画面外に生成されていました。
原因は敵側でInstantiateした後、Lavel側から敵のlocalPositionを取得して位置決めをしていた為でした。

何故上記の様な仕様にしたかというと敵側のUpdate内からLabelの関数を取得していると、Labelが消えた時にエラーが出た為病む無くそうしました。

>>956さん、もし試しておられたら本当にすみません。

965 :名前は開発中のものです。:2014/09/19(金) 21:29:38.93 ID:1Q9qPuSg.net
アセットかえばいいとお思います

966 :名前は開発中のものです。:2014/09/19(金) 23:05:16.47 ID:eHI9MRkV.net
おい959、セール中のbreadcrumbAIてどうなん?
こたえろや

967 :名前は開発中のものです。:2014/09/19(金) 23:12:48.08 ID:7YcSuCUn.net
>>966
普通のパン屑(足跡にパンをちぎって遺すっていう童話由来)を使ったAIと巡回地点処理を持つだけど800円なら買っても良いレベルで良くできてる。
一定距離を保つタイプと格闘用に隣まで来るタイプの二種を扱える。

開発者のビデオがつべに置いてあるから見てみれば?

968 :名前は開発中のものです。:2014/09/19(金) 23:21:57.61 ID:upJnEeah.net
質問失礼します。
2Dでマウス位置をワールド座標い変換しようと思っています。
Update時にcameraのScreenToWorldPointを使いたいのですが、cameraがnullのままです。
カメラのゲームオブジェクトは追加しています。
どのようにしてScreenToWorldPointを呼びだしたら良いでしょうか?

ちなみにアセットを買っても、買い続けても解決しません。
分かる方、よろしくお願いします。

969 :名前は開発中のものです。:2014/09/19(金) 23:22:35.50 ID:U9mbwzcb.net
流れ読まずに投下です

http://0310unity.hateblo.jp/entry/unity_chan_basic
このサイトを見てLocomotionにJumpStateを追加したのですがスペースキーを押したらすぐに実行させるにはどこを弄ればいいんでしょう?

今はキーを押してもIdleが1周再生終わるまで時間がかかる状態です

970 :名前は開発中のものです。:2014/09/19(金) 23:27:41.85 ID:7YcSuCUn.net
>>968
カメラが一つしかないならCamera.mainで参照できる

971 :962:2014/09/19(金) 23:27:51.80 ID:upJnEeah.net
cameraってオブジェクトに関連付けられたカメラだったんですね。
Camera.mainを見つけました。
こちらもnullでしたが、、、
もう少し自分で調べてみます。
ありがとうございました。

972 :名前は開発中のものです。:2014/09/19(金) 23:34:30.16 ID:7YcSuCUn.net
>>971
ダイナミックに生成したオブジェクトからならCameraオブジェクトの名前を使ってFindで取得するかシーン毎に決まっているなら最初からカメラ変数を自分でAssignする方法が一番無難

973 :962:2014/09/19(金) 23:41:24.36 ID:upJnEeah.net
>>970
>>972
返答ありがとうございます。

カメラは一つですがCamera.mainはnullでした。
カメラは動的には生成していません。
静的にHierarchyに追加したものです。

Camera.currentを見つけました。
こちらはnullではなかったので、これを利用したいと思います。
ありがとうございました。

974 :名前は開発中のものです。:2014/09/20(土) 00:59:14.49 ID:o71PBM+Q.net
Camera.mainがヌルなのはTagがMainCameraになってないからだろうな

975 :名前は開発中のものです。:2014/09/20(土) 01:10:53.55 ID:UEIxDG/J.net
unity2Dで実装してるのですが、アニメーションを使ったオブジェクトが移動できなくて困っています。
具体的には、
Start()内で
rigidbody2D.velocity = transform.right.normalized * -1.0f;
をして移動させるようにしているのですが、
そのオブジェクトに「Animator」を追加した時点で移動がされなくなります。
AnimatorにはMuliple Spriteでのアニメーションキーフレームがいくつか入っています。
原因わかる方いればおしえてください。

976 :名前は開発中のものです。:2014/09/20(土) 01:11:51.83 ID:goS6Mui0.net
>>975
AnimatorコンポーネントのApplyRootMotionのチェックをはずす

977 :名前は開発中のものです。:2014/09/20(土) 01:16:23.02 ID:P9IFvS0N.net
>>975
アセットをかえばいいとおもいますよ

978 :名前は開発中のものです。:2014/09/20(土) 01:47:53.04 ID:Q3piAkFB.net
アセットおじさん今日も元気だね。
Unityから金をもらってやってるんだよね?
Unityはアセット販売の中間マージン取ってるもんね。
要はステマだよね?

979 :名前は開発中のものです。:2014/09/20(土) 01:49:57.45 ID:rI2J3Bys.net
ステルス性能低くてもステマとはこれは如何に?

980 :名前は開発中のものです。:2014/09/20(土) 08:27:17.49 ID:+c4ohn26.net
あしぇっと!あしぇっとをかいなしゃれ!
あの病人は
じいさんになってUnityがこの世からなくなっても死ぬまでやってるんだろうな

981 :名前は開発中のものです。:2014/09/20(土) 10:55:43.96 ID:q5cJgjS3.net
AnimatorのTriggerって一回trueにすると
それと対応するトランジションを通るまで絶対にfalseに戻らないんでしょうか

1瞬だけtrueになるものと思ってコード組んでたらまるで駄目な挙動になってしまいました・・・

982 :名前は開発中のものです。:2014/09/20(土) 10:59:41.22 ID:q5cJgjS3.net
すみません自己解決しました
もしやと思って試したら普通にSetBoolでTriggerの状態を変更できました

983 :969:2014/09/20(土) 11:30:50.61 ID:UEIxDG/J.net
>>979
解決しました!ありがとうございます

984 :名前は開発中のものです。:2014/09/20(土) 12:00:01.18 ID:flA56tyx.net
次レスの人ガンバ!

985 :名前は開発中のものです。:2014/09/20(土) 14:18:48.68 ID:x8RK9EKY.net
Unity5になったら、全部IL2CPPになってCコンパイラでネイティブexeになってMonoランタイムって無くなるの?
exe一個だけとかのシンプルな環境に出来たりするの?

986 :名前は開発中のものです。:2014/09/20(土) 14:57:53.57 ID:CciTK/RU.net
>>967
ありがとー
とりあえず買ってみたけどグレーと黄色のGUIがダサいね…

987 :名前は開発中のものです。:2014/09/20(土) 16:26:13.75 ID:SXjiW3S+.net
じゃあ逆にここの人達はどうやってアニメーション作成してるんですか?

988 :名前は開発中のものです。:2014/09/20(土) 17:04:52.40 ID:8ivgOrCG.net
キューブをクリックした数が表示されるプログラムを作っているのですがわからないことがあるんです
if(Input.GetMouseButtonDown(0)) を使ったらキューブだけでなく画面どこでもクリックすれば数がカウントされるのと
クリックされるたびにCOUNT(変数)にプラスするようにして GUI TEXT でそれを表示するために
guiText.text = COUNT.ToString() とすると まずCOUNTが定義されてないと言われます(別のJSで宣言しています)
しかし変数を宣言してやってもguiに表示される数は変わりません
Debug.Logで数が増えてないのかと思い確認したのですがどうやら増えているようです
ひよこ本を参考にして本では宣言がなくてもエラーなどはなかったのですが・・・

989 :名前は開発中のものです。:2014/09/20(土) 17:13:31.78 ID:flA56tyx.net
>>988
>クリックされるたびにCOUNT(変数)にプラスするようにして GUI TEXT でそれを表示するために
guiText.text = COUNT.ToString() とすると まずCOUNTが定義されてないと言われます(別のJSで宣言しています)
別のJSの参照を持ってこないと触れないというプログラムの基本的な事から勉強しないと駄目ですな
Unityはわりと楽に物が作れるけどプログラミングの素養がある程度必要なのでここばかりはちゃんと勉強しないと話にならないのです。

990 :名前は開発中のものです。:2014/09/20(土) 17:14:20.16 ID:WCRjPejE.net
C#しかわからんけど、物体のクリック判定ならColliderコンポーネント持たせてOnMouseDown関数で取得
キューブのクリック数ならキューブのクラス内に変数持たせればいいんじゃ?
外から取るならCOUNTを持ってるクラスにまずアクセスしないといけない

991 :名前は開発中のものです。:2014/09/20(土) 17:28:41.94 ID:fSMxhaTL.net
アニメーションはunityで作んなくてもいい

992 :名前は開発中のものです。:2014/09/20(土) 17:45:34.31 ID:flA56tyx.net
>>991
むしろUnityでやるのは苦痛じゃないかなー
2D物だとしょうもないけど、3Dなら専用ツール使うべき(あるいはMixamoでアニメーション買う)
純粋な2DならAdobeのFlashつかってアニメーションをLWFで再生とかにする方がよっぽど楽

993 :名前は開発中のものです。:2014/09/20(土) 18:41:26.28 ID:jp5sYj7X.net
ここはアセットおじさんに倣って「Final IK」を進めるべきなんじゃ

994 :名前は開発中のものです。:2014/09/20(土) 19:20:04.96 ID:MiUlwvoz.net
今、ngui買うのって時期的に勿体無いのかな。
uguiいじってるけどボタンが重なったり、モバイルで妙に重かったり上手く使えない。
nguiはそこらへんの情報も揃ってそうと期待しちゃうんだけど...

995 :名前は開発中のものです。:2014/09/20(土) 19:33:53.03 ID:jp5sYj7X.net
>>994
DFGUIがオープンソースになってるからそっち使ってみれば?
俺もNGUI持ってないから買うか悩んでるけど、とりあえずセール待ちしてDFGUI使ってる。

996 :名前は開発中のものです。:2014/09/20(土) 20:25:25.48 ID:AdUNXHir.net
1000が近いですが、質問です。
アクションゲームで敵のHPゲージを敵がカメラ内に居る時だけ、SetActiveをtrueにした状態で

function Damage( v : float){
if(dhp >0 ){
dhp -= v;
animator.SetBool("Attack",false);
animator.SetBool("Damage",true);
;
Invoke("Hoge",0.1);
if(dhp <= 0){
gameObject.SendMessage("Dead");
}
if(labelNameObj != null){
labelNameObj.GetComponentInChildren(HitPointController).SetDHP(dhp);
}
}
}
上記のスクリプトでInstantiateしたlabelNameObjeの子要素のNGUIレーベルに数値を送っています。
しかし、敵がダメージを受けている最中に画面外に出ると、SetActiveがfalseになる為、エラーが出てしまいます。
非アクティブな状態でも、子要素を取得する方法はあるのでしょうか?また、他に何か良い解決策があれば是非教えて下さい。
よろしくお願いします。

997 :名前は開発中のものです。:2014/09/20(土) 20:51:37.36 ID:MiUlwvoz.net
>>995
DFGUIも面白そうだけどこれからngui使う可能性も考えてnguiのフリー版
でいろいろやってみるわ
アドバイスありがとう

998 :名前は開発中のものです。:2014/09/20(土) 21:05:23.79 ID:Rb33ipGH.net
>>996
if(labelNameObj!=null&&labelNameObject.activeInHierarchy==true)
とかにしてアクティブだったら送るようにしたら?

999 :名前は開発中のものです。:2014/09/20(土) 21:23:45.70 ID:AdUNXHir.net
>>998
なるほど!activeInHierarchyというのがあるんですね!
ダメージ関数内だと、非アクティブからアクティブに変わった時に2回分のダメージ分減ったHPが送られそうなので、Updeta内に記述してみます!

ありがとうございます!

1000 :名前は開発中のものです。:2014/09/20(土) 22:46:36.38 ID:Q3piAkFB.net
質問失礼します。
2Dでゲームを作っています。
上下を反転させたいと思っています。下方向をYプラス方向としたいです。
ゲームオブジェクトとカメラを180回転させてやればできなくもないですが、
EditorのSceneの2Dでは上下さかさまになってしまいます。
なんとかならないものでしょうか?(iniファイルの設定でできる、、、とか)
分かる方、よろしくお願いします。

1001 :名前は開発中のものです。:2014/09/20(土) 23:03:38.72 ID:U07EJoPl.net
何を上下反転させたいの?
おち物パズルゲームで上下反転させて落下方向が変わるとか

具体的にゆって

1002 :名前は開発中のものです。:2014/09/20(土) 23:08:11.72 ID:Rb33ipGH.net
シーンのカメラ操作系は残念ながら自由にはならない。
重力を反転させたいだけなら
Physics.gravity =Vector3.up*9.8;
とかすればできる。
ttp://docs.unity3d.com/ScriptReference/Physics-gravity.html

1003 :名前は開発中のものです。:2014/09/20(土) 23:10:49.39 ID:py5EboSz.net
>>1001
自分の底辺人生を反転させたいんですが
どうしたら一発逆転出来るでしょうか?

1004 :994:2014/09/20(土) 23:26:21.76 ID:Q3piAkFB.net
>>1001
EditorのSceneの2Dの表示を上下反転させたいです。

>>1002
やはりそうでしたか。
あまり期待せずに、Unity5以降での対応を待つ事にします。

ありがとうございました。

1005 :名前は開発中のものです。:2014/09/20(土) 23:37:17.97 ID:U07EJoPl.net
>>1003
アセットを買えばおk

1006 :名前は開発中のものです。:2014/09/20(土) 23:49:50.93 ID:0PIlBCK0.net
1000ならクソゲーが完成する

1007 :2ch.net投稿限界:Over 1000 Thread
2ch.netからのレス数が1000に到達しました。

総レス数 1007
310 KB
掲示板に戻る 全部 前100 次100 最新50
read.cgi ver.24052200