FC2ブログ
就活で精神攻撃を与えらた結果、こうなりゃ一人でやってやんよ!という理由でAndroidアプリの開発をしてるぼくの活動記録です。お金に成るクオリティにしたいのです^p^
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
表題の件・・・
rigidbody.constraintsを操作してフリーズのon/off切り替えをしようと思ってたのだけど
どうも指定したもの以外はoffになる仕様らしい。

なんだこの不便な仕様は・・・
と思って色々調べてみたらどうもvalue_が引っかかった。

google先生に聞いても有用な情報がパッとみ見つからなかったので
自分でいじっていたらどうもintをいれれば良いらしかったから
適当に

rigidbody.constraints.value_ = 1;

とかで動かしてみてみると、インスペクタ上で固定のチェックが入るのね。

コレだ!と思って2,3、とか入れてもなんか思うようなチェックが入らず
試しにビットシフトで代入してやった。


rigidbody.constraints = 1 << 4 ;

そうするとrotationのxにチェックが入った!

同様に1<<1だとpositionのxに1<<2だとpositionYにチェックが入る

どうもこんな感じ
position
X 1<<1
Y 1<<2
Z 1<<3

rotation
X 1<<4
Y 1<<5
Z 1<<6


もちろん こうやれば

rigidbody.constraints = 1 << 4 | 1 << 5 | 1 << 6;

rotationのXYZにチェックが入る。

しかも不思議なことに.value_はつけてもつけなくても機能する。

.value_さんは何のためにあるのだろうか。謎は深まるばかりである。
スポンサーサイト
コメント
この記事へのコメント
コメントを投稿する
URL:
Comment:
Pass:
秘密: 管理者にだけ表示を許可する
 
トラックバック
この記事のトラックバックURL
http://unitydev.blog.fc2.com/tb.php/27-92274522
この記事にトラックバックする(FC2ブログユーザー)
この記事へのトラックバック
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。