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

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

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

1 :名前は開発中のものです。:2015/04/19(日) 12:16:54.53 ID:Erl+lZnN.net
3Dゲームエンジン「Unity」の質問に優しく答えるスレです。
Windows/Mac用。JavaScript/C#/Booといった汎用言語を使用できるのが特徴です。
フリー版で開発したゲームは個人・法人を問わず追加のロイヤリティーなしで販売できます。
プラットフォームサポートはiPhone/iPod Touch/iPad、Mac、PC、Web、Wii、Xbox360、Android、PlayStation 3、PlayStation 4、PS Vita他

次スレは>>970を踏んだ方が建てること。ダメなら>>980>>990が建てて下さい。

■前スレ
【3Dゲームエンジン】Unity質問スレッド16
http://peace.2ch.net/test/read.cgi/gamedev/1425192691/

■本スレ
【3Dゲームエンジン】Unity総合スレッド26
http://peace.2ch.net/test/read.cgi/gamedev/1429375487/

■Unity 2ch Wiki(まとめ、過去ログ、リンク集)
http://www24.atwiki.jp/unity2ch/

●リンク
・Unity(日本公式サイト)
 http://unity3d.com/japan/
・ユーザーガイド&リファレンス
 http://japan.unity3d.com/developer/document/
・チュートリアル
 http://japan.unity3d.com/developer/document/tutorial/
・スクリプトリファレンス
 http://docs-jp.unity3d.com/Documentation/ScriptReference/
・FAQ
 http://answers.unity3d.com/index.html
・MSDN
 http://msdn.microsoft.com/ja-jp/ms348103←スクリプトのエラー番号をこれで検索すると原因が日本語で出てきます。
注意事項:アセットおじさんは優しく愛でましょう

441 :名前は開発中のものです。:2015/05/13(水) 22:14:04.78 ID:fTNryTpc.net
質問です。( >>435の方とは違う者です。一応念のため)
環境はunity5.01f1になります。

オーバレイなどの画面効果を使いたくなり、
ImageEffectsをimportして ScreenOverlayをMain Cameraにセットし無事画面に効果が表れました。

そこでIntensityで効果の強さを弄れるようなのでソースから操作したいのです。

が、ソースを書こうとするのですが、
http://docs.unity3d.com/ja/current/Manual/comp-ImageEffects.html を参考にして
宣言部分に
using UnityStandardAssets.ImageEffects;
と書くのですが、その部分でエラーが発生してしまいます。

Assets/03_Script/01_Counter/Counter.cs(74,42): error CS0201:
Only assignment, call, increment, decrement, and new object expressions can be used as a statement

(visualStudio上では 「型または名前空間名
UnityStandardAssetsが見つかりませんでした」と表示されます。)

一応ScreenOverlay.csを開いてみると、上部の方に 
namespace UnityStandardAssets.ImageEffects
{
と書かれているのですが。。。

どなたか、ソースからImageEffectsのパラメータの操作の仕方が判る方、アドバイスを頂けないでしょうか?

442 :名前は開発中のものです。:2015/05/13(水) 22:21:21.35 ID:O3yCiIf3.net
これ?
http://religion.indiesj.com/unity/unity5-note

443 :名前は開発中のものです。:2015/05/13(水) 22:59:53.48 ID:fTNryTpc.net
>>442さん ご返答ありがとうございます。

やりたいことはまさしくコレです。

UnityStandardAssetsを認識しないので、エディタを再起動。
すると、一応コンパイルは通る(?)ようになったので
(変わらずvisualStudiodではエラーがでますが。 )

cameraOBJ.GetComponent<UnityStandardAssets.ImageEffects.ScreenOverlay>().intensity = 100f;

で成功しました。アドバイスありがとうございました!

444 :名前は開発中のものです。:2015/05/13(水) 23:52:41.40 ID:NLlcwtOk.net
void Update() {
transform.Rotate(Vector3.right * -Input.GetAxis("Vertical") * Time.deltaTime * speed); //入力に応じて回転
transform.rotation = Quaternion.Euler(transform.eulerAngles);             //オイラー角に変換してクォータニオンに再変換してるだけ
}

こんな単純なスクリプトなのに回してると真上で「ガッ」と引っかかったりして困ります…
2行目をコメントアウトすると治ることから、オイラー角が犯人なようなのですが…
これは単純化してるので意味不明になってますが、
実際のスクリプトでは2行目にClampをかませて角度制限してるのでなくすわけにも行きません。

どうするべきでしょうか…?

445 :名前は開発中のものです。:2015/05/14(木) 00:01:36.81 ID:ScFL5OjO.net
PCって4つめのなにかで回転しないと3軸の方で回転すると特定のところで
問題になるってあったような

446 :名前は開発中のものです。:2015/05/14(木) 00:04:12.01 ID:ScFL5OjO.net
あごめんそれがQuaternionか

447 :名前は開発中のものです。:2015/05/14(木) 00:33:12.08 ID:ScFL5OjO.net
この辺を参考にしてみたら?
http://docs.unity3d.com/ja/current/ScriptReference/Transform-rotation.html

448 :名前は開発中のものです。:2015/05/14(木) 02:34:51.58 ID:OxqF59jD.net
しょぼい質問ですが教えてください。

キャラクタをジャンプさせていますが、それが非常にゆっくりなのです。
たぶん現実世界ではそのくらいのスピードなのだと思います。
しかし、私はもっと速いジャンプ(の上昇と下降)をしたいと思っています。

その場合はどうすればいいでしょうか。

449 :名前は開発中のものです。:2015/05/14(木) 02:39:54.81 ID:+SSZ+Doh.net
>>448
どうやってジャンプさせてるが知らんが
重力的なものを大きくしてジャンプ力を上げればいいんじゃないの?

450 :名前は開発中のものです。:2015/05/14(木) 02:52:25.42 ID:Np/gKzpU.net
>>444
もしX軸しか動かさない、という条件付で前後120度でクランプしたいなら例えば
transform.Rotate (Vector3.right*spd*-Input.GetAxis("Vertical") * Time.deltaTime);
eulerRot = transform.eulerAngles;
if (Mathf.Abs(eulerRot.y)>1){
if(eulerRot.x < 60) {
eulerRot.x = 60;
transform.eulerAngles = eulerRot;
} else if (eulerRot.x<=360&&eulerRot.x > 300) {
eulerRot.x = 300;
transform.eulerAngles = eulerRot;
}
}
とかやればできないことはない。
安定してやりたいなら上に空のオブジェクトかましてY軸でコントロールするのをお勧めする。
UnityのQuaternionクラスのEuler変換はオーダーがZXYになっている、らしいので
X軸はどうにも安定せんのよ。Y軸がもっとも安定する。

総レス数 1011
314 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★