X



【ゲームエンジン】Unity初心者質問スレBuild1
レス数が1000を超えています。これ以上書き込みはできません。
0001名前は開発中のものです。垢版2018/06/06(水) 10:45:19.46ID:3pAIyBsg
フリー版で開発したゲームは個人・法人を問わず追加のロイヤリティーなしで販売できます。 プラットフォームサポートはiPhone/iPod Touch/iPad、Mac、PC、Web、Wii、Xbox360、Android、PlayStation 3、PlayStation 4、PS Vita他

■注意事項
「アセットを買えば」「チュートリアルやれ」等禁止、初心者の質問疑問に初心者が答えるスレ、ググれじゃなく何のキーワードでググったらいいかを書く

次スレは>>950以降にできるだけ早く(できれば回答者が回答した後にでも余裕を持って)建てて下さい。

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

●リンク
・Unity(日本公式サイト)
http://unity3d.com/jp
・マニュアル
 http://docs.unity3d.com/ja/current/Manual/index.html
・チュートリアル
 http://unity3d.com/jp/learn/tutorials
・スクリプトリファレンス
 http://docs.unity3d.com/ja/current/ScriptReference/index.html
・FAQ
 http://unity3d.com/jp/unity/faq
・MSDN
 http://msdn.microsoft.com/ja-jp/ms348103←スクリプトのエラー番号をこれで検索すると原因が日本語で出てきます。

関連スレ
【3Dゲームエンジン】Unity質問スレッド35
https://mevius.5ch.net/test/read.cgi/gamedev/1523771570/
0952名前は開発中のものです。垢版2019/03/01(金) 01:53:36.21ID:i9oiQn3T
>>950
最後の行 my_script.SetCanvasGroupEnable(hoge); がVSに認識されませんでした
が、自分のスクリプトに入れただけなのでミスがあるかもしれません。
後日新しいスクリプトファイルで勉強させて頂きます。有難うございました!
>>951
SetCanvasGroupEnable(CanvasGroup, false);
ではVSに怒られてしまいました。しかしそちらで動いているのならば、
こっちがおかしいのだと思います。わざわざ遅い時間まで有難うございました!

>>こんな型宣言して使ったことなかったから調べるだけでも精一杯
この言葉がありがたかったです。それにより「なぜそんな二度手間をする?」
の意味がわかった気もします。

そして>>941
有難うございました
0953名前は開発中のものです。垢版2019/03/01(金) 07:07:08.86ID:i9oiQn3T
>>950
新規csファイルで確認しましたが、VSは通してくれたものの、Unityはnullエラーを
返してきましたので報告させていただきます。以下は自分の解釈を付けたものです

//A_アクセスされる側のcs.目的は自身のアルファ値を0か1にする事だけに絞ってます
public class NewBehaviourScript : MonoBehaviour {
private CanvasGroup canvasGroup;
void Start () {
canvasGroup = GetComponent<CanvasGroup>();
}
public void SetCanvasGroupEnable(bool enable)//変数"enable"をbool値(省略ではtrue)で作成
//>>950さんは(「ここ」,false);が解らないなら最初から設定すんなって事を言ってるのだと解釈。
{
if (enable)//enable==turueであれば //以下の処理
{
canvasGroup.alpha = 1;
}
else//そうでなければ //以下の処理
{
canvasGroup.alpha = 0;
}
}
}
----------------
0954名前は開発中のものです。垢版2019/03/01(金) 07:09:12.88ID:i9oiQn3T
----------------
//B_アクセスする側のcs
public class NewBehaviourScript1 : MonoBehaviour {
public bool hoge = false;//bool値 hoge にfalseを代入
private NewBehaviourScript my_script;//my_scriptにNewBehaviourScript.csの"形"を代入。宣言?でいいのかな
void Start () {
my_script = GetComponent<NewBehaviourScript>();//my_scriptにNewBehaviourScriptクラスをを代入
//以下↓のようにmy_script.SetCanvasGroupEnable();と言うようにアクセスする事が出来る
}
void Update () {
my_script.SetCanvasGroupEnable(hoge);//hoge==false のはず...しかしここでnullエラーを返される
}
}

と言った結果でした。
とりあえずC#の教本は買おうと思います
0957名前は開発中のものです。垢版2019/03/01(金) 23:29:01.01ID:ad2Mn0me
おまいら受け渡しの型くらいあ合わせろ!てかここはおら弟子が楽しむためのスレなんだからな!
0959名前は開発中のものです。垢版2019/03/02(土) 06:49:41.94ID:IiwWR++Q
>>956
前回>>953 用意した物
・スプライトから作った"オブジェクトA"
・UI_Image で作成した"Canvas".中には画像確認用にImageから画像を読み込んだオブジェクト
これにCanvasGroupコンポーネントを入れて、alpha値が正常に動くのを確認

オブジェクトA・・・NewBehaviourScript1(アクセスする側)"Hogeにチェック"
Canvas・・・NewBehaviourScript(アクセスされる側)をアタッチ

実行→ NullReferenceException: Object reference not set to an instance of an object

NewBehaviourScript1.Update () (at Assets/NewBehaviourScript1.cs:20)
箇所は
void Update()
{
my_script.SetCanvasGroupEnable(hoge);
}

今回>>955 用意した物
NewBehaviourScript NewBehaviourScript1・・・それぞれ>>955 yVRgjts.png
に書き換えたもの
前回に続き"Canvas"・・・NewBehaviourScript1(アクセスする側)
動画を参考に前回の"オブジェクトA"は削除。"canvas2"を作成してそこにButtonを配置。
これにNewBehaviourScript(アクセスされる側)をアタッチ。ターゲットは"Canvas"

こちらは何度か失敗しましたが、自分のソースミスが原因だと解り修正後動作しました!
>>953はレスが頂けるとは思わず「ちゃんと聞いてるぞ!」という姿勢を見せたつもりだった
のですが、そのせいで余計な手間をかかせてしまって本当申し訳ありません。
動画まで用意して頂いて...しかしその動画が実に参考になりました。有難うございます
0960名前は開発中のものです。垢版2019/03/02(土) 07:03:39.92ID:IiwWR++Q
>>926 >>929
自分はあなたのレスに悪意を感じたが為>>930のような態度を取ってしまいました
しかし今回の件で「まさかそこまでの初心者が来る訳無いだろう」という
考えもあると気付いたつもりです。まだ完全に理解は出来てませんが、他の方が言う
様に答えを提示されて下さったのだと思います。申し訳ありませんでした
0961名前は開発中のものです。垢版2019/03/02(土) 07:24:02.08ID:9Col7dyh
>>960
そもそものきっかけはあなたの「ソースは理解してる」
あなたが理解してるのはソースじゃなくて結果だけ
コピペしてきたソースを理解していたら簡潔なレスでも問題点を理解できていた
0962名前は開発中のものです。垢版2019/03/02(土) 07:53:34.48ID:IiwWR++Q
ここからは談笑で行きませんか
自分はしょぼい程度ですがFlashのActionScriptを今まで使ってたんですよ
だからUnityのC#を見た時、どういう処理をしているのかはだいたい理解出来た
でもFlashとUnityのアプリの作り方はまるで違う様に感じました
多分C#よりもUnityの仕組みの方が理解できてないのだと思うけど...どうでしょうか

そういった感覚で初心者用教本を1冊読み終え、まずは自作したFlash作品をUnityに
移植しようと思って制作してたのですが...ここで質問してまるで話が通じない!
初心者スレで初心者が質問しているのに皆が皆でよってたかって質問で返して来る
0963名前は開発中のものです。垢版2019/03/02(土) 07:55:36.89ID:9NeG1AvL
GetComponentはthis.GetComponentだから自分自身からしか探せないんやが
外部にアタッチされたコンポーネントは>955みたいな書き方になる
これはチュートリアルのインターミディエイト/エキスパートで順次出来てきた筈

薮蛇だから何も言わないけど相手の理解力からレベルはほぼ一瞬全てバレるので
あまり無駄な事はしない方がいいよ
0964名前は開発中のものです。垢版2019/03/02(土) 08:06:57.39ID:IiwWR++Q
またsage忘れてしまった
Unity初心者の自分から見たら皆さん中級者以上ですよ
テンプレには初心者が初心者に答えるスレって書いてあるのに
ここではある程度理解していないと嘲笑のネタになるのだと感じたワケです
教えてくれない、逆に試される。初心者からしたらそういう態度取られるのは
「この人達、教えてくれないのになんでここにいるの?」て思いますよ
勿論教えて厨的な初心者もいますから、千引きは難しい所だと思いますけどね。
0965名前は開発中のものです。垢版2019/03/02(土) 08:27:02.56ID:9NeG1AvL
ここは元は荒らしが勝手に立てたスレだった筈
まぁC/C++系に比べたら全然温いとはいえ、分からなければ
書かなくていいみたいな所はある
元々プログラム系ってそういうもんで、初心者を引き上げようとか
そういう考えはないから、頑張って戦塵の谷を登ってくるしかないんじゃね?

まぁデバッガ使えるようになると自前でほぼ何でも解決出来るようになるから
そのあたりから始めてみたら楽しくなってくんじゃね?
0966名前は開発中のものです。垢版2019/03/02(土) 08:50:17.96ID:IiwWR++Q
>>965
すごく興味深いです
ここで叩きのめされてなぜなのか?と調べたら専門系程その傾向にあるそうですね
初心者を引き上げよう...などと想う自分の考えは所詮甘えの範疇、本当に好きな奴
だけ上がって来れる世界と言うワケですね、成る程。
じゃUnityの「初心者でも作れる!!」ってのは...解ります。この難解さですもん
でもUnityはイラつくけど楽しいです。
デバッガ>>昔海外のエロゲを割ろうとして手を出しましたがまぁ〜あ土台無理でした!!
0967名前は開発中のものです。垢版2019/03/02(土) 09:11:09.94ID:9NeG1AvL
テストでいい点取りたいとかいい大学に入りたきゃ勝手に勉強しなさい
みたいなもんなかな? 結局眼前にぶら下がってる人参は自分のエゴだしね

俺もC++やってた時、なんだこれチンプンカンプンじゃねえかと思ってたんやが、
それはIDEは唯の便利なインテリセンス付きの便利なエディタだと思ってたからで
3割も使ってなかっただけ

デバッガでステップ実行すれば複雑なソースも理解出来るようになるし、
理解できなくても何がどう動くのかは分かる
デバッガ嘘つかないっつーか、エラーコード調べりゃ解決の糸口分かるし、
人間様よりよっぽど素直で賢い dllで隠蔽されてなければソース掘れるしな
ソースあるならリファレンスいらんのよアレ
0969弟子垢版2019/03/02(土) 20:49:53.56ID:xH7Ujfez
だからおまいらは外スレいけっての
0970名前は開発中のものです。垢版2019/03/02(土) 20:55:24.98ID:3y9Vx5l3
【悲報】弟子全く付いていけず完全に蚊帳の外
0971名前は開発中のものです。垢版2019/03/03(日) 15:15:54.99ID:EpCuMYHi
アルファ付きのテクスチャを使用し、マテリアルのレンダリングモードをtransparentにすると
うっすら白いメッシュが見えてしまうのですが解決方法はありますか?
ちなみにテクスチャ側のalpha is transparentにはチェックを入れています。
また、まつ毛のテクスチャなんですが、レンダリングモードがcutoutだと先端の半透明部分的が消えてしまうのでtransparentが惜しいんですが…
0973名前は開発中のものです。垢版2019/03/04(月) 09:09:28.36ID:KIG6/Jh4
つまりデフォルトのシェーダーではそういう仕様ということでしょうか?
自分で作れば解決するのであれば調べてみます。
0974名前は開発中のものです。垢版2019/03/05(火) 08:13:22.35ID:N7ZC2ho/
オブジェクトの移動について調べると、このコードで
等速で座標(1, 0, 0)から(10, 10, 10)まで動かせるらしいのですが、

Vector3.MoveTowards(new Vector3(1, 0, 0), new Vector3(10, 10, 10), Time.deltaTime);

例えば移動時間が3秒の場合は
Time.deltaTimeのところにはどういう風に書けばいいのでしょうか?
よろしくお願いします
0975名前は開発中のものです。垢版2019/03/05(火) 08:39:02.48ID:Y8eG/nNB
大前提として1フレームをだいたい0.02秒と考えて、
3秒は150フレームだから、
移動元から移動先を直線にした距離(だいたい10ww)
それを150で割った値を指定すればだいたい3秒でゴールに到着するだろ

結論
ていうか距離が変わってもとにかくどこへでもトータル3秒で移動させるとかそういうためのものじゃない

一定の移動速度で動かしたいだけのものでしょそれ
0977名前は開発中のものです。垢版2019/03/05(火) 09:10:33.99ID:CxDtBk+6
>>974
var duration = 3.0f;
var a = new Vector3(1, 0, 0);
var b = new Vector3(10, 10, 10 );
var distance = (b - a).magnitude;
var speed = distance / duration;
var step = speed * Time.deltaTime;

Vector3.MoveTowards( a, b, step );
0979名前は開発中のものです。垢版2019/03/05(火) 15:26:52.94ID:N7ZC2ho/
>>977
ありがとうございます

var duration = 3.0f;
var a = new Vector3(1, 0, 0);
var b = new Vector3(10, 10, 10 );
var distance = (b - a).magnitude;
var speed = distance / duration;
var step = speed * Time.deltaTime;

Vector3.MoveTowards( a, b, step );

を書いて実行してみたのですが、動きませんでした

このまま書くだけではだめなのでしょうか?

また、秒数指定よりも速度指定の方が簡単なのであれば
速度はどのように書けばいいのでしょうか?
0981名前は開発中のものです。垢版2019/03/05(火) 15:47:15.85ID:CxDtBk+6
>>979
そりゃあTime.deltaTimeのところをどう書いたらいいかって質問への回答だから、もちろんこのまま貼り付けても期待通りには動かんよ。

Vector3 current = new Vector3( 1, 0, 0 );
Vector3 target = new Vector3( 10, 10, 10 );
float duration = 3.0f;
float speed;

void Start()
{
this.speed = (this.target - this.current).magnitude / this.duration;
}

void Update()
{
this.current = Vector3.MoveTowards( this.current, this.target, this.speed * Time.deltaTime );

this.transform.position = this.current;
}

Vector3.MoveTowardsのリファレンスちゃんと読んでる?
0983名前は開発中のものです。垢版2019/03/05(火) 19:17:44.97ID:N7ZC2ho/
>>981
ありがとうございます
ボタンを押したらオブジェクトが動くようにしたいのですが、
エラーがいくつも出てる状態なので、
リファレンスなども参考にして直していこうと思います
0986名前は開発中のものです。垢版2019/03/09(土) 15:36:57.33ID:a21Td0ld
http://tutorial.unity3d.jp/

ここのチュートリアルを両方作ってみる
作り終わる頃には自分の作りたいゲームをどのようにして作るのか見えてくるはず

作りたいゲームが無いけどゲームプログラムを学びたいなら既存のゲームを目コピして自分で再現してみる
0987名前は開発中のものです。垢版2019/03/10(日) 08:12:56.69ID:B9bBg0Vp
Animatorを使わずにスクリプトでAnimationを直接制御したときの挙動について質問です
Animation.stopでクリップを停止したときに初期状態(0フレーム目の状態)に戻したいのですが、一時停止のような挙動になります

パラメータ保持しておいて手動で引き戻す以外にスマートな方法はありますか?
0988名前は開発中のものです。垢版2019/03/10(日) 14:56:22.87ID:q24C1W7O
スクリプトを作った時に最初から付いてるコメントを出なくする方法教えてください
startとupdateのやつ
0989名前は開発中のものです。垢版2019/03/10(日) 15:00:09.21ID:g6/xEpKH
UNITY社からセキュリティーのメールが来ましたが
英語のページなので日本人は関係無いですよね?
0990名前は開発中のものです。垢版2019/03/11(月) 00:16:08.59ID:9G6icXlB
アニメーションのアセットいっぱいあるのにエロがない…
セックスアニメーションのアセットが欲しいんじゃー
0992名前は開発中のものです。垢版2019/03/12(火) 00:24:21.42ID:fIVZQSw4
タブレットでプレイストアで自分のアプリを見ると、
「このアプリはお使いの端末に最適化されません」って出て
(スマホでは出ません)
タブレットでアプリを起動すると、タブレットの方が高画質のはずなのに
スマホの時よりも画面が少し荒く、動きがぎこちない感じになってしまいます。
タブレット用に最適化するにはどうしたらいいのでしょうか?
0993名前は開発中のものです。垢版2019/03/12(火) 19:48:26.33ID:Im8OWn1P
>>992
お持ちのスマホの型番とOSのバージョン
お持ちのタブレットの型番とOSのバージョンをお知らせ頂かないと答えようが無いかと
0997名前は開発中のものです。垢版2019/03/14(木) 09:30:43.62ID:88G3cBfZ
質問の仕方が悪いと答えようが無いときもあるよね。
あと >>992 はキャッシュクリアするとなおることがあるよ。
10011001垢版Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 282日 11時間 34分 15秒
10021002垢版Over 1000Thread
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/

▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。

ニューススポーツなんでも実況