X



【3Dゲームエンジン】Unity質問スレッド32
レス数が1000を超えています。これ以上書き込みはできません。
0001名無し@キムチ
垢版 |
2017/10/30(月) 05:05:35.00ID:xnHTCaF3
フリー版で開発したゲームは個人・法人を問わず追加のロイヤリティーなしで販売できます。
プラットフォームサポートは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質問スレッド31
https://mevius.5ch.net/test/read.cgi/gamedev/1504366121/
0002名無し@キムチ
垢版 |
2017/10/30(月) 05:07:09.23ID:xnHTCaF3
その後いろいろ調べた結果、Resources.GetBuiltinResourceはArialフォントしか取得できないということがわかりました。どのウエブサイトにもArialフォントを取得する例しか出ていないことで、それは明らかです。
Resources.Loadでフォントを取得するのは、それよりか少しマシで、妙なタイミングの時だけ他のフォントも取得できました。実行しながらインスペクターを見ると、確かにフォントの欄が指定したフォントの名前に変わっています。
しかしインスペクターでは変わっていても、実際の画面では変わっている時と変わっていない時があります。
変わっている時は、インスペクターのフォントをスクリプトで指定したフォントと同じ名前にした時と、その後インスペクターのフォント欄をNONEにした時です。
しかしインスペクターのフォント名をスクリプトで指定したフォントを違う名前にすると、何か壊れたような文字が表示されます。その後NONEにしても同じく壊れた文字になります。
えっとつまり当方はどこが間違っているでしょうか? という質問ですね。
この質問がしたかったので、質問スレ立てました。
よろしくご教授のほどおねがいいたします!!!!!!!!!!
0003名前は開発中のものです。
垢版 |
2017/10/30(月) 13:04:30.56ID:ZpEdwXJ/
キムチやるやん
0004名前は開発中のものです。
垢版 |
2017/10/30(月) 16:26:38.22ID:VqutCIJh
イースみたいなゲーム何で作る
0005名前は開発中のものです。
垢版 |
2017/10/30(月) 20:31:47.39ID:x+DbF/Iy
>>2
ここはマニュアルに書いてあるんだが、日本語版は翻訳が糞過ぎて意味不明なのでハマるかも知れないな

TextMeshが正しく描画されるためにはTextMeshにフォントがセットされていて、レンダラーに使用するフォントのマテリアルがセットされている必要がある
TextMeshのインスペクタからフォントを変更するとマテリアルも変更されるが、NONEを指定した場合や、スクリプトから変更した場合にはマテリアルは変更されない
よってTextMeshのフォントをスクリプトから変更する場合以下のふたつの手順を踏む必要がある

1.TextMeshのfontにフォントをセット
2.RendererのsharedMaterialにフォントのmaterialをセット

リソースからの読み込み自体は正しく読めているように見えるのでセットする手順に合わせて変数に一旦受けるぐらいでいいはず
0006名前は開発中のものです。
垢版 |
2017/10/30(月) 21:35:27.67ID:ZdBtf9G3
Unity本書いてるクズがキムチを悪人にしたて上げただけなんだよ
勘違いしてBlenderスレまで追ってきて攻撃しやがって!おい!出て来い!○すぞ!本作家!!
0009名前は開発中のものです。
垢版 |
2017/10/31(火) 07:28:07.45ID:8EowonW/
キャラ変更機能を実装したいのですが、難航しています。 位置を変えずにキャラだけを変えるにはどうすればいいですか?
やはりemptyに非アクティブキャラを入れて一緒に動かし、アクティブを切り替えるしかないのでしょうか。

もっと簡単、もしくはコードの管理がしやすいものがありましたら、アドバイスお願いします。
0010名前は開発中のものです。
垢版 |
2017/10/31(火) 08:46:25.80ID:hwIml5Uz
>>9
切り替えられるキャラが固定ならそれでもいいと思う
無制限に切り替えられるなら動的にロードと解放を繰り返して読み替えるしかないね

ちなみに位置だけの問題なら普通はモデルそのものを動かすのではなく、親にゲームオブジェクトを置いてその座標を動かすのが一般的だと思うぞ
0012名前は開発中のものです。
垢版 |
2017/10/31(火) 21:20:17.83ID:5DvSBczH
ここだとスレ違いかもしれないんだけど
マネージャーとかハンドラとか言われるものって


押す→ボタン     管理
     ↓      ↑│
  ボタン2表示選択┘│     結果表示
              ↓       ↑
        処理呼び出し────┘

                 
こんな感じで処理の呼び出しにだけ使うのと
               
            ┌─┐
 結果表示←─┐ ↓  │
  ボタン──→管理 ┐│
          ↓↑ ││
   ボタン2表示選択││  
              ↓│
        処理呼び出し

みたいに全ての処理やらなんやら経由させるのどっちがいいの?

ボタン1押したらボタン2が表示される
みたいな簡単で単純な処理でも管理噛ませた方がいいの?
0013名前は開発中のものです。
垢版 |
2017/11/01(水) 01:50:57.05ID:f31u9+C6
OpenGL書いたりC4D使ったりしてて、さすがにいい加減ゲームエンジンに移行しようと思ってるんだけど
今からUnityやるとしたら5.6系と2017系どちらがいいのだろうか?
0015名前は開発中のものです。
垢版 |
2017/11/01(水) 05:37:02.17ID:g2MM1AwD
なんのゲーム作ればいいかわからん
どこまでやれるか、何が作れるか
0016名前は開発中のものです。
垢版 |
2017/11/01(水) 13:43:08.71ID:/3XiSYLk
>>12
図の意味がわからん
下手な図書くくらいならgistとかで簡単なサンプルコード書いてくれたほうがわかりやすい
0017名前は開発中のものです。
垢版 |
2017/11/01(水) 14:06:54.19ID:g2MM1AwD
ボンバーマンはunityでいけるか
0019名前は開発中のものです。
垢版 |
2017/11/01(水) 15:24:37.48ID:tfoHvn3H
5年前はオレも15みたいな状態だったわ
このアイデアは実現できるのか、そもそもどんな知識が必要なのかってところ始まり
参考書を見てもわからず挫折を繰り返す。
とにかく苦しんで手を動かし頭を使い覚えるしかない。
そのうち作れないゲームがなくなっていく。
0020名前は開発中のものです。
垢版 |
2017/11/01(水) 15:34:08.65ID:LUgfR2ap
俺は作りたいものが決まってるから迷いは無いな
0021名無し@キムチ
垢版 |
2017/11/01(水) 19:37:26.54ID:4oKomx3O
>>5
いま試行錯誤しています。
難しいですね・・なかなかうまくいきません・・・・w
0023名前は開発中のものです。
垢版 |
2017/11/02(木) 00:39:22.81ID:LelwDP9i
横スクアクション用に、EdgeCollider2DとPlatformEffector2Dで下からすり抜けられる空中足場を作ったのですが
操作キャラクターがギリギリ足場上に届かない高度までジャンプした際に、移動の向きを変えると足場上まで押し出されてしまいます
キャラクターにつけたBoxColliderの中点がEdgeCollider2Dより高くなった場合に発生するようなのですが、解決策あれば教えていただきたいです

移動はRigidbody2Dの速度を変更させることで実装しています
0026名前は開発中のものです。
垢版 |
2017/11/02(木) 14:04:44.30ID:e8RpoWkd
タイムラインでカットシーン作ってるんだけど、
タイムラインで台詞を表示した後にプレイヤーがクリックするまで一時停止ってどうやるの?
0027名前は開発中のものです。
垢版 |
2017/11/02(木) 14:47:31.69ID:e8RpoWkd
>>26は自己解決しました
ボタンのOnEnableでPlayableDirectorをPauseして、クリック時にPlayableDirectorをPlayするスクリプトつくって
ActivationTrackでそのボタンをActiveにする方法でできました
0028名無し@キムチ
垢版 |
2017/11/02(木) 19:12:15.51ID:xhAlSnU4
>>5
>>21
うーん…難しいですねw
まだまだ試行錯誤中です・・・
0031名前は開発中のものです。
垢版 |
2017/11/03(金) 13:54:26.91ID:VzgMAYrg
Unityのvideoplayerで特定の色を透過できませんか?

もしくは投下したままエンコできる動画編集ソフトとかありますかね……?

シーンチェンジ作ったんですが、背景に黒が出てしまうんです。
何か方法があれば教えてください。
0032名前は開発中のものです。
垢版 |
2017/11/03(金) 14:46:58.50ID:fDonPpOE
GPUインスタンシングについての質問なのですが、
ライトプローブやライトプローブプロキシヴォリュームを使用するオブジェクトをGPUインスタンシングで描画することはマニュアルに書いてある通り不可能なのでしょうか?
もしそれが不可能だとしたら例えば草原の草などはかなりの負荷を甘んじて一個一個ドローをコールして描画するか、
もしくは全部の草をマージして一個の巨大なオブジェクトとしてそこにライトプローブプロキシヴォリュームを適用するくらいしか思いつかないのですが速度を考えるとそれもちょっと…
一般的にはこのような場合はどうするのが常道なのでしょうか?
教えていただければ幸いです
0033名無し@キムチ
垢版 |
2017/11/03(金) 19:21:18.06ID:Hwkr6+Ll
>>5
>>21
>>29
うーん…難しいですねw
まだまだ試行錯誤中です・・・
0036名前は開発中のものです。
垢版 |
2017/11/03(金) 22:26:08.47ID:OvDtmytP
UnityでC♯を使っての良い解説本ってないですか?
そういう入門本を何冊か買ったんですけど
どれもスクリプトを単に記載してるだけで
どのコードがどの処理をやっているのかという
根本的な理解に突っ込んだ本がなくて・・・
0038名前は開発中のものです。
垢版 |
2017/11/04(土) 00:37:55.95ID:b5sUINCv
>>30
設定した小さいの値の中点より高くなった場合〜などを考えると根本的な解決では無い気がして躊躇ってます…
EdgeとEdgeの判定が出来ればベストなのですが…とりあえずBoxColliderの最少の厚み0.001でバグがなければそれで行こうと思います
ありがとうございました
0042名無し@キムチ
垢版 |
2017/11/04(土) 06:31:09.03ID:m1qvOO3a
>>34
Unityは動画はOGVファイルしか再生できないんじゃないですか?
一体どうなってんの!?
0044名前は開発中のものです。
垢版 |
2017/11/04(土) 13:16:17.72ID:2+ElEECs
>>37
Unity5オンラインゲーム開発講座
Unity5入門
UnityではじめるC♯

どれもUnityの基本的な使い方の解説のみで(Unity5入門は言語がJSだったけど)
C♯の詳しい詳細な説明はない模様
Unity5オンラインゲーム開発講座は
C♯やUnityのことを多少理解してる人向けっぽくて
初心者向けではなかったです

この中で比較的一番マシな解説本はUnityではじめるC♯だったのですが
簡単なサンプルゲームを通じてUnityの基本的な使い方を教えるのにとどまるもので
C♯の詳細な説明などはなかったです
Unityで開発を進めながらC♯言語の詳細な文法やUnityでのC♯の使い方を
C♯言語初心者でも分かりやすく詳しく解説してる本などを知っていないでしょうか?

一応C♯言語の入門本は持っていて今学習を進めていますけど
UnityでのC♯を使ってのゲームの作り方も知っておきたいのです
0046名前は開発中のものです。
垢版 |
2017/11/04(土) 13:30:49.65ID:okR6Basc
>>44
C#の基本だけで1冊3000円の上巻、下巻
C#でゲームプログラミング本だけで1冊3000円の上巻、下巻 + RPGやレースなどゲームジャンル別にさらに増加
Unityの使い方本だけで1冊3000円の上巻、中巻、下巻

君が要求しているのはこれくらいのボリュームある内容だよ
到底一冊では無理
0049名前は開発中のものです。
垢版 |
2017/11/04(土) 15:23:34.31ID:2+ElEECs
>>46
じゃあUnityで開発するには
C♯の基本を修めたあとで
C♯のゲームプログラミング本などでゲーム開発の基本を習得した上で
Unityの使い方本を習うという流れになるのでしょうか?
0052名前は開発中のものです。
垢版 |
2017/11/04(土) 17:00:42.13ID:U+9eWtlh
>>49
本当にC#の基礎の基礎だけ学んであとはUnityを使って実際にゲームを作り進めながら学習する
ある程度作れるようになってくると中身がわからないのに動くのが気持ち悪くなってくるから中身の処理を学ぶためにゲームグラフィックスや物理エンジンの実装を学ぶ
ぶっちゃけフロントエンドのエンジニアになるだけならUnity上での実装、ネットワーク周り、ちょっとしたシェーダー、アセットマネジメントのためのデータ管理 これだけあれば事足りる
0053名前は開発中のものです。
垢版 |
2017/11/04(土) 17:12:26.04ID:okR6Basc
>>49
君の質問にはプログラミング未経験者でいきなりUnity始めて
今も挫折せずやり続けながらこのスレにいる人
そしてオンラインゲームを1本完成させて公開してる人にしか答えてあげられそうにない。

俺の場合はまさにご指摘通りの道を歩んできてるため
Unityなしでもゲームを作れるのだが
俺の真似すると10年はかかる長い道のりになってしまうと思われ正解とは言い切れない
>C#の基本を修めたあとで
>C#のゲームプログラミング本などでゲーム開発の基本を習得した上で
>Unityの使い方本を習うという流れになるのでしょうか?

プログラミングって刀鍛冶や陶芸家(壺つくりなど)みたいに職人色も強いのよ
学習というより熱意と自己工夫、そして自分の怠け心に負けない強さというかなんというか
0055名無し@キムチ
垢版 |
2017/11/04(土) 18:52:45.20ID:m1qvOO3a
>>49
Unityで開発するには、
当方の場合開発しながらひとつひとつ使い方覚えていって、
プログラミングもtransform.positionみたいな簡単なのから、
「おっ!!動いたぞ!!」ってな感じてひとつひとつ覚えていって、
つまりだんだん覚えた数を増やしていくという泥縄式のやり方で、
いまもそのやり方を継続中ですなwww
0056名前は開発中のものです。
垢版 |
2017/11/04(土) 19:07:07.24ID:5YIZbc8/
>>49

C#を全く知らずにUnityを始めたけど、
基本はBASICやVB.netとそんなに変わらなかった

大文字・小文字が区別されたり、
文末に;がついたり、ブロック文を{}で囲ったり、
条件分岐の比較演算子で、=が==で、<>が!=で、
論理演算子のAndが&&で、ORが||だったり、
For・・・Nextが少し変わった程度だった
(今のところは)

構文の御作法が微妙に違うだけだから、
何か1つのプログラミング言語を経験していれば、
C#自体の敷居は低い気がする・・・

むしろ、transformの構造とか、
Rigidbodyの操作・挙動とか、
Unity特有の部分を覚える方が大変

最初は、とにかく思ったように動かせずに引っかかる
VectorとかQuaternionのメソッド・プロパティとかは、
原理は無視して、ツールとして使えればOKではないかと?
0057名前は開発中のものです。
垢版 |
2017/11/04(土) 19:18:45.20ID:5YIZbc8/
2Dなら、
キャラクタ画像をスプライトとして登録、
オブジェクトとして配置、
Collider2DとRigidbody2Dを載せて設定、
(これだけで、地形判定はだいたいできている)

後は各キャラクタにScriptを載せて、
その中に、キー入力時の操作やカメラの移動、
特定物との衝突時の挙動をコーディングすると

これだけで、アニメーションもBGMも効果音もないけど、
動かして、接触に反応するゲームの土台部分はできる

後は、敵や弾などキャラクタを作り分けていき、
スコアを表示したり、残機管理したりを、後で追加していく

シーンを保存して、OP画面やGameOver画面を作成、
Build設定でシーンの順番を登録して、
後は操作やイベントに応じて、各シーン呼び出していく

これくらいで、ミニゲームというか、
ACTやSTGの骨格はすぐにできてしまうのが、
Unityの凄いところ・・・
ゲーム性は、作り上げる中で追加・調整が必要
0058名前は開発中のものです。
垢版 |
2017/11/04(土) 19:43:11.27ID:zAaiKAi+
cやアセンブラをかじってるなら、c#知らなくても十分unity 本でできますよ。
それすらないと、プログラムの本をやっておかないときついかも。
0059名前は開発中のものです。
垢版 |
2017/11/04(土) 21:43:17.91ID:1gsjGLhX
unity歴二ヶ月のものですが、c#独学はやめた方がいいと聞きました。
今からでもチュートリアルすべきですか?
0061名前は開発中のものです。
垢版 |
2017/11/04(土) 23:25:09.45ID:zAaiKAi+
>>59
まぁ、チュートリアルはやって損はないから、やる余裕があって、技術的に詰まってるならやった方がいいと思うよ。
0065名前は開発中のものです。
垢版 |
2017/11/06(月) 18:14:24.19ID:MMRaoffW
本の通りに操作・入力してるにもかかわらず

No MonoBehaviour scripts in the file ,or their names do not match the file name.

というエラー出るんだけどこれはどういった理由が考えられるのでしょう
0066名前は開発中のものです。
垢版 |
2017/11/06(月) 18:49:02.07ID:xBIPSoxk
>>65
スクリプトの名前でも変えたんじゃねーの?
0067名前は開発中のものです。
垢版 |
2017/11/06(月) 21:57:19.93ID:MMRaoffW
名前は付け変えてはいないんだけどね
なんかアイコンもC#じゃなくて歯車みたいなのになっちゃってるし
ファイル消して最初からやり直してみる・・・
0070名前は開発中のものです。
垢版 |
2017/11/07(火) 12:10:21.76ID:ryfVLioV
>>65
スクリプト作る→C#を開く→ファイルの名前変える
の順番でやると
C#のMonoBehaviourの後に書かれてるclass名とファイルの名前が違ってくるのでエラーがでる
ファイル名を変えたときはC#のMonoBehaviourのclassが一致しているか確認
0071名前は開発中のものです。
垢版 |
2017/11/07(火) 12:42:45.11ID:1VeMy6de
もうプロジェクト消しちゃったからハッキリわからないけど
もしかしたら最初スクリプト名入力する時GameManager.cs.csて拡張子が二重になっちゃってたかもしれない
0072名前は開発中のものです。
垢版 |
2017/11/07(火) 16:20:02.37ID:7ilGLZQx
MonoBehaviourのクラス名って大文字にしないといけないって聞いたんですけど、小文字でもちゃんと動作できます。
しかし、やはり心配です。バグとかおこるのでしょうか
0073名前は開発中のものです。
垢版 |
2017/11/07(火) 16:47:08.78ID:snJDofSj
>>72
別に小文字でも良い
大文字小文字は区別される
class名は大文字から始めるのが基本、ってのを勘違いしてるんだと思う
SampleClassみたいな命名規則が一般的
0076名前は開発中のものです。
垢版 |
2017/11/07(火) 18:25:29.94ID:Y2qc0xhM
問題なく動くんですね!
確かに読みにくいです……
こらからは大文字で書くよう意識してみます。
ありがとうございました!
0078名無し@キムチ
垢版 |
2017/11/07(火) 22:59:02.33ID:Hc4qrqd+
キムヨナは仏様
0079名無し@キムチ
垢版 |
2017/11/07(火) 23:09:58.78ID:Hc4qrqd+
ちょっと質問解決途中で、別の質問ですが、タレントや有名人のスキャンデータって売っているのでしょうか?
出せば売れるから売ってるはずだと思うのですが、検索してもどうも出てこないので、どうなっているのかと思って・・・
ご存知の方がいればよろしくご教授おねがいします!
008480
垢版 |
2017/11/08(水) 01:49:27.67ID:iwCN65TD
なるほど、単に識別のためであって特殊な動作をするわけでわないんですね。
ありがとうございました
0085名前は開発中のものです。
垢版 |
2017/11/08(水) 10:06:12.53ID:+igZYqm+
2dアクションゲーってどうやって作るの
0086名前は開発中のものです。
垢版 |
2017/11/08(水) 11:42:50.54ID:zURBqnNu
>>85
キャラクターとアニメーションと当たり判定つくれば終わりやろ。そっからの追加要素は自分次第
0087名前は開発中のものです。
垢版 |
2017/11/08(水) 14:36:36.84ID:pf+U8Cjh
ListやDictionaryに入っている変数や値を一つずつ取り出して
それを変数に代入することって出来ますか?
列挙させるのはできたのですが、それを一つずつ取り出す方法がわかりません
0088名前は開発中のものです。
垢版 |
2017/11/08(水) 14:40:48.95ID:pf+U8Cjh
少し説明不足でした。

キー等を単一のどれかに直接指定ではなく、
ListやDicitionaryに入っている全てに対してそれを実行したい場合です
全てのキーを一つずつ取得していく感じの動きをさせたいです
ListやDictionaryの中身は常に静的ではなく動的に変化するものです
0090名前は開発中のものです。
垢版 |
2017/11/08(水) 15:54:36.69ID:pf+U8Cjh
それだと一つの変数に中身全部持ってきちゃいませんか?列挙っていうんでしたっけ
もしくはやり方によってはそこからどうにかできるんでしょうか
0094名前は開発中のものです。
垢版 |
2017/11/08(水) 20:56:29.88ID:WtvzHkAw
以前はそういうのできたが、今はvitaでソフト出すならplayismとか他のメーカーに売り込むしかない
0096名前は開発中のものです。
垢版 |
2017/11/08(水) 23:25:29.83ID:e4o6nYJV
web上で基本料無料展開してガキから一発ねらおう
0097名前は開発中のものです。
垢版 |
2017/11/09(木) 00:03:50.69ID:HK4sbaQB
Rigidbody2dでMovePositionを使うと重力値が初期化されるのは仕様?3DのMovePositionと動きが違うみたいなんだけど
0100名前は開発中のものです。
垢版 |
2017/11/09(木) 02:06:23.57ID:sMIx9psX
Unity MultiPlayerを使ったサーバを自分で建てようと思ってるんだけどさ
その場合ってCCUの制限なんて受けるもんなの?
https://twitter.com/hecomi/status/631389984130371584
受けないんだとばっか思ってつくってたけど、このツイートの意味してるところがよくわからなくてこのままで良いのか考えちゃってる・・・・
0101名前は開発中のものです。
垢版 |
2017/11/09(木) 02:30:06.74ID:D6KzAx7x
>>100
こういうのは基本馬鹿しか呟かないのでツイート内容自体が間違っている可能性が高い
つまりCCU制限を受けているつもりになっているが実際はそうではない可能性が高い
0102名前は開発中のものです。
垢版 |
2017/11/09(木) 05:59:56.06ID:ZQ+J4LBL
VideoPlayerのisPreparedって何をしてるかわかる?
Whether the VideoPlayer has successfully prepared the content to be played. (Read Only)
って書いてあるんだがそもそもprepared ってないをつくるんだ?
0103名前は開発中のものです。
垢版 |
2017/11/09(木) 06:27:41.67ID:ZQ+J4LBL
てかさ↓みたいな知識ってどこで手に入れるんだ?
https://www.youtube.com/watch?v=ffJoBfj41GU
海外はこういうの体系化されてるの?いちいち関数とかプロパティの意味調べなあかんし
しかも、リファレンスに書いてある説明画意味不明な時とかもうお手上げなんだが・・・
0104名前は開発中のものです。
垢版 |
2017/11/09(木) 06:38:39.52ID:muw0RtC7
>>100
Unity MultiplayerってPhotonみたいなレンタルサーバのことじゃないの?
UNETはサーバというか通信用のAPI群で、この人はUNETでサーバ作って、Unity Multiplayerで繋げてるってことだと思う
俺の解釈も間違ってるかもしれない。UNETで調べるとUnity Multiplayerが出てくるから混乱する

>>102
Google翻訳
元)Whether the VideoPlayer has successfully prepared the content to be played. (Read Only)
翻訳)VideoPlayerが再生するコンテンツを正常に準備したかどうか。 (読み取り専用)
0105名前は開発中のものです。
垢版 |
2017/11/09(木) 06:50:00.27ID:muw0RtC7
>>103
分からないところから順番にリファレンス読んでいくしかない
試してみないと分からないこともある(イベント関数の実行タイミングとか)
0106名前は開発中のものです。
垢版 |
2017/11/09(木) 10:57:27.19ID:hXX+Utz5
質問なんですが、Unityでメッセージボックスを生成する際、
EditorUtility.DisplayDialog("Title","Message","Ok","Cancel");のボタン2つ表示以外に
もっと多くのボタンを表示する方法ってないでしょうか?
0109名前は開発中のものです。
垢版 |
2017/11/09(木) 19:14:57.82ID:c7YNl7Y6
>>106
三つまでならいける。あとUnityEditorのものだからPlayerでは出ないので、プラットフォーム別に実装しないといかんよ。
Android/iOS兼用のアセットはフリーでもある。デスクトップは知らん
0110名前は開発中のものです。
垢版 |
2017/11/09(木) 19:15:10.51ID:JBBolEXz
特定のタグがついたオブジェクトだけ透けて見えるようにするなんてことはできますか?
赤外線カメラみたいのを実装したいのですが……
0111名前は開発中のものです。
垢版 |
2017/11/09(木) 19:20:46.35ID:JBBolEXz
110です。
オブジェクトを最前面に表示&プレイヤーキャラのマテリアルには表示しない(透過しない)とすればいいのは分かるのですが、c#のサンプルコードが探しても見つからなくて困っています。
どなたかアドバイスをお願いできませんか。
0114名無し@キムチ
垢版 |
2017/11/09(木) 21:02:27.60ID:8qHXX8+D
>>106
EditorUtility.DisplayDialogはエディタ上でしか動作しないんじゃありませんか?
ランタイムで動作しないものは意味がないでしょう・・・www
011580
垢版 |
2017/11/09(木) 23:37:27.33ID:m6VCmH2f
質問です。emptyにスクリプトをアタッチしてシーンに置くのはどういう意味があるのですか?シーンに置いてないとスクリプトは動かないのでしょうか?
0118名前は開発中のものです。
垢版 |
2017/11/10(金) 03:06:24.31ID:wGQz5hyB
void DisplayMessage(string mes) {
 buttonMessage.SetActive (true) ;
 buttonMessageText.GetComponent<Text> ().text = mes ;
}

ボタンクリックした時にメッセージウインドウが出てメッセージ表示されるはずが何も反応なくてどこがおかしいのか調べてて
上のはボタンをクリックした時に文字を表示させるメソッドなのだけど、3行目何してるのかが本見ても書いてないんだけど
特に<Text> ().text のあたりなにしてるのかよくわからないんだけど何をしてるのでしょうか
0119名前は開発中のものです。
垢版 |
2017/11/10(金) 03:23:21.86ID:7jpmMs9p
>>118
オブジェクトからUGUIのTextコンポーネントを取得して
そのテキストの内容を指定の文字列に変えてる

Unityのスクリプトリファレンスを読めるようになった方が良いよ
その辺の質問に対する答えはここで聞くよりも丁寧で分かりやすいから
0121名前は開発中のものです。
垢版 |
2017/11/10(金) 07:14:57.50ID:eejeFDKO
リファレンス読めないってそれ説明書よめないとか辞書読めないのレベルだぞ
0122名前は開発中のものです。
垢版 |
2017/11/10(金) 07:40:29.30ID:TrUleiQ2
言語仕様がわかってないんだから
文法知らずに辞書は読みにくいってことでしょ
読んでりゃ結構良い教材にはなると思うけどね
0123名前は開発中のものです。
垢版 |
2017/11/10(金) 10:34:28.08ID:maK+s07d
しょしんしゃではリファは20%も詠めりゃいいとこ。
サンプルのあるところだけしかわからんよ。
それよりチュートやれや。
0125名前は開発中のものです。
垢版 |
2017/11/10(金) 11:25:16.08ID:maK+s07d
若い人はチュート見るのかな。
40過ぎとかは、学校の教科書宜しくマニュアル見たがるような気がする、私見ね。
初心者はチュートリアル見た方が早いよ。
0129名前は開発中のものです。
垢版 |
2017/11/10(金) 16:34:05.54ID:6g466dVt
>>127
?何を意味不明な事を言ってるんだお前は?
授業とただの話の違いも理解できない無能に用はない
もっと賢くなりたければ授業料を払い講義を受ける事を検討するといい
0130名前は開発中のものです。
垢版 |
2017/11/10(金) 17:11:09.17ID:7aAAc2QZ
どの程度のことができるか実力みせてもらわねぇと授業料は払えねぇわな
今まで携わったアプリか個人でリリースしたアプリみせてよ

晒すの無理なら習作またはフルスクラッチで作ったコードの一部でもいいよ
ただその場合中途半端なやつだったら失笑ものだけどね
それで講師できる技術力あるのか判断するわ
0131名無し@キムチ
垢版 |
2017/11/10(金) 21:29:15.33ID:YFKkxNMp
Unityのチュートリアルは書いてあり方が難しいですね。
MSDNなら当方も読んで理解できるけど、Unityのチュートリアルになるとさっぱりお手上げです。
読み手に親切な書いてあり方ではないです!!
0133名前は開発中のものです。
垢版 |
2017/11/10(金) 22:59:02.36ID:OMPOUAJr
126と127のやり取りで久しぶりに笑ったわ
0134名前は開発中のものです。
垢版 |
2017/11/11(土) 00:29:17.81ID:aQj9kB1x
>>130
俺の講義はチュートリアルをまともに出来ない初心者向けだ。

では講義を始める。

まずは下のプログラムを入力し実行してみましょう。

Debug.Log("Hello world");
0138名前は開発中のものです。
垢版 |
2017/11/11(土) 06:51:49.81ID:ny5xGeU+
最近はUnityの公式認定なんたらとかいう講座も出てきたよね
どのくらいのものなんだろ
0139名前は開発中のものです。
垢版 |
2017/11/11(土) 18:00:59.99ID:4giR4aEL
設置したボタンをクリックしても何も反応しないのですが
InspectorのOnClickにもちゃんと登録してあるし、スクリプトのメソッドも間違ってないのですがどういった理由が考えられるでしょうか
0141名前は開発中のものです。
垢版 |
2017/11/11(土) 19:29:54.06ID:ug034eOE
>>139
ボタンが反応しないの?
とりあえずOnClickメソッドの最初にDebug.Logで押されたか表示させてみれば?
Logが出力されてるならメソッドは呼ばれてるし特定楽になるんじゃない?
私も初心者だから確実なことは言えないけど…。


それとは別に私も質問なのですが、

アイテムを300個くらい一覧表示させるとして、1つのアイテムの情報量は変数30個程度(中身は1〜2桁のint)
@ インスタンス生成時にデータベースから一括で読み込んでそれぞれのオブジェクトの変数にデータ格納させて持たせておく
A インスタンス生成時にデータベースから読み込むのは識別できる名前だけで、アイテムが実際に選択された時にそのアイテムデータをデータベースから個別に参照する
どちらが処理として良いんでしょうか
スマホで動作させる予定なのですが
0144名無し@キムチ
垢版 |
2017/11/11(土) 19:59:48.89ID:zkHvuMqn
>>135
MSDNは戻り値や()の中のパラメータがちゃんと書いてあるけど、unityのチュートリアルは戻り値は書いてないし、パラメータの説明もなく、あまけにVariablesって()の中のパラメータのことなのか、何なのか意味不明でさっぱりわからん…ww
すこぶる読み手に不親切!!!
0145名無し@キムチ
垢版 |
2017/11/11(土) 20:04:46.85ID:zkHvuMqn
Unityのメソッドの説明も、メソッドの型、戻り値、パラメータ、それがどのdllというかUsingに属するのか、親切に全部書いて欲しいw
0146名前は開発中のものです。
垢版 |
2017/11/11(土) 20:06:50.96ID:ug034eOE
>>142
そこで呼び出されないならボタンとスクリプトがちゃんと紐づけされてないか、
Debug.Logの書き方が間違ってるかだと思う

public void OnClick(){
Debug.Log("押されたよ");
}

@ ボタンオブジェクトにスクリプトがアタッチされてるか(addでも直接ドラッグ&ドロップでも)
A ボタンオブジェクトのインスペクター上でButtonスクリプトOnClick()で+押して@でアタッチしたスクリプトを選択しそのスクリプト内のOnClickを設定しているか
B ちゃんと自身が押された時と指定しているか(ボタンオブジェクトのインスペクターのOnClick()+でRuntime Onlyの下のとこ)

Bが怪しいっぽいけど
0147名無し@キムチ
垢版 |
2017/11/11(土) 20:21:21.31ID:zkHvuMqn
>>142
当方もUnityの初心者ですが、ボタンが反応しなかったことはないですねえ…
インスペクターのOnClickの下の欄がOffになってるとかないですか?Editor And Runtimeになっていますか?
さらにその下がNoneになったりしていませんか?ちゃんと作成したボタンを選択してますか?
その右側の欄には適用したいメソッドを選択していますか?
また同じようにTargetGraphicも作成したボタンを選択していますか?
AddComponentにはそのメソッドが含まれるスクリプトを追加しましたか?

以上ですべてと思うので、これでメソッドが呼び出されていないなら、Unityを一度閉じて再起動する以外に、方法がないと思いますが・・・www
0148名前は開発中のものです。
垢版 |
2017/11/11(土) 20:25:16.98ID:ug034eOE
もしくは走らせてからシーンビューの方でクリックしてるとか?
ゲームビューの方でクリックしないとダメだよ
0150名前は開発中のものです。
垢版 |
2017/11/11(土) 22:35:07.26ID:H/D59FDR
作成したアプリ上でスマホのカメラを起動して映像を撮影・保存したいのですが,良い方法はないでしょうか?
写真を撮る方法として出てくるWebCamTextureを使ってカメラの画面を表示,映像をキャプチャする方法は試してみましたが,フレームレートが低く実用的ではありませんでした.
普通にスマホ標準のアプリでビデオ撮影する程度の質で,Unityで制作したアプリ上で動画を撮れる方法があればご教示いただければ幸いです.
0151名前は開発中のものです。
垢版 |
2017/11/11(土) 23:15:32.40ID:9+y2dmFv
>>144
わかりみ
0152名前は開発中のものです。
垢版 |
2017/11/11(土) 23:28:00.84ID:4giR4aEL
>>146-148
d。
キャンバス二つ作ってて、片方のキャンバスの子に設置してあるボタンは反応するんだけどもう片方のキャンバスに設置してあるボタンは無反応なのでこの辺も何か問題あるのかもしれない
まあたぶんつまらないミスなんだろうとは思うけどもうちょっと調べてみる。
0153名前は開発中のものです。
垢版 |
2017/11/12(日) 00:18:47.20ID:gvQOIy/S
>>152
その二つのボタンのコンポーネントの内容が同じなら
ボタンの上に当たり判定阻害するオブジェクトが有るかやレイヤーが違うなどのボタン以外の要因だろう
0154名前は開発中のものです。
垢版 |
2017/11/12(日) 10:14:17.52ID:wbTTHUAY
>>153
そのケース結構多いからUIコンポーネント周りはデフォでRaycastTargetがoffになる拡張してるな
なんであれデフォがonなんだ
0155名前は開発中のものです。
垢版 |
2017/11/12(日) 14:24:54.01ID:WF/WtEnp
シャドウについての質問なのですが、Standerdマテリアルで言うところのFadeで透明度を設定したマテリアルにリアルタイムシャドウを落とす方法はありますでしょうか?
CutOutでアルファテストを使って透明度を設定したマテリアルには普通に影が落ちるのですが、髪の毛に使うマテリアルなのでクッキリとした輪郭ではなく綺麗にフェードさせたいのでFadeで透明度を設定してそれに影を落としたいのです…
0156名前は開発中のものです。
垢版 |
2017/11/12(日) 16:06:18.86ID:qHbgAi8n
設定を画面から弄れるようにWindows的なフローティングウィンドウをスクリプトから生成したいと思っているのですが良い方法はないでしょうか?
0161名無し@キムチ
垢版 |
2017/11/12(日) 19:55:54.22ID:eloNIUrP
>>152
もうひとつ考えられる原因はボタンの左側に別のボタンとかトグルとか何かオブジェクトをつくっていて、そのオブジェクトのrect幅がボタンの上まできてかぶったりしていない?
そうすると反応するのは左側のオブジェクトなので、そのRect幅を短くすると解決する。
0162名前は開発中のものです。
垢版 |
2017/11/12(日) 20:04:01.46ID:WF/WtEnp
>>158
今現在のところAmplify Shader Editorの吐き出したシェーダをシェーダリファレンスを見ながら色々と改造して試行錯誤しているのですが苦戦中です…
ようやく影を落とせるようにはなったのですが今度はそのシェーダーを適用すると背景が透けてしまうようになってしまいました。
Queueの順番やFallbackをいじって見ても改善せず困っています。
0164名前は開発中のものです。
垢版 |
2017/11/12(日) 22:25:59.77ID:vUHfAujt
>>157
まずはスクリーンショットを撮影、Texture2D.ReadPixelsでスクリーンの状態をテクスチャに取り出す
この取り出しは、全ての描画が完了した後に行う必要があるのでコルーチンで使ってyield return new WaitForEndOfFrame() の後に処理するか、OnPostRender 内で行うこと

https://docs.unity3d.com/ScriptReference/Texture2D.ReadPixels.html

次にUnityEngine.UI.RAWImage等を使って画面に表示させるなど好きに表示すればいいが
Texture2Dからスプライトとして切り出して使う場合にはSprite.Createを使う

https://docs.unity3d.com/ScriptReference/Sprite.Create.html

スクリーンショットはそれなりに大きなデータなのでメモリ上に大量に保持するとプラットフォームやデバイスによっては簡単にメモリ不足に陥るので注意が必要
0165名前は開発中のものです。
垢版 |
2017/11/13(月) 02:48:21.14ID:oKdIb8XA
GooglePlayでゲームを公開してみようと思うんだけどさあ
ゲーム作成とかしてない普通の人って、Personalでつくった際の起動時のスプラッシュって気になるもんなのかな?
せっかく作ったんだから4万円払って消すべきか、それとも誰もダウンロードしないものに金払うのは無駄か・・・・
0166名前は開発中のものです。
垢版 |
2017/11/13(月) 03:22:35.75ID:sBzp45E3
>>155
そういうのは既存のゲームでどうやってるかとかを参考にするといいよ、
フェードする影とか使わず、前髪の影とかは落とさないか、アニメ調の三角形の前髪とかにしているのが判るはず
0168名前は開発中のものです。
垢版 |
2017/11/13(月) 13:49:26.59ID:6N/7ATcP
前回のプチ講義好評につき第二弾
前回の「Debug.Log("Hello world");」の中身を変えてみよう

int a;
a = 3;
Debug.Log( a );

初心者諸君は「a」と表示されると思うかもしれないが「3」と表示される
これは
『"a"という変数の中には"数字の3"が入っていて、Debug.Logでは中身を表示している』からである。
"int a;"というのが変数である。
変数名は必ず"a"にする必要はない。好きな名前を付けて良い


int hoge;
hoge = 3;
Debug.Log( hoge );

「"」←これを"ダブルクオーテーション"と言うが、これで括ると変数として扱われなくなり、ただの文字列として扱われるので注意だ

int hoge;
hoge = 3;
Debug.Log("hoge"); // 3ではなく「hoge」と表示されるようになる

尚、変数は宣言と同時に初期化を行う事もできる

int hoge = 3;
Debug.Log( hoge ); // 3と表示されるようになる

他の例
int a = 1, b = 3, c = 5; // ←同時に複数宣言と初期化が行える
Debug.Log( "aの中身は?=" + a ); // 「+」記号で文字列と変数の結合が可能。「aの中身は?=1」と表示される
0171名前は開発中のものです。
垢版 |
2017/11/13(月) 15:01:54.42ID:2vw+johl
>>166
すみません、言葉足らずだったようです
>>155で言いたかったのは髪の影は普通に出ていて、髪「への」影が落ちなくて困っているという状態だったのです
でもいずれにせよ既存ゲームを参考にしてみるというのは確かにもっともなことだと思うのでちょっと色々とUnity製のゲームを探してみようと思います
アドバイス本当にありがとうございます
0172名前は開発中のものです。
垢版 |
2017/11/13(月) 15:08:07.71ID:5H1SgP2a
uGUIのボタンを、ジョイパッドの入力にアサインするにはどうしたらよいのでしょうか?
ジョイパッドでも画面上をクリックでも操作できるようにしたいです
0173名前は開発中のものです。
垢版 |
2017/11/13(月) 15:25:38.84ID:yZSpynQt
ジョイパッドで操作するにはStandaloneInputModuleが必要で、これは大抵canvasを生成されたときに一緒に生成されるevent systemにくっついてる。
あとはsetslectとかselectableとか、select()とかで初期に選択状態にするボタンを決めればいいんじゃなかったっけ。
iPhone勢だからうろ覚えだわ。
調べればすぐにでてくると思う。
0174名前は開発中のものです。
垢版 |
2017/11/13(月) 19:51:24.69ID:UpB0J/AA
>>168
UnityじゃなくてC#の説明やん
全然好評じゃないのに長々書くということは今後も自己満で続けていくつもりだろうけど
スレチかつ長すぎて邪魔だからコテハン付けてやってくれる?NGにしやすいから
0176名前は開発中のものです。
垢版 |
2017/11/13(月) 20:00:54.35ID:UpB0J/AA
>>175
これがずっと続いていくなら邪魔だろ
質問でも回答でもなく押し付け
ブログでやるかコテハン付けてNGしやすくしろってだけの話
0177名前は開発中のものです。
垢版 |
2017/11/13(月) 21:32:39.58ID:jrTXPUPM
>>173
わかりにくくてすみません
ジョイパッドによる入力はできてます
uGUIの画面上のボタンを押す→ジョイパッドのボタン押された時と同じ動作
みたいなことがやりたいんです
0178名前は開発中のものです。
垢版 |
2017/11/13(月) 22:31:53.77ID:VnyF7cK1
あーなるほど。
うーん……ジョイパッド入力した時と同じ動作をいちいち割り当てるのもめんどくさいしなぁ。
すまん、スムーズなのは思いつかん。



if文でボタンの入力判定やってるのなら || ←こいつでできなかったっけ?

if (UGUIの特定のボタンが押された時 || ジョイパッドの特定のボタンが押された時)

または、みたいな意味だったと思う。&&だったら「〜かつ」になるからだめだな。
書き変えるのが面倒だけどこれでいけると思う。違ってたらすまん。

なんせintにしか割り当てたことない初心者だから……
俺も試してみるわ。
0179名前は開発中のものです。
垢版 |
2017/11/13(月) 23:11:19.79ID:CXtuY5Dr
upPushFlagとか用意して、女医パッドの上で1、キーの上で1にするのでいかんの?
りりーすはその逆。
0181名前は開発中のものです。
垢版 |
2017/11/14(火) 00:00:56.41ID:zvCZYltE
 
    /::::i::::、:::ヽ、:::::\:ヽ:\::::::ヽ:::、::ヽ::、:',
    /::i|::l::ト、ヽ::、:::ヽ:、::::::\::ヽ::::l::::ヽ::i:::i:::!
   /:/:!:::!:|::ヽ:\ヽ::::、:\::::ヽ:::ヽ!::::::i::|:::!::!
   !ハ::|::::i::l:|心、:ヽ::\:ヽ_\、\:::ヽ:::|!::|:|i
    i、:!:|:、N{、ヒjヽゝ\ヾイ ヒj >、ヽi:、|!:|:l
     ヽ:!::トヽ ̄ l! `  ` ̄´ |::l::|:|j:,!:!
      ト、::! u         j |::/lj:::!リ
        ヾ、  丶 -    u リイ:|リ      どこがエロいのか分からない……
        リヽ ‐、ー- 、_   /イ:::i
       rー'"ト:l゙、   ̄   ./  , |::!
      / ヘ ヾ ヽ、 _,. '   / |:'
0183名前は開発中のものです。
垢版 |
2017/11/14(火) 18:22:31.22ID:+ISdofyE
>>174
やだねったら、やだねー
君が自分の2chID書いた紙を頭頂部に貼り付けた状態で
全裸で土下座した画像をここにアップしてから
初めてお願いできる立場になるんだぜ
0185名前は開発中のものです。
垢版 |
2017/11/14(火) 20:30:55.37ID:Q4iuhLPN
プロジェクト削除したいのだけど、Windowsの場合、ドキュメント内に作られてるフォルダを消せば良いだけなのでしょうか
0186名前は開発中のものです。
垢版 |
2017/11/14(火) 20:31:40.75ID:2ELEHed2
初心者に毛が生えた程度の知識を空気も読まず書き込めるんだから
羞恥心もないんじゃない
一番幸せな生き物かもね
0188名前は開発中のものです。
垢版 |
2017/11/14(火) 20:45:49.92ID:Q4iuhLPN
>>187
削除してから同じプロジェクト名でまた新たにプロジェクトを作ったらServicesタブで

プロジェクト名(1)
SERVICES

という風に重複扱いになっててるみたいでなんか気持ち悪いんだけど影響はないのでしょうか
0189名前は開発中のものです。
垢版 |
2017/11/14(火) 21:15:43.79ID:2ELEHed2
>>188
あぁローカルだけじゃなくServicesをONにしたのね
文章だと分かりにくいから他人様のだけど参考リンク貼るわ
https://qiita.com/NIGHTNOISE/items/7f869059a6b17c585a2e

上の手順でクラウド側を削除しても同じ事象が出ちゃうならまた聞いて

余談だけど習作とかは新規プロジェクト作る時に「Enable Unity Analytics」をOFFにした方が、
クラウド側に余計なプロジェクト作られないからオススメ
あとから必要になってもServicesタブからONにすればいいだけだから
0192名前は開発中のものです。
垢版 |
2017/11/14(火) 22:11:51.95ID:VkkwRkXO
ターン制rpgを作っているのですが、ダメージ処理はともかく、アニメーション開始のタイミングやスライダーが減るタイミングの調整がうまくいきません。
調べたところ、時間や、他のアニメーションの終了判定は使わない方がいいということがわかりました。

どうやってタイミングを合わせればいいのでしょうか。
コードの例も書いてくれると嬉しいです。

c#スクリプトでお願いします。
0193名前は開発中のものです。
垢版 |
2017/11/14(火) 22:12:30.02ID:Q4iuhLPN
もう一つお願いします
インポートした画像をクリックした時にインスペクター欄の
SpriteEditorのボタンとFilter Modeの間に、Generate Mip Mapsという項目が本によると有るはずで、それで、そのチェックを外せと本には書いてあるんだけど、
自分のUnity上はその項目自体が表示されてないんだけどどうすればいいのでしょうか。
自分が今使っているのは2017.2.0f3 Personal(64bit)というバージョンです。
0194名前は開発中のものです。
垢版 |
2017/11/14(火) 22:46:23.21ID:Q2hIczJi
いまclothでメッシュのプチプチに色を塗っているのですが、まとめて多量に塗る方法があったら教えてください。
ひとつひとつ塗っていては効率悪すぎです!!
よろしくお願いします!!!!!!!!!!
0196名前は開発中のものです。
垢版 |
2017/11/15(水) 03:23:39.65ID:jz7wm5oh
自分らが早く質問に答えられるレベルになって次の初心者支えてかないとバカが集まるだけでで質問スレの機能が崩壊するぞ
質問1つしたら自分の分かる質問1つ答えるくらいしろ
0198名前は開発中のものです。
垢版 |
2017/11/15(水) 16:39:21.38ID:wqAXnxvj
バカチョンに占拠されて久しいからな
延々と一人で自演してるだけでもはやまともに質問するような人はいない
0199名前は開発中のものです。
垢版 |
2017/11/15(水) 18:58:28.84ID:ufxCt1cl
>>193
その本のUnityのバージョンは?
バージョンが違えば設定画面も違う場合が出てくるので
無いなら仕方ない

自分のUnityと同じバージョンの説明文を探すか、
本のバージョンと同じUnityをインストールしなさい

ちなみにGenerate Mip Mapsは、そのキャラがカメラから離れて小さい場合に
表示する縮小画像を作るかどうかの設定
ONならバイナリサイズが増える
0200名前は開発中のものです。
垢版 |
2017/11/15(水) 19:00:07.20ID:ufxCt1cl
>>190
AnaliticsをOFFにしてアプリ運用してたが、
ある日、ONしたら過去の統計データも表示されてる

OFFでもデータは勝手にUnityが保存してるみたいだぞ
0201名無し@キムチ
垢版 |
2017/11/15(水) 19:33:01.31ID:TcH6UF9o
いまclothでメッシュのプチプチに色を塗っているのですが、まとめて多量に塗る方法があったら教えてください。
ひとつひとつ塗っていては効率悪すぎです!!
教えてぇぇぇえええええ〜〜〜〜〜〜〜〜っ!!!!!
0202名前は開発中のものです。
垢版 |
2017/11/15(水) 23:30:19.28ID:RUML7J1B
>>199
本のはUnity5.4.0f3
自分はUnity2017.2.0f3

自分の方が新しいみたいだけど結構違うのかなー
5.Xとか言う奴に入れ直そうかな・・・
0203名前は開発中のものです。
垢版 |
2017/11/15(水) 23:32:47.79ID:RUML7J1B
いやよく見たら本の使ってるVerの方が日付的には4日くらい新しいのかな
2017〜てのと5〜ってのはどっちで覚えたら良いのだろう
0205名前は開発中のものです。
垢版 |
2017/11/16(木) 00:24:44.85ID:uVwIHo6w
unity2017にvisualstudio2015のツールを入れてもassetに出てこないんだけどサポート外?
0207名前は開発中のものです。
垢版 |
2017/11/16(木) 11:50:04.58ID:p+QCRCHX
質問なんですが、Unityでデータ保存をするのにtxt保存を使いたいと思ってるんですが
参考になるサイトってないでしょうか?
0208名前は開発中のものです。
垢版 |
2017/11/16(木) 12:02:10.71ID:SWVdKBMN
その質問を書き込むくらいならGoogleで『Unity テキスト 保存』で検索しろよ
最初から他人に聞こうという発想は捨てろまじで
まずはググろうという意識に変えろ
0209名前は開発中のものです。
垢版 |
2017/11/16(木) 12:05:16.27ID:zvDvDSya
分からないことはすぐ聞くのが正解。聞ける環境があるというのは大事。そのためにこのスレがある。
0210名前は開発中のものです。
垢版 |
2017/11/16(木) 12:09:29.61ID:CTCxMZ9O
>>208
いいじゃねぇか、カキコできるとこあるんだから。

まぁ、ググった方が早いと思えるようになるまでだ。
0211名前は開発中のものです。
垢版 |
2017/11/16(木) 12:09:32.72ID:2vqQnq0m
初心者です。
c♯やclassが苦手でまだよく分かってないですが、アプリを作りたいと思ってます。

シナリオゲームのような、選択肢で分岐するゲームを作成したいのですが、データベースは何で作るのがベストだと思いますか?

jsonを検討していましたが
読み書きについて、いまいち良く分かりません。

分かりやすいサイトがあれば教えていただけないでしょうか。

よろしくお願いします。
0212名前は開発中のものです。
垢版 |
2017/11/16(木) 12:13:42.84ID:2vqQnq0m
>>211
unity json 読み書きで検索し
検索結果3ページ分見回した上での質問です。
0213名前は開発中のものです。
垢版 |
2017/11/16(木) 12:36:52.04ID:SWVdKBMN
>>209
何が「すぐ聞くのが正解」だよ。新人教育の常套句言いたいだけだろ
百歩譲るとして、俺はそのすぐに聞いてきた質問があまりにも甘えた内容だから
「まずは自分で調べることが大事」ということを回答にして教育したまで

で、お前は>>207の質問に答えてやらないの?
代わりにググって選定してやれば?
当然先輩ヅラしたからにはその内容も懇切丁寧に教えてやるんだよな?
0217名前は開発中のものです。
垢版 |
2017/11/16(木) 14:46:56.00ID:zvDvDSya
ここで君がスパッと答えれば様になるのに。
カンガルーのAAのアレになってしまうね。
0222名前は開発中のものです。
垢版 |
2017/11/16(木) 14:56:36.83ID:zvDvDSya
ボロが出ないようにしてるんだろうけど
回答に応える体をなすならもう少し明確にしないと。
0226名前は開発中のものです。
垢版 |
2017/11/16(木) 15:00:52.68ID:s0NLk0FT
無能「分からないことはすぐ聞くのが正解(キリッ」
無能「そのためにこのスレがある(ドヤッ」

207「あのー、回答は?」
無能:「わかりません」

コントかよwww
0227名前は開発中のものです。
垢版 |
2017/11/16(木) 15:02:30.48ID:zvDvDSya
>>226
ではあなたは分かるのですか?
煽りしかしていないようですがキッチリかっこよい回答を見せて頂ければ良いと思いますよ。
0233名無し@キムチ
垢版 |
2017/11/16(木) 18:12:02.69ID:DjUrdDux
メッシュのプチプチをまとめてたくさん着色する方法教えて!!!
教えてったら、教えて!!教えてったら、教えて!!教えてったら、教えて!!
0235名前は開発中のものです。
垢版 |
2017/11/16(木) 19:00:23.55ID:BFOiMq4u
ブラウザにもよりますが何度か書き込むとIDが赤くなるようですよ。
ただそれだけのことがどうかしたのですか?
0236名前は開発中のものです。
垢版 |
2017/11/16(木) 19:01:23.53ID:SWVdKBMN
>>208の俺の回答がすべてなのにダラダラ続いてたんだな
>>214を書いた本人が回答もできず場を乱すだけでID真っ赤ってのが滑稽だわ

>>232
お前の言う「ググった方が早いと思えるようになるまで」は、207自身がググらないと経験として身につかないよね
「ググレカス」の5文字で済むところを、わざわざ検索ワードまで書いて最初の一回目を提供してやったのに
お前がググって貼ってるようじゃ台無し
スレが荒れてるのを鎮めようとしたんだろうし実際鎮まったけどさ

これ以上はさらに場を乱すから自己満の教育論を語るのはこれで終わりにするわ
0240名前は開発中のものです。
垢版 |
2017/11/16(木) 19:42:14.71ID:BFOiMq4u
散々レス返してくるなら答えてしまったほうが早いと思うんだけどねえ〜
そしたらたった1レスで質問者も回答者も気分よく終わるわけだし
0241名無し@キムチ
垢版 |
2017/11/16(木) 20:13:21.64ID:DjUrdDux
>>239
当方の質問がいない扱いされる理由がわかりました!!
メッシュのプチプチをまとめてたくさん着色する方法、誰も知らないのですね。
そしてその知らないことの裏には、「そんな方法ないんじゃないか?」という思いが半分くらいあるのですね。
だから「そんな方法はない」と答えたいのは山々だけど、もしあったら笑われるから、誰も怖くて書けないのですね?
0243名前は開発中のものです。
垢版 |
2017/11/16(木) 21:27:19.80ID:H3lUlT8/
アニメーション側がターンを管理してるシステム側のコンポネントを参照してそれに合わせてアニメーションを変化させればいいとおもいます
ダメージのアニメーションはダメージを与えるコンポネントにboolを設定してそれをアニメーション側が参照すればいいとおもいます

ターン管理 ←参照─アニメーション側
自分のHPとかのコンポネント ←参照─アニメーション側:減ったら再生とかする

これでいいですか
ちがったらごめんなさい
なにいってるかわかりにくいのでもっとここにいる馬鹿共にもわかりやすく書いてくれるとうれしいです
0244名前は開発中のものです。
垢版 |
2017/11/16(木) 21:35:06.11ID:rPRNhjw8
>>241
まとめて変更するならselectモードでドラッグしてまとめて点を選択してから数値入力で出来る
答えなかったのは、ちょっと触るか「unity cloth」でググるかマニュアル見るか、どれを選択しても5分でわかる事をわざわざ教えなくても自己解決するだろうと思っていたからだな

マニュアルの該当ページだけ貼っておく
https://docs.unity3d.com/jp/current/Manual/class-Cloth.html
0245名無し@キムチ
垢版 |
2017/11/16(木) 23:28:22.01ID:DjUrdDux
>>244
ありがとうございました!!
paintの左側についているまとめて選択した後、selectボタンを押してー印をチェック印に変えるのですね!!
これで一気に変わりました!!
これで一日がかりだった作業がものの5分足らずでできるようになりました!!!
チョーありがとうございました!!!!!!!!
それにしてもこれはものすごい技ですね!!!!
0247名無し@キムチ
垢版 |
2017/11/16(木) 23:33:43.66ID:DjUrdDux
あとキャラクターも服も同じ寸法で同じTポーズをとっているのに、長袖の場合キャラが動くと、手が服からはみ出るのですが、どこが間違っているのですか?
袖も真っ赤に塗って固定しているので、はみ出るのはおかしいと思うのですが・・・・
よろしくお願いします!!!!!!!!!
0248名前は開発中のものです。
垢版 |
2017/11/17(金) 00:23:11.91ID:vvmc0NPE
VISUALSTUDIOとか言うのをついインストールしたっぽいのだけど
使わないし邪魔なのでこれだけアンインストールしても支障はないでしょうか
0250名前は開発中のものです。
垢版 |
2017/11/17(金) 02:08:04.46ID:4JWi97sr
>>184
これを子供みたいなレスと思う事が子供そのものです
いいですか
教える側に必要なのは
教える方と同じレベルに落とす器用さも必要です
例えば保育士が物凄く偉そうだったらどう思いますか

>>186
答えはノー
ビジネスが絡んでいる以上最初から全てを見せるわけがありませーん
見えない部分、相手の考えをよく考えて見ましょう
0253名前は開発中のものです。
垢版 |
2017/11/17(金) 09:44:47.35ID:cCOo9+AM
回答乞食と回答もできないレベルのマウント馬鹿しかいないw
こりゃだめだ
コミュニティ崩壊一歩手前の面白くない奴が集まって面白くないことをやってる状態w
0256名前は開発中のものです。
垢版 |
2017/11/17(金) 11:23:57.49ID:jAW38BYb
>>255
調べてないと思いますか?って
>>232>>208のキーワードで1件目にヒットするやつじゃねぇかボケw
それをありがとうございますって調べてねぇ証拠じゃねぇかwww
ほんとしょうもない回答乞食ばっかだわ
0258名前は開発中のものです。
垢版 |
2017/11/17(金) 11:48:54.87ID:4JWi97sr
さてさて、いつまで経っても自分でググらず初心者のフリして質問スレに質問し続けるキムチ君とそれを注意する大人たちの言い合いより
大好評な初心者講義第三弾のお時間がやってまいりました

前回は「Debug.Log」を使った変数の中身と、おまけでダブルクオーテーション「"」についてチラ見せしました。

今回は「変数」について更に詳しく説明します。

「int a;」これが変数ですが「a」が好きなように名前をつけて良い変数本体で
「int」の部分が"変数の型"を表しています。
変数の型によって変数の中に入れられる物が決定されます。

"0〜9999"のような"数字"を扱う場合は「int」又は「byte」を使用します。
"0.0〜9999.9"のような"小数点(実数と言います)"を扱う場合は「float」を使用します。
"A"や"おはよう"のような文字や文字列を扱う場合は「string」を使用します。
"true"と"false"を扱う場合は「bool」を使用します。


int a = 5; byte c = 5; // 整数型の変数を作成
float d = 12.5f; // 小数型の変数を作成。小数の数字は「12.5f」のように最後に「f」を付けます。
string m = "おはよう"; // 文字列型の変数を作成。文字列はダブルクオーテーション「"」で囲みます。
bool f = false; // bool型の変数を作成。今後の講義で出てくる"if文"でよく使用します。ゲームのフラグ管理にもよく使われます。

尚、intやbyteで作成した整数型の変数に小数値や文字列といった他の値を入れる事は原則的にできずエラーとなります。

エラーになる例
int a = "おはよう"; // 整数型に文字は入れられません
string m = 5; // 同じように文字列型に整数は入れられません

"int"と"byte"の違いは表現できる桁数に違いがあります。
byteは"0 〜 255"までの数字しか扱えず256やマイナスの値(-1など)を入れようとするとエラーになります。
表現できる桁数が少ない分メモリー使用量を節約できます。
intは"-2,147,483,648 〜 2,147,483,647"までの数字を扱えます。
0259名前は開発中のものです。
垢版 |
2017/11/17(金) 12:06:00.54ID:4JWi97sr
今回出てきた変数の型以外にも様々な型が存在しています。

整数型…sbyte、byte、short、ushort、int、uint、long、ulong
文字型…char
文字列型…string
実数型(小数型)…float、double

[各整数型の違い]
主に表現できる桁数の違いとマイナス値を扱えるか否かの違いです
表現できる桁数が多いほどメモリーを多く使います
sbyte … -128 〜 127
byte … 0 〜 255
short … -32,768 〜 32,767
ushort … 0 〜 65,535
int … -2,147,483,648 〜 2,147,483,647
uint … 0 〜 4,294,967,295
long … -9,223,372,036,854,775,808 〜 9,223,372,036,854,775,807
ulong … 0 〜 18,446,744,073,709,551,615

[各文字・文字列型の違い]
char … "a"や"あ"など1文字しか扱えません。
使用する時はダブルクオーテーション「"」ではなくシングルクォーテーション「'」を使用します。

char a = 'あ'; //「char a = "あ";」とやるとエラーになります。
string … 1文字でも複数文字でも扱え万能ですがメモリーを多く使います。

[実数型の違い]
主に表現できる桁数の違いです。整数型に存在していた「uint」のような「u」シリーズは存在していません。
マイナスの値も扱えます。
float … 7桁(1234.567 or 1.234567 or 0.123456)
double … 15-16桁(1234.56789012345 or 1.23456789012345 or 0.12345678901234)
本日以上だクソども
0261名前は開発中のものです。
垢版 |
2017/11/17(金) 12:40:41.95ID:qninLRFu
無給でやってることだから批判はしないけど、スレチかな
だたせっかくだし、この講座が勉強になるわぁって人は
ネット上にはすでに同じような講座が無数に存在するから調べてみるといいかも

たとえば無料なら以下の記事がおすすめ
https://qiita.com/ShirakawaMaru/items/cb24a8b34c9e338d9bba

こちらは図解付きで、UnityにおけるC#の基礎部分が書かれてある
>>258の方では端折られてたスクリプトの新規作成方法も説明されてる
多分>>258の今後2、3回分先の内容まであるから、自分のペースで勉強できるよ


あと書籍できっちり学びたい人(でゲーム開発初心者)にはこちらがおすすめ
UnityではじめるC# 基礎編
https://www.amazon.co.jp/dp/B01MFAJOHO/ref=dp-kindle-redirect?_encoding=UTF8&;btkr=1

左の"なか見検索"を押せば、Chapter1とChapter2は無料でみられるよ
それだけでもUnityのインストールから、(>>168の内容とか含め)C#の変数やクラスの作成まではタダでみられる
こちらも図がついてるから文章だけの説明じゃわかりにくい、って人は買ってみるのも手かも
0262名前は開発中のものです。
垢版 |
2017/11/17(金) 13:11:40.00ID:qninLRFu
スレチだけど最後にもう一個だけ

>>258の講座は今のところUnityっていうよりC#の説明なんだけど
前述した2つはどちらかというとUnity寄りの説明でC#部分の説明は弱い印象
もし>>258と同じレベル(かそれ以上)のC#の勉強がしたいなら、以下のサイトがおすすめ
http://csharp.sevendays-study.com

>>258の今日の部分だけを抜き出すなら以下かな
http://csharp.sevendays-study.com/day2.html

こちらは(実際できるかは別として)一週間でC#の一通りの基礎知識を学べて
さらに練習問題まで付いてるからかなりおすすめ
最初から全部の解説が網羅されてるので知りたい部分だけ掻い摘んで見るのもいいかも
0265名前は開発中のものです。
垢版 |
2017/11/17(金) 18:50:50.96ID:Op94n5lu
>>247
点が赤くなっているイコールその点が移動する範囲が0という事だから、全て赤くしたら剛体と変わらないのでclothを使ってる意味がない
まずはclothの親となるボーン(胴)に対してその子となるボーン(腕)がどのように動くかを確認しする必要がある
可動範囲の中でその点が最も大きく移動する距離が確認出来たらそれを点に設定すればいい

なおclothの動きに干渉するためには、あらかじめコライダーをclothにセットしておく必要があるので注意
0266名無し@キムチ
垢版 |
2017/11/17(金) 20:28:52.29ID:e+fqoaj7
>>265
あっ、赤にすればその下の腕にピッタリくっつくので、腕の動きの合わせて動くと思ったのですが、全くなのですね!!!!!
黄色とか緑に設定して動くようにすればいいのですね!!
コライダーは考えたのですが、3つまでしかつけることができないと書いてあったので、左と右の上腕と下腕で4つ必要なので、その点も悩みの種であるわけです。
左と右の上腕と下腕のうち、どれかひとつ犠牲にするしかかいのでしょうか?
また検索してもノースリーブの着せ替え解説しか出てこなかったので、その点も深い悩みの種ではありますが・・・・
とりあえず、完全とは言えないまでも、少し解決しました。ありがとうございました!!!!!!!!!!
0270名無し@キムチ
垢版 |
2017/11/18(土) 21:56:08.12ID:YrXTF+ds
>>260
いや、このスレはコミュニティだとは思っていない。
比較的真面目な勉強&質問の場だと思っている。
一方コミュニティだと思っているのは、例えばこの板だな ↓

https://mevius.5ch.net/test/read.cgi/skate/1479583106/l50
0272名前は開発中のものです。
垢版 |
2017/11/19(日) 00:32:12.24ID:Ay7zipKR
Rigidbodyの角速度のangularVelocityって、
2Dだと度/秒だったのに、3Dだとrad/秒なのか・・・
気付くのに1時間くらいかかった

1秒間で1度回したはずが、57度も回るから、
3Dは度/フレームなのかと勘違いしたわ・・・

rad/秒だから、*180/PI=*57.3度なのね
0273名前は開発中のものです。
垢版 |
2017/11/19(日) 00:39:25.42ID:Ay7zipKR
angularVelocityの上限が7設定なのも、イチイチ外すのが面倒

衝突動作のない回転だったら、回転速度の上限あんまり関係ないのに

TorqueとinertiaTensorから、角加速度を求めるのに、
inertiaTensorの逆数成分のベクトルを生成するのが面倒くさい

Vector3.Scale演算(要素乗算)があるんだったら、その逆演算で、
要素除算を定義してくれていれば、逆数ベクトルを楽に計算できたのにな・・・
0274名前は開発中のものです。
垢版 |
2017/11/19(日) 12:01:15.04ID:4zggTKms
>>271
うるせえよキムチ野郎クニに帰んな
0277名前は開発中のものです。
垢版 |
2017/11/19(日) 18:56:01.72ID:wQaewhlY
https://qiita.com/kagigi/items/bdf4d42835add07b0077
DOTweenをふわっとまとめてみた

new Vecotr3(0f, 90f), // 終了時点のRotation


https://anz-note.tumblr.com/post/145405933481/unitydotween%E3%82%81%E3%83%BC%E3%82%82
[Unity]DOTweenめーも

new Vecotr3(0f, 270f), // 終了時点のRotation


どっちも同じ「Vector3」じゃなくて「Vecotr3」と間違ってますが、

コピペですか?
同一人物ですか?

質問なのでお答え下さい
0278名前は開発中のものです。
垢版 |
2017/11/19(日) 18:56:04.30ID:5TDsjIlH
どうせ1つも売れてねえんだろ
ニートで世間知らずで身の程知らずのオッサンガイジ
ダッセーセンスで、ジジババ受けしかしない雑魚
ガチ評価とリップサービスの区別付いてなさそうw
0279名前は開発中のものです。
垢版 |
2017/11/20(月) 00:20:11.23ID:MeDoKIYG
どうせ1人も友達いねえんだろ
ニートで世間知らずで不正ナマポ受給の身の程知らずのネトウヨオッサンガイジ
ダッセーネトウヨセンスで、脳内妄想受けで昇天するだけのネトウヨ雑魚
ガチ評価と痔眠サポ統括者リップサービスの区別を付けることすら、存命中に出来なさそうw
0282名前は開発中のものです。
垢版 |
2017/11/20(月) 00:34:40.36ID:IX6oP3n/
>>281
そんなわけあるか
unityでAndroidアプリ開発できないことになるわ
0284名前は開発中のものです。
垢版 |
2017/11/20(月) 01:11:08.51ID:MeDoKIYG
>>283
へえ、ネットは狭いんだね。
ま、ネットの藻くず未満のゴミウヨの正体とか、誰得?って感じだけど
いや、ネット集合知として「本田守=NG対象となるお下劣低能ネトウヨ」は保守していくべきか
0286名前は開発中のものです。
垢版 |
2017/11/20(月) 01:24:25.38ID:sJFJHM/J
このスレも高卒だらけになったな
0287名前は開発中のものです。
垢版 |
2017/11/20(月) 01:35:24.16ID:MeDoKIYG
ゴミが何を今更
「キムチ」とかいうレイシストと馴れ合いやってる時点で、幼稚園児未満じゃねえか
0291名前は開発中のものです。
垢版 |
2017/11/20(月) 12:38:40.83ID:MeDoKIYG
>>289
いやだから、俺UnityはPlayerみたいなの?しかやったことがないんだって
昔に本は買ってたような気がするんだがな・・・ちょっと押入れを探してみるか
0292名前は開発中のものです。
垢版 |
2017/11/20(月) 13:12:03.69ID:HFwgKDvF
>>261
心意気は買うしそういう誘導方法も1つの正解だが
俺の講義のターゲットは
"リンクを踏まない、自分でググらない初心者"

示されたURL先で自己学習できるくらいならばここにイージーな質問をしにこないし
そういう人物は黙々と先に進むので俺の講座に最初から見向きもしない

俺のターゲットはぐーたら連中
そこにビジネスチャンスが存在する
0293名前は開発中のものです。
垢版 |
2017/11/20(月) 13:20:15.61ID:HFwgKDvF
ということで一部の連中が暴れてることでこちらには好都合になっています。

大好評!俺様による身勝手な講義第4回目は「条件分岐ことIF文」です
プログラムは通常一番上から下へ向かって1行ずつ実行されていきますが
それでは毎回同じ結果しか得られません
ゲームでは"Aボタンを押したらジャンプ"や"Aボタンを押していない時はジャンプしない"というように
状況によって実行したい部分と実行したくない部分が発生します。
言いかえると
「その状態の時はA行のプログラミングを実行」
「別の状態の時はB行のプログラミングを実行」
という処理になります
これを実現するのが"if文"です

if文は以下のように記述します


if(条件式){
//結果
}

実際は下のようになります
if( 1 ){
Debug.Log("IF-OK");
}

上のif文は実行すると必ず"Debug.Log("IF-OK");"が実行されます。


if( 0 ){
Debug.Log("IF-OK");
}
このようにすると"Debug.Log("IF-OK");"が「実行されなくなります」
0294名前は開発中のものです。
垢版 |
2017/11/20(月) 13:33:04.82ID:HFwgKDvF
if文は条件式の結果が「0ならば不成立」「0以外(1以上)ならば成立」という性質があります。
条件式が"成立した時のみ"「{ }」で囲まれている部分のプログラムを実行してくれます。
先の例では「1」か「0」と固定値を入れていました。
このままでは何度実行しても同じ結果しか生まれません。
そこで条件式に変数を使う事で
「変数の中身が0じゃなくなったら、{ }の中身が実行される」という動きを実現できます


int a = 0;
if( a ){
Debug.Log("IF-OK"); // aの中身は0で初期かされているのでここは呼び出されない
}


int a = 1;
if( a ){
Debug.Log("IF-OK"); // aの中身は1で初期かされているのでここが呼び出される
}

上のプログラムですが、例えば「Aボタンが押されたらaに1を入れる」ようにすれば
Aボタンが押されたらキャラクターがジャンプしたり何かアクションをするといった
流れを組めることになります。
(実際のプログラム例は長くなるのでここでは省きます)
0295名前は開発中のものです。
垢版 |
2017/11/20(月) 13:33:26.71ID:SqkG47+z
ビジネスチャンスって1円の金にもなってなくて草
グータラ連中からいずれ金を取るん?どうやって?
グータラはリンク踏まないからここから有料サイトに誘導できないでしょ?w
0297名前は開発中のものです。
垢版 |
2017/11/20(月) 13:46:46.43ID:HFwgKDvF
尚、ここまでの例は実際に試してもエラーになるのでご注意を。

ここからは具体的な使い方になります。
1と0以外、例えばaの中身が2の時にIF文の「{ }」部分を実行したい場合は下のようになります


int a = 4;
if( a == 4 ){
Debug.Log("IF-OK"); // aの中身は4で初期かされているのでここが呼び出される
}

「==」で結ぶ事で左辺「a」と右辺「4」が"同じ時のみ"実行されるようになります
算数などでは「=」と1つでしたが、プログラムでは「==」と2つ繋げるのでご注意ください。
このように「if( 条件式 )」の"条件式"部分には色々な数学的条件が書けます
これにより柔軟な条件を指定できるわけです。

今度は逆に「aの中身が4以外だったら」実行させるIF文の式です


int a = 2;
if( a != 4 ){
Debug.Log("IF-OK"); // aの中身は4以外の2で初期かされているのでここが呼び出される
}
上の例はaの中身が4になると呼び出されなくなります

IF文の条件式に指定できる物は非常に沢山あります。
プログラミングの肝とも言えます。
次にいくつか例を羅列します。
0298名前は開発中のものです。
垢版 |
2017/11/20(月) 14:01:54.89ID:HFwgKDvF
●「aの中身が2以上だったら」実行させるIF文の例
int a = 2;
if( a >= 2 ){ Debug.Log("IF-OK"); }
// 条件が一致し"IF-OK"と表示されます
// 「a => 2」このようには書けませんので順番に注意

●「aの中身が2以下だったら」実行させるIF文の例
int a = 2;
if( a <= 2 ){ Debug.Log("IF-OK"); }
// 条件が一致し"IF-OK"と表示されます
// 「a =< 2」このようには書けませんので順番に注意

●「aの中身が2より上(2は含まれない。3以上)だったら」実行させるIF文の例
int a = 2;
if( a > 2 ){ Debug.Log("IF-OK"); }
// 条件が不一致し"IF-OK"と表示されません。「a = 3」にすると"IF-OK"と表示されます。

●「aの中身が2より下だったら(2は含まれない。1以下)」を実行させるIF文の例
int a = 2;
if( a < 2 ){ Debug.Log("IF-OK"); }
// 条件が不一致し"IF-OK"と表示されません。「a = 1」にすると"IF-OK"と表示されます。


他にも沢山ありますが
IF文がプログラミングを
IF文がゲームを制してるといっても過言ではないほど多いので今日はここまで
ここからしばらくIF分が続くぞ。わかったかクソども。
0303名前は開発中のものです。
垢版 |
2017/11/20(月) 14:50:44.93ID:HFwgKDvF
>>299
このペースだと相当先かな
知りたい事があるなら言え
気分が良ければノリノリで答えてやるぞ

>>301-302
例えば>>274-279>>281-290に大して「邪魔なだけ」と同じ事を言わずに
俺にだけ言ってくるのはとても気になっている証拠だと受け取っておく
これからも「身勝手に講義」続きますんで!よろしくお願いいたしまーす!
0305名前は開発中のものです。
垢版 |
2017/11/20(月) 16:12:19.73ID:7YVFhL9/
まあま、変数は勉強になったw
trueとか知ってても使わずにきたので、あーそうなのねーwで、ひょっとしたら今後は使うかもしれん、ありがとう。
0306名前は開発中のものです。
垢版 |
2017/11/20(月) 18:07:20.78ID:W5A8MKVp
底辺プログラマーがクソゲー作れるようになりました
まさにゲーム界の民主化、いや愚民化かw
0307211
垢版 |
2017/11/20(月) 19:04:25.68ID:9ppkQFb0
>>211
【Unity】そういえばUnityでJSONって簡単に触れるの?どうなの? 数分後「簡単なんですけどぉー!」 JsonUtilityすごいぜ!って話

上記サイトをとりあえず、コピペで試してみようと思います。
そしたら、JSONファイルでデータベースファイル(?)を作ったり
作成したデータを読ませる方法から、
ユーザーによって違うデータを読ませる方法まで
もう少し調べます…。1週間調べても良く分からなかった自分…。
0309名無し
垢版 |
2017/11/20(月) 19:31:20.23ID:Saf+sOs1
>>303
スクリプトで使う変数にはintが多いんですか?
当方intを使うのは、UIのときですね。コントロールが沢山あるとき、どのコントロールを選んだかを区別するのにintは便利でした。
当方がよく使うのはやはりfloatとvector3ですね。キャラをいろいろ移動回転拡大するのに使う頻度は多いです。
vector4についてはよくわかりません・・・enum型は自分がやりたいことに使えそうなひらめきを感じたので一応使ってはみたのですが、
ただ使ってみただけで、自分がやりたいことに使えるほどまだ上達していません。
0311名前は開発中のものです。
垢版 |
2017/11/20(月) 21:03:01.40ID:HFwgKDvF
>>309
3Dゲームの場合はint型はあまり使いません
「0.123」のように座標が実数(小数点)な性質上
float型とVector3構造体をよく使う認識であっています。
Vector3も実際は内部にfloat型の変数を3つもっているだけです。

2Dゲームの場合はint型をよく使いfloat型を逆に全然使いません。
UIは2Dゲームと座標表現の性質がほぼ同じなのでint型をよく使う事になるわけです。

Vector4クラスはメッシュやシェーダーを直接扱いたい時に使用する事が多いようで普段は使わないでしょう。

enum列挙型はプログラムをより見やすく、メンテナンスしやすくするために使う事が多く
使い方が分からないうちは無理に使う必要はありません。
無意識に他のやり方で代用しているはずです。
定数や自作のゲームフラグなどを作りたい時に使用すると便利なものです。
実は気付いていないだけでシステムが最初から用意している物を
既に使用していたりしますよ
"Rigidbody.AddForce()"の第二引数に指定する
「ForceMode.Force」
「ForceMode.Acceleration」
「ForceMode.Impulse」
「ForceMode.VelocityChange」
などの値がenum列挙型で定義されている定数で、分かりやすい使い方だと思います

このように定義されていると思えばいいと思いますよ
public enum ForceMode {
Force = 0,
Acceleration = 1,
Impulse = 2,
VelocityChange = 3
}
0314名前は開発中のものです。
垢版 |
2017/11/20(月) 21:55:30.09ID:CiUCSc6V
>>312
こんなところに入り浸っても嘲笑される立場からは抜け出せないよ
もっと実際に働いてるエンジニアと関わりを持たないとさ
0316名前は開発中のものです。
垢版 |
2017/11/20(月) 23:32:21.38ID:CiUCSc6V
いや、マジで2ch閉じてエンジニアの勉強会とか飲み会とか行った方がいいよ
妨害でもなんでもなくこんなところでくだまいてるよりよっぽど有意義だからさ
0318名前は開発中のものです。
垢版 |
2017/11/21(火) 00:07:20.16ID:e2fHN47U
Unityで売ってるアセットを使ってゲームを作って
そのゲームを利益目的で売っても大丈夫ですか?
0321名前は開発中のものです。
垢版 |
2017/11/21(火) 01:42:35.04ID:rZwM+Wn0
>>318
無断で入手したならともかく、支払って使うっていうのがアセットだし所謂有料素材だから大丈夫 ただそれを有効に使えるかは氏の次第
0322名前は開発中のものです。
垢版 |
2017/11/21(火) 17:03:54.03ID:qfW372JO
初心者です
今アセットストアでトップアセットセールがやってますが
どれを買えばゲーム制作が解決するのでしょうか?
0323名無し@キムチ
垢版 |
2017/11/21(火) 19:27:13.74ID:2LKvKcg0
>>322
それは何をつくりたいか書かないと、どれを買えばいいか答えられないなw
お前バカか!?
0325名前は開発中のものです。
垢版 |
2017/11/21(火) 20:06:53.58ID:AIxAZwMT
ならバカ初心者と言えば双方納得すんだろ
つかこのスレで初心者って断り入れる奴にまともな奴は居ないなあ
0329名無し@キムチ
垢版 |
2017/11/21(火) 22:54:13.43ID:2LKvKcg0
>>314
確かに5chに出入りするよりもエンジニアと関わりを持ったほうがためになると思うな。
しかしそのエンジニアにしても国連には出たことすらないザコばかりだろ?
そう考えると国連で平和を主張して北にも平昌五輪参加を呼びかけたキムヨナは、もはや現人神だね!!
国連に出たことすらないキミたちだって、そう思うよな?(最後の「よな」は「ヨナ」のしゃれではない)
0332名前は開発中のものです。
垢版 |
2017/11/22(水) 03:40:21.27ID:lcdZQYTv
高卒だらけすぎだろ
5chはもう終わりだな
0333名前は開発中のものです。
垢版 |
2017/11/22(水) 04:16:40.53ID:AdtHFaRB
MONO DEVEROPで条件は不明なんだけどたまに入力欄の下の方になんか英語でメッセージとボタンが出てよく読まずに消しちゃったんだけど何でしょうか?
スクリプトの入力内容自体は間違ってないと思うんだけど、インテンスか何かを整えるみたいな感じのことが書いてあったような気がします
0336ダーク王鍬大使 ◆SoVpkB15jY
垢版 |
2017/11/22(水) 08:52:09.01ID:Ya+raxGs
国連に出たことないとかいう謎のマウント取りで草生えまひた(^^
キムチは何でキムヨナをよくネタに出すんでふか?(^^

僕もUnityで凄いゲーム作って皆をあっと言わせたいでふ(^^
0337名前は開発中のものです。
垢版 |
2017/11/22(水) 14:29:23.53ID:kyr3HzlP
久しぶり(1年ぶりかな)Unityのチュートリアルの続きをやろうと
起動するとアップデートしろって バージョン538になったんだけど

5.6が5の最終リリースってなってる
これって64bitのエディタだけ落として使えばいいのかな
インストーラーって何?
0340名前は開発中のものです。
垢版 |
2017/11/22(水) 15:39:42.42ID:kyr3HzlP
え?環境?
538動くのに??そりゃ自分には無理
それならフルスクラッチでUnityなんか使わない選択に行っちゃうわ

まあ、レスしてくれてありがとう
0341名前は開発中のものです。
垢版 |
2017/11/22(水) 18:06:51.42ID:utbLj+4m
>>340
別にwindowsクリーンインストールしろってんじゃないぞ
チュートリアルするレベルなんだから横着せず希望verのunityを入れりゃいいじゃないかってだけ
0342名前は開発中のものです。
垢版 |
2017/11/22(水) 18:14:07.61ID:kyr3HzlP
>>341
あ!そうか
0343名前は開発中のものです。
垢版 |
2017/11/22(水) 18:19:34.52ID:jTZqoW45
でもチュートリアルするレベルの奴にとっては複数verのインストールは敷居が高いよな
馬鹿正直に最新版入れて対応できずに挫折してやめていく初心者をよく見かける
0344名前は開発中のものです。
垢版 |
2017/11/22(水) 18:30:09.77ID:5f+MdVCx
単にインストールフォルダ名変えるだけだろ
そこまでのバカはUnityをやること自体が無駄
どうせ挫折して時間を浪費するだけ
0346名無し@キムチ
垢版 |
2017/11/22(水) 19:01:28.26ID:tfI8pigO
>>336
>キムチは何でキムヨナをよくネタに出すんでふか?(^^

当方がゲームをつくる動機はキムヨナだからです。
いろんな角度からキムヨナが活躍するゲームをつくりたいのですが、いまのところキャラはUnitychanの借り物です。
目標としては自作のキャラヨナちゃんを世に出したいですね。韓国のキムヨナの銅像の画像を見たりして、どうつくればいいかいろいろ研究しています。
究極的には宇宙一やわらかくて宇宙一強靱な肉体を持ったヨナちゃんを、他の強そうなキャラと思い切りぶつけ合って、興奮するゲームをつくりたいのですが、
そこへたどり着くまでにはまだ何年もかかりそうです。
とりあえあずはひとつひとつ積み重ねていくだけですね・・・
0350名前は開発中のものです。
垢版 |
2017/11/23(木) 00:14:59.97ID:QRNVPncp
新しくC#スクリプトを作ったら
オブジェクト参照がオブジェクトインスタンスに設置されていませんというエラーが出て
テストプレイしてもコンパイルエラーで実行できなくなったのだけど
なにか工程を忘れているのでしょうか?
0352名前は開発中のものです。
垢版 |
2017/11/23(木) 02:39:25.06ID:aJavQgtq
>>350
たぶん、アセットを買い忘れたのでしょう
0353名前は開発中のものです。
垢版 |
2017/11/23(木) 02:44:43.05ID:wLnswzoG
Unityのシェーダーで質問です
カスタムラインティング(lighting○○)の記述方法で困っています。
イメージとしては標準であるシェーダーのUnlit>Textureのような
元のテクスチャと同じ色をカスタムライティングで表現がしたいです

void surf(Input IN, inout SurfaceOutput o){
 o.Albedo = tex2D(_MainTex, IN.uv_MainTex).rgb;
}

fixed4 Lighting○○(SurfaceOutput s, fixed3 lightDir, fixed atten){
 half4 c;
 c.rgb = ■■;
 c.a = s.Alpha;
 return c;
}

■■の部分に0.0を入れた場合本来のテクスチャより大分黒くなってしまいます。
かといって1.0を入れてみても真っ白になってしまいます。

数字の問題じゃなくてどこかの設定をかえるべき場合
シェーダーのどこを修正すれば良いでしょうか
それらしい単語や参考となる資料何かないでしょうか
0355名前は開発中のものです。
垢版 |
2017/11/23(木) 03:05:23.42ID:aJavQgtq
>>353
アセットを買いましょう
0356名前は開発中のものです。
垢版 |
2017/11/23(木) 03:08:03.33ID:hlwE+o0N
>>353
俺、シェーダーのことは何も知らんけど、RGBで0黒くなったり1で白くなったりするなら
明暗制御してそうだし、0.5でも入れて試してみればいいんじゃないの?
試した上で書いてるなら申し訳ない
0358名前は開発中のものです。
垢版 |
2017/11/23(木) 05:31:31.55ID:VzY+3J1y
surf 関数の中でSurfaceOutputのAlbedoにテクスチャ色を代入してるんだから、Lighting関数ではs.Albedoを使わないとそりゃテクスチャ色は反映されないでしょ

o.Albedo = s.Albedo.rgb * 0.5;

でも試してみ
0361名前は開発中のものです。
垢版 |
2017/11/23(木) 09:12:04.34ID:iDiAdE9o
fps一人で作れるか
0363353
垢版 |
2017/11/23(木) 12:30:35.78ID:wLnswzoG
>>358
回答ありがとうございます
その場合でも若干元の色よりくすんで表示されるようです
どうやら調べてみたらLightingのScene->SkyBoxのAmbientが影響しているようでした

シーン全体に影響はでますが
insensityを0にした状態でc.rgb = s.Albedo * 1.0にしたら
Unlit>Textureとまったく同じ色合いになり解決しました
0364名前は開発中のものです。
垢版 |
2017/11/23(木) 13:07:49.35ID:VzY+3J1y
>>363
Unlit/Textureとほぼ同じ動作をさせたいなら元ソースから改変したらどうだい?

https://unity3d.com/jp/get-unity/download/archive

ここからビルトインシェーダーのソースをダウンロードしてUnlit-Normal.shaderの中身を確認してみ
ライティングの影響受けるサーフェスシェーダーじゃなくてバーテックス/フラグメントシェーダーになってる
0365名前は開発中のものです。
垢版 |
2017/11/23(木) 13:19:54.07ID:VzY+3J1y
どうしてもサーフェスシェーダーでやるなら
#pragma surface surf 〜の行に noambient を足せば出来るらしい
試したら出来た
0366353
垢版 |
2017/11/23(木) 13:33:04.69ID:wLnswzoG
>>364
厳密に言うとそこからさらに独自の影をかけたいのでUnlit/Textureそのままじゃダメなんですよね
Unlit/Textureのソースだとたしかlightning offとなっていて
ライティングシェーダーそのものがOffになってました

>>365
貴方が神ですありがとうございます!
Lightingのinsensityを下げる以外は頂点・フラグメントシェーダー以外方法がないかと諦めていたのですが
この方法ならサーフェスシェーダーだけでも出来るんですね
助かりました

というわけで質問〆ですありがとうございました。
0367名無し@キムチ
垢版 |
2017/11/23(木) 19:44:42.09ID:zG98k7/b
>>348
ドット絵の素材で上左右向きのものはたくさんありますが、上下左右向きのものはちょっとないと思います。
0369名前は開発中のものです。
垢版 |
2017/11/23(木) 20:38:24.49ID:8VVO/uAT
はい、というわけで
「左右後頭部だけのドット絵なんか使えないだろキムチ君」と心でツッコミいれてROMってる人達
こんばんは

本日の講義のお時間です

前回に引き続き「IF分の色々」です
0370名前は開発中のものです。
垢版 |
2017/11/23(木) 20:44:56.20ID:8VVO/uAT
IF分は次のように"多重"にすることもできます。


if( a == 1 ){
if( b == 1 ){
Debug.Log("aとb両方が1だよ");
}
}

こうすることにより1つだけではなく複数の条件がそろった時にIFを成立させる事ができるわけです。
上の例では2重ですが当然ながら3重にも4重にも無制限に行えます。
ただしとても見づらくなっていきます。


if( a == 1 ){
if( b == 1 ){
if( c == 1 ){
if( d == 1 ){
Debug.Log("aとbとcとd、全部が1だよ");
}
}
}
}

そこで算術演算子である「&&(アンドと呼ぶ)」を使う事で同じ事が見やすく行えます。


if( a == 1 && b == 1 && c == 1 && d == 1 ){
 Debug.Log("aとbとcとd、全部が1だよ");
}

この2つの例は見た目は違いますが実行結果は同じになります。
0371名前は開発中のものです。
垢版 |
2017/11/23(木) 20:50:51.07ID:8VVO/uAT
if( a == 1 && b == 1 && c == 1 && d == 1 ){
 Debug.Log("aとbとcとd、全部が1だよ");
}

はaもbもcもdも"1"の時にifが成立します。
4つのうちどれか1つでも"1以外"だとifが成立しなくなります。

次の例では、「a、b、c、dのどれか1つでも1ならばifを成立させたい」やり方です。
算術演算子の「||(オアと呼ぶ)」を使います。


if( a == 1 || b == 1 || c == 1 || d == 1 ){
 Debug.Log("aかbかcかdのどれかが1だよ");
}

このように「&&」「||」を使う事でさらに柔軟な条件分岐を行えます。
0372名前は開発中のものです。
垢版 |
2017/11/23(木) 20:59:09.92ID:8VVO/uAT
if文は基本は「条件が成立した時に実行したい」処理を書くわけですが
逆に「条件が不成立の時に実行したい」処理を書くこともできます。
それには「else節」を使用します。
まずはelse節がないif文の例です。


Debug.Log("IFの前");
if( a == 1 ){
Debug.Log("aは1");
}
Debug.Log("aは1ではない");
Debug.Log("IFの後");

これを実行すると「a = 1」の時は
"IFの前"、"aは1"、"aは1ではない"、"IFの後"
と4つ表示されます。
"aは1ではない"が不要です。

"else節"を使う事で次のようにできます。


Debug.Log("IFの前");
if( a == 1 ){
Debug.Log("aは1");
} else {
Debug.Log("aは1ではない");
}
Debug.Log("IFの後");

これを実行すると「a = 1」の時は"IFの前"、"aは1"、"IFの後"と3つ表示されます。
「a = 1」ではない時は"IFの前"、"aは1ではない"、"IFの後"と3つ表示されます。
理想的な結果です。
0373名前は開発中のものです。
垢版 |
2017/11/23(木) 21:05:31.97ID:8VVO/uAT
最後に「if〜else if」を説明します。
else節の後にさらにifを使い条件判定(分岐)をさせる事が出来ます。


if( a == 1 ){
Debug.Log("aは1");
} else if( a == 2 ){
Debug.Log("aは2");
} else if( a == 3 ){
Debug.Log("aは3");
} else {
Debug.Log("aは1でも2でも3でもない");
}
Debug.Log("IFの後");

例えば「a = 1」の時は十字キーの左を押した時の処理を、
「a = 2」の時は十字キーの右を押した時の処理を、
「a = 3」の時は十字キーの下を押した時の処理を行い時などに使うことができる書き方です。

if文の章は以上です。
ここまでで貴方はif文の使い方はほぼマスターしています。
ほとんどの条件をあなたは実現できることでしょう。

わかったかクソども
0375名前は開発中のものです。
垢版 |
2017/11/23(木) 21:08:52.41ID:W9y7pNcP
ライティングについて教えてください
android端末をターゲットとしています。
密室で壁や天井をある程度明るく照らしたいのですが、結果としては「VR脱出ゲーム2」Blacksmith DoubleCircleさんが作っているような感じにしたいのです。
Directional lightを上からと下からと照らす方法を考えたのですが、他に何か良い方法はありますか?
ポイントライトですと、壁や天井の反射がきつい感じです。
0377名前は開発中のものです。
垢版 |
2017/11/23(木) 21:31:06.48ID:ClP9LjDh
       /::::)(:::)(:::::::::::)(::::::^::::::::::\
      (::::::::::::::::::::::::::::::::::::::::::::::::::::: ::::::::::\
     /::::::::::/ノ::::::::ノ::::::::ヽ:人::::::::::ヽ:::::::::::::::)
     (::::::::::/  ):::ノ::::ノ ) ソ ヾ::::::::::::丶::::ヽ
    (:::::::::/ 彡  ノ   ノ  :: 彡:/)) ::::::::::)
   (::::::::::/彡彡彡彡彡   ミミミミミミミ :::::::::::)
   ( :::::::// ̄ ̄ ̄ ̄ヽ===/ ̄ ̄ ̄ ̄ヽ |:::::::::)
     | =ロ   -=・=-  ‖ ‖ -=・=-   ロ===
     |:/ ‖    / /ノ  ヽ \     ‖ ヽ|ヽ       _________
     |/  ヽ`======/ .⌒ ` ========ノ.   ..| |     /
    .( 。 ・:・‘。c .(●  ●) ;”・u。*@・:、‘)ノ  /アンビエントライトを付けろよ。
   ( 。;・0”*・o; / :::::l l::: ::: \ :。・;%:・。o ) <
    (; 8@ ・。:// ̄ ̄ ̄ ̄\:\.”・:。;・’0.)   \
   .\。・:%,: )::::|.  ̄ ̄ ̄ ̄  | ::::(: o`*:c /..    \_________
    \ ::: o :::::::::\____/  ::::::::::   /
      (ヽ  ヽ:::: _- ::::: ⌒:: :::::::: -_    ノ
       \丶\_::_:::::_:::: :::::_/::::  /
        | \ \ ::::::::::: :::::::::: ::: ::__/ |
    ̄ ̄\ 丶  ̄ ̄ ̄ ̄ ̄ ̄ ̄    / ̄ ̄
0379375
垢版 |
2017/11/23(木) 21:56:20.80ID:W9y7pNcP
ありがとうございました。
アンビエントライトの設定でうまくいきました。
最初はskyboxだったので白くなりすぎたのですが、Gradientにして色を設定したら思った明るさになりました。
0381名前は開発中のものです。
垢版 |
2017/11/23(木) 23:01:22.59ID:yNi8m4dC
>>309

2Dなら、intとfloat,Vector2で事足ります。
文字列を表示するなら、stringもかな。

3Dなら、float,Vector3,Quaternionを使います。
基本的に、UIは数値表示のintと文字表示のstringです。

Vector4は、Matrix4x4という行列を使用する際に使います。
あるいは、Quaternionに直接数値を入力する場合でしょうか。

でも、行列計算は、Vector3で入力して、
Vector3で出力する関数が用意されているので、
Vector4はまず使う必要がありません。

Quaternionも、オイラー角で入出力するなら、Vector3で十分です。
Quaternion積もVector3で計算する関数があるし、
角速度もVector3だし、Vector4はメッシュやシェーダー用でしょう。
0383名前は開発中のものです。
垢版 |
2017/11/24(金) 08:01:07.39ID:9WQWnRQq
大作よりはほのぼの系のゲーム作った方がいいのか
0384名前は開発中のものです。
垢版 |
2017/11/24(金) 10:45:57.99ID:pP3PeJel
敵オブジェクトを操作するのに共通のスクリプトをアタッチするより、
一つのマネージャ用オブジェクトに全部の敵オブジェクトを操作するスクリプトをアタッチした方が
動作軽くなりそうだと思うんだけど、皆さんはどうしてますか?
0386名無し@キムチ
垢版 |
2017/11/24(金) 20:24:41.52ID:g/8l/UEF
>>383
大作やほのぼの系ゲームよりも、人の欲望をそそるゲームのほうが絶対受けるはず!!
欲望といっても金欲はゲーム内だけじゃ満たされんし、かといってゲームクリアした人に賞金やるわけにはいかんから没。

すると残るのは無茶苦茶性欲そそるゲームしかないわけだが・・・w
0387名前は開発中のものです。
垢版 |
2017/11/25(土) 12:10:33.67ID:dm9F8M7M
割と大作寄りのゲーム作ってるが、正直バランス調整自分でやれる気がしない
何から何までGoogleスプレットシートで調整できる様にはしているが、その要素が多過ぎる
カジュアルだけどついつい遊んでしまう程度のものを個人制作以上のクオリティで作る方が可能性を感じる

ただ、大作作るとめちゃくちゃ制作技術が伸びるよ
0388名無し@キムチ
垢版 |
2017/11/25(土) 18:13:30.44ID:BMYtVJuo
>>368
>いやあるでしょ
>むしろ3方向素材より4方向素材のほうが多いっしょ

いやないっしょ
4方向素材ってのは前後左右のことでしょ。
また上から見下ろした素材はあるけど、キャラの足元から見上げた素材ってないっしょww
ないっしょwないっしょwないっしょwww
0390名無し@キムチ
垢版 |
2017/11/25(土) 19:28:03.00ID:MsZJXsKS
>>389

それは>>348からたどってみないとわかりませんね。

まず、「ドット絵の素材で上下左右向きのある素材教えてください。」という質問があったのです。

当方は上から見下ろした素材はあるが、キャラの足元から見上げた素材はないと思ったので、
「ドット絵の素材で上左右向きのものはたくさんありますが、上下左右向きのものはちょっとないと思います。」
と答えたわけです。

すると>>368が「いやあるでしょ
むしろ3方向素材より4方向素材のほうが多いっしょ 」と反論してきたのですよ。

当方考えるに>>368がいう4方向素材とは、前後左右のことではないか?と・・・
だってキャラを下から見上げた素材っていままで見たことがないですから!!

つまり最初の質問で発せられた上下左右がいつの間にか前後左右にすりかわっていたわけで、
当方としてはそれを指摘したかったのでありますな!!
0391名前は開発中のものです。
垢版 |
2017/11/25(土) 19:39:11.35ID:tNOe2BPS
「キムチ君、制作物は細かい所手抜きなのに言葉は潔癖かよ!」と思いながらROMってる皆さんこんばんは。

講義のお時間です。

今回も"条件分岐"についての講義です。

前回は「if文」を使いました。
今回はもう一つの条件分岐文である「switch文」をやります。
0392ダーク王鍬大使 ◆SoVpkB15jY
垢版 |
2017/11/25(土) 19:43:30.85ID:kleZK8qr
下から見た女の子はパンツ丸見えでふ(^^
だから何だと言われたらそれまででふが(^^
0393名前は開発中のものです。
垢版 |
2017/11/25(土) 19:48:36.66ID:h5kxWxfc
最初の質問が言葉足らずで誤解された
誤解された回答でさらに誤解が進んだ

どっちもごめんなさいで進めればいいと思う
解決したいのは誤解されてないほうの質問でしょうし

下から(足裏側からキャラを)見ているドット絵素材は俺も見たことないかな
0394名前は開発中のものです。
垢版 |
2017/11/25(土) 19:57:24.02ID:tNOe2BPS
前回、"if(){ } else if(){ }"の説明で下のような例を出しました


if( a == 1 ){
Debug.Log("aは1");
} else if( a == 2 ){
Debug.Log("aは2");
} else if( a == 3 ){
Debug.Log("aは3");
} else {
Debug.Log("aは1でも2でも3でもない");
}

"switch文"を使用するとこれを下のように書けます。
実行結果はif文でもswitch文でも両方同じです。


switch( a ){
case 1:
 Debug.Log("aは1");
 break;
case 2:
 Debug.Log("aは2");
 break;
case 3:
 Debug.Log("aは3");
 break;
default:
 Debug.Log("aは1でも2でも3でもない");
 break;
}
0396名前は開発中のものです。
垢版 |
2017/11/25(土) 20:03:44.03ID:BwFivc9s
元の質問者は帰ってこんだろうから真実はどうでもいいとして

こういう質問内容で上下左右と言われたらキムチの言う前後左右を指す、と思うのは俺だけ?
見下ろし2Dゲームで上を向いたキャラと後ろを向いたキャラ、どっちが伝わりやすいかって言えば前者だと思うんだけどなぁ

確かに言葉狩りをして下から見上げるものを含む素材と取れなくもないけど、そういった素材より前後左右の方がよく使われるだろうから、そちらを希望していると解釈しただけ

というか3方向の素材て汎用素材としてあるの?
3方向しか使用しないゲームは山ほどあるけど素材提供として3方向に限定してるようなもんがあるのか疑問なんだけど
0397名前は開発中のものです。
垢版 |
2017/11/25(土) 20:05:41.19ID:tNOe2BPS
見て分かる通りswitch文で出来る事はif文でも可能です。
そのせいでswitchって使い所がイマイチわからないという初心者が多いです。

switch文はif文の簡易バージョンと思ってください。

「switch( a >= 1 )」とか
「switch( a == 1 )」とか
「switch( a == 1 && b == 1)」とか

if文並みの複雑な条件式は記述できません(エラーになります)

『1つの変数の値の変化で実行させたいプログラムを変えたい時に使う』物です。
複雑な条件分岐はIF文に任せましょう。

ちなみに先程の例では「if else if文」側より「switch文」側の方が多少処理速度が速いです。
早いと言っても0.0001秒という微々たる差ですが。
0398名前は開発中のものです。
垢版 |
2017/11/25(土) 20:17:13.50ID:tNOe2BPS
"default:"は"case"のどれにも一致しなかった場合に実行される部分です。
if文のelseに相当します。
if文でelseを書かない事が出来たように不要ならば"default:"も書かなくて大丈夫です。


switch( a ){
case 1:
 Debug.Log("aは1");
 break;
case 2:
 Debug.Log("aは2");
 break;
}

"case"は「変数がその値だったら」という意味合いで記述します。
上の例ですと
"case 1:"は"if( a == 1 )"と同じで"case 2:"は"if( a == 2 )"と同じです。
もう少し分かりやすくすると下のようになります。


string mode = "OPENING";
switch( mode ){
case "OPENING":
 Debug.Log("オープニングだよ");
 break;
case "ENDING":
 Debug.Log("エンディングだよ");
 break;
}

上の場合「オープニングだよ」と表示されます。
変数"mode"の中身を例えば"hello"と適当な文字に変えるとどれにも一致しなくなるため何も表示されなくなりなります。これは"default:"を記述していないからです。
0399名前は開発中のものです。
垢版 |
2017/11/25(土) 20:25:18.25ID:tNOe2BPS
"break;"は重要です。
下に"case 1:"の"break;"を削除した例を書きます。


switch( a ){
case 1:
 Debug.Log("aは1");
case 2:
 Debug.Log("aは2");
 break;
}

この場合"a"の中身が1の時に「aは1」と「aは2」両方表示されます。
"break;"を付けないと処理が止まらず次の"case"も実行される仕組みです。

この特性を生かし「aの中身が1か2の時に実行させたい」などの変わった使い方もできます。


switch( a ){
case 1:
case 2:
 Debug.Log("aは1か2");
 break;
}

当然ですが「switchの中にさらにswitch」、「switchの中にif文」なども可能です。
ただし見づらくなるのであまり多少はしない方がいいでしょう
0400名前は開発中のものです。
垢版 |
2017/11/25(土) 20:27:35.93ID:tNOe2BPS
<switch文の中にさらにswitch文の例>
int a = 1, b = 1;
switch( a ){
case 1:
 switch( b ){
  case 1:
   Debug.Log("aは1でさらにbは1");

case 2:
 Debug.Log("aは2");
 break;
}

この場合"a"の中身が1の時に「aは1」と「aは2」両方表示されます。
"break;"を付けないと処理が止まらず次の"case"も実行される仕組みです。

この特性を生かし「aの中身が1か2の時に実行させたい」などの変わった使い方もできます。


switch( a ){
case 1:
case 2:
 Debug.Log("aは1か2");
 break;
}

当然ですが「switchの中にさらにswitch」、「switchの中にif文」なども可能です。
ただし見づらくなるのであまり多少はしない方がいいでしょう
0402名前は開発中のものです。
垢版 |
2017/11/25(土) 20:32:59.12ID:tNOe2BPS
<switch文の中にさらにswitch文の例>
int a = 1, b = 1;
switch( a ){
case 1:
 switch( b ){
  case 1:
   Debug.Log("aは1でさらにbは1");
  break;
  case 2:
   Debug.Log("aは1でさらにbは2");
  break;
 }
case 2:
 Debug.Log("aは2");
 break;
}

<switch文の中にさらにif文の例>
int a = 1, b = 1;
switch( a ){
case 1:
 if( b == 1 ){
  Debug.Log("aは1でさらにbは1");
 } else if( b == 2 ){
  Debug.Log("aは1でさらにbは2");
 }
 break;
case 2:
 Debug.Log("aは2");
 break;
}
0403名前は開発中のものです。
垢版 |
2017/11/25(土) 20:37:39.60ID:tNOe2BPS
複雑になってきましたね

実は>>402
「<switch文の中にさらにswitch文の例>」には"break;"が1つ抜けており
「a = 1」の時の結果が正しくならないバグを今見つけました。

このように見づらい&ミスをしやすくなるため
switch文の中にさらにswitch文を入れる事はあまり良い方法とはいえず推奨はされていません。

以上だクソども
0406名前は開発中のものです。
垢版 |
2017/11/25(土) 23:18:53.08ID:4b1JTNED
>>387
>何から何までGoogleスプレットシートで調整できる様にはしているが、その要素が多過ぎる

その気持ち、わかるぞ
つっても自分の場合、大作でもないんだが、パラメータを別ファイルに切り出すと、それだけでなんか安心してしまう。これは結局、問題を先送りしているだけなのか
しょうがないけど自分でやるしかないと思ってやってる
0407名前は開発中のものです。
垢版 |
2017/11/26(日) 00:51:44.80ID:5UTT/Lbk
RTSを作りたいのですが
Unityの入門本で(初心者向け)
オブジェクトAにオブジェクトBを追跡移動させたり
移動制御に関する、初心者向けの良い解説本って知りませんか?
いくつかUnityの解説本を買ってみたのですが
どれも「落ち物ゲー・パズルゲー・迷路ゲー」という簡単なゲームの作り方のみで
RTSに使われそうな技術(オブジェクトにオブジェクトを追跡させるやりかたや移動制御)を
解説したUnity入門本がなかなかありません

1つだけあったのですが
その本はJavascriptを使っての解説だったので
C#となった今となっては使えません
そこら辺の技術を解説した初心者向けの良い良書はありませんでしょうか?
0410名前は開発中のものです。
垢版 |
2017/11/26(日) 02:47:24.15ID:GFRbwchg
>>407
そういった技術、というかノウハウって言語に依存しないと思うけどJSの本じゃだめなの?
コードをまるごとコピペする気しかないってのならそりゃC#の本がほしいかもしれないけど
0411名前は開発中のものです。
垢版 |
2017/11/26(日) 03:36:03.78ID:Yzdmzfbm
いい解説本ってことはないけど単純にやり方を知りたいだけなら
しょぼい迷路の外から敵が最短ルートを目指して追ってくる簡易ドットイーターゲームのサンプルみたいなのが
unityちゃんが大きく描かれた本に書いてあったような気がする
0415名前は開発中のものです。
垢版 |
2017/11/26(日) 10:59:10.19ID:jn3nJ8dF
アソビモの「GODGAMES」が最大同時30人対戦でUnity製だった
既にサービス終わってるけどなー
0416名前は開発中のものです。
垢版 |
2017/11/26(日) 11:06:29.81ID:G53UyFfK
unityで10人vs10人のネットゲーをつくりたいのですが
何かシステム的な制約はありますか?
0418名前は開発中のものです。
垢版 |
2017/11/26(日) 11:34:53.33ID:jn3nJ8dF
Unity Multiplayerの使用料がかかるっぽい
自分も興味があったんで調べてみただけなので 使ったことある人 補足よろしく
ttps://docs.unity3d.com/ja/current/Manual/UnityMultiplayerService.html
0419名前は開発中のものです。
垢版 |
2017/11/26(日) 13:14:35.79ID:5UTT/Lbk
>>410
初心者なもんで
やり方を1から解説してくれる解説書が欲しいのです
JsのはJsの文法ですし
それだとC#に転用する際に不具合が発生すると
対処しにくいし、どこが間違ってるのか分からないので
C#のはC#の文法で解説した解説所がほしいです

>>411
ユニティちゃんで作る本格アクションゲームってやつですか
amazonのレビューを見る限り
あんまり評判は良さそうではないですね
0420名前は開発中のものです。
垢版 |
2017/11/26(日) 13:49:10.49ID:Yzdmzfbm
>>419
多分それ
技術書は専門性が高くないと意見が割れるから評判は気にすんな
だいたいサンプルがダウンロードできるからそれで有用か判断できるはず
0421名前は開発中のものです。
垢版 |
2017/11/26(日) 14:02:13.20ID:SKl9hZ8R
プログラミングの基本さえ知っていれば
言語がなんであれすぐ応用効くでしょう
もし、プログラミングを初めて触るっていうなら
unityの前に何か一つのプログラミング言語使って勉強してみたら?
0423名前は開発中のものです。
垢版 |
2017/11/26(日) 14:53:06.99ID:BAm3Dec4
こないだアンリアルフェス行ったらアンリアルを教えてくれるところが
1か月15マンとか書いてあったけど
Unityは1200円か安いな
0425名前は開発中のものです。
垢版 |
2017/11/26(日) 15:30:15.72ID:3rpm77vO
初歩的な質問なのですが
uGUIでテキストを複数の解像度に対応させるにはどうするのがいいのでしょうか

具体的に躓いているところは
ボタンの子要素のテキストです
ボタン自体はアンカー設定で解像度が変わっても配置が相対的に同じ場所、大きさになるのですが
その子要素のテキストサイズが少しおかしいことになります
テキスト表示領域にかなり余裕がある場合は大丈夫なのですが
入力さるているテキストの行と列に表示領域がぴったりな感じのものは表示されなくなってしまいます(収まらないため)
表示場所も中央揃えとかにしていると、文末がはみ出しているのか、中央ではなく少し右にズレた位置に表示されます

どういった対処や設定をするのが良いのでしょうか
0426名前は開発中のものです。
垢版 |
2017/11/26(日) 15:49:08.33ID:6nBybzVV
>>407
初心者でいきなりリアルタイムストラテジーとか、まあ頑張れとしかいいようがないが
きっとパニックになって投げ出すぞ
チャレンジし挫折も大事なので辞めろとは言わないが

ゲームの歴史がなぜ

ボードゲーム→シューティング→マリオ1(アクションゲーム)→シンプルなレースゲーム→ダンジョンゲーム→大戦略シミュレーション→JRPG→格闘ゲー→音ゲー→シミュレーションRPG→アクティブタイムバトル型RPG→リアルタイムストラテジー

と段階をおいて進化してきたか
そしてそれを行ってきたのは初心者でも素人でも個人でもなく
ゲーム制作最前線にいるプロ中のプロ→集団←だった事を忘れちゃいけない

解説本が販売されていないのは
それだけ君がやろうとしていることが相当難しいことの証しだよ
何故ならRTSは沢山のゲームジャンルの集合体だからね
個々のジャンルで必要なノウハウをある程度得た人にしか普通は作れない
0428名前は開発中のものです。
垢版 |
2017/11/26(日) 17:01:07.35ID:Cz7u2dE1
プログラム文法とかアルゴリズムとかゲーム開発するには前提の能力だろ?
わかりきったこと書かれても邪魔なんだが
0429名前は開発中のものです。
垢版 |
2017/11/26(日) 19:03:02.19ID:5UTT/Lbk
>>421
今C#の入門本を勉強しています
理解率はその入門本の範囲で三割程度です
最初Jsを勉強していたのですが
UnityがJsをサポートしなくなったので
仕方なくC#に切り替えました
0430名無し@キムチ
垢版 |
2017/11/26(日) 19:26:38.70ID:LMN33dry
>>387
Googleスプレットシート、使ったことはないですが、何に使うのですか?
パラメータを別ファイルに切り出すと言われても何のことかわからないので、具体的にお願いします。
それはExcelではダメなのですか?
0431名前は開発中のものです。
垢版 |
2017/11/26(日) 20:46:59.53ID:5UTT/Lbk
Unityで
TargetというタグがついたオブジェクトAを
newtargetというタグがついたオブジェクトBに追跡させる
スクリプトはどんな風に書けばいいですか?
0433名前は開発中のものです。
垢版 |
2017/11/26(日) 21:25:17.56ID:mmeFUc7t
安くなってるからplaymaker買ってみたけどクッソわかりにくくて心が折れそう

使い込んで慣れれば快適になるんだろうか
それともコーディングに苦手意識がない人にとっては不便なものだったりするのかな
0438名前は開発中のものです。
垢版 |
2017/11/27(月) 00:10:48.77ID:P0dXNlTN
Survival ShooterのEnemyMovement.csとかどうして読まないんだろうな
チュートリアルも何もかもすっ飛ばしてりゃ分かる訳ないよ
0439名前は開発中のものです。
垢版 |
2017/11/27(月) 02:43:37.85ID:IkbbC0Am
>>430
エクセルでもなんでもゲーム側で読み込んで変数に格納出来るなら何でも良いよ
Googleスプレッドシートの強みは無料で機能も十分なことと、出先でもデータ弄りやすいこと
0441名前は開発中のものです。
垢版 |
2017/11/27(月) 07:04:02.04ID:a0HfS9om
>>425
CanvasコンポがアタッチされているGameObjectにCanvasScalerコンポ当ててますか?
CanvasScalerコンポのUI Scale Mode を Scale With Screen Sizeに設定して、
適切なReferences Resolutionを設定してあげて、それで改善されませんか?

>>入力さるているテキストの行と列に表示領域がぴったりな感じのものは表示されなくなってしまいます(収まらないため)
uGUIのってテキストをきれいに表示させるために、スケール小さくしてフォントサイズを上げるみたいなことをやる必要があったと思いますが、
それやるとテキストのRectTransformの矩形がすごく小さくなってしまって、かつUITextコンポのVerticalOverflowがデフォルト設定のTruncateだとテキスト表示が簡単に消えてしまいますね。
(UIテキスト関連は標準のよりTextMeshProの方が柔軟なのでおすすめです)
UITextコンポのHorizontan、Veritcal両方Overflowに設定してあげればとりあえず何も表示されないということはなさそうです。
0442名前は開発中のものです。
垢版 |
2017/11/27(月) 12:42:44.25ID:0FCRYiRe
アセットをCドライブ直下かつ日本語名を含んでいないのにインポートエラーが出るのはどんな原因が考えられますか?
スタンダードアセットすらインポートできず困ってます
0446名前は開発中のものです。
垢版 |
2017/11/27(月) 22:47:23.35ID:jcHTc4zP
Tankという名前のCreateEmptyで作った空のオブジェクトに(中に親子関係のオブジェクト有り)
project→createで作成したTankMovementという名前のC#スクリプトを
アタッチしたいのですが
Addコンポーネットからscriptを選んでC#スクリプトを追加しようとしても
TankMovementという名前のC#スクリプトが見つかりません
どうすればいいでしょうか?

C#スクリプトがデフォルトの名前NewBehaviourScriptだと認識します
nameが悪いのでしょうか?
0447名前は開発中のものです。
垢版 |
2017/11/27(月) 22:51:04.79ID:jcHTc4zP
なんか自己解決
スクリプトを書く前にアタッチすればいいみたい
0448名前は開発中のものです。
垢版 |
2017/11/27(月) 22:51:44.92ID:SK67KIi+
エスパーするとスクリプトの中身のクラス名がNewBehaviorScriptになってる
ファイル名とクラス名が一致してないとUnityは認識してくれない
0449名無し@キムチ
垢版 |
2017/11/27(月) 23:21:16.41ID:ZBpaRK3Y
Unityの立体や球やUnitychanの顔マスクは、マテリアルが綺麗に貼れますが、
他からインポートした立体や球にマテリアルを貼ると、何だかわからないものになるのはどうしてですか?
UVが関係していることは想像できますが、具体的にどう違うのでしょうか?
0450名無し@キムチ
垢版 |
2017/11/27(月) 23:26:04.38ID:ZBpaRK3Y
またUnitychanの顔マスクは、
Blenderに取り込んで曲げたり伸ばしたり変形だけする分には、
マテリアルが綺麗に貼れるままですが、
線や面を新たに追加するとその部分のメッシュにだけ、
マテリアルがつかなくなるのはどうしてでしょうか?
0453名前は開発中のものです。
垢版 |
2017/11/28(火) 01:14:42.08ID:FYq6i9op
Unitychanのモデルを触ったことがないかつ、顔マスクのことを知らないんだけど、
>>449
メッシュの各頂点にUV座標というもの持ってて、それを読み込んでテクスチャ(マテリアルの中の)のどの部分を表示させるか決定しています。
UnitychanのメッシュのUV座標はUnitychanのテクスチャに合わせてUV座標が割り当ててあるのだから、ほかのメッシュにしたときにおかしくなるのは当然のことです。

>>450
線や面を追加したときに、UVの設定もしました?
0456名前は開発中のものです。
垢版 |
2017/11/28(火) 14:53:39.03ID:wHSFA7r2
>>454
アセットを買えば日本語も上手くなれると思います
0458名前は開発中のものです。
垢版 |
2017/11/28(火) 19:44:22.13ID:jdFfrrRm
はい、クソ野郎の皆さんこんばんは
第6回目の講義は変数の集合体である「配列」についての勉強となります。

下のようなプログラムがあったとします。

---例---
string mes0 = "よう。ここは武器屋だ";
string mes1 = "用件はなんだ";
Debug.Log( mes0 );
--------
これは「よう。ここは武器屋だ」と表示されます。
"Debug.Log( mes1 );"にすると「用件はなんだ」と表示されます。


配列を使用すると下のようになります

---例---
string[] mes = new string[2]{ "よう。ここは武器屋だ", "用件はなんだ"};
Debug.Log( mes[0] );
--------
最初のプログラムと書き方は変わりましたが結果は同じで「よう。ここは武器屋だ」と表示されます。

配列は複数個必要になりそうな変数を1つにまとめて扱いやすくする物です。
「mes0、mes1、mes2、mes3・・・・mes104」のように
変数を1個ずつ宣言していくのは無駄です
配列を上手に活用することでプログラムをスッキリと見やすくまとめる事ができます。
0459名前は開発中のものです。
垢版 |
2017/11/28(火) 20:06:28.22ID:jdFfrrRm
先程は下のように配列を作りました
---例---
string[] mes = new string[2]{ "よう。ここは武器屋だ", "用件はなんだ"};
--------
配列を2つしか作成していないので"mes[2]"という存在しない物を使おうとするとエラーになります。
"mes[0]"の"0"部分を「配列の添え字」と呼びます。
添え字は1からではなく0からスタートするのでご注意を。
例えば配列が3個ある時は1〜3ではなく0〜2です。


配列の作り方(宣言)と値の入れ方(初期化)は色々方法があります。
それらについて説明します。
---例1---
string[] mes = new string[]{ "よう。ここは武器屋だ", "用件はなんだ"};
--------
このように配列を何個作るか省略もできます。
この場合勝手に2つ作られこちらの方が便利です。

---例2---
string[] mes = new string[2]; //この時点では2個の"mes"が作られているだけで中身はなし。
mes[0] = "よう。ここは武器屋だ"; //作ったmes配列に値を入れている(初期化)
mes[1] = "用件はなんだ";
--------
これは配列の宣言と作成、初期化を別々に分けた例です

---例3---
string[] mes; //宣言の時に配列は作らず… 
mes = new string[2]; //ここで配列の実態を作成
mes[0] = "よう。ここは武器屋だ"; //作ったmes配列に値を入れている(初期化)
mes[1] = "用件はなんだ";
--------
0460名無し@キムチ
垢版 |
2017/11/28(火) 20:07:59.51ID:RhKscU2v
>>450
UVの設定は難しいですね。
解説サイトを読みながらその通りにしたのですが、途中で頭が飛びました・・・w
0461名前は開発中のものです。
垢版 |
2017/11/28(火) 20:15:05.92ID:jdFfrrRm
続きです

---例4---
string[] mes;
mes = new string[]{ "よう。ここは武器屋だ", "用件はなんだ"};
--------

---例3---
string[] mes = { "よう。ここは武器屋だ", "用件はなんだ"};
--------
これが一番簡単な宣言と初期化の仕方ですが宣言と同時の時にしか使用できないという条件付きです。
どういう事かと言うと例4のように
---ダメな例---
string[] mes;
mes = { "よう。ここは武器屋だ", "用件はなんだ"};
--------
こういった使い方ができません。


このように宣言と初期化の方法は色々ありますが
自分にあった方法を使うとよいでしょう。
基本的には例2と例3をよく使うことになるかと思います。


次の例は配列が何個宣言されているのか知る方法です。

---例---
string[] mes = { "A", "B", "C", "D" }
Debug.Log("何個ある?=" + mes.Length);
--------

配列を4つ作成しているので「何個ある?=4」と表示されます。この「Length」は後々出てくる「ループ制御(for)」でよく使用しますので覚えておいて損はないでしょう。
0462名前は開発中のものです。
垢版 |
2017/11/28(火) 20:33:20.79ID:jdFfrrRm
作成した配列は
プログラム終了時、又は、システムが不要と判断した時に勝手に削除(解放)してくれるので
基本的に作りっぱなしで大丈夫です。
律儀に手動で削除や解放をする必要はありません。

ですが手動で削除したい場面に出くわす時もあり
その場合は下のように"null"を入れると削除できます。

--例--
string[] mes = {"A","B","C","D"};
Debug.Log( mes.Length ); // 「4」と表示される
mes = null; // 配列を解放
Debug.Log( mes.Length ); // 配列は解放され存在していないのでここでエラーになる
------

今回は以上だクソども
0463名前は開発中のものです。
垢版 |
2017/11/28(火) 20:41:08.15ID:jdFfrrRm
ミスを発見だクソども
>>461

---例3---
string[] mes = { "よう。ここは武器屋だ", "用件はなんだ"};
--------

は「例3」ではなく「例5」だ。
よってその下の説明は

(×間違い×)
「基本的には例2と例3をよく使うことになるかと思います。」

(〇正しい〇)
「基本的には例2と例5をよく使うことになるかと思います。」

となる。
悪かったなこのやろう。
0468名無し@キムチ
垢版 |
2017/11/29(水) 12:57:27.46ID:18BDW4X1
>>461
>>462
>>463
狂った人が出てきましたねw

ただ当方も初心者なので言うのは何ですが、初心者の頃って、
string[] mes = { "きんたま", "おまんこ"};
とかついやりがちですよね?
0469名前は開発中のものです。
垢版 |
2017/11/29(水) 23:01:07.32ID:oSizudki
assetstoreでFREEでダウンロードしてもいい
データを許諾を得ないで商用転用しても大丈夫なんでしょうか?
作ったゲームが万が一大ヒットしてしまった場合
権利関係でもめたくないので
そこらへんの事情を知りたいんですが・・・アメリカって訴訟大国だし
一応Unity関連本によるとAssetStoreのデータでゲーム作って
売ってもおkみたいな解説を見たのですが
0470名前は開発中のものです。
垢版 |
2017/11/29(水) 23:03:38.98ID:Bs8gZldn
Unityの3D gameobject、プリミティブが少なすぎて困ってたけど、

他の3Dソフトで作ったオブジェクトをFBXで保存すれば、
AssetsフォルダにD&Dするだけで、2DのSpriteみたいに、
ガンガン取り込んで使えることをいまさら知った・・・

・・・けっこう便利だ
0472名前は開発中のものです。
垢版 |
2017/11/30(木) 00:48:24.49ID:Bca5C/au
>>469
おいキムチ
てめえは何回同じ質問すれば気が済むんだよ
自分でそのアセットの使用条件ライセンスを読めと何度言われてきている?
いい加減にしろよてめえ!!
0473名前は開発中のものです。
垢版 |
2017/11/30(木) 01:12:49.53ID:p+zCm6Ig
すみません、多分すごいしょうもないことやってるんだとは思うのですが
いつの間にかプロジェクトからヒエラルキーやシーンにドラッグドロップできなくなってしまいました
逆の、プロジェクトに落としてprefab化もできません
何か原因のお心当たりありますか?
0474名前は開発中のものです。
垢版 |
2017/11/30(木) 02:45:37.46ID:K8T1j9f7
Pcごと再起動して同じことを試す
新規プロジェクトで同じことを試す
Unity再インストールして試す

検討つかないけど自分ならこの順番でチェックしてみるかな
0475名前は開発中のものです。
垢版 |
2017/11/30(木) 12:47:34.82ID:3pWvqrrU
どなたかアセットの宴3を使っている人はいませんか?
インポートした場合、トップメニューにToolsのメニューが表示されるはずなんですがありません。
初めてアセットを買ったので基本的な使い方がわかっていないのかもしれませんが、、、。
0478名無し@キムチ
垢版 |
2017/11/30(木) 18:23:37.00ID:zEiwiU74
>>472
おい、>>469の質問は当方ではありませんぞ!!
>>468の書き込みが当方のものだぞ。
おい、間違えないように頼むぞ!!!
0479名無し@キムチ
垢版 |
2017/11/30(木) 19:51:06.16ID:zEiwiU74
>>475
その人のwebサイトを見てみました。
Unitychanを使っていますね。それよりちょっとダサめのキャラは自作キャラですか?
で「宴3」ですが、読んでも結局、何のソフトなのかわかりませんでしたw
こんなわけのわからないものを買うなんて、あなたも相当変な趣味の人ですね
0480名無し@キムチ
垢版 |
2017/11/30(木) 20:06:19.98ID:zEiwiU74
当方もいま自作キャラを開発中です。
名前はヨナchanです。
まだベースがunitychanから出ていなくて、開発途上なんですけど・・・
ベースをどんどんつくりかえてていって、完全にオリジナルのところまで持っていけばゴールです。

https://youtu.be/LRQDRvAIL9o
0482名前は開発中のものです。
垢版 |
2017/11/30(木) 20:21:19.37ID:p+zCm6Ig
>>474
ありがとうございます、PC再起動で直りました
Unity自体は再起動したり新規プロジェクトで試したりしたのですが改善せず困ってました
まずはPC再起動大事ですね
0483名前は開発中のものです。
垢版 |
2017/11/30(木) 20:24:27.76ID:/yHwibrl
宴って日本発assetで一番売上あるんじゃね?
他に有名所あるかも知れんけど
こんだけunity触っててaseetの内容すらわからないってやばくない?
0484名前は開発中のものです。
垢版 |
2017/11/30(木) 20:30:05.01ID:O2HojGoN
ノベルゲームつくーるみたいなもんだよ

レベルの低い開発者を相手に商売するのが一番儲かる
数が多いから
0485名無し@キムチ
垢版 |
2017/11/30(木) 20:40:06.97ID:zEiwiU74
>>480
確かにこの絵は一般ウケする絵ではないようだ。
だが眉を太くしてキツネ目にしないと、どうしてもキムヨナに似ないのだよ。
かといってキムヨナ以外のキャラつくっても、自分的にまったく意味ないし・・・
何かいい解決策はありますか?
0486名前は開発中のものです。
垢版 |
2017/11/30(木) 20:43:51.25ID:Bca5C/au
キムチはライセンス違反と法律違反をしたいようだな
自分で読めと言ってるのを無視し続けるそうなる
馬鹿じゃねーのコイツ
0487名前は開発中のものです。
垢版 |
2017/11/30(木) 22:29:27.08ID:zEiwiU74
>>486
おい、間違いじゃないのか?

>>469の質問は当方ではなく、
>>468の書き込みが当方のものだ。

改変して配布するとダメなことは わかっているよ。
配布するときにはにはunitychanから離れるから大丈夫だよw
0489名前は開発中のものです。
垢版 |
2017/12/01(金) 01:57:58.72ID:bFQS/Q0Q
初心者ですが、UNITYで面白いゲームは制作できますか?
すでにあるゲームでUNITY製の名作って有りますか?
0492名前は開発中のものです。
垢版 |
2017/12/01(金) 07:45:55.95ID:6QgW4dIW
>>489
面白さってものは人それぞれだけど、10万ダウンロードくらいを目指すなら個人でも案外簡単に作れるよ。
0494名前は開発中のものです。
垢版 |
2017/12/01(金) 14:39:48.20ID:yXi5Y/Rd
はいどうも。講師です。
今回はプログラミングの話しではなく
番外編としてゲーム作り理論について少し語ってみたいと思います。

まず初心者の間でよく出る質問が
「面白いゲームの作り方」と
「簡単に作れるゲームはなに?」で
この2つを合体させて「面白くて簡単に作れるゲームはなに?」ですが
この2つは水と油の関係みたいなものです。
基本は反比例関係にあり両立しないと思った方がいいでしょう。

"簡単に作れる"ということは、言ってしまえば誰もが作れるものであり
誰もが作れるのならば、そのゲームは世の中にありふれているわけです。
ありふれているということは誰もが一度は触った事がある可能性が高く
結果、もう飽きられている物が大半と言えます。
具体的には
テトリスやぷよぷよなどの落ちゲーパズル
スコアを競い合うだけのシューティングゲーム
オセロのようなボードゲーム
などがパッと思い浮かびます。
一度は無料ゲームで遊んだことありませんか?

余談ですがゲーム関係の専門学校は卒後するために
自作ゲームの作品を提出する課題を出すところが多いのですが
ノベルゲーム(テキストアドベンチャー)やオセロなどのボードゲームは禁止にしている場合が多いです。
理由はゲームプログラムの勉強にならないほど簡単な為です。
なのでこの2つのジャンルを自力ではなくアセットを使って行うと
あまり自分の為にならないのでゲームプログラミングの勉強をしたい人にはオススメしません。
0495名前は開発中のものです。
垢版 |
2017/12/01(金) 14:46:20.23ID:yXi5Y/Rd
次に「面白いゲーム」についてですが、
あなたが今まで「これ面白いぞ!」と思ったゲームをいくつか思い出してみましょう。
そしてそれの何処が面白く感じたのか、時間をかけてじっくり分析してみてください。
すると今まで漠然と、なんとなく面白いと感じていた物には理由や仕組みがあることに気付けるはずです。

格闘ゲームが好きな人もいれば音ゲーが好きな人もいる点からも分かる通り
「面白い」という感覚は人によって違います。

陥りがちなのが
「自分が面白いと思っているため絶対に他の人にもうけるに違いない」と独りよがりに妄信してしまうことです。
この点には注意が必要です。

これを回避するには
自分は面白いとは思ってないのに世間で人気のある売れてる作品を
冷静に分析してみると勉強になるかと思います。
「自分は面白いとは思わないが皆はこういうのが好きなのか」
という事を理解できるため、これはマーケティング(市場調査)の勉強にも繋がります。
0496名前は開発中のものです。
垢版 |
2017/12/01(金) 14:56:30.77ID:yXi5Y/Rd
そして人気のあるゲームは周期的なブームがあることも覚えておくといいかもしれません。
過去に

縦型弾幕シューティングブーム
格闘ゲームブーム
RPGブーム
シミュレーションRPGブーム
音ゲーブーム
レースゲームブーム
パーティーゲームブーム
無双系ゲームブーム
クラフト系ゲームブーム
脱出系ゲームブーム
FPSゲーブーム
オープンワールド系ブーム

などがあり、ゲームプレイヤーならば記憶に刺さる部分があると思います。

現在は
オープンワールド&オンライン&多人数&対人対戦&FPS&ソーシャル&カード
といったキーワードの入っているゲームの売り上げが好調です
ただしこのブームも全盛期は去年または1年前までで
今は徐々にブームの火が小さくなっているところです。
今、ブームとまではいきませんが少しずつ盛り上がってきているのが
VRを効率的に活用したゲームです。

ここまで読んでいただいた方には分かる通り
売れるゲームを作る秘訣は
「市場のニーズを読み解く」
「作るにはライバルが作れないようないくつもの技術的困難をクリアする必要があり簡単に作れるものではない」
です。
何かの参考にしてみてください。
0497名前は開発中のものです。
垢版 |
2017/12/01(金) 15:02:45.56ID:yXi5Y/Rd
そして
「自分が好きなゲームを作る」のと
「売れるゲームを作る」のとでは
やる事が違ってくるということも覚えておくといいかもしれません。
0502名前は開発中のものです。
垢版 |
2017/12/01(金) 17:07:46.79ID:z8Y+ieF/
Unityは売れるゲームは作れても面白いゲームは無理
ガチャゲー周回ゲーの日本モバイル市場に特化した存在
0504名前は開発中のものです。
垢版 |
2017/12/01(金) 18:20:11.88ID:U3JkgNKD
最新のUnity使ってるんですが、画面全体にエフェクト(できればトゥーン調の)を掛けたい場合、シェーダーではなくポストエフェクト?イメージエフェクト?でないと駄目なのでしょうか。

またassetからイメージエフェクトをインポート出来ると合ったのですが、シェーダーしか無くスクリプトが見つかりません…。最新版では無くなったのでしょうか?
0505名前は開発中のものです。
垢版 |
2017/12/01(金) 18:28:59.91ID:z8Y+ieF/
>>504
画面全体に掛けたい=レンダリングされた平面画像に毎フレーム掛けるしかない=イメージエフェクト
シェーダーで実現したいなら画面に映る物全てにトゥーンシェーダーを適用する
0506名前は開発中のものです。
垢版 |
2017/12/01(金) 18:38:36.03ID:U3JkgNKD
>>505
詳しくありがとうございます
トゥーン調のイメージエフェクトは無いのですか? 標準で使える…みたいな記事は見つかるのですが…
0508名無し@キムチ
垢版 |
2017/12/01(金) 20:12:09.61ID:hUocrHlF
>>505
シェーダーとイメージエフェクトは違うのですか?
当方にはまったく同じものに思えますが・・・
違いがさっぱり理解できません!
0510名前は開発中のものです。
垢版 |
2017/12/01(金) 22:07:00.78ID:PPFvlOOP
普通にチュートリアルの初級レベルの話だろうに
基礎も何も習得しないでゲーム作りたいとかいってる馬鹿ばっかり
0512名前は開発中のものです。
垢版 |
2017/12/01(金) 22:18:25.44ID:XdIIu3Ls
アセットストアから購入した3dモデルをインポートし、
fbxをヒエラルキーに追加しました。
他のオブジェクトから、そのfbxオブジェクトを操作しようとしたところ、
GamaObject.Find は成功している?が、
GetComponentが全て失敗します。(transformも反応なし)
何か考えられる原因はありますでしょうか?

(ちなみに、全然別のfbxを追加したものは、普通に各種操作ができています)
0515512
垢版 |
2017/12/01(金) 22:44:19.86ID:XdIIu3Ls
>>513
Satomi Character Pack 1.05
です。
Assets->SatomiCharacterPack->Resources->Satomi->ModelsLegacyの中の
f05_blazer_020_h.fbx
を使用しました。
ModelsMecanim下のfbxを使用した場合も同様でした。
0516名前は開発中のものです。
垢版 |
2017/12/02(土) 02:23:48.29ID:kw6WMn7F
>>512
全て失敗ってなに?とりあえずコード晒す方が日本語で説明するより分かりやすいかもね
失敗してるなら、そのGameObjectが指定したコンポーネント持ってないだけだしょ

transform.positionを更新しても反映されないとかだったらAnimatorコンポーネントでもくっついてるんじゃないの?
0517名前は開発中のものです。
垢版 |
2017/12/02(土) 12:37:49.52ID:KdtKUsmR
>>514
そもそもトゥーン調のイメージエフェクトあるなんてその記事に書いてなくね?
csファイルが見つからないのはフィルタ掛けてるから表示されてないとかじゃないか?
https://docs.unity3d.com/jp/540/Manual/ProjectView.html

トゥーン調のイメージエフェクトの有無
csファイルが表示されない

2つの問題をごっちゃにして話すのはやめよう
0518512
垢版 |
2017/12/02(土) 12:45:52.56ID:r/TnWS2d
>>516
あ、ModelsLegacy下のfbxオブジェはAnimationコンポーネントが、
ModelsMecanim下のfbxオブジェはAnimatorコンポーネントが付いてる。
ので、transformが不正落ちしないけど反応しないのはそれが理由のようです。ありがとうございます。初心に帰ります。
ただ、下記のように、fbxオブジェが明らかに所有するコンポーネントを取得できてなくて、
触ると不正落ち。なのが不明です。(kuriControllerスクリプトは間違いなくfbxオブジェクトにaddComponentで追加されている)
0519512
垢版 |
2017/12/02(土) 12:46:17.66ID:r/TnWS2d
//検証用コード
GameObject kuri;
kuri = null;
kuri = GameObject.Find ("f05_blazer_020_h");
if (kuri == null) {
Debug.Log ("error obj");//これは出ない
}
Debug.Log (kuri.name);//正しい名前が出るのでfindはうまくいってる

kuriController kuriCtr;
kuriCtr = null;
kuriCtr = kuri.GetComponent<kuriController> ();//取れてないっぽい
if (kuriCtr == null) {
Debug.Log ("error ctr");//このログが出る
}
kuri.transform.Rotate (50, 50, 50);//落ちないけど反応なし
kuri.transform.Translate (4, 4, 4);//落ちないけど反応なし
Animation anim;
anim = kuri.GetComponent<Animation> ();//取れてないっぽい

//animが取得できていない?ため、anim.CrossFade ("jump_10", 0);を実行すると不正落ち。 jump_10はfbxオブジェに追加定義されている
0520名前は開発中のものです。
垢版 |
2017/12/02(土) 12:52:23.71ID:9wrLWKjx
なんつーかバカ初心者だな
ゲームオブジェクトとかインスタンスとかプレハブとかアセットとか全然区別ついてねえだろ
0521512
垢版 |
2017/12/02(土) 13:08:01.94ID:r/TnWS2d
>>516 >>520
インスタンス化した状態で実行したら全てうまくいきました。
ありがとうございました。(+勉強しなおします。)
(よくみたら今までfbxオブジェ色付きのままでやってた)
0522名前は開発中のものです。
垢版 |
2017/12/02(土) 13:18:54.24ID:QiTn2gz/
オブジェとか変な略し方キムチが良くしてたな
チュートリアルやっても3歩歩くと忘れるキムチレベルの記憶容量なのかね
0523名前は開発中のものです。
垢版 |
2017/12/02(土) 13:32:08.13ID:YuBXIsDc
インスタンスについて教えて!概念を理解するのがいまだに難しい。

変数にゲームオブジェクトを代入するとメモリが確保されてそれが実体です。と覚えてるけど合ってる?

プログラマーは当たり前に理解してるから頭がいいね。
0524名前は開発中のものです。
垢版 |
2017/12/02(土) 13:34:27.88ID:cJP2gnBR
実際キムチだしな。
コイツは質問する時だけコテハン外して新規利用者のふりしてやってる姑息な野郎。
だから余計嫌われる。
キムチの質問と言葉遣いは特徴的だからバレてるのに馬鹿な奴だよ。

アセット、ライセンス、有料アセット、モデルインポートの話が続くのは
これ関係はほぼキムチ
0525名前は開発中のものです。
垢版 |
2017/12/02(土) 13:38:44.09ID:cJP2gnBR
>>523
教えて!じゃなくて調べろよ
何のためのインターネットだ
2ch見てる時間に調べろ
そうすれば今頃とっくに理解できてるぞお前
馬鹿なのかお前?
0526名前は開発中のものです。
垢版 |
2017/12/02(土) 14:12:32.14ID:iGp4XfXv
>>523
インスタンス、実体化、とか、数多の書籍、先輩への応答をしても中々身につかないw
ましてや、ここでは説明しきれんぞ。というか、説明しても一向に理解できないと思う。慣れろw
0528名前は開発中のものです。
垢版 |
2017/12/02(土) 14:28:05.67ID:9nBWxaR1
クラスは本来newしてインスタンス化しないと呼び出せない筈。
(生成前に呼ぶと、実体が無いからコンパイラに怒られる)
普通は使う時にインスタンス化してコンストラクタで初期化して実体にする。
不要になったらdeleteで破壊、その時に呼び出されるのがデストラクタ。
newとdeleteがセットで、newしたものは必ずdeleteしないといけない。

C#は初期化しなくても勝手に初期化されるとか、MonoBehaviourが介入してて、
ルールが厳格でないし、あとC#自体が緩い。
0531名前は開発中のものです。
垢版 |
2017/12/02(土) 14:34:15.30ID:9nBWxaR1
明示的にインスタンスの生成と破壊をしないから、分かりにくいっつーだけだが、
多分C#だけとかUnityだけじゃ分からないんでないの?
0532名前は開発中のものです。
垢版 |
2017/12/02(土) 14:38:46.04ID:wj973gUN
2017を最初インストールしてその時はちゃんと動作してて、その後Unity5に入れ直して、また5消して2017入れ直して、2017を起動したら
・MSVCP120.dllが見つかりません。再度インストールし直すと解決する可能性があります。
・MSVCR120.dllが見つかりません。再度インストール・・・
と2つエラーが出て起動できなくなって何度アンインストールして入れ直しても同様に起動できないのですがどうすればいいのでしょうか
0534名前は開発中のものです。
垢版 |
2017/12/02(土) 14:53:07.45ID:cJP2gnBR
>>531
初心者のインスタンス分からない病はそれ以前の問題
何故インスタンスが必要なのか
インスタンスのメリットとかの概要から説明しないとだめ
0535名前は開発中のものです。
垢版 |
2017/12/02(土) 14:55:31.83ID:kw6WMn7F
>>512
>アセットストアから購入した3dモデルをインポートし、 fbxをヒエラルキーに追加しました。
これでインスタンス化=ヒエラルキービューに配置されてる

>>521
>インスタンス化した状態で実行したら全てうまくいきました。
???
512で言った通り、GameObject.Find ("f05_blazer_020_h"); が見つかる時点でインスタンス化されてるんだけど・・・
GameObject.Findってシーン上のオブジェクト探すものだよね
あとf05_blazer_020_hにkuriControllerが付いててGetComponentした場合、失敗するケースなんてないと思うんだけどなあ
ほんとについてるの?って思う
自己解決されてるようだが、謎
0536名前は開発中のものです。
垢版 |
2017/12/02(土) 15:07:25.07ID:KdtKUsmR
>>534
高卒専卒プログラマにはこれが理解できないんだよな
理系大卒を未だに採用しないといけない理由がこれ
0538名前は開発中のものです。
垢版 |
2017/12/02(土) 15:18:02.85ID:kw6WMn7F
>>523
>変数にゲームオブジェクトを代入するとメモリが確保されてそれが実体です。と覚えてるけど合ってる?
初心者はコード乗っけた方がいいと思う。言葉だとざっくりしすぎ
var go = new GameObject();
⇒これならgoという変数にゲームオブジェクトがインスタンス化=実体化される。
[SerializeObject] GameObject otherGameObject;
var go = otherGameObject;
⇒これは変数に参照を渡しただけでメモリ確保とは言わない。
int n = 10;
配列じゃない数値型を初期化しかときにメモリ確保なんて言わないよね。これと一緒
0540名前は開発中のものです。
垢版 |
2017/12/02(土) 15:51:11.66ID:E/WquxJE
知り合いのゲーマーがUNITYのゲームはクソゲーしか無いからUNITYで作るなと言われました
どうしたらいいでしょうか?
0541名前は開発中のものです。
垢版 |
2017/12/02(土) 15:54:22.47ID:KdtKUsmR
>>540
ゲーマーが喜ぶようなゲームを作るにはUnreal Engineを使いましょう
Unityは簡単に安く低スペックでゲームを作れることが強みです
0544名前は開発中のものです。
垢版 |
2017/12/02(土) 16:42:51.28ID:cJP2gnBR
インスタンスの説明はここでは無駄だと言ってるのに何で続けてるんだお前ら?
初心者を完全に理解させる説明するにはメモリー本体のハードウェアの話しと
メモリーのアドレス空間、そしてC言語のアドレスとポインタの説明が必要不可欠なんだよ。
0546512
垢版 |
2017/12/02(土) 16:56:38.72ID:r/TnWS2d
>>535
具体的には、ヒエラルキー上で青色のf05_blazer_020_hに対して
うまくいかなかったものを、
メニューのGameObject -> BreakPrefabInstance
を実行して黒色にしたらうまくいくようになりました。
「インスタンス化したら」という表現は適切でない書き方でした。すみません。
たしかにヒエラルキーにあれば、黒も赤も青もインスタンスはインスタンスですね。

あれ?でも別のヒエラルキー上の青色のオブジェクトに対しては
別オブジェクトからgetComponentできてる・・・

うまくいったのは別の理由?と思ったけど、それ以外操作してないんだよなあ・・・
0548名前は開発中のものです。
垢版 |
2017/12/02(土) 17:09:15.66ID:iGp4XfXv
>>544
いや、正直あんま理解せず使えるもんだから、まぁこうすりゃ動くねいままで作ってきた私には、理解した上で、先の説明は合点がいったw
上の先生方、ありがとう。
0549名前は開発中のものです。
垢版 |
2017/12/02(土) 17:49:06.53ID:kw6WMn7F
>>544
あほくさ

>>546
プレハブとのリンク切ったからGetComponentできるようになりましたなんて、ありえないよ
まあなにかほかの要因でしょう
0552名前は開発中のものです。
垢版 |
2017/12/02(土) 19:43:52.89ID:cJP2gnBR
>>549
あほくさだと?
お前がインスタンスの仕組みを理解せずに参考書通りのマニュアル回答している人なのはよくわかった
言っとくがお前の>>538の説明はインスタンスの使い方の説明であって
インスタンスその物をまったく理解しておらず間違ってるから人に説明する時は気を付けることだな
0554名前は開発中のものです。
垢版 |
2017/12/02(土) 19:59:45.29ID:cJP2gnBR
お前は予備知識があるから少しの説明で済みそうなので教えてやる。
インスタンスはクラスのコピーとポインターを足したような機能をイメージしろ。
大元となるオリジナルのクラスは実行時に静的アドレス空間に1つだけ展開されている。
これをひな型だと思え。
インスタンスとは、このひな型の一部を別のアドレス空間にコピーし、コピーしなくて済む部分はひな型のあるアドレス番地を直接参照して
大元のクローンを作って仕様することを言う。
この方法により容量制限のあるメモリーを節約して効率よく使用できるのと
メモリー空間にバラバラに変数が展開と解放を繰り返しゴミデータ化し
GCが頻繁に発生するのを防ぐのに役立つ
結果、各値の参照をする時の速度低下を防ぎプログラムの実行速度低下を防止している

これがインスタンスだ

わかったかボケ>>553
0555名前は開発中のものです。
垢版 |
2017/12/02(土) 20:00:28.44ID:cJP2gnBR
知ったかで話してるんじゃねえぞ?
誰かに物を教える時はてめえ自身がよく理解を深めて置け
0556名前は開発中のものです。
垢版 |
2017/12/02(土) 20:03:26.16ID:bez9ayka
>534で必要とかメリット言ってる時点でダウト
バレバレだから触られてないって気付けよ地雷
0557名前は開発中のものです。
垢版 |
2017/12/02(土) 20:10:15.41ID:cJP2gnBR
>>556
え?馬鹿なの?最初の質問100回読み直したら?>>523
概念についての質問だぞ
使い方ではなく 概 念 な

頭冷やしてみな
お前が相当馬鹿な事言ってるの理解できるはずだ
0558名前は開発中のものです。
垢版 |
2017/12/02(土) 20:17:20.94ID:cJP2gnBR
でだ、その概念について自称初心者の523にいきなり>>554なんかぶつけて理解できると思う訳?
だからググレとこのように誘導している>>525
実に的確だろう

それを>>528>>538のように質問者が教えてほしい事とはまったく関係ない返しをしてるのに
自分はわかってます風でしゃしゃり出てくる頭でっかち連中
ちゃんと質問者の質問を汲み取って回答したれや

そんな頭でっかち連中は最後はこんなですわ
幼稚幼稚 >>553 >>556

とりま今後は言葉に気を付けた方がいいだろう
間違えると俺みたいな面倒な奴が噛みつくぜ?
0559名前は開発中のものです。
垢版 |
2017/12/02(土) 20:17:56.28ID:YuBXIsDc
素晴らしい!
皆さんのお陰でインスタンスの理解が格段に深まりました!心より御礼申し上げます。
0562名前は開発中のものです。
垢版 |
2017/12/02(土) 20:24:49.25ID:cJP2gnBR
って思うじゃん?
心の目でみるようにしないと人生損するぜ?
なんでも疑心暗鬼にいきてるとスネ夫みたいになるぜ?

答えは1つ
自演ではありません
0563名前は開発中のものです。
垢版 |
2017/12/02(土) 20:25:32.28ID:VKRQuwOY
↑のような発言を行なう者は統計学的にぺニスが著しく小さな成人中年男性に見られる傾向があります。
0565名前は開発中のものです。
垢版 |
2017/12/02(土) 20:27:37.89ID:cJP2gnBR
>>561
ま!お前以外の当事者全員が自演じゃないことはわかってるんだけどな!
お前だけが真実を見えてないわけよ
ID1つが人1人で見た通り素直にみたほうがいいぜ
主要メンバーは俺含めて4〜5人でのやり取りだからな
0566名前は開発中のものです。
垢版 |
2017/12/02(土) 20:29:04.18ID:cJP2gnBR
>>564
うんうんそれでそれで?
じゃあ>>563>>564も自演ってことになるのかな?
違うよね。お前ならわかるわな。
世の中偶然が重なる事って沢山あるんだよ。
勉強になっただろ。
0567名前は開発中のものです。
垢版 |
2017/12/02(土) 20:30:16.69ID:lDjfPpyu
https://codegenius.org/open/courses/24/sections/212

このサイトの通りに敵の攻撃を停止させるアイテムを作成した所
そのアイテムのistriggerの欄にチェックを入れると
そのオブジェクトアイテムが床をすり抜けてしまいました
どうすればいいでしょうか?
0569名前は開発中のものです。
垢版 |
2017/12/02(土) 20:33:57.08ID:cJP2gnBR
>>567
ああん!?てめえしばくぞ!!

当たり判定はトリガーかコライダーかどっちか1つしか使えねえんだよ!!
何でそうなってるかわかるか!?
どっちも本質は同じだからだよ!!
どちらか片方できればもう片方もできるからだ!!
すり抜けたくなかったらトリガーじゃなくてコライダー使えや!!
しばくぞ!!
0570名前は開発中のものです。
垢版 |
2017/12/02(土) 20:36:36.41ID:cJP2gnBR
>>567
頭にきたからもっと言ってやる!

トリガーってのはな!もともとすり抜けてもいいオブジェクトにつけるもんなんだよ!
でもよ幽霊みたいに壁をすり抜けると、あれ?幽霊が壁に当たった時ってどうやって判定するわけ?
ってなるだろ!!!

そういう時に使うもんだ
イズトリガー
0571名前は開発中のものです。
垢版 |
2017/12/02(土) 20:59:49.29ID:kw6WMn7F
>>554
で、結局きみは>>523の力になれたわけ?
なれてないよね〜、それよか>>528とかの方が具体的には説明してるだろ

君の
>本体のハードウェアの話しとメモリーのアドレス空間、そしてC言語のアドレスとポインタの説明が必要不可欠
とかなんとかあたかも自分はいろいろ知ってるぜ的な主張は何も説明できてないわけ。あほくさ
そもそもハードウェアって単語がなんででてくるのか、あほくさ。

>>554
を最初に言えば難しい説明だけどましなんちゃう?
ただ、この方法により〜から下の内容は関係ないとおもいまーす
0572名前は開発中のものです。
垢版 |
2017/12/02(土) 21:01:19.88ID:PDtJg3nP
Colliderを設定することは、ゲームで言うところの当たり判定枠を設定すること
当たり判定時に衝突させるか、通過させるかは、isTriggerというフラグで切り替え

衝突を行いたいとき(通過させたくないとき)は、isTriggerをオフにして、
接触をOnCollisionEnter(Collision)イベントで判定する
判定相手は、Collisionで取得し参照が可能

衝突を行いたくないとき(通過させたいとき)は、isTriggerをオンにして、
接触をOnTriggerEnter(Collider)イベントで判定する
判定相手は、Colliderで取得し参照が可能

どちらも、「Enter」を、「Stay」や「Exit」に変えれば、
接触開始時、接触中、接触終了時をそれぞれ判定可能
0573名前は開発中のものです。
垢版 |
2017/12/02(土) 21:28:25.43ID:PDtJg3nP
>>567

オブジェクトA(自機)に対して、オブジェクトB(床)に対しては衝突して、
オブジェクトC(敵)に対しては通過したい場合ですかね?

オブジェクトをレイヤー分けするか、タグ付けすると良いですよ

Aは、レイヤー:A、Colliderあり:「isTrigger」オフにして、

Aの子オブジェクトを空オブジェクトDとして作成し、
Dは、レイヤー:D、Colliderあり:「isTrigger」オンにします

床:Bは、レイヤー:B、Colliderあり
敵:Cは、レイヤー:C、Colliderあり

Physics設定で、レイヤー間の判定表を、
A-B 接触あり
D-C 接触あり
それ以外 接触なし

自機Aは床Bと接触して衝突を起こし、
 OnCollisonEnterイベントを生じます

また、自機の子Dは敵Cと接触するが通過し、
 OnTriggerEnterイベントを生じます

レイヤーを使わない場合は、
OnCollisonEnterイベントやOnTriggerEnterイベント内で、
接触相手のタグを判定して挙動を変えます
0574名前は開発中のものです。
垢版 |
2017/12/02(土) 21:28:34.25ID:iGp4XfXv
何か荒れた感じだけど、近年になかった充実した講習内容だなぁ。
それぞれの方は、イライラもあったりしてるかもしれないけど、たぶんにみんなのためになってると思うから。ありがとう。
0575名前は開発中のものです。
垢版 |
2017/12/02(土) 21:30:12.86ID:cJP2gnBR
>>571
なれてるんじゃね?
本人が皆さんのおかげでと言ってるしな
お前の説明の何処が具体的な概要説明なんだ?
まあしかしだ、そんなお前のも力には慣れたんじゃねーの
もう一度言うが、皆さんのおかげでと言ってるからな

何を言ってるんだお前
最初の質問で、あいつには俺の説明は難しいから回答しなかったのだが
それを偉そうだとか
全然ダメだお前!マジダメ!
だから人の書き込みをもっと読んで真意を汲み取れるようになれって言ってるだろう
俺の書き込みからすら読み取れてないから質問者のも読み取れないんだよ

メモリーをハードウェアじゃないとでも思ってるのか
メモリー交換どうやるんだお前
バーチャルに浸り過ぎじゃねーのか?大丈夫か?
0576名前は開発中のものです。
垢版 |
2017/12/02(土) 21:35:55.28ID:cJP2gnBR
>>574
安心しろ
俺はいつも平常心だ
こんな場でイライラしてるようでは世の中生きていけない、つーかハゲるぞ
その時の気分でわざと怒ってるフリ
したり〜♪
吹っ掛けて相手をイラつかせて楽しんだり〜♪
応戦したり反論したり無視したりと
本来の2chの楽しみ方を超堪能している利用者だから安心しろ

例えばコイツも→>>571
頑張って反論してきてるなと思って猫じゃらしで遊んでる気分
可愛いよママン。(^ω^)ペロペロ
0578名前は開発中のものです。
垢版 |
2017/12/02(土) 21:40:27.12ID:cJP2gnBR
技術者ってのはある程度自分の知識ややってきたことに自信を持ってるやつが多い
すると頑固者が多い
メリットにもデメリットにもなる
その聖域をつつくと結構カチンと来て反論してくる奴が多いわけよ
開発チームでデザイナーとプログラマーがよく衝突するなんてのは有名
それ分かっててやってるからな
俺は言葉遊びと言葉誘導、そしてマインドコントロールと相手の心読むのも得意だぜ?(^ω^)ペロペロ
0579名前は開発中のものです。
垢版 |
2017/12/02(土) 21:42:50.63ID:cJP2gnBR
それにこういう所の面白いのは
昨日は仲良く話してた相手だったりするんだよな
今日言い合っても明日は普通にここでやりとりしてるわけよ
知らずにな

わざわざNGにしたことひけひらかしたり、それを幼稚行為と罵ったり
これらが掲示板の醍醐味っしょ!
0581名前は開発中のものです。
垢版 |
2017/12/02(土) 22:02:53.70ID:cJP2gnBR
そりゃそうだ
荒れないような言葉選びでやってるわけじゃないからな
しかし変に技術的知識があり質問にも回答しちゃうところが厄介だろ?
いーひひっひ
0584名無し@キムチ
垢版 |
2017/12/02(土) 22:32:03.18ID:1VwFPxoc
スレとは関係ないんだけど、どうしても発言したいことがある。
菊池寛賞は文学賞ではなく、すぐれた文化活動をした人に与えられる賞である。
それなのに文化活動などまったくした痕跡のない浅田真央が菊池寛賞を受賞した!!
理由は「氷上の華麗な演技によって人々に深い感銘を与えた」からだと!!
どこから働きかけがあった!?電通か?NHKか?

姉のことを「まい」と呼び捨てにする真央が菊池寛賞を受賞したw
姉まいに荷物を持たせて、前をいつも歩く真央が菊池寛賞を受賞したw
許せないな!!!
0587ダーク王鍬大使 ◇SoVpkB15jY
垢版 |
2017/12/02(土) 23:17:56.38ID:cJP2gnBR
正体は僕でふた(^^
1人も当てられなくててざんねんでふたね(^^
ボッキング!(^^
0590名前は開発中のものです。
垢版 |
2017/12/03(日) 12:04:58.25ID:NWJhSQyF
>>569
比較するならトリガーとコリジョンだな
これらはいずれもコライダーを用いて判定され、単一のコライダーはこのどちらか一方の判定しか返さない

こんな基礎の基礎すらわかってないど素人がゴロゴロしてる場所で他人に教えるつもりなら最低限言葉は正確に使えよ
万一教えてる本人が区別して使えてないなら他人に教えられるだけの能力がないってことだ

ど素人は喜ぶかもしれんがね、こうした一見正しそうに見える間違いだらけの講釈を鵜呑みにすると、後々混乱したり間違って覚えてたりで苦労するから注意な
0591ダーク王鍬大使 ◆SoVpkB15jY
垢版 |
2017/12/03(日) 12:10:54.32ID:xua3StZy
せめて似たトリップ持ってきてくらふぁい(^^
大使スラングの使い方もガバガバでふ(^^
こんなのでよく成りすまそうと思いまひたね(^^

それより新情報(^^
実はキムチ、アセットおじさん、都合の悪い人が全部同一人物に見える人などなどは全部僕でふ(^^
ほかにも通常レスの9割は僕でふ(^^
このスレはあまりにも過疎いので僕が自演して盛り上げてまんこ(^^
ようするにこのスレは僕と君だけのスレでふ(^^
ボッキング!(^^
0593名前は開発中のものです。
垢版 |
2017/12/03(日) 12:50:04.87ID:nLhZMbcD
>>590
IsTrigger=falseのコライダーでも、相手側のコライダーがIsTrigger=trueならOnTrigger○○は呼ばれるから両方を扱えるでしょう
どちらか一方ではない
0594名前は開発中のものです。
垢版 |
2017/12/03(日) 13:11:29.64ID:AJZEWdHy
Rigidbody2Dの挙動について
グラディウスVの5面のように隕石をよけつつ破壊するゲームを作っているのですが
隕石をRigidbody2Dで制御して動かしていると、タイトルバーのクリック時や移動などでゲームが一瞬停止し、再び動いた時に
Rigidbodyで動かしているオブジェクトがワープしたような状態になってしまうのですが、これの対処法はあるのでしょうか
Rigidbodyオブジェクトの移動の停止にラグがあるような感じがします
ちなみに別のアプリケーションをアクティブ化してゲームを停止させる場合はこの現象は起きません
0596名前は開発中のものです。
垢版 |
2017/12/03(日) 13:18:43.38ID:nAeqWHgE
>>594
画面外クリックされたときに、ポーズ画面があるなら遷移させてあげて、
Time.timeScale = 0;とかしたら大丈夫なんじゃないかな
0597名前は開発中のものです。
垢版 |
2017/12/03(日) 13:22:07.45ID:NWJhSQyF
>>593
この場合、OnTriggerXXはisTrigger=trueに設定された相手側のコライダーの作用によるもので、それが通知されているに過ぎないんだが確かにその説明はしてないな、補足サンクス
0598名前は開発中のものです。
垢版 |
2017/12/03(日) 13:22:46.47ID:FHHClEgu
グラディウスVなんて知らないので
最低でもドリフトスピリッツ以上にダウンロードされたゲームで頼む
0601名前は開発中のものです。
垢版 |
2017/12/03(日) 13:52:45.60ID:7s+hWVbw
グラディウスIIIもVも売り上げはドリフトスピリッツ以上のゲームです。
グラディウスは全国のアーケードでフル稼働していたうえに
その後、様々な家庭用ゲーム機に移植されて販売されました。
これらの総数はドリフトスピリッツを遥かに超えている。…ものと推測されます。
0603名前は開発中のものです。
垢版 |
2017/12/03(日) 14:26:08.42ID:AJZEWdHy
>>596
なるほどtimeScale自体の操作で即座に止めてしまってもいいわけですね
RigidbodyやPhysicsの設定で間違っているのかと悩んでいました
この方法で試してみます。 ありがとうございました
0604名前は開発中のものです。
垢版 |
2017/12/03(日) 14:58:20.17ID:Svmnhovq
RigidbodyはfixedTimeのスケールで動いているので、
時間が飛ぶと、処理も飛んで、物理挙動が怪しくなります。

確かに、時間自体を停止した方が良いですね。
0606名前は開発中のものです。
垢版 |
2017/12/03(日) 16:03:01.66ID:Svmnhovq
Unityの3Dのプリミティブ、ちょっと少なすぎる気がする

円柱
カプセル

立方体
平面

円錐
円板(円盤型)
トーラス(円環型・ドーナツ型)
・・・くらいあった方が良い気がする

拡張機能とかアセットであるのかな??
0609名前は開発中のものです。
垢版 |
2017/12/03(日) 17:03:10.74ID:Az/vLVCX
複数の変数の中身を比較して最大値の変数を選択する処理をさせたいのですが、
思いつく書き方だとifやmaxで比較を繰り返していくような冗長な文しか思い浮かびません
値を比較する処理と変数を指定する処理をうまいことやるにはどんな感じに書くのがいいのでしょうか

変数の中身の値は動的に入れ替わるものです
0610名前は開発中のものです。
垢版 |
2017/12/03(日) 17:20:00.94ID:Svmnhovq
float xMax = Mathf.Max(x1,Mathf.Max(x2,Mathf.Max(x3,Mathf.Max(x4))))
x1, x2, x3, x4の中で、最大のものを変数xMaxに代入みたいな?
0611名前は開発中のものです。
垢版 |
2017/12/03(日) 17:23:34.84ID:Svmnhovq
xの個数が不定なら、
xを配列にして、配列インデックスの最大値まで比較できるように、
ifでインデックスを確認して、最大値まで比較を繰り返すようにして、
比較部分を再帰にしたほうが良いかも
0612名前は開発中のものです。
垢版 |
2017/12/03(日) 17:30:58.36ID:Az/vLVCX
この場合できるのはそれぞれの変数の中身の値の比較だけですよね?
その値が入っている変数を選択して次の処理に持ち越せないというか
結局、その値を持つ変数がどれなのかを判定する処理が同じような感じで必要になりませんか?
値が同値だった場合もまた問題でるでしょうし

と考えてしまったのですが、それは私の考えが間違っているのでしょうか
0614名前は開発中のものです。
垢版 |
2017/12/03(日) 18:13:32.24ID:nAeqWHgE
>>610
T Max<T>(params T[] values) => values.Max();
void Start()
{
float a = 1, b = 5, c = 3;
var max = (new[] {a, b, c}).Max();
Debug.Log(max);
max = Max(a, b, c);
Debug.Log(max);
}
>>612
最大値を計算して変数にいれて、そっち使えばええやん
0617名前は開発中のものです。
垢版 |
2017/12/03(日) 22:07:22.42ID:BWVc/QKy
>>616

>>606じゃないけど、テストで使うにしても、
方向を示せる『尖がった図形』は欲しいかなと思った

特に、3D回転が入ると向きがわかりにくくなるから、
Quaternion回転がわかるように、進行方向を指す矢印として、
円錐は正直欲しいかも

今は、太い円柱と細い円柱を、2段ロケットみたいに連結して、
グループ化してやっているけど・・・

いちいち3Dソフトでプリミティブ図形を作って持ってくるのは面倒で
0620名前は開発中のものです。
垢版 |
2017/12/03(日) 22:21:29.58ID:BWVc/QKy
>>619もちろん、
1度円錐を作っちゃえば、Assetsデータとして、
それをプロジェクト間で使い回わせば良い話だけどね

ただ、3Dソフトなしでもすぐ作成できるように、
円錐くらいはプリミティブとしてあっても良いかなと

ベクトルの向きを表すのに、円柱だと両端が同径だから、
一方向を示すコンパス的な役割は厳しくて・・・
0621名前は開発中のものです。
垢版 |
2017/12/03(日) 22:35:24.81ID:nAeqWHgE
>>620
ぐぐったら上から2番目にあったよ
任意サイズの円錐メッシュがUnity上でつくれる
ttp://wiki.unity3d.com/index.php?title=CreateCone
0622名前は開発中のものです。
垢版 |
2017/12/03(日) 23:30:36.21ID:XFX2a6vO
カキコ失礼します。Android向けのVRソフトを作っているのですが、
VRとしてのステレオビューを確保したままヘッドトラッキング機能だけを無効にするには、
どのようにすればいいのでしょうか。
環境はUnity(2017.2.0f3), Google VR SDK for Unity(v1.110.0) です。
スレチor情報不足だったらすみません。よろしくお願いします。
0624名前は開発中のものです。
垢版 |
2017/12/04(月) 08:10:47.35ID:zRTb/yRx
>>622
VRもってないからわかんない
これのこと?
ttps://github.com/googlevr/gvr-unity-sdk/issues/631
一番下のコメントでVR描画にはヘッドトラッキングとステレオ描画が必要で、個別に無効にする機能はないって言ってるよ
0625名前は開発中のものです。
垢版 |
2017/12/04(月) 08:48:27.44ID:zRTb/yRx
円錐が本当に欲しいと思う人は、上の人が言っている通りフリーとかでもいいから3Dソフトで作ると思う
こういうコードを作った人は技術的好奇心かあるいはプロシージャル関連のものを扱ったプロジェクトのスニペットじゃないかなと考えるよ
円錐が欲しいと思ってもこんなコード書くのだるすぎっしょ
0629名前は開発中のものです。
垢版 |
2017/12/04(月) 12:58:27.72ID:Yul1lcH9
UGUIじゃないオブジェクトにspriteイメージとcubeタイプのcolliderと ipointerhandlerをつけて、スマホのタッチに反応するオブジェクトを
作ったのですが、androidだと動くのですが、
iOSだと無反応になってしまいます。
これはiOS側の仕様なのか、何か設定が間違っているかわかる方はいらっしゃるでしょうか?
0630622
垢版 |
2017/12/04(月) 13:32:27.18ID:1RoglZcV
>>624
ありがとうございます。一応そこは読んだ上だったんですが、
とりあえず何か別の方法を探ってみます
0631名前は開発中のものです。
垢版 |
2017/12/04(月) 16:35:54.78ID:Y1gPV0IK
スレタイが質問スレッドだから質問ばっかりなんだ!
0632名前は開発中のものです。
垢版 |
2017/12/04(月) 17:14:54.35ID:jXiGx0j8
Phtonに関しての質問です。
無料版だと20人まで同時接続可能とのことですがそれは1つのルームに20人までなのか全ルーム合計して20人までなのかわかりかねています。どちらの認識が正しいですか?
0635名無し@キムチ
垢版 |
2017/12/04(月) 17:56:42.24ID:dJFhmUOd
シェーダーテストしてみました。
ホントは千切れた太腿の断面がほつれるところを狙ったのですが、赤く変色しただけに終わってしまいました・・
もう少しレベルアップしてみます・・・

https://youtu.be/j6q7-8Psedw
0636名前は開発中のものです。
垢版 |
2017/12/04(月) 19:30:45.71ID:G5J8YI0q
銃のライセンスって現状どうなっているのでしょうか?
現世代の銃をゲームに出して良いのかで悩んでいます
0638名前は開発中のものです。
垢版 |
2017/12/04(月) 23:13:10.81ID:4/bDvJMv
>>636
四年前に少々問題になった話は日本語のニュースでも見られたけれど、続報が無いね。アセットで有れば良いね
0639名前は開発中のものです。
垢版 |
2017/12/04(月) 23:23:54.85ID:l4XGAHxi
>>636

オープンに配布する気なら、許諾をとるか、ライセンス料を払うかだけど、
架空のものにするのが一番早いのでは?
戦前の銃なら大丈夫かもしれないけど・・・

名前だけ出して、見た目は出さないなら、引用もあるかもだkでど、
見た目まんま映像で出しちゃうのはさすがに大きな問題がありそう

自分だけ、仲間内での使用ならバレないだろうけど、
ネットにうpやお金取ったらヤバイでしょう・・・

ほどほど稼いだところで、賠償金の法的処置が来るのでは??
0640名前は開発中のものです。
垢版 |
2017/12/04(月) 23:29:19.30ID:LusBDJ2z
3Dで部屋を歩くゲームを作るのですが、広告を付けて配布する場合に利用しても良いフリーの3Dモデルを扱っているサイトがあれば教えてください。
欲しいデータは家具や扉などです。
3dmodelfree.comが種類が多くて良いのですが商用利用可能かどうか不明です。
0641名前は開発中のものです。
垢版 |
2017/12/04(月) 23:43:09.31ID:l4XGAHxi
>.>621

これすごいわ!

「Create other」から「cone」を選ぶと、
現在位置に、頂点数と開き角度と高さを指定して、
一発で円錐が作れるじゃん!!

底面あり・なしとコライダー追加する・しないも
事前にチェックできるという便利さ

ただ、なぜかピンクピンクしたマゼンタで作成されるのが、
イマイチだな・・・
まあ、色は変更するけどさ
0642名前は開発中のものです。
垢版 |
2017/12/05(火) 03:45:02.00ID:y1kuw0Zl
fpsで架空の銃とか燃えないわ
やっぱり実銃ぶっ放してこそでしょ
架空の銃とか俺がクソゲ認定してやるよ
0644名前は開発中のものです。
垢版 |
2017/12/05(火) 11:17:56.63ID:yshp25f1
丸いオブジェクトがあって、今現在ただ転がったり落ちるだけなんだけど
こいつに弾性をつけて多少弾むように改造したいんだけどどのパラメーター弄ればいいのでしょうか
0646名前は開発中のものです。
垢版 |
2017/12/05(火) 12:06:38.93ID:/voPq5NM
実際に配置したオブジェクトに合わせて形状を作れるから、
Unity上のプリミティブとして実装する意義はある

サイズや向きはともかく、形状を合わせようとすると、
3Dソフトで作って持ってくる際に、他の形状との整合性を付けづらい

他のオブジェクトも全て、全て同じ3Dソフト上で作成していれば良いけど・・・
0647名前は開発中のものです。
垢版 |
2017/12/05(火) 13:05:33.05ID:Xdk/T4FC
同じソフトで作るのが基本でしょ。
wavファイルとかみたいに、形式とパラメータ統一できるものならいいけど、3dデータなんてバラバラになるよ。
0650名前は開発中のものです。
垢版 |
2017/12/05(火) 18:04:55.06ID:tIZxQtdd
Vs vscode sublime なら ユーザー定義関数名を選択してF12 キーで定義元に移動できる。pc前にいないので未確認。

>644
phisics material2dを作成して、rigidbodyに割り当てる。
パラメータ名は忘れた。
0651名前は開発中のものです。
垢版 |
2017/12/05(火) 19:02:48.32ID:/voPq5NM
>>647

Assetで揃えたデータの場合、
足りないものだけは自作という状況はあり得ると思うけど

>>649

自分も、DrawLineだけだと思っていた
Arrow出せたら、わざわざConeは用意しなかったのもわかる気がする
0652名前は開発中のものです。
垢版 |
2017/12/05(火) 19:30:57.47ID:ye5fpjxg
立体回転は、立方体みたいな対称図形は、正面がどっち向いているか、パッと見ではわらなくなるから、
これまではtransform.forwardでLineを描画してたんだけど、
矢印を出せるなら、これからそっちでやろう〜っと
0653名前は開発中のものです。
垢版 |
2017/12/05(火) 19:39:51.65ID:Z564PTO0
Handles系ってOnDrawGismoでいける?
Label表示はいけるのは知ってるけど、それでも#ifでunityeditorをusingしないといけんのでだるい
OnSceneGUIはだるくねか
0656名前は開発中のものです。
垢版 |
2017/12/05(火) 20:07:30.89ID:Xdk/T4FC
>>651
あぁ、そうか、アセット使うとそうだね。
すまん、俺はアセットモデル入れた事無いので及ばんかった。
0657名前は開発中のものです。
垢版 |
2017/12/05(火) 21:13:25.05ID:jQ+ecE7h
RXNは、Unityエンジンを使ったお仕事をしている会社にもプレイしても
らいたいです。爆速のロード、スパイクもなく秒間60フレームでの軽快な動
作(処理落ちはします)。弊社がこれを実現したのだから、安心して余裕で
参入できると思います。でも技術の開示は一切しません。

https://togetter.com/li/21156
面白法人カヤックの学生絵描き買い叩き問題のまとめ
0658名前は開発中のものです。
垢版 |
2017/12/05(火) 22:41:20.71ID:ye5fpjxg
>>649

それ、シーンビュー上でオブジェクトを選択した時に表示される矢印の編集オプションっぽい

つまり、プレイ中に普通に扱うオブジェクトとは違う様子

言ってみれば、デバッグラインやギズモの扱いでは・・・

実際にオブジェクトとして存在するプリミティブとはチャット使い勝手が違うな〜

矢印で方向がわかるDrawLineといった感じ
しかも、基本的に選択中のオブジェクトに限定しての表示

あと、昔はHandles.ArrowCap、今はArrowHandleCap
0659名前は開発中のものです。
垢版 |
2017/12/05(火) 22:44:37.44ID:ye5fpjxg
<訂正>

>>649

それ、シーンビュー上でオブジェクトを選択した時に表示される矢印の編集オプションっぽい

つまり、プレイ中に普通に扱うオブジェクトとは違う様子

言ってみれば、デバッグラインやギズモの扱いでは・・・

実際にオブジェクトとして存在するプリミティブとはちょっと使い勝手が違うな〜

矢印で方向がわかるDrawLineといった感じ
しかも、基本的に選択中のオブジェクトに限定しての表示

あと、昔はHandles.ArrowCap、今はHandles.ArrowHandleCap
旧:(int controlID, Vector3 position, Quaternion rotation, float size);
新:(int controlID, Vector3 position, Quaternion rotation, float size, EventType eventType);

5.x系に比較して、2017では、引数が最後の1項目増えた様子
0663名前は開発中のものです。
垢版 |
2017/12/06(水) 10:32:23.14ID:WHEH+2xJ
>>650
monodevelop使ってるので無理ですか。

教本の著者はユーザー定義関数に必ずそれっぽい英語をつかうので(変数にも)、それがビルトイン関数なのかオレみたいな初心者は迷わされる。
0664名前は開発中のものです。
垢版 |
2017/12/06(水) 11:23:15.06ID:HqLW9Y2x
使ってないからしらんけどmonodevellopでもメソッドの実装元へジャンプするコマンドは普通にあると思う。
てかそれがないIDE見たことない。コンテキストメニューにないの?
0667名無し@キムチ
垢版 |
2017/12/06(水) 17:23:56.90ID:dzbC/kNJ
>>657
RXNのデモ動画、音が割れていますが・・・w
0668名前は開発中のものです。
垢版 |
2017/12/06(水) 19:28:32.48ID:WHEH+2xJ
>>664
ありがとうございます。使い方がわかりました。goto decrearation してassembleファイルに飛ぶのがビルトインなんですね。
こんな機能まったく知りませんでした。
0670名前は開発中のものです。
垢版 |
2017/12/06(水) 22:05:08.62ID:mZdZLUg5
表情アニメーションにブレンドシェイプを使うためにモデルの頭と体を切り離したんですが、どうしても境目が目立ってしまいます。
上手く境界線を目立たなくする方法をご存知の方がいましたら教えて頂けると助かります
(UnityちゃんとかはToonシェーダ上手く使ってごまかしてますけど、今回はStandardシェーダーのようなリアルな質感のものを使いたいです)

ちなみに首元で切って服を着せることも考えましたが、水着など首元の見える衣装替えを実装予定なのでそれも難しいです…
0671名前は開発中のものです。
垢版 |
2017/12/06(水) 23:07:13.87ID:uMVQKnqp
>>669
しないよ

>>670
使ったことなくて力になれないんだけど、表情変えるのに首で切るもんなん?のっぺらぼうと表情じゃだめなん?
0672名前は開発中のものです。
垢版 |
2017/12/06(水) 23:27:30.10ID:Qzkk8sf8
言ってることば無茶苦茶過ぎて相手にするだけ無駄
首切ろうがきるまいが関係ないしユニティちゃんがスタンダードシェーダー使っても問題ないし
0673名前は開発中のものです。
垢版 |
2017/12/06(水) 23:55:48.89ID:lMvDYGo7
>>670
だからよ
質問の時だけコテハン外して人を騙そうとしてるその魂胆がいけすかねーって言ってんだよキムチ!!
おいキムチ!!
バレてんだぞキムチ!!!!
0674名前は開発中のものです。
垢版 |
2017/12/07(木) 05:31:08.71ID:TfLDssMU
エスパー案件で申し訳ないのですが
エディタのゲームビューでは表示されているオブジェクトが
スマホの実機上で表示されない場合どこを疑えばいいのでしょうか

対象はUIのボタンでエディタから静的にに配置した場合表示されますが
スクリプトからアクティブ切り替えやインスタンス生成した場合に表示されません
0675名前は開発中のものです。
垢版 |
2017/12/07(木) 09:09:39.86ID:NWPNPY2x
新規プロジェクトを作って、対象のボタンと処理だけつけてビルドしてみる。

同じようになるなら、今度は元のプロジェクトの対象以外のスクリプトを全部コメントアウトしてビルド。

何か変化したら、コメントアウトを少しづつ外して、問題のあるスクリプトを探していく。

変わらないなら、ボタンかCanvasの
インスペクターウィンドウでの設定に問題があるのかも。
0677名前は開発中のものです。
垢版 |
2017/12/07(木) 14:07:34.77ID:QBK35S4q
アセトンとは、ケトンの分類の中でも1番単純な構造を持っており、分子が小さいので溶けやすく、水にも、ほとんどの油脂にも溶けるので、様々な用途に有機溶媒として用いられている物質である。
0678名前は開発中のものです。
垢版 |
2017/12/07(木) 16:34:15.05ID:TdH7rlV1
カキーン + _____ *
   / //  /|
  | ̄/  ̄ ̄|//|
  |/∧_∧/|/ |
* | (´・ω・)| | +
  | (/o旦o | |
  |/ー―-′|/
 *  ̄ ̄ ̄ ̄ ̄
0679名前は開発中のものです。
垢版 |
2017/12/07(木) 16:43:23.82ID:oyXAQYK2
オブジェクトの外周をもやっと光らせる表現ってどうやってるんだろう
単純に形状に対応したパーティクル作ってるだけ?
0683名無し@キムチ
垢版 |
2017/12/07(木) 19:24:09.17ID:hswJM9ej
>>673
残念だが>>670の質問は当方のものではない。
また当方は質問のときだけコテハン外したりはしない。
ただうっかりしてコテハンつけ忘れたことはあるが、それも2〜3回程度だw
キミはあまりレベルが高くないようだな・・
0685名無し@キムチ
垢版 |
2017/12/07(木) 19:43:06.82ID:hswJM9ej
>>684
アセット買うよりも、つくったfbxをアセットにして販売するほうがいいと思います。
とくできていればアセットの審査にも通るでしょう。
ただアセットは登録の申請がチョー複雑で難しいです。プログラムの100倍は難しいと思ったほうがいいでしょう。
当方も申請の仕方がよく理解できずに、挫折したひとりですw
0686名前は開発中のものです。
垢版 |
2017/12/07(木) 19:57:53.21ID:xK05b4bo
>>684
完成プロジェクト系のアセットがいいですよ。
素材を揃えることできれば簡単にゲーム化できます。
0687名無し@キムチ
垢版 |
2017/12/07(木) 20:16:46.23ID:hswJM9ej
よくここでC♯プラグラムの講座をしている人は、
それよりアセットの登録の仕方を、小学3年生でもやかるような簡単な言葉で、
最初から順序よく、欠落した部分がないように、懇切丁寧に述べていただければ助かります。

小学3年生(その中でも落ちこぼれ生徒)のための、アセット登録申請講座、ぜひやっていただきたい!!!
0688名前は開発中のものです。
垢版 |
2017/12/07(木) 20:51:22.30ID:4indIwx4
bolt使ってる人いる?
フローグラフとステートグラフがあるのは相当整理しやすそうだけど機能や操作性はplaymakerと比べてどんな感じ?
0691名前は開発中のものです。
垢版 |
2017/12/07(木) 20:59:47.59ID:4zStDQvW
>>689
このスレにはそんな難しい質問に答えられる奴はいない。
TwitterやFacebookで現役のエンジニアに質問してみたまえ
0695名前は開発中のものです。
垢版 |
2017/12/07(木) 23:51:35.97ID:DyP8ts7O
3Dゲームのプログラムは、3D空間上での挙動(移動と回転)がメインだから、
慣れればできると思うけど・・・

向きを変えて、移動して、発射して、当たったら消えて・・・
くらいできれば、少しゲーム性が出てくるので、

あとは、操作系を作りこんだり、挙動のパリエーションを増やしたり、
キャラを増やしたり、当たり判定を調整したり、試行錯誤
0697名前は開発中のものです。
垢版 |
2017/12/08(金) 01:50:07.09ID:rY92HIWe
はい皆さんこんばんは。
気分が乗ったら講義のお時間です。

本日の講義は "ループ制御" です。
ループ制御は「プログラムの任意の場所を繰り返し実行させたい」ときに使うもので
"for文" と "while文" の2つを使います。
0698名前は開発中のものです。
垢版 |
2017/12/08(金) 01:50:30.93ID:rY92HIWe
まずは for文 から説明します。
for文 は以下のように記述します。
[例]
int i=0;
for(i=0; i<10; i++){
 Debug.Log("i=" + i );
}

これは「{ }」に囲まれた箇所が10回繰り返される例です。
今回「{ }」に囲まれた部分は「Debug.Log("i=" + i );」なのでDebug.Logが10回実行されることになります。
1回実行される度に"i"は1ずつ加算されていきます。
結果「i=0」「i=1」…「i=9」と画面に表示されます。

それでは for文 自体の説明です。
「 for(@i=0; Ai<10; Bi++) 」
@"i=0;"…ここにはループのスタート値(初期値)を定義します。
       例えばここを"i=8"にすると0からのスタートではなく8からのスタートになるので
       ループ回数は10回ではなく「i=8」と「i=9」の2回しかループしなくなります。
       ちなみに今回は変数"i"を使用していますが好きな変数名でかまいません。
       またint型でなくbyte型でも構いませんがfloat型などの小数型は使えません。
A"i<10;"…ループ繰り返し条件式です。
       今回の例では「iの値が10より小さい(10は含まれず9以下)場合はループを繰り返す」という式になっています。
       例えば「i<=10」とすると
       「iの値が10以下場合はループを繰り返す」となり10も含まれます。
B"i++"…ループに使用している変数の増え方を指定します。
       この例の場合はiが1ずつ加算(増える)されていきます。
       「i=i+1」と同じです。
0699名前は開発中のものです。
垢版 |
2017/12/08(金) 02:06:02.96ID:rY92HIWe
次に下の例を見てください。

[例]
int i=0;
for(i=10; i>0; i--){
 Debug.Log("i=" + i );
}

これはスタート値10から始まり、0に向かって1ずつiの値を減らしていっています。
実行結果は「i=10」「i=9」…「i=1」となります。
初心者が間違えやすいのが「i>0;」部分を終了条件と思う事です。
ここは終了条件ではなく『継続条件』です。
この部分の式が成立している間 for文 は繰り返しを実行し続けると思ってください。
上の例を言葉で表すと
「iの中身が0より大きい場合、繰り返してください」となります。


[例]
int i=0;
for(i=10; ; i--){
 Debug.Log("i=" + i );
}

これは「継続条件」を記述していない例です。
これでもエラーにはなりませんが絶対に実行しないでください。
この場所でプログラムが永遠と繰り返され続けUnityがフリーズしてしまいます。
これを『無限ループ』と呼びます。
無限ループが発生するとUnityを強制終了しないと終わらせられなくなります。
強制終了のやり方が分からない人は絶対に実行しないでください。

このように継続条件式を書く部分はとても重要です。
0700名前は開発中のものです。
垢版 |
2017/12/08(金) 02:18:02.11ID:rY92HIWe
[例]
for(int i=0; i<10; i++){
 Debug.Log("i=" + i );
}

これはiの宣言を for文 の中で一緒に行っている例です。
この記述が一番使います。
このiはfor文内の"{ }"の中だけ有効でループが終わると自動的に消滅します。
この点がfor文外で宣言した場合と異なるので注意が必要です。
つまり以下の例はエラーになります。

[例]
for(int i=0; i<10; i++){
 Debug.Log("i=" + i );
}
Debug.Log("i=" + i ); //←"i"消滅後なのでここでエラーとなる。 👀
Rock54: Caution(BBR-MD5:0be15ced7fbdb9fdb4d0ce1929c1b82f)
0701名前は開発中のものです。
垢版 |
2017/12/08(金) 02:33:53.86ID:rY92HIWe
[例]
for(int i=0; i<10; i=i+2){
 Debug.Log("i=" + i );
}

これは三番目の増減値を1ではなく2にした例です。
「i=0」「i=2」「i=4」…「i=10」のように表示されます。
"i=i+2"部分は"i+=2"のように省略系も使用できます。

[例]
for(int y=0; y<3; y++){
 for(int x=0; x<3; x++){
  Debug.Log( x + ":" + y );
 }
}

多重ループの例です。
ループ制御はループ中にさらにループさせることが可能です。
上の例の場合は
「0:0」「1:0」「2:0」
「0:1」「1:1」「2:1」
「0:2」「1:2」「2:2」
のように表示されます。
2DのJRPGやシミュレーションのフィールドマップや、手動であたり判定を行う時に使用したりします。


Rock54が出たから while文 は次回に持ち越し
今回は以上だクソども
0703名前は開発中のものです。
垢版 |
2017/12/08(金) 09:34:46.35ID:Qga/mJqt
インポート時、プロジェクトの cs ファイル変更時におきる

Compiling Script というプログレッシブバーや、右下のぐるぐるがとまらない

の処理が10分たっても終わりません。
mono.exe を kill すると復帰するのですが、そのあとメッセージなしのエラーが表示されます。

対策あったら教えてください。お願いします。
0707名前は開発中のものです。
垢版 |
2017/12/08(金) 12:50:56.59ID:v80JBwFv
プロジェクトウィンドウでC#スクリプトファイルを作成した際に、アイコンが通常のC#ではなく歯車になることがあります。
その条件と理由を教えて下さい。
0709名無し@キムチ
垢版 |
2017/12/09(土) 08:10:05.76ID:1JEBIHPe
やったー!!外部オーディオ鳴らすのに成功したーーーーっ!!!!
最初のりたまブログのこのコード見たけどダメだった・・・

IEnumerator StreamPlayAudioFile(string fileName)
{
//ソース指定し音楽流す
//音楽ファイルロード
using(WWW www = new WWW("file:///" + fileName))
{
//読み込み完了まで待機
yield return www;

audioSource.clip = www.GetAudioClip(true, true);

audioSource.Play();
}
}

いろいろ試してみたけどダメで、挫折しそうになったが、
audioSource.clip = www.GetAudioClip(true, true);
の前の行に、
audioSource = GetComponent<AudioSource>();
というのを付け加えて、オブジェクトに空のオーディオソースコンポーネントを追加したところ、
音楽が鳴ったぁぁぁあああああーーーーーーーーっ!!!!!!!
いやあ、当方って天才かも!?(マジで)
みなさぁーーーーん、オーディオはコンポーネントで追加しなくても(空のコンポーネントは必要だけど)、
外から読み込んで使えるので、参考にしてくださいね。
(これはユーザーに自分の好きなゲームBGMを使ってもらうことができるすごい方法です!)
いやあ、当方って天才!!!!!!!!
0710名前は開発中のものです。
垢版 |
2017/12/09(土) 12:22:44.90ID:8nWowzmq
スレチだったらごめん。
アクションゲームを作るために「ゲーム制作のための数学」系の本を
一冊買っておきたいんだけど、何かおすすめあります?
もしくはアルゴリズムの参考になるアセットがあったら教えてほしい。
0712名前は開発中のものです。
垢版 |
2017/12/09(土) 15:04:45.02ID:Ia5bSAGk
>>708
残念ながらジェネリック関数を扱う予定はなし

>>710
市販品で例えるとどんなアクションゲーム?
Unityは大抵のゲームアルゴリズムが既にシステム関数(メソッド)にまとめられて
1行書き込む(呼び出す)だけで使用できちゃったりするから覚える必要ない場合が多い
0714名前は開発中のものです。
垢版 |
2017/12/09(土) 16:59:09.75ID:8nWowzmq
>>711-713
ごめん、2Dです。
マリオとかメトロイドヴァニア系のアクションをを作る予定ですが、ショットをちゃんとした物理的な挙動にしたいのと、
あと飛行タイプの敵とか動く足場とかを∞←こういう軌道で動かしたりしたいんですよね。
0715名前は開発中のものです。
垢版 |
2017/12/09(土) 17:05:16.75ID:x1Unwj8Y
unityの2Dでマリオ3みたいなやつでお手本になるゲームないでしょうか
マリオランみたいに一方にしか移動しないようなのじゃなくて
0716名前は開発中のものです。
垢版 |
2017/12/09(土) 17:27:29.06ID:1JEBIHPe
PC内にあるすべてのwav音を鳴らすテストです。
この機能を取り入れれば、当方のソフト「振付王」も大いなる飛翔を遂げそうです ↓

https://youtu.be/NGglm32__Wg
0718名前は開発中のものです。
垢版 |
2017/12/09(土) 20:05:37.92ID:AnRI3nPF
staticの変数(gameobject)をインスペクターから指定できないと知り、直接インスタンス化したいのですが、
Assets/Prefabsにあるprefabを指定するにはどうすれば良いでしょうか?

Instantiate(GameObject.Find(?????));
0720名前は開発中のものです。
垢版 |
2017/12/09(土) 20:16:11.59ID:x1Unwj8Y
unityの2Dでマリオ3みたいなやつでお手本になるゲームないでしょうか
マリオランみたいに一方にしか移動しないようなのじゃなくて
0722ダーク王鍬大使 ◆SoVpkB15jY
垢版 |
2017/12/09(土) 20:36:13.31ID:bXsi3c78
>>718
何をしたいのかよく分かりまふぇんがググって調べてきまひた(^^

public GameObject prefab;//これをフィールドに書く(^^

Instantiate(prefab, this.transform.position, Quaternion.identity);//これをvoid Start()内で実行する(^^

あとはインスペクタから使いたいプレファブをアタッチする(^^
これでスクリプトを張り付けてるオブジェクトの位置にprefabにアタッチしたPrefabを生成しまんこ(^^
0723名前は開発中のものです。
垢版 |
2017/12/09(土) 20:55:03.78ID:AnRI3nPF
>>722
めちゃくちゃ言葉足らずですいません。
他スクリプトから呼び出すためにそのスクリプトをstaticで構成しました。

&#9332;staticを使っていてもインスタンペクターからプレファブを指定する方法

&#9333;Resouse.Loadを使わずにAssetフォルダにアクセスする方法

(3)別スクリプトから呼び出す場合でもstaticにしなくて良い方法

この中のどれかを募集中です。
0725ダーク王鍬大使 ◆SoVpkB15jY
垢版 |
2017/12/09(土) 21:08:54.73ID:bXsi3c78
(3)別スクリプトから呼び出しならstatic使わなくてもできまふよ(^^

どっかのオブジェクトにスクリプトがくっ付いてる場合(^^
呼び出される側
public int うんち
呼び出す側
変数名 = GameObject.Find("ヒエラルキーのオブジェクト名").GetComponent<オブジェクトにくっ付いてるスクリプト名>().スクリプトの変数名、この場合はうんち;

多分これで出来ると思いまんこ(^^
0726名前は開発中のものです。
垢版 |
2017/12/09(土) 21:52:29.85ID:+Fgkmrfl
ファイアーエムブレムのようなゲームが作りたくて参考書などを見ながらAI作ってたのですが上手く行きません
数千円以内で買えるアセットでよさげなのないでしょうか
0727名前は開発中のものです。
垢版 |
2017/12/09(土) 21:53:01.42ID:G7HaLFZX
3Dで基礎から勉強したければ、

難:「実例で学ぶゲーム3D数学」
中:「ゲーム開発のための数学・物理学入門」
易:「ゲームアプリの数学 Unityで学ぶ基礎からシェーダーまで」

2Dでアルゴリズムのアイデアを得たければ、

「アクションゲームアルゴリズムマニアックス」
「アクションゲームプログラミング」
0728名前は開発中のものです。
垢版 |
2017/12/09(土) 21:59:20.31ID:G7HaLFZX
>>723

Staticは他のオブジェクト間で共有したいものに使うので、

ただ他のオブジェクトのコンポーネントを使いたいだけだったら、
Staticを付けなくても、呼び出して利用はできます
0729名前は開発中のものです。
垢版 |
2017/12/09(土) 22:47:51.06ID:Ia5bSAGk
どうも。
気分がノッたら講義のお時間です。
"while文" の予定でしたが変更して "for文" の続きです。

"for文" は配列を扱う時に適しています。
例えば次のような文字列型配列があったとします。


string[] mes = {"ようこそ", "ねらーの町へ", "ゆっくりしていってね!"};

この中身を全て表示したい場合、"for文" を使わない場合は次のようになります。


string[] mes = {"ようこそ", "ねらーの町へ", "ゆっくりしていってね!"};
Debug.Log( mes[0] );
Debug.Log( mes[1] );
Debug.Log( mes[2] );

表示したい数だけDebug.Logが必要になっていきます。
今は3つだからいいですがこれが100個あった場合は100個Debug.Logが必要になってしまいます。
0730名前は開発中のものです。
垢版 |
2017/12/09(土) 22:48:34.64ID:Ia5bSAGk
次に for文 を使用した場合の例です。


string[] mes = {"ようこそ", "ねらーの町へ", "ゆっくりしていってね!"};
for( int i=0; i<3; i++ ){
 Debug.Log( mes[i] );
}

for文 を使用すると100個あってもこの4行だけで済みプログラムをすっきりとまとめられます。


string[] mes = {"ようこそ", "ねらーの町へ", "ゆっくりしていってね!"};
for( int i=0; i<mes.Length; i++ ){
 Debug.Log( mes[i] );
}

for文の2番目を "i<3" と定数(この場合、「3」を動かない数字、定数と呼びます)にするのではなく
"i<mes.Length" にすることで自動的に配列数だけループしてくれるようになり便利です。
"mes.Length" には配列の最大値が格納されています。
0731名前は開発中のものです。
垢版 |
2017/12/09(土) 22:53:43.28ID:Ia5bSAGk
また、配列処理に特化した専用のfor文といえる "foreach文" というのもありますが
for文で同じ事が出来る為講義ではあえて扱いません。
興味がある方は下のリンク先で確認してください。
今のあなたならリンク先の文章をなんとなく理解できる事でしょう。

配列での foreach の使用 (C# プログラミング ガイド)
https://docs.microsoft.com/ja-jp/dotnet/csharp/programming-guide/arrays/using-foreach-with-arrays


本日は以上だクソども
0733名前は開発中のものです。
垢版 |
2017/12/09(土) 23:07:35.86ID:Ia5bSAGk
>>714
メトロイドヴァニアをYoutubeで拝見したがいきなりこれは難しいよ。
物理的な挙動に関してはUnityは物理エンジンが勝手にやってくれるので自分でプログラムする必要がない。

うまく伝わらない気はするが例えば
「このボールは1kg」「風の抵抗は受けない」「重力の影響は受ける」
みたいに画面を見ながら設定し
斜め上にむかって発射すれば勝手に本物のボールのように弧を描いて飛ぶ。

物理エンジンは、もともと自分でプログラムしないといけなかった事を勝手にやってくれる。
欠点として非リアル的な動きをしたい時に重力とかに逆らったりしなくちゃいけなくて
何度も何度もテストを繰り返さないといけないくなる。

∞のような動きはsin関数、cos関数で実現できる。

俺は本を買って学習してる訳ではないのでオススメを教えられないです。
0737名前は開発中のものです。
垢版 |
2017/12/10(日) 11:44:53.32ID:ZDcJFyIw
>>723
そういう用途でstaticにするのは辞めたほうが……
シングルトンにしてDontDestroyと思う

それはそれとしてインスペクターのをstatic変数に反映させたいだけなら
責任は持ちません
public static GameObject hoge;
public GameObject hogehoge;
void awake(){
  if(hogehoge != null) hoge = hogehoge;
}
0738名前は開発中のものです。
垢版 |
2017/12/10(日) 11:48:33.38ID:jcS8iLKb
staticをpublicでインスペクターから変更できるようにしてしまうと、

複数のオブジェクトで同時に同じstatic変数を変更してしまう恐れがあるから、

シングルトン機能がないと、どの設定値を参照するか不定になりそうで怖い・・・
設定値は複数オブジェクト間のインスペクター上で連動するのかな?
0740名前は開発中のものです。
垢版 |
2017/12/10(日) 13:34:04.81ID:w46kXA82
・変更できない定数
・グローバルDBで管理(public)
・クラスの内部だけで決められた使い方だけをする構造上の黒子(private)

このうちのどれかに当てはまらないなら static はやめたほうがいい
0741名前は開発中のものです。
垢版 |
2017/12/10(日) 17:15:40.51ID:51pDRWFr
>>737
>>738
>>740

ありがとうございます。
staticで構成するのはやめようと思います

話は変わりますが、っていうか変わってないんですが
Ascript:
public void Hoge(){
StartCoroutine(Bscript.Bfunction());
}

Bscript
public IEnumerator Bfunction(){
Debug.Log("hogehoge");
yield return null;
}

このスクリプトで「静的でないフィールド〜〜〜」というエラーが出るのはなぜでしょうか?

これがきっかけでstaticにするようになったのですが
0742名前は開発中のものです。
垢版 |
2017/12/10(日) 17:20:13.69ID:SGu7Clqn
>>741
その表記を見ただけでオブジェクト指向を微塵も理解してないと分かる
C#の基本を解説するサイトなんていくらでもあるから少なくともclassの存在くらい学ぼう
0745名前は開発中のものです。
垢版 |
2017/12/10(日) 20:14:32.33ID:RELYBK2b
>>742
こういうとこで質問したことないんでどこまで省いていいか全然わからないです;;
クラスは何もいじっていないので
public class XXXX : MonoBehaviourのままです。

>>744
GetComponent?ゲットコンポーネントってどこからでてきました?
0747名前は開発中のものです。
垢版 |
2017/12/10(日) 20:46:48.97ID:s1u45m25
>>745
とりあえず「他のスクリプトのメソッドを使う unity」で検索してみろ。それで理解できなかったら向いてない
0750名前は開発中のものです。
垢版 |
2017/12/10(日) 22:14:38.78ID:s1u45m25
>>741
静的じゃないから〜ってエラーを見て、staticおじさんになっちゃったのか。
そのエラーの意味は「君が使おうとしているモノは最初から存在しない(静的でない)のでなんとかしてください」って意味だから「staicにしろ」って意味じゃないぞ
0751名前は開発中のものです。
垢版 |
2017/12/10(日) 22:16:05.06ID:51pDRWFr
>>747
>>748
>>750
ありがとうございます。
アタッチするオブジェクトに関連してないとアタッチしてはいけないと勝手に思い込んでいました。

>>741で言えば
カメラなりなんなりにBscriptをアタッチして
StartCoroutine(カメラ.GetComponent(Bscript).Bfunction());
って感じにすればよかったんですね
0752名前は開発中のものです。
垢版 |
2017/12/10(日) 22:41:19.18ID:s1u45m25
>>751
目標がありそれに向かってコーディングしてることは分かりますし、それは上達への近道です。しかしあなたの書いているコードはあまりにも支離滅裂なので簡単な内容からしっかり学習してください。他のスクリプトのコルーチン使うとかめんどくさすぎて頭おかしいです
0753名前は開発中のものです。
垢版 |
2017/12/10(日) 23:01:38.15ID:hR3NFn4T
まあプログラムなんて技量あげるうちに過去コードを色々短縮出来るのが楽しいから…
0754名前は開発中のものです。
垢版 |
2017/12/10(日) 23:47:55.77ID:CuU55Myq
もともとは、AsstesフォルダにあるPrefabを、スクリプト上で呼び出したかっただけだよね?
Sceneに配置していないPrefabを、GameObjectとして呼び出したいんだよね??

例えば、SceneにPlayerキャラクタが既にいて、ボタン入力に応じて、
Assets内にあるShotキャラクタを呼び出して、弾丸として発射するみたいな・・・
0755名前は開発中のものです。
垢版 |
2017/12/11(月) 00:11:47.56ID:SkZjimvo
<スクリプトAで、Assets内のプレハブBを、ゲームオブジェクトCとして取得する方法>

Scece上に配置したゲームオブジェクトXに、下記のスクリプトAを登録しておきます。

public class A : MonoBehaviour {
 public GameObject B;

 // Use this for initialization
 void Start () {
  GameObject C = (GameObject)Instantiate(B);
 }
}

Inspector上でゲームオブジェクトBを登録できるので、
Assets内のプレハブBを登録しておきます。
「Assetss」を押すと一覧が出ます。

動的にBのインスタンスを生成して、ゲームオブジェクトCとして格納します。
以下、Inspector上で登録しておいたゲームオブジェクトBは、
ゲーム内ではゲームオブジェクトCとして実体化されているので、
移動させたり、回転させたり、いろいろできます。
0756名前は開発中のものです。
垢版 |
2017/12/11(月) 00:30:42.08ID:SkZjimvo
C = (GameObject)Instantiate(B)
だと、スクリプトを登録したオブジェクト上に生成されてしまいます。

生成される際の
 位置を、Vector3 V = new Vector3(x, y, z)
 向きを、Quaternion Q = Quaternion.Euler(angleX, angleY, angleZ)
 親を、transform T = parent.transform
としたい場合は、

C = (GameObject)Instantiate(B, V, Q, T)
とします。

親Tの子として、向きQで、位置Vに、
Bのインスタンスが、オブジェクトCとして生成されます。

BにRigidbodyを登録しておけば、
Rigidbody D = C.GetComponent < Rigidbody2D >
によって、CのコンポーネントからRigidbodyを取得して、
変数DにRigidbodyを格納しておくこともできます。

以降は、物理演算ができるようになり、
D.velocity = new Vector3(vx, vy, vz)
のようにして速度を変更したりできます。
0757名前は開発中のものです。
垢版 |
2017/12/11(月) 00:39:32.37ID:SkZjimvo

Rigidbody D = C.GetComponent < Rigidbody2D >


Rigidbody D = C.GetComponent < Rigidbody >

普段、2Dばっかりやっているから間違えた・・・

要するに、
@Hierarchyになくても、Assetsからでも呼び出せる
(GameObject.Findは、Scene内から探すためダメです)

AStaticにしなくても、Inspector上からPrefabを登録できる
(Inspector上で設定したかったら「public」です)

Bスクリプトを登録する相手は、何でも良い
(カメラでも、空のオブジェクトでも・・・)

 ただ、あるキャラクタから発射するつもりなら、
 そのキャラクタにスクリプトを登録しておけば、
 発射位置が、そのキャラクタの現在地になります。
0758名前は開発中のものです。
垢版 |
2017/12/11(月) 07:52:58.63ID:Lx/f51q7
レベルデザインしてるんですが、フリーでおすすめのアセットパックってないですか?
人工物や自然物がそれなりに入ってるのがほしいですが
0760名前は開発中のものです。
垢版 |
2017/12/11(月) 13:13:39.39ID:xcDA2XWm
車の排気ガスでパーティクルを使おうと思ってます
車の後方から煙が出る形にしたいんですが、

1 車のオブジェクトにパーティクルをaddして良いのか
2 どうやってパーティクル位置を変更するのか(車の後方に)

の最初の2点で躓いてます
どなたか教えて頂きたいです。
0761名前は開発中のものです。
垢版 |
2017/12/11(月) 13:18:21.91ID:HEOTRILb
車に空の子オブジェクトを追加してそこにパーティクルを追加すればいいべ

そういうことじゃなくて?
0763名前は開発中のものです。
垢版 |
2017/12/11(月) 14:25:47.65ID:xcDA2XWm
>>761
車とは別に新しくオブジェクト作って、
それにパーティクル追加してあとから車と同期(車と一緒に動くように)すればいいって事ですか?
0764ダーク王鍬大使 ◆SoVpkB15jY
垢版 |
2017/12/11(月) 14:30:15.62ID:V8qj051b
パーティクルを車の子オブジェクトにして位置と向きをインスペクターで変えてくらふぁい(^^
0766名前は開発中のものです。
垢版 |
2017/12/11(月) 14:58:00.33ID:HEOTRILb
>>763
車の子オブジェクトにすればわざわざ同期なんて取らなくても相対位置と向きを保ったまま車と一緒に動いてくれるでしょう
0767名前は開発中のものです。
垢版 |
2017/12/11(月) 16:02:51.94ID:02QPz9bc
このスレの人ってまさか車のモデルをそのままヒエラルキーに配置してそこにスクリプト直付けしてるの?
普通Create Emptyで作った空のオブジェクトの下に作るよね?
0768名前は開発中のものです。
垢版 |
2017/12/11(月) 16:34:52.69ID:T/JrBtRm
全体的に、自分で色々工夫してみることをしないで人に答えを求める輩が多い気はするね。
プログラミングに答えはなくて目的の結果になる方法はいくつもあるのに他人のやり方を真似したがる人が多すぎるねここ。
0769名前は開発中のものです。
垢版 |
2017/12/11(月) 16:36:31.43ID:B36sEdco
人それぞれ。結果が満足なら中身なぞどうてもいい。
自分なりの作り易さを模索するだけさ。
0771名前は開発中のものです。
垢版 |
2017/12/11(月) 16:39:28.70ID:T/JrBtRm
他で例えると
攻略本無いとゲームを出来ない人とか
うまいラーメン本に紹介されてるラーメン屋にしかいけない人とか
ジグソーパズルを買って全部人に作らせてる人とか
何かしら他人の助けがないとダメで自分で工夫できない人というか
そんなのに似てる気がする
0773名前は開発中のものです。
垢版 |
2017/12/11(月) 16:44:46.62ID:VIjb3sER
チュートリアルで例(ひな型?)が示されてるのに、やってないだけだよ
やって気付かないってのはありえない
0774名前は開発中のものです。
垢版 |
2017/12/11(月) 17:01:29.50ID:xcDA2XWm
このスレっていっつもマウント取るか嫌味しか言わない上級者様ばっかだよね
なんで質問スレにいるの?
自分なりに試行錯誤して分からない結果聞きに来てる初心者の自分からしたら意味が分からない
0775名前は開発中のものです。
垢版 |
2017/12/11(月) 17:08:45.71ID:B36sEdco
>>774
捻くれたやつなんかスルーしとけ。教えてくれた人にはお礼を言う。
他人の成長が怖くて、少しでも時間を削ろうとしてるのさ。
0776名前は開発中のものです。
垢版 |
2017/12/11(月) 17:13:36.54ID:Gwv7NuWB
パソコン買ったらパソコンの使い方講座が無料でついてきたにも関わらず、
そんなの要らない自分で出来るって無視したのお前やろ

だったら人に聞かずにやるのが筋ってもんじゃあないの?
0777名前は開発中のものです。
垢版 |
2017/12/11(月) 17:16:53.36ID:xcDA2XWm
>>775
そうだね、ありがとう

最初から堅苦しいマニュアル一から読んで自分の手動かそうとしない奴らの作ってるゲームが面白いとは全く思えないんだけどなあ
0778名前は開発中のものです。
垢版 |
2017/12/11(月) 17:20:38.93ID:HEOTRILb
>>774
"同期"なんて用語を知ってるのに子オブジェクトが分からないという、なかなか不思議な学習曲線を辿ってるみたいだから理解されなくてもまぁ仕方ないかも
チュートリアルどれくらいやった?
0780名前は開発中のものです。
垢版 |
2017/12/11(月) 17:36:21.95ID:rG1bqsx7
少しここ覗いてたけど、質問しようなんて気にならない
Unityを使ってる知り合いを作る方が早いしためになるからそうしたわ
0781名前は開発中のものです。
垢版 |
2017/12/11(月) 18:05:09.66ID:rJi7rAoj
Transform c = transform.GetChild(0).GetChild(0);
Transform b = transform.GetChild(0);
Transform a = transform;
a.parent = b;
b.parent = c;

これ動かしても親子変わらないのは仕様ですか?
0782名前は開発中のものです。
垢版 |
2017/12/11(月) 18:18:16.44ID:02QPz9bc
そうだぞ
引きこもりのお前らを社会に戻すために俺はここで嫌味を書き込んでいる
さっさとエンジニアの知り合いを作りたまえ
0784名前は開発中のものです。
垢版 |
2017/12/11(月) 18:32:42.55ID:v+pV5X5w
車の排気ガスについて、

移動した車に付いていくアニメーション的な排気ガスにするパターンと

排気ガス自体は、移動前の車の位置に留まり、その場でフェードアウトしていき、
移動した車が次々に新たな位置に排気ガスを生成していくパターンが有ると思う

前者は、アフターバーナーみたいな、付いていくタイプ
後者は、飛行機雲みたいな、置いてくるタイプ

子オブジェクトとして生成するか、
独立オブジェクトして生成するかは、好みによるのでは・・・
0785名前は開発中のものです。
垢版 |
2017/12/11(月) 18:40:23.63ID:T/JrBtRm
初心と無能を間違えてはいけない
基礎を勉強し身につけた者だけが初心を名乗れる
基礎をやらず教えて君は無能だよ

取説読まない
何もやらない
全部すぐ人に頼る
これは初心者じゃない

教習所に通わずいきなり車を運転しようとしてるやつ
これも初心者じゃない

初心
これの意味をもっとよく考えてから質問しよう

プラモ買って説明書読まない組んでて
途中で出来ないから作り方教えてくれという自称初心者がいたらどう思う?
説明書をまず読めと思わないか?
質問の質があまりにも低すぎるのが問題
0786名無し@キムチ
垢版 |
2017/12/11(月) 19:11:07.14ID:bqjs8mgU
>>782
エンジニアよりキムヨナと知り合いたいな・・
0787名前は開発中のものです。
垢版 |
2017/12/11(月) 19:11:25.30ID:6tubAqHL
>>781
root同士じゃないと出来ない組み合わせなかったっけ?
cとbを
c.transform.parent = null;
b.transform.parent = null;
で親子解除すれば出来る
0788名無し@キムチ
垢版 |
2017/12/11(月) 19:16:57.23ID:bqjs8mgU
>>785
初心者とはそんな難しいもののことではない。
単純にビギナーのことだ。
0790名前は開発中のものです。
垢版 |
2017/12/11(月) 19:32:44.82ID:T/JrBtRm
>>788
ビギナーは英語で初心者という意味
>初心者とはそんな難しいもののことではない。
>単純に初心者のことだ。
自分の発言が情けないほど意味不明になると思わない?
基礎を学ばずにいるとこうやって無能を晒し恥をかくだけ
分かりやすい例になってくれてありがとう!
0793名前は開発中のものです。
垢版 |
2017/12/11(月) 20:52:55.52ID:u584Mmdp
>>785
では質問、外部サイトの情報をスクレイピングして情報を抽出するゲームを作成しています。
読み出すサイトの文字コードに合わせてSystem.Text.Encodingクラスを用いて変換しているのですが、エディタ上で動かすと正しく動きますが、実機にビルドするとsjisやeucjpなどでエラーとなります。これは何故でしょうか?
0794名前は開発中のものです。
垢版 |
2017/12/11(月) 21:01:24.21ID:u584Mmdp
さて>>793の答え合わせだ。
スタンドアロンプレイヤーはデフォルトでI18n.dllとI18n.CJK.dllを内包しないから、これらをアセット内にぶち込めば解決するが正解な
どうせ質問がちょっと知識や経験が必要な領域になると皆スルーして俺しか答えなくなるんだから仲良くしとけ

>>784
それはヒエラルキー構造もスクリプトも変更する必要はなく、パーティクルのSimulation Spaceを変えるだけで実現可能だよ
エミッタ(=ParticleSystem)自体はどちらであっても車本体の子オブジェクトにして問題ない
0795名前は開発中のものです。
垢版 |
2017/12/11(月) 21:03:22.24ID:wTfFWu/6
2.5dのコマンドRPG作るのにplaymakerって使えますかね?
ターン制の処理をこれにさせたいのですが買おうか迷ってます。
0797名前は開発中のものです。
垢版 |
2017/12/11(月) 21:08:29.22ID:7N8aCxOe
785は滑稽だな
リテラシに慣れていないと、公式マニュアルを読んでも、キーワードを聞いても全く頭に入ってこない人もいる
一般的に言って誰にも苦手な分野はある。例えば日本の役所手続きが良い例
適性が無いとの非難があるかもしれないが、本来、道具は、適性とは無関係に操れるものであるべき
ところで自由競争戦力スキルへの適応を2chで強要するのは傲慢無恥・視野偏狭で滑稽である(プ
0799名前は開発中のものです。
垢版 |
2017/12/11(月) 21:15:59.64ID:L0Sd+qXD
趣味なんて出来なくても死ぬわけじゃないし、
乗れもしない一輪車に勝手に跨って勝手に傷だらけになってるだけじゃない
怪我と弁当は自分持ちで頼むよ
0800名前は開発中のものです。
垢版 |
2017/12/11(月) 22:02:19.01ID:SkZjimvo
詳しい人が降臨しているようなので質問!

角速度
Rigidbody.angularVelocity = new Vector3(a, b, c)
による回転を1秒間行った場合の、

向き(角変位)
Rigidbody.rotation
を、あらかじめ計算でQuaternionを求めておきたいのですが、

Rigidbody.rotation = Quaternion.AngleAxis(angle, axis)
で入力する場合、
float angle = いくつ?
Vector3 axis = いくつ?
に設定すれば良いのでしょうか??

普段は実際に時間をかけて回転させるのですが、
ショートカット入力によって、瞬間的に向き変更したためです。

普段は速度velocityで移動させていたのを、
瞬間的に位置positionで変位させるのと同じ感じです。
0801名前は開発中のものです。
垢版 |
2017/12/11(月) 23:16:52.47ID:T/JrBtRm
初心者は基礎勉強を習得した後に応用問題などで躓く者
無能は怠慢で基礎勉強をせずに全てに躓く者
そして自分は初心者だと勘違いしてる者
無能と初心者は全然違う

初心者には教えるが怠け者なだけの無能には教えたくはないって人が多いと思う
質問する気になれないなんて者は来なくていいと思う
そいつが消えた所でそいつが困るだけでこっちは何も困らない
どうぞ勝手にお帰り下さいなんじゃないかな?
ましてや自分は初心者だから教えてもらって当たり前なんて思ってる勘違いには特に

悔しいなら無能をやめて初心者になり
教えたい人が思わず教えてやりたくなるような質問したら?
0802名前は開発中のものです。
垢版 |
2017/12/11(月) 23:21:47.98ID:T/JrBtRm
>>794
質問ではなく相手を試す問題だと見抜かれてスルーされた事にそろそろ気づこうか

>>797
悪いが発言内容が超明後日方向でずれてるから
0803名前は開発中のものです。
垢版 |
2017/12/11(月) 23:28:43.27ID:T/JrBtRm
>>794>>797の2人は俺の考えに反対やら滑稽やらなら
ニセ初心者のしょーもない今までの質問全てに全部答えてあげてないと
俺そういう場面見てないんだけど
今も俺にレスするよりそっちが先とおもうけど未処理の物が沢山あるよ
明日からもずっと頼むよお2人さん
俺の考えに反対で反論してくるのはそういうことだから
0805名前は開発中のものです。
垢版 |
2017/12/12(火) 00:07:46.96ID:yWI4yO+J
まさかツッパリが足りずに弱音を吐いて「大目に見てくださいよ〜〜〜><」とか懇願してるわけじゃあるまいな
0807名前は開発中のものです。
垢版 |
2017/12/12(火) 00:29:29.52ID:K5+QKreg
>>800
偉そうに講釈垂れてる人が大勢いるのにこれにレスがつかないの酷すぎないか…

キッチリ1秒後なら

var r = Mathf.Rad2Deg;
Rigidbody.rotation *= Quaternion.Euler(a * r, b * r, c * r);

でどないでしょ
0809名前は開発中のものです。
垢版 |
2017/12/12(火) 02:09:47.10ID:s3bcy12n
@angle = Vector3(a, b, c).magnitude * Mathf.Rad2Deg

3Dの場合、angularVelocityは、rad/秒で入力するので、
a,b,cはrad/秒で入れているはずだから、
angleは度での入力になるため、
* Mathf.Rad2Degで、rad→度の変換が必要ですね

Aaxis = Vector3(a, b. c).normalized

これをQuaternion.AngleAxisに入れると、1秒後の回転状態になります
試してみて下さい

Quaternion.Eulerは、
Z軸回転→X軸回転→Y軸回転の連結回転になるので、
計算結果が、角速度での回転状態と合わないですよ

angularVelocityは全軸同時回転ですから
回転ベクトル=回転角 * 回転軸ベクトル
で計算しないとダメなはず
0811名前は開発中のものです。
垢版 |
2017/12/12(火) 04:00:52.95ID:kM1br0bK
>>794
"unity shiftjis error"でぐぐって一番上に出てくる内容コピってどやってんじゃねーよw
仰られてる知識や経験は、その問題に関してはとくに必要なさそうです
0813名前は開発中のものです。
垢版 |
2017/12/12(火) 07:26:11.46ID:OlgvJzEy
>>811
うん、そのドヤ顔を期待してたw
全く待たずに回答投下してるのに顔真っ赤でスルーされた事に気づけとか書いてる奴がいたのには驚いたが

だかな、この質問俺が数年前過去スレに質問して回答が得られなかった質問なんだわ、その後自己解決して方法も書いたはず
2017年4月のそのTIPS見て、同じようなことで困ってる奴多かったんだなと懐かしく思った記憶がある

>>800
すまん、昨日は撒き餌撒いて寝てしまったので見てなかった
回答はついてる様なので省略するが、物理エンジンで動かす場合、摩擦やら他のオブジェクトとの衝突やらで結果がズレる可能性があることには注意な
0814名前は開発中のものです。
垢版 |
2017/12/12(火) 07:26:33.24ID:yWI4yO+J
仕様奴隷「俺はこんなにも素晴らしい奴隷なんだ!もっと俺をこき使ってくれぇええ!!」(ドヤァアアア!!!)
0815名前は開発中のものです。
垢版 |
2017/12/12(火) 07:29:16.97ID:QJDJOOiE
レベルデザインに使えるツール教えてください
アセットでもいいです
0818名前は開発中のものです。
垢版 |
2017/12/12(火) 09:37:16.36ID:QJDJOOiE
>>817
アセットのセットみたいなのがほしいです
フリーで
0819名前は開発中のものです。
垢版 |
2017/12/12(火) 10:39:07.71ID:qFAu6kJp
アセットじゃないけどスケッチアップなんてどうだい?
CADツールだけどUnityでそのままスケッチアップ形式のファイルを読み込むことができるんだ

そしてウェアハウスっていうUnityでいうアセットストアのようなところで他人の作ったオブジェクトをダウンロードできるんだ

ただし無償版でどこまでできるか把握してないから
気になったら調べてごらんよ
0820名前は開発中のものです。
垢版 |
2017/12/12(火) 11:37:29.41ID:V4vKOuq6
VS for Macでコーディングしている人いる?
予測コーディングが効かなかったり、最近のアプデで日本語入力がリアルタイムで表示されなくなったり、子音の入力が反応悪かったり
色々ボロボロで進捗やばいんだけどMacでの開発に向いてるテキストエディタ何か無いかしら?
0823名前は開発中のものです。
垢版 |
2017/12/12(火) 17:04:49.48ID:SinzmT6m
VS codeを使うといい
for macは対応が不完全なゴミだがcodeはmacでも完璧に使える
金払ってもいいならRider
0825名前は開発中のものです。
垢版 |
2017/12/12(火) 18:36:56.62ID:w86KIWp6
>>807 >>808
>>809
ありがとうございます!
両方やってみました

Quaternion Q;
Vector3 axis, Vdeg, Vrad;
float angle, t;
Rigidbody rb;

void Start () {
 rb = GetComponent < Rigidbody > ();
 Vdeg = new Vector3(45, 30, 0);
 Vrad = new Vector3(45, 30, 0) * Mathf.Deg2Rad;
 Q = rb.rotation;
}
0826名前は開発中のものです。
垢版 |
2017/12/12(火) 18:37:14.48ID:w86KIWp6
void FixedUpdate () {
 t = Time.time;
 if (t == 0) {
  rb.angularVelocity = Vrad;
 } else if (t == 1.0f) {
  Debug.Log ("t=" + t);
  Debug.Log ("angularVelocity:" + rb.rotation.eulerAngles);
  rb.angularVelocity = Vector3.zero;

  //angle = Vrad.magnitude * Mathf.Rad2Deg;
  //axis = Vrad.normalized

  angle = Vdeg.magnitude;
  axis = Vdeg.normalized;

  rb.rotation = Quaternion.AngleAxis (angle, axis);
  Debug.Log ("AngleAxis:" + rb.rotation.eulerAngles);

  rb.rotation = Quaternion.Euler(Vdeg);
  Debug.Log ("Euler1:" + rb.rotation.eulerAngles);

  rb.rotation = Q * Quaternion.Euler(Vdeg);
  Debug.Log ("Euler2:" + rb.rotation.eulerAngles);

  rb.rotation = Quaternion.Euler(Vdeg) * Q;
  Debug.Log ("Euler3:" + rb.rotation.eulerAngles);
 }
}
0827名前は開発中のものです。
垢版 |
2017/12/12(火) 18:41:32.25ID:w86KIWp6
結果です!

angularVelocity = new Vector3(45, 30, 0) * Mathf.Deg2Rad
を入力すると、

@angularVelocity:Vector3(42.4, 37.4, 15.0)
 1秒ピッタリで止めるには、FixedUpdate内でないとダメのようですね

 Invoke("Stop", 1.0f)で呼び出すと、
 angularVelocity:Vector3(43.1, 38.6, 15.7)と
 1フレーム分くらいの遅延が生じる模様・・・

AAngleAxis:Vector3(42.4, 37.4, 15.0)

BEuler1:Vector3(45, 30, 0)

CEuler2:Vector3(45, 30, 0)

DEuler3:Vector3(45, 30, 0)

angularVelocityをEulerでQuaternionに入れちゃうと、
角速度による回転結果のQuaternionと少し違うようです・・・
AngleAxisでQuaternionに入れる方が正しいみたいですね
0828名前は開発中のものです。
垢版 |
2017/12/12(火) 18:52:30.96ID:w86KIWp6
>>816

回転が勝手に減速する話は本当ですか?
AngularDrag = 0にしてない・・・とかではなくて??

RigidbodyをangularVelocityやAddTorqueで回転させて、
1秒ごとにangularVelocityを表示させても、
回転速度は落ちてないようなのですが・・・
0829名前は開発中のものです。
垢版 |
2017/12/12(火) 20:43:24.56ID:s3bcy12n
>>826

RigidbodyもRigidbody2Dも、
LinearDragは0が初期値だけど、
AngularDragは0.05が初期値なのが、
気に入らないということでは?
0830名前は開発中のものです。
垢版 |
2017/12/12(火) 20:43:27.01ID:WuPRAOqq
今までモーションは、簡単だからmmdで作ってたけどx軸とy軸の計算違うような……
blenderに乗り換えた方がいいのだろうか。
0833名無し@キムチ
垢版 |
2017/12/12(火) 21:17:33.27ID:pZVPZZmh
>>832
Blenderには気を付けたほうがいい
Blender上では問題なくモーションしてても、unityに取り込んで動かすと、手が体に食い込んだりしているから。
何度か行ったり来たりする必要があるw
0834名前は開発中のものです。
垢版 |
2017/12/12(火) 22:25:16.08ID:oOD9NLJB
blender でもやっぱり同じようなこと起きると思うよ
表現力に不満がないならMMDにしとき
0836名前は開発中のものです。
垢版 |
2017/12/13(水) 00:01:44.95ID:/jokcbje
>>827

最初の回転状態が、
rotatiin =Quaternion.identityであれば、

1: rotation = Quaternion

2: rotation = rotation * Quaternion

3: rotation = Quaternion * rotation

1-3は全て同じ結果になります。

position = Vector3.zeroの場合、

1: position = Vector3

2: position = position + Vector3

1-2が同じ結果なのと一緒です。
0837名前は開発中のものです。
垢版 |
2017/12/13(水) 00:07:16.00ID:/jokcbje
rotationの場合も、positionの場合も、

1は、角変位や位置の絶対指定、
2-3は、角変位や位置の相対指定です。

rotatiin =Quaternion.identityでない場合、
position = Vector3.zeroでない場合、

1と、2-3で、結果が変わってきます。

しかも、rotationの場合、

2: rotation * Quaternionと
3: Quaternion * rotationでも、結果が変わってきます。

追加するQuaternionによる角変位の回転軸を、
transform軸を基準にした回転にする場合は2になり、
キャンバスのVector3軸を基準にした回転にする場合は3になります。
0838名前は開発中のものです。
垢版 |
2017/12/13(水) 00:35:37.82ID:/jokcbje
>>825-827
Invokeが呼び出しの際に1フレーム遅れるとわかっているのであれば、
1フレーム前の時間で呼び出させば大丈夫ですよ。

void Start () {
 rb.angularVelocity = new Vector3(45, 30, 0) * Mathf.Deg2Rad;
 Invoke ("Stop", 1 - Time.fixedDeltaTime); ←1フレーム前に呼び出し
}

void Stop () {
 Debug.Log ("1秒後のrotation:" + rb.rotation.eulerAngles);
 rb.angularVelocity = Vector3.zero;
}

「1秒後のrotation:Vector3(42.4, 37.4, 15.0)」が出ましたよ。
>>809の方法で求めた場合と一致する値です。

rb.angularVelocity = new Vector3(45, 30, 0) * Mathf.Deg2Rad
angle = (rb.angularVelocity).magnitude * Mathf.Rad2Deg

V = new Vector3(45, 30, 0)
angle = V.magnitudeでも同じ結果になります。
0843名前は開発中のものです。
垢版 |
2017/12/13(水) 19:11:19.37ID:6lJsdJ22
transformのposition, rotation, scaleって、
なんでtransform.position,transform.rotation,transform.lossyscale
になっていて、transform.scaleじゃないの??
0845名前は開発中のものです。
垢版 |
2017/12/13(水) 19:54:49.63ID:IotT1rVx
>>844
ツイッター
FacebookのUnity寄り合い所
あとはリアルのイベント
ゲームジャムやエンジニア向け勉強会に参加して交流、名刺交換、SNS垢の相互フォローなどすれば簡単に知り合いは増える
ちゃんと進捗をSNS上で報告すれば質問とかも答えてもらえる
イベントを探すならdoorkeeper、atnd、peatix
0846名前は開発中のものです。
垢版 |
2017/12/13(水) 20:48:15.04ID:/jokcbje
>>843

transform.lossyscale = Vector3.Scale(transform.parent.localscale, transform.localscale)
つまり
 transform.lossyscale.x = transform.parent.localscale.x * transform.localscale.x
 transform.lossyscale.y = transform.parent.localscale.y * transform.localscale.y
 transform.lossyscale.z = transform.parent.localscale.z * transform.localscale.z

localscaleは、インスペクター上で設定するスケールで、
lossyScaleは、自分のlocalscaleと親のlocalscaleの各成分の積になってます。

本当のscaleは、回転が入ると、Vector3ではなくて、3×3行列になってしまいます。

lossyScaleの場合は、回転前のスケールで、Vector3で表せるからだと思います。
0848名前は開発中のものです。
垢版 |
2017/12/13(水) 22:56:29.30ID:/jokcbje
Unityでは、アフィン変換を行う4×4行列であるMatrix4x4が、
TRS(Vector3 position, Quaternion rotation, Vector3 lossy scale)
によって構成されていて、
スケーリング→回転→移動の順に適用するようにしています。

最初にスケーリングを行うことで、
3×3行列の対角成分しか使わず、Vector3で済みます。

RigidbodyのinertiaTensorも一緒で、
本来は3×3行列が必要な慣性モーメントテンソルを、
慣性主軸系に限定することで、対角成分しか使わず、
Vector3の主慣性モーメントで済むようにしています。
0850名前は開発中のものです。
垢版 |
2017/12/13(水) 23:04:15.99ID:bbkFRctl
神になった気分だ。
スキルアップした今、どんなジャンルの仮想世界を作れと言われても
その詳細さえ教えてもらえれば
一瞬でどんなデータ構造/アルゴリズムで作ればいいかや
どんなデザインパターンを使えばいいかが
一瞬で頭にひらめき、スラスラとコードを書きはじめることができ、
予期せぬバグとかがなければ短期間でそのソフトやツールを一人で作る自信がある。

この予期せぬバグとはふだん使ってない昔やったプログラミング言語の細かい文法関連のことだけで
それはすぐ見直してカンを取り戻せばいいから全く問題ない。
0854名前は開発中のものです。
垢版 |
2017/12/14(木) 00:23:40.49ID:AuQKwcV0
>>853

そうですね。
parentがrootとは限らないので、parentのlossyscaleじゃないとダメですね。
末枝側へ変換が累積していきますから。

親オブジェクト-子オブジェクトの2者関係だと、
親オブジェクトのlossyscale = localscaleなので、両方localscaleで大丈夫ですけど。

親オブジェクト-子オブジェクト-孫オブジェクトの3者関係だと、
孫オブジェクトの親オブジェクトである子オブジェクトのlossyscaleは、
親オブジェクトのlocalscale * 子オブジェクトのlocalscaleになってますから、

孫オブジェクトのlossyscale
= 子オブジェクトのlossyscale * 孫オブジェクトのlocalscale
= (親オブジェクトのlossyscale * 子オブジェクトのlocalscale) * 孫オブジェクトのlocalscale
= 親オブジェクトのlocalscale * 子オブジェクトのlocalscale * 孫オブジェクトのlocalscale

>>852

仕事じゃなくて学問の方で。

うっかりしてましたが、UnityはCamelCaseだから、localScale,lossyScaleが正しいのでしたね。
0855名前は開発中のものです。
垢版 |
2017/12/14(木) 00:33:15.69ID:AuQKwcV0
Scaleの積は、Vector3の各成分とVector3の各成分の積なので、
Vector3 * Vevtor3 は定義されていないから、
Vector3.Scale(Vector3, Vevtor3) という演算ですね。
いわゆる、アダマール積(シューア積,要素積)です。

Unityでは、アダマール積の逆関数が定義されていないので、
自分でVector3.Scaleの逆関数を定義するか、
アダマール積の逆数を自分で定義する必要がありますね。
0856名前は開発中のものです。
垢版 |
2017/12/14(木) 02:05:43.30ID:tWpTkhe5
Vuforiaを使ってAR作りたいのですが実行するとマーカーは認識するもののカメラの映像が映らずに画面が黒くなります
誰か分かる方いらっしゃいますか...?
0858名前は開発中のものです。
垢版 |
2017/12/14(木) 08:46:47.19ID:xj1b5N68
>>857
専門学校出身だったら行列の回転だとかをQuaternionとかでも適用して使えるんだろなー

という煽りレス
0859名前は開発中のものです。
垢版 |
2017/12/14(木) 11:08:53.86ID:X1xy6sbZ
plus一ヶ月契約でもエッセンシャルパック2つってもらえますか?
あるいは契約し続けないと使えなくなる感じかな
0862名前は開発中のものです。
垢版 |
2017/12/14(木) 15:25:57.18ID:UIHENBZT
数学難しいですね
でも大丈夫!UNITYにはアセットが有りますよ!
アセットを購入しましょう!
0866名前は開発中のものです。
垢版 |
2017/12/14(木) 20:39:20.26ID:AuQKwcV0
>>865

移動と回転とスケーリングができるように、
アフィン変換行列になっているからです。

Matrix4x4.TRS(position, rotation, scale)
で4×4行列に入力できますが、

出力する時は、
Vector3 = Matrix4x4.MultiplyVector(Vector3)
によって、Vector3で入力して、
Vector3で出力できるようになっています。
0868名前は開発中のものです。
垢版 |
2017/12/14(木) 21:30:51.37ID:AuQKwcV0
>>858

回転行列MでベクトルV0を回転させて、ベクトルVにするには、
Z軸で30度回転する場合は、

Quaternion Q = Quaternion.Euler (0, 0, 30);
Matrix4x4 M = Matrix4x4.TRS (Vector2.zero, Q, Vector2.one);
Vector3 V0 = new Vector3(1, 2, 3);
Vector3 V = M.MultiplyVector (V0);

これを、QuaternionとVector3の演算で行うと、

Quaternion Q = Quaternion.Euler (0, 0, 30);
Vector3 V0 = new Vector3(1, 2, 3);
Vector3 V = Q * V0;
0869名前は開発中のものです。
垢版 |
2017/12/14(木) 21:32:41.20ID:AuQKwcV0
Matrix4x4 M = Matrix4x4.TRS (Vector2.zero, Q, Vector2.one);
は間違いで、

Matrix4x4 M = Matrix4x4.TRS (Vector3.zero, Q, Vector3.one);
が正しいです。
0870名前は開発中のものです。
垢版 |
2017/12/14(木) 21:45:36.22ID:AuQKwcV0
>>858

Quaternion QでベクトルV0を回転させて、ベクトルVにするには、
Z軸で30度回転する場合は、

Quaternion Q = Quaternion.Euler (0, 0, 30);

Vector3 V0 = new Vector3(1, 2, 3);

Quaternion Qv0 = Quaternion.identity;
Qv0.Set(V0.x, V0.y, V0.z, 0);

Quaternion Qv = Q * Qv0 * Quaternion.Inverse (Q);

Vector3 V = new Vector3(Qv.x, Qv.y, Qv.z);

こちらが、本来のQuaternion積でベクトルを回転させる方法です。

Unityでは、この面倒くさいQuaternion積の演算が、
「Quaternion * Vector3」だけでできるようになっています。
0871名前は開発中のものです。
垢版 |
2017/12/14(木) 21:55:15.62ID:AuQKwcV0
Vector3 = Quaternion * Vector3
は、行列積を意識していると思われます。

Vector3 = Matrix3x3 * Vector3
としたいところですが、
UnityにはMatrix3x3は用意されていません。
(3×3行列の乗算では、回転とスケーリングしかできないからです)

Vector4 = new Vector4(Vector3, 1) で4次元ベクトルにしてから、
Vector4 = Matrix4x4 * Vector4 で計算して、
Vector3 = (Vector3)Vector4 で3次元ベクトルへ戻す必要があります。

最初に、Vector4 = (Vector4)Vector3 と手抜きをしてはいけません。
Vector4 = new Vector4(Vector3, 0) で代入されると、
アフィン変換の「移動」が乗算されなくなります。
0872名前は開発中のものです。
垢版 |
2017/12/14(木) 23:49:37.69ID:zts/k6NY
行列なんか意識しないでも3dゲーム作れるようになったんだからすごい時代だよね
結構まえからだけど
0876名前は開発中のものです。
垢版 |
2017/12/15(金) 11:35:10.31ID:a5awPS/6
>>874
半額だったんでplusを年契約の年払いしたよ
売り上げ1千万以上なのに。
たかだか1万円ぐらいを月払いする奴いるの?
0877名前は開発中のものです。
垢版 |
2017/12/15(金) 12:38:14.64ID:c63jfGrC
物理演算系の解説を希望!

C#の経験あっても、そもそも物理演算は別物な気がする・・・

物理演算は、2Dと3Dで若干仕様が違うし、なかなか体系的に物理演算を解説しているサイトも少ない
せいぜい、velocityとAddForce止まりが多い

重力設定や衝突判定をUnityにまかせてしまうには、物理演算を使用するのが手っ取り早いんだけど、
物理演算だと、これまでのグラフィックス操作的な、プログラミングメソッドがあまり使えない
(基本的に、positionやrotationを直接いじらないほうが良いみたい)
0878名前は開発中のものです。
垢版 |
2017/12/15(金) 12:46:53.83ID:bN2Y1bPS
アイテムを所持していればお化けを倒せるというシステムにしようと思っています。
それでそのアイテムを十字架の画像にしようと思っているのですが、日本人だったらアイコン見ただけで何となく意味が分かるだろうと思うのですが、海外の人でも抵抗なくスッと理解されるんでしょうか?
0881名前は開発中のものです。
垢版 |
2017/12/15(金) 16:32:05.45ID:kzY3QNw/
>>878
ゲームデザインにもよるけど

そのアイテムの効果とお化けとの相互関係が分かるような物なら多分大丈夫かなぁ アイテム説明とかも結構重要だけども。
0883名前は開発中のものです。
垢版 |
2017/12/15(金) 20:05:01.07ID:c63jfGrC
transform.LookAtだと、どうしてもオブジェクトのforward軸が対象を向いちゃう
そうじゃなくて、オブジェクトのup軸を対象に向けたいんだけど、一体どうすれば・・・?

transform.LookAtでオブジェクトのforward軸を対象に向けて、
その後にtransform.Rotateでx軸で90度して、up軸をforwardへ向けているんだけど、
2段階になっちゃって、無駄が多いし、その瞬間動作が表示されちゃう

オブジェクトとtransform軸の対応を変更できれば、
オブジェクトのup軸方向を、forward軸に設定したいんだけど・・・
0884名前は開発中のものです。
垢版 |
2017/12/15(金) 20:51:06.18ID:PCtIHB7r
おぶじえくを最初から傾けておくか、小オブジェクトで対応するか、いくらでも方法あるだろうね。
ルックアット使わずにやるのも有りだし。
0885名前は開発中のものです。
垢版 |
2017/12/15(金) 23:29:48.61ID:nw+wySXa
>>883
目標の座標をVector3 targetとすると、

transform.right = targetでいけませんか?

transform.LookAt(target) は、
transform.forward = target と同じになるはずです。
0886名前は開発中のものです。
垢版 |
2017/12/15(金) 23:37:17.53ID:nw+wySXa
もっとも汎用性のある方法は、
向き(transform.rotation)を、
向けたい軸(Vector3.right)を向かせたい相手(target)へ向ける回転
Quaternion.FromToRotation にしてしまう方法かと思います。

transform.rotation = Quaternion.FromToRotation(Vector3.right, target)
になります。

例えば、左側をtargetに向けたい場合、
Vector3.right を、- Vector3.right に変更します。
(Vector3.right = - target でも勿論できます)

ただ、Vector3.oneをtargetに向ける回転は、
transform軸への代入ではできず、
上記の汎用法を使うのが良いと思います。
0887名前は開発中のものです。
垢版 |
2017/12/15(金) 23:38:56.71ID:nw+wySXa
>>883

読み間違えました。
up軸を向けるのでしたね。

@transform.up = target

Atransform.rotation = Quaternion.FromToRotation(Vector3.up, target)
0888名前は開発中のものです。
垢版 |
2017/12/16(土) 01:09:49.63ID:yxJiRP9K
先生、お元気ですか?

ゲームの世界は感覚的すぎて戸惑います。
学び舎では多くを教わりましたが、教わった通りに自分が成長できているか分かりません。
ぼくは、自分の理想の世界観を語れるほどゲームを知らないということを知りました。

惹かれます。

ゲームを、もっと知りたいです。
0891名前は開発中のものです。
垢版 |
2017/12/16(土) 10:52:27.48ID:rc5ijf27
質問です
友人がウインドウズで9人対9人のオンラインゲームを作りたいと言ってます
それはつまり18人がオンライン接続してゲームするわけですが
そんなことUnityでやれますか?
0895名前は開発中のものです。
垢版 |
2017/12/16(土) 15:56:35.74ID:fmqmdkMD
無料で利用できる範囲は同時接続20人まで
21人〜50人まで月額4200円
51人〜200人まで月額15000円
0896名前は開発中のものです。
垢版 |
2017/12/16(土) 16:08:28.62ID:ovrxOZck
パーソナル版の使用条件として収益が〜ドル以下みたいな規約がありますが、
あれは自己申告なのでしょうかそれとも向こうでも逐一判断できる状態なんでしょうか。
0899名無し@キムチ
垢版 |
2017/12/16(土) 19:19:52.45ID:ODGviKVk
>>887
>up軸を向ける

up軸を相手に向けるというのが、当方にはどんな状態なのか、ピンとこないです。
具体的には頭のてっぺんを相手に向けるということなのですか?
それはどんなシチュエーションのゲームなんだろう?
これから相手に頭突きをかますとか?それなら、頭だけを下げればいいわけだし・・・
申し訳ないが、まるで映像が浮かんできません・・・www
0900名前は開発中のものです。
垢版 |
2017/12/16(土) 22:30:34.88ID:zgsa9dPV
落ちものパズルを作成していて画面上部にオブジェクトを出現させて横軸のマウスの動きについてきてクリックでオブジェクトが落下。
というような仕様にしたいのですが、ランダムにオブジェクトを作成して画面上部に固定というのが出来ません。これの解決法が見つかりません。。。

どうかご教授お願いします。
0901名前は開発中のものです。
垢版 |
2017/12/16(土) 22:50:27.94ID:hBjssZ70
例えば、太陽を中心に地球が公転をする時のようなイメージで、

常に同じ面(赤道面)を太陽に向けて公転する場合は、forwardを太陽に向かせればよいけど、

太陽の真上に北極星をおいて、北極側の地軸を常に北極星に向かせたまま公転する場合は、
up軸を北極星に向ける必要がある

(実際の地球はそんな回転はしないけど、そういう状況を作りたいときに必要かも)
0902名前は開発中のものです。
垢版 |
2017/12/16(土) 22:58:57.30ID:hBjssZ70
あるいは、飛行機の宙返り飛行かも?!

普通、飛行機の前後にforward軸をとるはず
transform.position += Vector3.forwardで前へ進み、

taransform.RotateionAroundで、上空に設定したループ中心回りを公転して宙返り
その際、飛行機の背中(上下のup軸)はループ中心を向けていないといけない
0903名前は開発中のものです。
垢版 |
2017/12/16(土) 23:03:43.75ID:yxJiRP9K
人生は神ゲーだ。
本気でがんばるとぎりぎり倒せるように絶妙のバランス調節がされた敵。
単純作業じゃ効率が悪いけど、工夫次第でどんどん効率を上げられる経験値システム。
リセット不可の緊張感。でもシレンとかよりずっと死ににくいからあんま気にする必要なし。つーか普通のゲームでもリセットなんて邪道じゃん。
全てのキャラが深い人間性と歴史を持って登場する、圧倒的リアリティ。
グラフィックが綺麗すぎ。多分、無限×無限ピクセルで、毎秒無限フレームで動いてる。色も多分無限色使える。夕焼けとかマジありえねー美しさ。
BGMの種類がほぼ無限。選曲も自由。自分で作った曲を流すこともできる。人間が作ったとは思えない、とんでもなく複雑で洗練されたシナリオ。
リアル出産システム採用。自分と、自分よりも大切に思える相手の遺伝子を半分ずつ受け継いだ、奇跡のようなキャラを生み出して、そいつに自由に色々教えて育てることができる。
すごく嬉しいし、ちょー楽しい。ネコっつー生き物が登場するんだけど、これがちょーかわいい。
食いきれねーほどの種類の料理があって、超うまいものが時々食える。
説明書が無く、仕様が明かされてないから、自分でデータとって仕様を推測するしかない。これがまたとんでもなく高度に洗練された仕様になってるっぽくて、なかなか正確には分からん。
だから、とりあえず大雑把に推定し、それに基づいて行動して、データを取りつつ徐々に予測値を修正していく必要がある。
これがまた楽しい。徐々に明らかになっていく世界観。
未だに明らかになってない謎が山盛り。友達と一緒に協力して遊べる。無料。
本気で自分を愛してくれるキャラがいたりする。ゲーム内で別なゲームやったりアニメ見たり出来る。

エロゲと違って、主人公の勝手な行動でフラグが立つことがない。

登場キャラと本当に心を 通わせることが出来る。信じがたいほど深い感動を味わえるイベントが結構ある。もちろん本気でやらないとフラグを無駄にするだけだが。
こんなとてつもない神ゲーを糞ゲーとか言ってる奴は、本気でこのゲームをやったことがない奴だけ。
まあ、一切がんばらずにクリアできるようなヌルゲーばかりやってる奴には、このゲームはちょいとハードかもしれんがな。でも一端ハマった奴はみんな、このゲームを辞めたくないって言ってるぜ
0904名前は開発中のものです。
垢版 |
2017/12/16(土) 23:05:25.75ID:hBjssZ70
いいや、違うな・・・

おそらく、2DでLookAtが使えないからかもしれない!
2Dだと、forwardはZ方向、つまり、奥方向が前になる

2DでLookAtすると、forwardを対象物に向けるため、
スプライトが画面に対して垂直に立っちゃうからかも?

例えば、振り子運動させる時、上方に振り子の中心点を設定して、
左下45度から右下45度へ向かってRotateAroundで公転した場合、
オブジェクト上方=up軸を振り子の中心点へ向けないといけない

そもそも、2Dではup軸かright軸しか向きを変える際に利用できない・・・
(forward軸を変えたら、2Dでなくなってしまうから)

これが理由のような気がするなあ
0905名前は開発中のものです。
垢版 |
2017/12/16(土) 23:07:26.05ID:hBjssZ70
>>900

物理は使う?
2Dなの3Dなの??

Gravityオフにしてオブジェクトを生成すれば、落ちないよ
クリックしされたら、オブジェクトのGravityをオンにしたら良いんじゃ
0906名前は開発中のものです。
垢版 |
2017/12/16(土) 23:57:45.09ID:zgsa9dPV
>>905
返信ありがとうございます。
物理は使っています。2Dで制作しています。

プログラムが書けなくてオブジェクトをランダムに生成してクリックでGravityをオンにするっていうようにするのが
どうやればいいのかわからなくて・・・。
0907名前は開発中のものです。
垢版 |
2017/12/17(日) 00:00:59.32ID:CBpPFu99
星型のアセットモデルをインポート

Hierarchyに追加して任意の角度(星型が正面に来る)にする

それをプレハブ化
してもInspector内でデフォルトの角度に戻ってしまいます(オブジェクトとして使用する分には任意の角度になるんですが)

星型の弾丸を作ろうと思ってるんですが、プレハブから弾丸にするとデフォルトの変な角度のまま発射されてしまうんですよね…
0909名前は開発中のものです。
垢版 |
2017/12/17(日) 01:26:30.94ID:K2bL8mhm
>>907

アセット内のプレハブの方のインスペクターで角度を指定すれば、
それをヒエラルキーに持っていっても角度は保たれているはず

スクリプトで動的にプレハブprefabを生成する場合、
生成時に角度Quaternionを指定できる

if?(Input.GetMouseButton?(0))?{ //クリック時
 Vector3 position = new Vector3(Random.Range(-10.0f, 10.0f), 10, 0); //x座標をランダムに生成
 Instantiate(prefab, transform.position, Quaternion.Euler(x, y, z)); //角度を指定してprefab生成
}

このスクリプトをprefabに載せる
0910名前は開発中のものです。
垢版 |
2017/12/17(日) 01:32:40.49ID:K2bL8mhm
半角スペースが文字化けして?になっちゃった・・・

左クリックされたら、
x座標を-10〜+10でランダム値
y座標を10
角度を(x度,y度,z度)
prefabを生成

2Dだと、
Rigidbody2D Rb2D;
Rb2D?=?GetComponent?<?Rigidbody?>?();
Rb2D.gravityScale = 1.0f;
もいるね

あらかじめ、prefabのRigidbody2Dで、
インスペクター上でGravityScaleは0にしておいてね;
0911名前は開発中のものです。
垢版 |
2017/12/17(日) 02:01:14.46ID:vcuEPHEk
流石にコード無しでDTB作るのは難しいと思うからプログラムを学ぶかかける人を探さないと無理だと思うよ
0912名前は開発中のものです。
垢版 |
2017/12/17(日) 02:16:48.31ID:K2bL8mhm
public GameObject Obj; //prefabを指定しておく
Rigidbody2D Rb2D;

public class PrefabCode : MonoBehaviour {

void Update() {
 if (Input.GetMouseButton(0)) {
  Vector3 position = new Vector3(Random.Range(-10.0f, 10.0f), 10, 0);
  GameObject Prefab = Instantiate(Obj, transform.position, Quaternion.Euler(x, y, z));
  Rb2D = Prefab.GetComponent<Rigidbody2D>();
  Rb2D.gravityScale = 1.0f;
 }
}
0913名前は開発中のものです。
垢版 |
2017/12/17(日) 02:23:43.91ID:K2bL8mhm
PrefabCodeは、ヒエラルキーで作成した空の2Dオブジェクトにでも入れておいて

もしかして、ランダムはオブジェクト自体か?
オブジェクトの形が数種類あるとか?
その場合は、ランダムでパターン番号0〜3とかを指定して、
if文で、違うprefabを生成する文を選択させるのが良いかも

空のオブジェクトのx座標を、マウスのx座標と揃え続けるコードも必要だな
マウスオーバーイベントに書いておく必要ありそう

prefabは空のオブジェクトの位置に生成されるから
0917名前は開発中のものです。
垢版 |
2017/12/17(日) 03:30:34.88ID:anx13erV
2Dアクションゲームを作成しようとしている初心者です。

tilemap collider2dをアタッチしたtilemapの平面フィールド上で、
rigidbody2dとbox collider2dをアタッチして重力と当たり判定を付与したGameObject(Player)を歩かせたところ、
タイルに引っかかる形で止まってしまいます。
これを回避するためにcapsule collider2d等で接地面を点にすると止まることはなくなります(僅かに減速する)が、
当たり判定を□で判定したい為、可能であればbox collider2dで実装したいと考えています。

tilemapを使用した際のこういった引っかかり挙動を抑えることは可能でしょうか。
0918名前は開発中のものです。
垢版 |
2017/12/17(日) 10:25:06.96ID:kJlZ2G7V
足元はcapsuleかcircleにして、
もう1つboxで足元から数ピクセル上を覆えば良いのでは?
collider2Dは1つという制約はないので、複合したら良いんじゃ
0919名前は開発中のものです。
垢版 |
2017/12/17(日) 10:31:21.09ID:kJlZ2G7V
>>899

>>887ですが、基本的にforward軸はオブジェクトの前後方向にとっているのですが、
円状(球状)の軌道で旋回しており、その際にオブジェクトの上下方向を、
軌道の中心(球の中心)へ向けておきたいのです・・・

人工衛星やスペースシャトルみたいな感じです
前方は進行方向を向けておいて、なおかつ上下は鉛直軸に揃えたいんです
前方が中心を向いちゃうと、上下に立った状態で周回してしまうので
0920名前は開発中のものです。
垢版 |
2017/12/17(日) 10:36:09.95ID:kJlZ2G7V
レスのアンカに引っ張られて間違えましたが、自分は883でした

>>904
2Dだとtransform.LookAtが機能しないんですね!
それじゃ、やっぱりforward以外の軸を向ける機能は大事ですね

>>885
ビックリです!
transform軸に目標座標を入れると、軸がそっちを向くんですね!
しかも、正規化して単位ベクトルにするひつようもないみたい
そしたら、transform.LookAtいらなくない?!
0921名前は開発中のものです。
垢版 |
2017/12/17(日) 16:14:44.68ID:anx13erV
>>918
レスありがとうございます。
当たり判定に違和感がない数ピクセルの差でbox collider2dをアタッチすると引っかかりは生じます。
引っかからない程度に足元を円形にすると角で滑り落ちるようになってしまいます。

DirectionをHorizontalにした角の丸い棒状のcapsulecollider2dでプレイヤーの上下左右を被った場合(角のない箱のような形)は、
引っかかることはなくなりますが、やはりタイルに当たりはするので、極僅かに減速してPlayerが数pixcel浮くことがあります。
またその際、OnCollision〜2Dイベントを監視すると、タイルに当たって浮いた瞬間にタイルとの接触判定が一瞬途切れている為、
ジャンプ判定等にも影響が出てしまう(空中にいる判定が誤作動する)のでタイルとの判定自体を正しく動作させたいと考えています。
0922名前は開発中のものです。
垢版 |
2017/12/17(日) 17:18:37.08ID:CBpPFu99
回転するステージを作ってます
ステージにspawn位置を子オブジェクトとして設定して、そこから敵を出現させようと思ってるんですが
spawn位置がステージに追従して回転せず、固定されたままになってしまいます

オブジェクトをそのままステージの子にすると回転に追従できるんですが、
Spawnにスクリプトを設定してそこからオブジェクトを選んでくっつけるとどうもうまく行かず…

なにか解決方法はありませんか?
0924名前は開発中のものです。
垢版 |
2017/12/17(日) 17:21:12.36ID:anx13erV
>>921
すみません自己解決しました。

edge collider2dを使用するか、box collider2dのedge radiusを0.001に設定することで、
タイルとの衝突(及びOnCollider系イベントの誤発生)はなくなりました。
参考:ttps://forum.unity.com/threads/rigidbody-getting-stuck-on-tiled-wall.220861/

ありがとうございました。
0927名前は開発中のものです。
垢版 |
2017/12/17(日) 20:36:30.69ID:MPKxHq38
Unityの人達がどれほど「技術の民主化(デモクラタイズ)」とい
うものに心を払っているかは、多分外部の人達には想像できな
いと思います。この一点においいて、Unityは、世界中に沢山の
ファンを生み出し、そしてエバンジェリズムを行うチームのメンバ
ーも国境や政治制度を越えてひとつになれるのです。
0928名前は開発中のものです。
垢版 |
2017/12/17(日) 20:43:06.69ID:ttDBRzWh
その思想は非常に危険
それは即ち低賃金労働者の搾取がゲーム業界においても世界的に起こるようになるということと同義だからだ
0930名前は開発中のものです。
垢版 |
2017/12/17(日) 22:07:45.00ID:K2bL8mhm
>>925
transform軸の座標は、自分のpositionをVector3.zeroとした時の相対座標で設定されている

自分のpositionが原点の場合は、transform軸の座標に目標のpositionを入れれば、
それが勝手に単位ベクトル化されて、方向ベクトルになるみたい

でも、自分のpositionが原点でない場合は、
transform軸の座標に「target - trans.position」で自分の座標を引いておく必要がある

だから、「target」だけを入れれば良いLookAtの方が簡単にできる(forward軸限定だけど)
あと、LookAtは第2引数で、up軸の方向も指定できる
(forward軸をtagetに向けた状態で、可能な限りup軸を指定方向に合わせてくれる)
0931名前は開発中のものです。
垢版 |
2017/12/17(日) 22:12:13.99ID:K2bL8mhm
>>922

Instantiateで生成する時に、ちゃんと親を指定してる??
動的に生成したオブジェクトは、ステージとの親子関係が切れてない?

Instantiate(Object, Position, Parent)
0932名前は開発中のものです。
垢版 |
2017/12/17(日) 22:14:47.35ID:K2bL8mhm
>>921
>>924

edge radiusなんて便利な機能が付いて、
矩形の判定枠の角を丸められるようになったんだね

いつも、足の前後に円形判定をおいたり、
カプセルを横にして置いて、地形判定専用にしてたわ
0933名前は開発中のものです。
垢版 |
2017/12/17(日) 22:57:38.86ID:SNj3ir+c
ダメージを受ける毎に敵オブジェクトとかモデルが足元から徐々に(段階的に)赤くなって行くっていうのって、どういう原理で出来るんですか?
色々考えたんですけど思い付かなくて
0935名前は開発中のものです。
垢版 |
2017/12/18(月) 04:52:21.33ID:B3OUJM41
歩くアニメーションがあってそれは実行すると前進するのですが
これをその場で足踏みだけさせるように簡単に変更はできますか?
0936名前は開発中のものです。
垢版 |
2017/12/18(月) 08:05:53.43ID:vc4Z0s4x
アニメーション再生するだけで前に動くことは無い
別のスクリプトでオブジェクトを進行方向に動かしているはず
0937名前は開発中のものです。
垢版 |
2017/12/18(月) 08:48:59.47ID:WoyHjqZj
>>877
position等を直接いじったらそれはワープしてるのと同じだからね

移動や回転は事象に応じて物理エンジンがするものと考えれば、いろいろ扱いやすくなると思うよ
0939名前は開発中のものです。
垢版 |
2017/12/18(月) 10:23:29.76ID:B3OUJM41
>>938
apply root motionを指定しても動いてるんですよね。
>>936
歩く以外にもジャンプのアニメーションも上に飛び上がらないようにしたいとかです。
0940名前は開発中のものです。
垢版 |
2017/12/18(月) 10:32:53.07ID:vc4Z0s4x
>>939
モーション自体の中で位置が動いてるなら簡単に動かないようにするのは無理
アニメーション編集してルートのトランスフォーム移動のキーを全部削除するしかない
0942名前は開発中のものです。
垢版 |
2017/12/18(月) 12:00:11.97ID:jBsoCflG
LateUpdateでモーション適用後のトランスフォームを変更できる
ルートのボーンにLateUpdateで位置をlocalPosition=0,0,0にするコンポを付ければいい。
0946名無し@キムチ
垢版 |
2017/12/18(月) 19:51:23.56ID:iM2CjGiv
>>885>>942は優良回答者ですね。
しったかのヘタレ回答者が多い中で、すごいです!!!
0948名無し@キムチ
垢版 |
2017/12/18(月) 22:22:26.73ID:iM2CjGiv
>>947
ホントですね。頑張ります!
0951名前は開発中のものです。
垢版 |
2017/12/18(月) 23:04:07.96ID:x75jC3YN
最近、質問-回答がちゃんとなされて、質問スレとして機能していて、ビックリ!

ちょっと前なら、アセットで解決!で終了だったのに・・・

スレで出た有用なQ&Aは、誰かどこかにまとめてくれないかね〜
0952名前は開発中のものです。
垢版 |
2017/12/18(月) 23:11:37.88ID:x75jC3YN
2DはLookAtが使えなくて今まで諦めてたけど、
まさかtransform.rightやtransform.upに直接代入して、
LookAtもどきができるとは、凄く役になったな〜

タイルチップで2D背景を作ってたけど、
左右移動時にタイルのつなぎ目で引っかかるから、
高さが同じタイルは、colliderを統合して、
高さが変わるところだけ、別colliderにしてたけど、
これからは、タイルチップ敷布でいけそうだな〜
0953名前は開発中のものです。
垢版 |
2017/12/19(火) 00:07:08.24ID:4Od9SmbT
ネトウヨ老害死ねばいいのに
ゲ製コミュの印象悪くして皆の足引っ張りやがって
死ねよ不細工メタボ引き篭もりネトウヨ
0956955=944
垢版 |
2017/12/19(火) 03:07:20.95ID:Ih0Nk694
名前欄ということです。すみません。
0957名前は開発中のものです。
垢版 |
2017/12/19(火) 07:37:16.79ID:4Od9SmbT
>>954
は?なんで俺が「キムチキムヨナ」連呼のネトウヨの最底辺メタボのゴミおっさんなんだよ?糖質が絡んでくるなや
「キムチキムヨナ」連呼のネトウヨの最底辺のゴミおっさんがどこで「コミュニティ」とか言ってやがるんだ?
ゲ製コミュをネトウヨコミュニティと一緒にするなやカス共が

>>955
「!」の使い方といい、文体といい、同じに見えるんだが?
ネトウヨの最底辺のゴミおっさんが、わざわざ文体を真似てるってことか?
0960名前は開発中のものです。
垢版 |
2017/12/19(火) 10:04:53.30ID:4Od9SmbT
なぜ <準コテ「キムチ」で「キムヨナ」連呼> みたいなゴミを、素朴に「ゴミ」と言うことや
ぱっと見で文体が同じに見えることを、素朴に「同じに見える」「一方が真似てる」と言うことが
面倒がられなければならないのか?
素朴な書き込みを面倒がり、ゴミ廃棄を面倒がる奴の方が、よっぽど面倒だぜ?
0961名前は開発中のものです。
垢版 |
2017/12/19(火) 10:13:49.21ID:hldyKkrz
unityにマップを作るtile機能ってあるけど一つのチップセットに対してBoxColliderとかの情報を付けるのってどうすればええんやろ
0965名前は開発中のものです。
垢版 |
2017/12/19(火) 15:56:19.98ID:O0snqTpx
>>951
お前が幼稚園や保育園をお望みならそれでいいんじゃない?
まともな小学生以上は自分でググって調べて解決してる
そんな内容ばかりだ
0967名前は開発中のものです。
垢版 |
2017/12/19(火) 18:11:13.26ID:OC9tHkfS
>>952
むしろ2DでLookAtさせたいだけならオブジェクトAとBの角度を取って画像をRotateさせるだけでいいんじゃないん?w
0969名前は開発中のものです。
垢版 |
2017/12/19(火) 19:29:46.21ID:oc7hao2D
>>967

自分をオブジェクトA
 Aのposition = transform.position
目標をオブジェクトB
 Bのposition = target
とした場合に、

transform.right = target.position - transform.position
と同じ作用になるようにするには、

>>957の方法ではどうなる??
0970名前は開発中のものです。
垢版 |
2017/12/19(火) 19:59:39.02ID:IygWzju3
>>969
オブジェクト間の角度とる関数あるからしらべて
0971名前は開発中のものです。
垢版 |
2017/12/19(火) 20:25:38.60ID:v4JsSdmj
ベクトル間の角度を出す関数じゃなくて?
ベクトル間の角度だと、原点を中心にした角度になるけど

しかも、それで角度を出すと回転の向きがわからないから、
ベクトルの外積を求める必要もあるよね
0972名前は開発中のものです。
垢版 |
2017/12/19(火) 22:09:39.44ID:v4JsSdmj
>>967

自分でコードを出してみなよ〜

命題:オブジェクトAの向きを、オブジェクトBの方向へ向ける

 オブジェクトAの座標は任意(原点とは限らない)

 オブジェクトAの向きは任意(0度とは限らない)

 オブジェクトBの座標は任意(原点とは限らない)

 オブジェクトBの位置はVector3で「target」とする

2Dだから、forward軸をtargetへ向かせるLookAtは使用できない

さて、969のコードを超える簡略化ができるのか?!どうか
0974名前は開発中のものです。
垢版 |
2017/12/19(火) 22:17:29.27ID:v4JsSdmj
そもそも角度って言っても、
それぞれのベクトルの偏角なのか、2つのベクトルのなす角なのか・・・

Rotate(0, 0, θ)で入れるには、
オブジェクトAからオブジェクトBへ向かうベクトルの偏角じゃないとダメだから、

オブジェクトAのベクトルとオブジェクトBのベクトルのなす角を求める
Vector3.Angleを使っても、それじゃA→Bへの原点中心の公転角になっちゃうよ!

rotationに入れるにはQuaternionである必要があるし、
オブジェクトAの最初の向きが0度じゃない場合も考慮しないといけないし・・・

どう考えても面倒じゃない??
0975名前は開発中のものです。
垢版 |
2017/12/19(火) 22:59:56.79ID:v4JsSdmj
アセットおじさんは、
なんていうアセットで、いくらで、どの機能を使うとできるのかも明記して欲しいね〜
「探せばあるかもよ」じゃね・・・
0976名前は開発中のものです。
垢版 |
2017/12/20(水) 00:34:43.35ID:TUVA4DF6
>>969

考えてみました。
Aに下記のスクリプトをセットします。

public class A : MonoBehaviour {
 GameObject obj;
 Vector3 target, position, direction;

 void Start () {
  obj = GameObject.Find ("B");
  target = obj.transform.position;
  position = transform.position;
  direction = target - position;
  Invoke ("Rotate", 1.0f);
 }

 void Rotate(){
  transform.right = direction; ←ここを置き換えるコードです。
 }
}
0977名前は開発中のものです。
垢版 |
2017/12/20(水) 00:39:41.23ID:TUVA4DF6
@Quaternion.FromToRotationを使用する方法1
 transform.rotation = Quaternion.FromToRotation (Vector3.right, direction);

AQuaternion.FromToRotationを使用する方法2
 transform.rotation = transform.rotation * Quaternion.FromToRotation (transform.right, direction);

BVector3.Angleを使用する方法1
 transform.rotation = Quaternion.Euler(0, 0, Mathf.Sign(Vector3.Dot(Vector3.forward, Vector3.Cross(Vector3.right, direction))) *Vector3.Angle(Vector3.right, direction));

CVector3.Angleを使用する方法2
 transform.rotation = transform.rotation * Quaternion.Euler(0, 0, Mathf.Sign(Vector3.Dot(transform.forward, Vector3.Cross(transform.right, direction))) *Vector3.Angle(transform.right, direction));
0978名前は開発中のものです。
垢版 |
2017/12/20(水) 00:44:36.57ID:TUVA4DF6
DVector3.Angleを使用する方法3(Rotateを使用)
 transform.Rotate (0, 0, Mathf.Sign(Vector3.Dot(Vector3.forward, Vector3.Cross(transform.right, direction))) *Vector3.Angle(transform.right, direction));

EMathf.Atan2を使用する方法1(Rotateを使用)
 transform.Rotate (0, 0, Mathf.Atan2(direction.y, direction.x) * Mathf.Rad2Deg - transform.rotation.eulerAngles.z);

FMathf.Atan2を使用する方法2
 transform.rotation = Quaternion.AngleAxis(Mathf.Atan2((direction.y, direction.x) * Mathf.Rad2Deg, Vector3.forward);

うーん、どうやっても元よりも長いコードになってしまいます。

オブジェクトAの位置が原点だとか、オブジェクトAの向きが無回転だとか、
条件を付ければ、もう少し簡略化できますが・・・
0979名前は開発中のものです。
垢版 |
2017/12/20(水) 01:00:49.24ID:TUVA4DF6
Quaternion.FromToRotation(A, B)では、
回転方向を含めた回転状態を得られますが、

Vector3.Angle(A, B)では、
ベクトル間の角度しかわからず、向きがわかりません。
また、取得される角度は180度以下に限定されるため、
左向きに270度は、右向きに90度かもしれないということです。

回転方向は、Vector3.Cross(A, B)のZ成分が正か負かで判定します。
2Dでは、Mathf.Sign((Vector3.Cross(A, B)).z)でも良いのですが、
3Dでは、回転面がXY平面上とは限らないため、外積ベクトルと
正の向きにしたい軸との内積をとってから符号判定した方が確実です。

Atan2関数は、戻り値がradのため、度に直す必要があります。
また、相対回転であるRotateを使用する場合は、
求めた偏角から、現在の向きの回転角を引いておく必要があります。

rotationはQuaternionのため、eulerAnglesでオイラー角に戻しておき、
Z軸回転成分だけを取り出して減算します。
0981名前は開発中のものです。
垢版 |
2017/12/20(水) 18:29:13.04ID:XTZUI7pU
汎用性を考えると、Quaternion.FromToRotationは良さそうですね

これは、あるベクトルを別のベクトルにする回転を返すわけだから、
自分の向きを、自分のベクトルから目標とするベクトルへ向ける回転にするわけですか・・・
0982名前は開発中のものです。
垢版 |
2017/12/20(水) 22:49:28.74ID:TUVA4DF6
>>980

テラシュールブログ
http://tsubakit1.hateblo.jp/entry/2014/08/02/030919

ここに、Quaternion.FromToRotationの使い方がうまくまとまってました。
>>var diff = (target.position - transform.position ).normalized;
>>transform.rotation = Quaternion.FromToRotation( Vector3.up, diff);

このサイトでは、diffは正規化されているようですが、
基本的に内部で強制的に単位ベクトルになるようなので、
target.position - transform.positioだけで大丈夫そうです。

なお、外積ベクトルを利用する場合は、大きさも影響してきますので、
方向ベクトルは単位ベクトルにしておいたほうが無難です。
0983名前は開発中のものです。
垢版 |
2017/12/20(水) 22:56:36.28ID:TUVA4DF6
なお、私の方法では、外積ベクトルとZ軸の内積をとっていますが、
最終的に符号のみを取り出しているので、大きさが影響しません。

Vector3.Reflect,Vector3.Project,Vector3.ProjectOnPlaneなど、
単位ベクトルに内積を乗算するタイプの関数では、
必ず正規化して単位ベクトルにしてから代入しないと、
計算結果が変わってきますので、注意が必要です。
0984名前は開発中のものです。
垢版 |
2017/12/21(木) 12:35:15.03ID:rQmWRShb
  /⌒ヽ
 く/・ ⌒ヽ   すうがくのことわからない
  | 3 (∪ ̄]
 く、・ (∩ ̄]
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
0991名前は開発中のものです。
垢版 |
2017/12/21(木) 18:12:39.26ID:p4DyS94v
なんだかんだと言ってもITはそれなりの頭がないと出来ない
中学、高校で数学が苦手だった奴にプログラミングはむかない
そんな理由で糞IT専門学校卒の底辺IT奴隷だって素質があって他の業種からみれば高給与
まあ糞IT専門学校に逝っても半分以上は素質がなくて資格も取れずIT関連企業にも就職できないんだけど
0992名前は開発中のものです。
垢版 |
2017/12/21(木) 18:43:55.99ID:d8WQwc80
Unityのプログラムを、コピペじゃなくて、
自分で考えて、組み立ててコードを書けるってことは、
それなりに数学的な素養があると思うんだよね〜

何も行列とかクォータニオンとかを数学的にきちんと理解していなくても、
「そのメソッドで何ができるか」を理解していれば、
たとえメソッドの内部はブラックボックスでも、それを組み合わせて、
ちゃんと機能するコードが書けるから・・・

ある意味、クラスによるカプセル化と一緒で、
オブジェクト指向の根幹になるんじゃないかな?
0993名前は開発中のものです。
垢版 |
2017/12/21(木) 18:52:38.72ID:d8WQwc80
もちろん、そのクラスや構造体の中で、
「数学的に何が行われているのか?」を理解していれば、
それを応用して、別のクラスを作ったり、
他の処理に応用することができるようになるとは思うけど・・・

3D処理(描画じゃなくて動作)で必要なのは、
ベクトル、行列、複素数の拡張であるクォータニオン、
極座標、関数(特に、三角関数)、初等幾何学、
古典物理学(力学)くらいじゃないかな・・・

Unityでは、行列は基本内部処理だけで表に出ないから、
高校の数学UBくらいまでのレベルじゃなかろうか?
0994名前は開発中のものです。
垢版 |
2017/12/21(木) 19:26:27.42ID:J5wOBApL
>>988
>年がいくつでも何処からでも学べるんちゃうんか

それを聞く時点でキミはすでに学べない。
0995名前は開発中のものです。
垢版 |
2017/12/21(木) 20:31:14.43ID:MUjb87iC
そんなんいらね。
三角関数を何となく使えるぐらいで十分。
あとはunityがやってくれる。
0996名前は開発中のものです。
垢版 |
2017/12/21(木) 20:41:57.83ID:m2pWnfBj
>>988

高校卒業してから20年くらい、今年初めからUnityを始めましたが、
独学でベクトルの外積やクォータニオン演算まで辿り着けたので、
興味さえあれば、何とかなるもんですよ。
0997名前は開発中のものです。
垢版 |
2017/12/21(木) 20:52:09.10ID:m2pWnfBj
例えば、物理演算を使用する場合、Unityで設定できるのは、
速度velocityと力AddForce、角速度angularVelocityとトルクTorqueだけです。
(位置positionや角変位rotationは原則いじらないほうが良いです)

すると、直線移動や自転だけなら設定が簡単ですが、
公転のような円運動を行うには、物理法則に準じた命令を与える必要があります。

物理演算では、transform.RotateAroundを使えないので、
そういう場合に自分で工夫して実装できるかどうかに関わってくると思います。
0998名前は開発中のものです。
垢版 |
2017/12/22(金) 00:21:49.04ID:ko83+b2p
一番とっつきにくいのは回転運動だと思います。

Rigidbodyでは、ForceMode.Accelerationがあるので、

加速度Vector3 a(m/s/s)を得たい場合は、
AddForce(a, ForceMode.Acceleration)とするだけ、
角加速度Vector3 aa(rad/s/s)を得たい場合は、
AddTorque(aa, ForceMode.Acceleration)とするだけですが、

Rigidbody2Dでは、ForceMode.Accelerationがないので、

加速度Vector2 a(m/s/s)を得たい場合は、
AddForce(a * mass)としたり、
角加速度float aa(度/s/s)を得たい場合は、
AddTorque(aa * inertia * Mathf.Deg2Rad)とする必要があります。

要するに、ニュートンの運動方程式や、
オイラーの回転運動方程式を使う必要が出てきます。

速度は、2DはVector2 v(m/s)、3DはVector3 v(m/s)で分かりやすいですが、
角速度は、2Dはfloat w(度/s)、3DはVector3 w(rad/s)と単位が変わります。
Torqueではrad単位で入れないと、inertiaと乗算できないので面倒です。
1000名前は開発中のものです。
垢版 |
2017/12/22(金) 10:39:11.64ID:GTvlornd
10年は 夢のよう
100年は 夢また夢
1000年は 一瞬の光の矢
過ぎてく時間は怖くない
輝きを失う事が嫌なのです
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 53日 5時間 33分 36秒
10021002
垢版 |
Over 1000Thread
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


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

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

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

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