[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 12/08 23:01 / Filesize : 300 KB / Number-of Response : 1013
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

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



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

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

■本スレ
【3Dゲームエンジン】Unity総合スレッド28 [転載禁止](c)2ch.net
echo.2ch.net/test/read.cgi/gamedev/1454596460/l50

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

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

前スレ
【3Dゲームエンジン】Unity質問スレッド24
echo.2ch.net/test/read.cgi/gamedev/1462196288/

101 名前:名前は開発中のものです。 mailto:sage [2016/06/18(土) 13:36:44.83 ID:ZPgAx9VV.net]
その翻訳機能はク、そだけどなwww

102 名前:名前は開発中のものです。 mailto:sage [2016/06/18(土) 15:38:03.56 ID:469qvj2T.net]
ああ、訳わかんねーからな

103 名前:名前は開発中のものです。 mailto:sage [2016/06/18(土) 16:30:39.45 ID:Xelk4L5x.net]
>>96
スレッドは使えるが
unityのapi呼をび出すと拒否されるぞ

104 名前:名前は開発中のものです。 mailto:sage [2016/06/19(日) 01:48:09.70 ID:JpYtQGAs.net]
にゃんにゃん

105 名前:名前は開発中のものです。 mailto:sage [2016/06/19(日) 04:06:36.67 ID:Y3JrjtG1.net]
うん

106 名前:名前は開発中のものです。 [2016/06/19(日) 09:33:48.97 ID:QOPe1rDx.net]
C#っってどのくらい

107 名前:名前は開発中のものです。 [2016/06/19(日) 09:37:01.98 ID:0nJVOzNK.net]
リズムゲームを作りたいんですが、タッチしてから反応までに時間がかかっていて困っています

Unityでは大丈夫ですが、iosに入れるとタッチすると鳴る音がずれてしまいます

正しいタイミングでプログラムから音を鳴らすようにすると音ずれはないので、サウンドの遅延ではなくタップの反応遅延だと思うのですが…

108 名前:名前は開発中のものです。 mailto:sage [2016/06/19(日) 10:59:29.00 ID:z+CzVtxq.net]
UnityスレなんだからUnityで大丈夫ならそれで終わり

109 名前:名前は開発中のものです。 mailto:sage [2016/06/19(日) 11:02:47.70 ID:xEV1oBYN.net]
タップをどうやって取ってるかによる
ダブルタップじゃないのを判定するために遅延するタイプもあるしね



110 名前:名前は開発中のものです。 mailto:sage [2016/06/19(日) 16:45:21.56 ID:VsBGpR9O.net]
CRIつかえば

111 名前:名前は開発中のものです。 mailto:sage [2016/06/20(月) 10:40:14.36 ID:4HpdZHXa.net]
指離れたときに鳴ってるとかじゃね?

112 名前:名前は開発中のものです。 [2016/06/21(火) 11:24:06.18 ID:5zqPZxwr.net]
もう少し詳しく書いてくれないと・・・

113 名前:名前は開発中のものです。 mailto:sage [2016/06/21(火) 12:16:09.53 ID:ls8kyRkS.net]
指の皮の無数の細胞が電子パネルから離れたときに、電子パネルを流れていた電流が、指の皮の無数の細胞で遮断されていた所を再び接続し、その事を電子パネルの裏の基盤に電気信号を送り、それをプログラムが処理して鳴ってるとかじゃね?

114 名前:名前は開発中のものです。 mailto:sage [2016/06/21(火) 12:24:08.74 ID:rk1+Vo94.net]
すべってるぞ

115 名前:名前は開発中のものです。 mailto:sage [2016/06/21(火) 12:51:12.04 ID:/XuZV69K.net]
ローションでも撒いたか?

116 名前:名前は開発中のものです。 mailto:sage [2016/06/21(火) 13:14:08.25 ID:xsgrTc7B.net]
PEPE使ったな
Positron Enhancement Plasma Emitterだが
俺も滑ったな

117 名前:名前は開発中のものです。 mailto:sage [2016/06/21(火) 13:14:15.13 ID:LYWuRwcm.net]
そもそも>>112のレスは>>111じゃなくて>>107に対してなんじゃないの

118 名前:名前は開発中のものです。 mailto:sage [2016/06/21(火) 13:27:48.95 ID:9+z/sOi2.net]
113は古来稀に見るアホ。
もうアホとしか言いようがないくらいアホ
見てるこっちが恥ずかしい

119 名前:名前は開発中のものです。 mailto:sage [2016/06/21(火) 13:34:21.29 ID:XOrHRO6u.net]
>>118



120 名前:名前は開発中のものです。 mailto:sage [2016/06/21(火) 14:16:52.78 ID:xsgrTc7B.net]
VM認証ストレージを5分未満で導入、モダナイズされたシンプルなデータセンターをUnityで実現、てバナークリックしたら違うUnityだった
ライバル登場か

121 名前:名前は開発中のものです。 mailto:sage [2016/06/21(火) 14:38:35.13 ID:giBqV6Xd.net]
VuforiaでARアプリ作ったんだけど、スマホでは動いてタブレットだと落ちる
もっと容量のあるARじゃない他のapkファイルは動くのに・・・・・・
Vuforia側でタブレット用の設定とかしなきゃいけないのかね?
ちなみにタブレットはASUSのAndroid端末

122 名前:名前は開発中のものです。 mailto:sage [2016/06/21(火) 23:59:23.52 ID:94mbUQKT.net]
属性によるダメージ増加をプログラムで作ろうと思っています。良い参考サイトございませんでしょうか。
if(自分が火なら){草属性に2倍}
if(自分が水なら){火属性に2倍}
if(自分が草なら){水属性に2倍}・・・
とベタ打ちしか思い浮かばず、参考がアレば参考が欲しく思っております……

123 名前:名前は開発中のものです。 mailto:sage [2016/06/22(水) 00:21:53.45 ID:nRZcAAj7.net]
>>122
初心者なんであれだが、switch使うとか?
ちょっと見た目がすっきりするくらいか

124 名前:名前は開発中のものです。 mailto:sage [2016/06/22(水) 00:40:47.06 ID:ozsLUQVw.net]
最初に思い当たるのはステートパターンなんだけど、手間の割りにあんまお勧めできないんだよな…
アンチパターンだと言い切る人も多い

なにをくくり出したら整理できるのか、に着目して部品を分けるのがいいんだけどね。単機能の部品の中でswitch caseが並ぶ分にはなんの問題もないし、むしろ余計なことするより見やすくなる

ステートパターンは、お互いに影響し合う同時に管理すべきステートが何種類も出てきた時に思考実験として適用してみるのがいい
最終的には「switch caseで良いじゃん」という判断になるかもなんだけど、それはそれで試行錯誤の中で単機能のモジュール括りだしとか影響のない括りだしが

125 名前:出来るようになったということだから得るものはあるはず []
[ここ壊れてます]

126 名前:名前は開発中のものです。 mailto:sage [2016/06/22(水) 00:46:30.34 ID:8VBagU+u.net]
>>122
二次元配列の横軸を自分縦軸を相手の属性の番号として攻撃力倍率テーブル引くとか?
NORMAL = 0
FIRE=1
GRASS =2
WATER=3
だとして
// 下記のテーブルはファイルからCSVを読み込めばExcelでデータが作れる
float [,] attr2Pow = {
{ 1, 1, 1, 1},
{ 1, 1, 2, 1},
{ 1, 1, 1, 2},
{ 1, 2, 1, 1}
} ;

int myAttr = FIRE;
int enemyAttr = GRASS;
float pow = attr2Pow[enemyAttr,myAttr];

こんなの?

127 名前:名前は開発中のものです。 mailto:sage [2016/06/22(水) 00:56:30.81 ID:vXzAG1nN.net]
いいね!分かりやすい

128 名前:名前は開発中のものです。 mailto:sage [2016/06/22(水) 01:03:10.01 ID:4Me3/rFp.net]
>>122
例えばこんな感じとか?それぞれの値は仮置き

//属性列挙、仮にデフォルト値の属性なし+五行
enum Element{
None=0,
Fire=1,
Grass=2,
Water=3,
Earth=4,
Metal=5,
}
//属性相性テーブル、仮に相克1.5倍,相生2倍
//ここでは直書きしてるがcsvなどから読むなど
float[,] DamageRatioByElement=nw float[,]{
{1,1,1,1,1,1},
{1,1,2,1,1,1.5f},
{1,1,1,2,1.5f,1},
{1,1.5f,1,1,1,2},
{1,2,1,1.5f,1,1},
{1,1,1.5f,1,2,1}
}
//ダメージ係数の取得メソッド
float GetDamageRatio(Element offense,Element defense){
return DamageRatioByElement[(int)offense,(int)defense];
}

129 名前:名前は開発中のものです。 mailto:sage [2016/06/22(水) 01:03:55.58 ID:4Me3/rFp.net]
って打ってるうちにほぼ同じ回答でとるじゃないかw



130 名前:名前は開発中のものです。 mailto:sage [2016/06/22(水) 01:11:56.12 ID:4Me3/rFp.net]
違いとしては属性をenumにしてあるぐらいか…
属性をenumにしてある事での利点はコードにした時とインスペクタ上での指定がしやすいこと、欠点は配列から値を取り出す時に明示的キャストが必要な事

131 名前:名前は開発中のものです。 mailto:sage [2016/06/22(水) 02:52:08.91 ID:8VBagU+u.net]
>>129
まぁenum指定して書くのが正式だけどこの質問の場合マトリックスなテーブルからデータ拾うのが主題なんであんまり気にせずに書いただけなんだわ
素人さんにわかりやすい様にできるだけコード部分はマトリックスを引く所だけにしただけなんよ

132 名前:名前は開発中のものです。 mailto:sage [2016/06/22(水) 11:19:42.20 ID:LB+KoAIF.net]
できる男の特徴
 ・必要な情報だけを
 ・短時間でアウトプットできる
上司にしたいのは>>125みたいな人

できない男の特徴
 ・言わずもがなの情報も含めて冗長性を増したものを
 ・長時間抱えてアウトプットしてしまう
 ・ただしこのスレには言わずもがなのことさえ身についていない人間の存在を想定できている
部下にしたいのは>>127みたいな人。薄給で丁寧な仕事をしてくれる

133 名前:名前は開発中のものです。 mailto:sage [2016/06/22(水) 11:40:09.54 ID:UmbVE8zs.net]
上下関係なくできない奴を相手にする時は冗長に、出来る奴を相手にする時は簡潔にだろ
>>122が部下だったとして>>125の指示で必要充分だと思う上司は微妙じゃね?

134 名前:名前は開発中のものです。 mailto:sage [2016/06/22(水) 12:34:08.46 ID:bMjccCUU.net]
>>131はできない男ということか

135 名前:名前は開発中のものです。 mailto:sage [2016/06/22(水) 12:47:43.01 ID:SwfMdWqF.net]
一緒に仕事をしたくない男の特徴
上から目線でグチグチと口を挟む>>131みたいな人

136 名前:名前は開発中のものです。 [2016/06/22(水) 13:05:07.31 ID:zO/uH0AI.net]
できる男の特徴とかできない男の特徴とか全く必要のない事を語る気持ち悪い男

137 名前:名前は開発中のものです。 mailto:sage [2016/06/22(水) 14:02:07.13 ID:/IEZr9H6.net]
>>122
継承か委譲でやってみるとか

138 名前:名前は開発中のものです。 [2016/06/22(水) 14:55:07.33 ID:z2z+vKHf.net]
今unityで2dゲームを作ろうと試みています
で、tilemasterという2d用のタイルマップペイントアセットを使っているのですが
このアセットはunityのデフォルトのグリッドに合わせた場所にマップチップを
ペイントするという仕様なんですね
で、もうちょっと自由度があればいいなと思ってグリッドサイズを変更するやり方を
探してるのですが見つかりません
unityのデフォルトのグリッドは大体1メートル四方の大きさだという話なんですが
これを変更する方法はないでしょうか?

139 名前:名前は開発中のものです。 [2016/06/22(水) 15:28:23.75 ID:z2z+vKHf.net]
自己解決しました
グリッドサイズの変更のやり方が見つからないので代わりにカメラサイズを
変えて対処することにしました



140 名前:名前は開発中のものです。 [2016/06/22(水) 15:36:28.54 ID:BWHa/Zcd.net]
スーファミのドラクエ3くらいのクオリティーの2Dゲームを作りたいんですが
unityでもできますでしょうか?もしくは2Dゲームに合ったエンジンってありますか?
いろいろ調べたのですがスマホアプリレベルならunity一番良いのでしょうか?
ツクール系はちょっと違う気がしまして・・・

141 名前:名前は開発中のものです。 mailto:sage [2016/06/22(水) 15:54:11.57 ID:/IEZr9H6.net]
むしろツクール系が違うならなんなんだ

142 名前:139 [2016/06/22(水) 15:57:42.96 ID:BWHa/Zcd.net]
ツクール系はいじったことあるんですが
ツクール系ぽさ、戦闘の感じとかが安っぽすぎてなんというか・・・
素人っぽさを脱してない気がしてしまいまして。

143 名前:名前は開発中のものです。 mailto:sage [2016/06/22(水) 15:58:08.21 ID:v3OWsaDI.net]
2DでRPGならツクールお勧めするよ、マジで。
Unityはデータ管理用の便利ツールとか何もついてないからその辺全部自作になるので。
まぁアセット買ってもいいなら便利アセットはあると思うけど
2Dにあったエンジンはcocos2Dxというのがしばらく前までは通説だったんだけど
最近下火っぽいという話は前スレで上がってた気がする。
ただ描画パフォーマンスとかは圧倒的に良かったはず。

144 名前:名前は開発中のものです。 mailto:sage [2016/06/22(水) 17:20:07.94 ID:sHaCizvW.net]
ツクールよりworfRPGエディターの方をおすすめしたい
クオリティを求めるならほとんど要素を自作することになるけれども
ツクールよりも自由度は高いと思う

145 名前:名前は開発中のものです。 mailto:sage [2016/06/22(水) 17:21:10.15 ID:sHaCizvW.net]
後から気づいた
スマホアプリが目的なら無理か

146 名前:名前は開発中のものです。 mailto:sage [2016/06/22(水) 17:34:08.57 ID:LB+KoAIF.net]
>>132-135
こんなに必死に噛みついて来ちゃって……
君たちみたいなできない男でも、利用価値はあるんだから
胸を張って生きなよ

147 名前:名前は開発中のものです。 mailto:sage [2016/06/22(水) 17:57:15.77 ID:sHaCizvW.net]
>>145こいつ間違いなく社会人じゃない
と思いたい

148 名前:名前は開発中のものです。 mailto:sage [2016/06/22(水) 18:45:32.19 ID:L2JrI/u3.net]
unity5で作業しております。

#pragma strict

var spd:float = 1.0;

function Start () {

}

function Update () {

if (Input.GetKey("x")) {
transform.position.z -= spd;
}
}

149 名前:名前は開発中のものです。 mailto:sage [2016/06/22(水) 18:47:52.64 ID:L2JrI/u3.net]
147です。
失礼しました。
unity5で作業しておりまして、
下記の用に、"x"キーを押すとz方向に移動するようにしています。
これを移動距離を8まででストップさせるにはどのようにしたらよいでしょうか?

#pragma strict

var spd:float = 1.0;

function Start () {

}

function Update () {

if (Input.GetKey("x")) {
transform.position.z -= spd;
}
}



150 名前:名前は開発中のものです。 mailto:sage [2016/06/22(水) 19:04:07.00 ID:qLiii+6+.net]
>>145
めっちゃ早口で言ってそう

151 名前:名前は開発中のものです。 mailto:sage [2016/06/22(水) 19:34:15.88 ID:v3OWsaDI.net]
>>148
例えば
#pragma strict
var spd:float = 1.0;
var distance:float = 8.0;
var startPos:Vector3;
var readyFlg:boolean=true;
function Start () {
startPos=transform.position;
}
function Update () {
if(readyFlg){
if (Input.GetKey("x")) {
transform.position.z -= spd;
if(Vector3.Distance(transform.position,startPos)>=distance){
readyFlg=false;
}
}
}
}
勿論色々やり方はある。UnityScriptとか普段書いてないので間違ってたらすまん

152 名前:名前は開発中のものです。 mailto:sage [2016/06/22(水) 20:56:02.85 ]
[ここ壊れてます]

153 名前: ID:L2JrI/u3.net mailto: >>150
148です。
[]
[ここ壊れてます]

154 名前:名前は開発中のものです。 mailto:sage [2016/06/22(水) 20:56:39.80 ID:L2JrI/u3.net]
148です。
ありがとうございます!
上手く行きました。
勉強させていただきます。

155 名前:名前は開発中のものです。 mailto:sage [2016/06/22(水) 21:06:44.19 ID:/IEZr9H6.net]
取り敢えずキミは落ち着いて書き込む事を覚えよう

156 名前:122 mailto:sage [2016/06/22(水) 23:25:52.03 ID:PsjLXF60.net]
属性相性について皆様ご回答有り難うございます。
switch文の中にswith文を作る等も考えたのですがちょうどCSVからデータの取り込み、というのをやってみようと思っていたのでそちらで実装してみようと思います。
>>127さんの回答を参考に打ってみようと思います、ありがとうございます。

157 名前:名前は開発中のものです。 mailto:sage [2016/06/23(木) 10:33:34.71 ID:nKsiL7rY.net]
>>152
めっちゃ早口で言ってそう

158 名前:名前は開発中のものです。 mailto:sage [2016/06/23(木) 18:31:07.54 ID:ETqOjHm1.net]
>>155
逝ってるのはお前だろうがよぉ

159 名前:名前は開発中のものです。 mailto:sage [2016/06/23(木) 20:12:19.53 ID:nKsiL7rY.net]
>>156
は?



160 名前:名前は開発中のものです。 mailto:sage [2016/06/24(金) 04:35:10.17 ID:zjvNbqb1.net]
Unityで書いたゲームと.NETで書いたゲームサーバーをuNetで通信させることってできないんかな?
簡単なので通信にuNetを使いたいものの、サーバーもUnity製にするとリソースを無駄に食うだけだから悩んじゃう・・・・

161 名前:名前は開発中のものです。 mailto:sage [2016/06/24(金) 15:44:00.96 ID:km5nvk1w.net]
お世話になります。
javascriptで書いています。
下記のスクリプトのように"a"キーを押したら、z方向に進みます。
そこから"a"キーを放したら、オブジェクト"B"をオブジェクト"C"の位置に移動させたいのですが、
どのように書けばよいでしょうか。
宜しくお願いいたします。

function Update () {
if(readyFlg){
if (Input.GetKey("x")) {
transform.position.z -= spd;
if(Vector3.Distance(transform.position,startPos)>=distance){
readyFlg=false;
}
}
if (Input.GetKeyUp("x")) {

}
}
}

162 名前:名前は開発中のものです。 mailto:sage [2016/06/24(金) 16:24:14.48 ID:+ekiJfee.net]
>>159

163 名前:名前は開発中のものです。 mailto:sage [2016/06/24(金) 16:57:35.36 ID:PrPQXAe+.net]
>>159
>>150が甘やかしたのが悪いんだと思うがそういう
「コピペすれば動くコードよこせ。自分では何も調べるつもりはない」
みたいなこと言われてもな〜。
そのコードではreadyFlgが立っていたら(一度距離がdistanceを超えたら)
キーを押しても離してももう動かない。それでいいのか?

Unityは見た目に反して言語ができなければ一切何もできないツールだ。
諦めてちゃんと言語の勉強をしろ。unityscriptは捨ててC#をやれ。

164 名前:名前は開発中のものです。 mailto:sage [2016/06/24(金) 17:34:40.97 ID:77R0Gkt/.net]
もしかして>>159
"B"とか"C"のオブジェクトの座標の取得のやり方を質問してる…?

キーを押した時のif文とかは普通に理解してるっぽいし
座標への数値の代入の方法も大丈夫だし

BをCに向かってゆっくり移動させたいんなら
(Cの座標 - Bの座標).normalizedでBからCへの方向を取得して
それに速度を掛けてやった分をBに足してやればいいし
パっと移動させたいならBの座標にCの座標を突っ込めばいいし

165 名前:名前は開発中のものです。 mailto:sage [2016/06/24(金) 20:52:40.87 ID:KTZazvVz.net]
>>161
くぢぐちいってねぇで162みたいに教えてやれよ。あ、もしかして分からなかったのかな?アホすぎて爆笑

166 名前:名前は開発中のものです。 mailto:sage [2016/06/24(金) 21:55:23.44 ID:P9rm8zhM.net]
すみません初心者ですが、
オブジェクトの移動用の関数変数が複数種類あって混乱しそうです。

Rigidbodyでは
・変数 positionの変更
・変数 velocityの変更
・関数 MovePosition()
・関数 AddForce()

Transformでは
・変数 positionの変更
・関数 Translate()

等を目的の種類 や使われ方にまとめた
早見表の様な物を知ってったら教えて下さい。

167 名前:名前は開発中のものです。 mailto:sage [2016/06/25(土) 00:01:56.60 ID:rggTdyht.net]
docs.unity3d.com/ja/current/ScriptReference/

168 名前:名前は開発中のものです。 [2016/06/25(土) 00:21:37.97 ID:mkvNifZE.net]
>>164
このスレの住人には早見表の存在を知らないor教える能力がないor作る能力はないそうです
ごめんね(^^;

169 名前:名前は開発中のものです。 mailto:sage [2016/06/25(土) 00:34:51.98 ID:7xHaKWMY.net]
>>164
学校の先生が正解持ってるだろ



170 名前:名前は開発中のものです。 mailto:sage [2016/06/25(土) 00:42:02.23 ID:8cUMi0Mr.net]
AddForceに関してわかりやすい資料が見当たらなかったのでここに
第二引数に渡すForceModeの内容によって変わるんだけどもそれぞれの特徴について

Force:第一引数を単位が[N](力の単位ニュートン)の数値として扱う
かつその数値をTime.fixedDeltaTimeで割った値を用いてRigidbodyに力を加える
力[N] = 質量[kg] * 加速度[m/s^2]より加速度は力[N]/質量[kg]と表すことができる。よって
「現在速度 += 第一引数の値 / Rigidbodyの重量 / fixedDeltatime 」
みたいな処理

Acceleration:第一引数を単位が[m/s^2](加速度そのもの)の数値として扱うかつ、その数値をTime.fixedDeltaTimeで割った値を用いてRigidbodyを加速させる
例として重力の影響を受ける物体に Time.fixedDeltaTimeの時間ごとにAddForce(-Physics.gravity, ForceMode.Acceleration)を実行させると空中で静止したりする
「現在速度 += 第一引数の値 / fixedDeltaTime」
みたいな処理

あとの2つは上の2つのそれぞれをfixedDeltaTimeで割らずに処理するみたいな感じ
間違ってたらゴメン

171 名前:名前は開発中のものです。 mailto:sage [2016/06/25(土) 00:50:34.46 ID:kDQCPRXf.net]
つか>>165で言われてるけど
マニュアルとスクリプトリファレンスでちゃんと説明がされてるぞ
何で公式をきちんと見ないであやふやな説明すんのか意味不明

172 名前:名前は開発中のものです。 mailto:sage [2016/06/25(土) 01:01:29.18 ID:XA8big+1.net]
>>168
公式にも書いてあるけどForce唯のベクトルだろ
ベクトル分かんねーの?

173 名前:名前は開発中のものです。 mailto:sage [2016/06/25(土) 01:09:57.44 ID:B5mZ8jzM.net]
こんな感じか

Transform.position = 指定座標に再配置
Transform.Translate() = 指定方向と距離に再配置
実行したタイミングで即ワープする
なので移動先に壁があれば当然のように埋まる
Updateに書いた場合、処理順の関係で描画後に押し戻しが発生するため壁に突っ込むとピストン運動が始まる(FixedUpdate内に書けば問題ない)

Rigidbody.position = 指定座標に仮配置
即座に処理されず、次の物理判定を待ってワープする
そのため壁に突っ込んでも壁の前でピタッと停止する

Rigidbody.MovePosition = 指定座標に仮配置
上と同じだけど慣性や衝突判定を考慮した中間描画を行なってくれる
簡単に言うとぬるっと動いて壁でピストンしない

Rigidbody.velocity = 指定方向と距離に継続移動
宇宙空間の挙動に似てる
衝突や摩擦や重力で減衰されない限りずっとここに入ってる方向にぶっ飛んで行く

Rigidbody.AddForce() = 指定方向と距離の値をvelocityに与える
加速や質量を考慮してvelocityに値を加えられる

>>169
公式リファレンスは説明と呼んではいけないレベルで言葉が足りてないけどな

174 名前:名前は開発中のものです。 mailto:sage [2016/06/25(土) 01:13:35.30 ID:kDQCPRXf.net]
ほんと意味不明なレスするな
リファレンスが説明レベルと呼べないと言いながら
何ページにも渡る公式を数行でまとめた気になってレスすんなよw

175 名前:名前は開発中のものです。 mailto:sage [2016/06/25(土) 01:14:58.77 ID:8cUMi0Mr.net]
>>170
上に書いた式はベクトルの各要素に当てはまると思ったんだけども
間違えたっぽいな申し訳ない

176 名前:名前は開発中のものです。 mailto:sage [2016/06/25(土) 01:26:05.53 ID:8cUMi0Mr.net]
>>172
公式の文章をまとめてるだけのようには見えないけども…
少なくとも壁につっこむかどうかとかの使用感とかはリファレンスには直接明記はされてないし
>>171の文章は初心者にはわかりやすくていいと思うけどなあ

177 名前:名前は開発中のものです。 mailto:sage [2016/06/25(土) 01:30:44.34 ID:kDQCPRXf.net]
>>171で理解できて使えるなら初心者じゃねえだろw
初心者は公式のサンプルスクリプトをコピーじゃなくて自分で打ち込んで実際に動かしたほうがずっと理解できるぞ

178 名前:名前は開発中のものです。 mailto:sage [2016/06/25(土) 01:34:49.50 ID:XuVvzfFd.net]
>>175
公式のリファレンス読んで理解できないから質問してるんだろ?
答えられない低脳はいちいちレスするな迷惑だから
一生ろむってろ口だけのアホ

179 名前:名前は開発中のものです。 mailto:sage [2016/06/25(土) 01:36:08.54 ID:kDQCPRXf.net]
また基地外が涌いたか
おまえが説明したことも一度も見たことないぞ糞カス



180 名前:名前は開発中のものです。 mailto:sage [2016/06/25(土) 01:59:30.10 ID:0QGMe3Te.net]
チュートリアルやマニュアルで理解できない人は適正が無いから
早めに諦めたほうが本人のためだと別スレでエロい人がいってた

181 名前:名前は開発中のものです。 mailto:sage [2016/06/25(土) 02:01:30.74 ID:XA8big+1.net]
理解出来ないから、無理やり何かに当て嵌めて、
とんでもない勘違いを始めるってのはよく分かった

182 名前:名前は開発中のものです。 mailto:sage [2016/06/25(土) 02:21:47.78 ID:8cUMi0Mr.net]
自分の書いた奴だな
単位指定無いのに勝手に付け足したこととかその他諸々
でもその認識で挙動確認しても問題なく動いてるけども
これは自分が差異を認識できてないだけということか

内部の処理についてもう少し詳しく調べてみる
これもとんでもない勘違いの続きだとは思うが得る物もあるでしょ

183 名前:名前は開発中のものです。 mailto:sage [2016/06/25(土) 02:23:54.14 ID:B5mZ8jzM.net]
でも公式マニュアルは初心者脱出した辺りからファミ通の攻略本並みに信用度が落ちるっていう罠がある

例えばFixedUpdateに関しては物理判定前に実行されるから描画が安定するっていうのが真実だけど、
公式もハウツーもそれを鵜呑みにしたお前らも固定フレームガーとかトンチンカンなこと言ってるし

184 名前:名前は開発中のものです。 mailto:sage [2016/06/25(土) 02:46:00.47 ID:B5mZ8jzM.net]
Update内でTransformを移動させても次のフレームのPhysicsフェイズで再計算されるまでColliderの位置は変わらないとかそういうマニアックだけど重大な情報は自身で観測するまで分からないってところがマジでファミ通の攻略本

185 名前:名前は開発中のものです。 mailto:sage [2016/06/25(土) 03:16:49.05 ID:RHkVxPiE.net]
ゲームプログラミングの数学
ベクトル
www.sousakuba.com/Programming/gs_vector.html

186 名前:名前は開発中のものです。 mailto:sage [2016/06/25(土) 03:35:03.47 ID:8cUMi0Mr.net]
計測してきた
Vector3型の適当な値が入ったvecと
Rigidbodyのrigと置いて
AddForce(vec / mass / Time.fixedDeltaTime, ForceMode.Force)
AddForce(vec / Time.fixedDeltaTime, ForceMode.Acceleration)
AddForce(vec / mass, ForceMod.Impulse)
AddForce(vec, ForceMode.VelocityChange)
velocity = vec
の5つを試したけどもどれも誤差なく全く同じ結果が帰ってきた。

さらに摩擦による速度の減衰を無い状態にして、元の速度を持たせた上で上記の式を使うと、元の速度にvecを加算した値が新しい速度として認識できた。

つまり>>168で書いた
AddForceの挙動が、ForceMode.Forceにおいて
「現在速度 += 第一引数の値 / Rigidbodyの重量 / fixedDeltatime 」
と、 ForceMode.Accelerationにおいて
「現在速度 += 第一引数の値 / fixedDeltaTime」
となることの確認が取れたんだけども

結構ためになった。一応自分は間違ってなかったと思いたい

187 名前:名前は開発中のものです。 mailto:sage [2016/06/25(土) 03:41:02.27 ID:8cUMi0Mr.net]
>>184
って大間違いやん
ゴメンもう寝る

188 名前:名前は開発中のものです。 mailto:sage [2016/06/25(土) 03:54:38.24 ID:8cUMi0Mr.net]
ForceMode.Forceにおいて
「現在速度 += 第一引数の値 * Rigidbodyの重量 * fixedDeltatime 」
と、 ForceMode.Accelerationにおいて
「現在速度 += 第一引数の値 * fixedDeltaTime」
となるのが正しいのね

わかってたならあやふやとかベクトルについてとやかくとか言うんじゃなくて指摘して欲しかった…
いじわる過ぎやしませんか

189 名前:名前は開発中のものです。 [2016/06/25(土) 10:52:11.68 ID:NStHBjqe.net]
現在rigidbodyで車を操作しているのですが,
道となるcubeをどれだけ正確に並べても
段差があるのか車が勝手にピョンピョンしてしまいます.
ホイールコライダーは色々調べました



190 名前:が使い方がわかりませんでした.
どうすればいいでしょうか?
[]
[ここ壊れてます]

191 名前:名前は開発中のものです。 mailto:sage [2016/06/25(土) 11:34:56.67 ID:Jj1SZ5hZ.net]
iTweenを使用して、移動制御しようとしています。
チュートリアルを見ながら、下記のように1秒かけて、現状のx座標から10動かすという式をつくったのですが、
こちらをオブジェクト"test"の位置に移動するという形にしたいのですが、出来ますでしょうか。
宜しくお願いします。

function Position () {

iTween.MoveTo(gun_obj , iTween.Hash ("x", gun_obj.transform.position.x+10, "time", 1));
flag00 = 1;

}

192 名前:名前は開発中のものです。 mailto:sage [2016/06/25(土) 11:43:37.08 ID:ljh4S1VC.net]
>>187
ホイールコライダーのサスペンション(Suspension Distance)に吸収したい段差の高さを入力すると現実の車っぽくなるよ
逆にサスペンションを無しにすると現実のラジコンみたいに少しの段差でぴょんぴょん跳ねるようになる
あとはAddForceに入れる方向ベクトルを車のローカル軸でちゃんと決めて、空中では加速しないようにしていれば大体上手く行くはず

スタンダードアセットのVehiclesが割りとよく出来てるからインポートして参考にすると良いんじゃないかな

193 名前:名前は開発中のものです。 mailto:sage [2016/06/25(土) 11:51:50.00 ID:7xHaKWMY.net]
>>188
Unityを起動してやってみればわかる

194 名前:名前は開発中のものです。 mailto:sage [2016/06/25(土) 12:12:00.18 ID:XuVvzfFd.net]
>>177
はい、ブーメラン
口の利き方に気をつけろよ低学歴不細工

195 名前:名前は開発中のものです。 mailto:sage [2016/06/25(土) 13:29:26.02 ID:dv77amF2.net]
>>187
物理エンジンというのは
力による移動を計算→めり込んだら戻す
という仕組みなのでCubeをどれほど正確に並べようがそうなる。
一番楽なのはメッシュコライダを使うこと。
ホイールコライダーを理解できるまで調べて使えば
>>189のいうようにサスペンションで軽減はできるが基本的な部分では同じこと。
GCや他の理由でFPSが一時的に落ちた場合そのフレームでの段差は
大きくなるので跳ねる可能性はある。
ホイールコライダー自体は「そういうためのもの」ではないので
勿論併用は可。

ドライビングゲームはサンプルプロジェクトをUnityで配っているので
とりあえずそれを隅から隅まで眺めるといいよ
https://www.assetstore.unity3d.com/jp/#!/content/10

196 名前:名前は開発中のものです。 mailto:sage [2016/06/25(土) 13:31:27.29 ID:dv77amF2.net]
>>188
iTween.MoveTo(gun_obj , iTween.Hash ("position", test.transform.position, "time", 1));

197 名前:名前は開発中のものです。 mailto:sage [2016/06/25(土) 13:41:02.80 ID:V1uOwJ0q.net]
>>187,192
もしかしてUpdateに移動処理書いてるの?

だったら原因は>>181でFAだよ
移動処理だけFixedUpdateに書けば埋まりはしない

198 名前:名前は開発中のものです。 [2016/06/25(土) 13:49:49.92 ID:XuVvzfFd.net]
てす

199 名前:名前は開発中のものです。 mailto:sage [2016/06/25(土) 13:53:03.50 ID:ChaRzoo2.net]
>>171
役に立ちそう、サンクス
FPSコントローラー自作するなら最後のrb.AddForceが良さそうだな、素直に公式のを使えば良いんだけど



200 名前:名前は開発中のものです。 mailto:sage [2016/06/25(土) 14:22:43.48 ID:Jj1SZ5hZ.net]
>>193
ありがとうございます!
上手く行きました!






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<300KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef