Effective C#とアジャイルサムライを購入した件。
かずまです。
昨日Effective C# と アジャイルサムライのKindle版を購入しました。
アジャイルサムライ
- 作者: Jonathan Rasmusson,西村直人,角谷信太郎,近藤修平,角掛拓未
- 出版社/メーカー: オーム社
- 発売日: 2011/07/16
- メディア: 単行本(ソフトカバー)
- 購入: 42人 クリック: 1,991回
- この商品を含むブログ (255件) を見る
Effective C#
- 作者: ビル・ワグナー
- 出版社/メーカー: 翔泳社
- 発売日: 2016/01/07
- メディア: Kindle版
- この商品を含むブログ (2件) を見る
Effective C#
前から欲しかった一冊です。
Kindle版がかなり安くなってました。
まだ軽くしか読めてないですが、所見としては
- セッターゲッターを活用しよう
- 匿名型(LINQ)
- GC(ガーベージコレクション)
- using ステートメント(try catchとか)
- デリゲート、コールバック、イベントとか
- データのシリアル化
- interfaceとか
- 動的型付け
ココらへんを見とくと良さそうですね。
こうあるべきだ、みたいなのが書かれてて参考になるかも。
Effective Javaは良かったのでC#も買ってしまえーという感じですね。笑
EFFECTIVE JAVA 第2版 (The Java Series)
- 作者: Joshua Bloch,柴田芳樹
- 出版社/メーカー: 丸善出版
- 発売日: 2014/03/11
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (10件) を見る
Mac book pro Late 2016を2ヶ月使ってみて
かずまです。
卒業が決まり、ようやく春休みです。
この春は学生最後なので、何をしようかな〜と考えて居ますが、コンパイラとか、機械学習とか、ちょっと興味あるし楽しそうだなーってことで
コンパイラを読もうとしたり、機械学習をUnityでやろうとしたりの準備をしております。
どうなのType-C
一言でいうとType-C、最高です。
というより意外と困らないというのが本音です。
【国内正規代理店品】J5 create USBType-C Power Delivery対応マルチアダプター ギガビットイーサ HDMI USB3.0×2ポートハブ MacBook最適 JCA374A
- 出版社/メーカー: J5 create
- 発売日: 2016/06/23
- メディア: Personal Computers
- この商品を含むブログを見る
これを使うとHDMIとUSB、Ethernetの問題は解決します。
ちょっとお高めですが、結構いいですね。
ただこいつを使わなくてもAppleの純正のType-Aへの変換があれば十分でした。
注意なのが、純正の変換ケーブルはUSB3.0、3.1ではないこと...。
外付けのBlue-Ray Driveも買いました。
そうするとType-Cへの変換ケーブルがついてきました!(しかもUSB3.0!)
めっちゃ便利です。
BUFFALO 書き込み 再生 編集ソフト Type-C変換ケーブル添付 ポータブルBD ブラック BRXL-PT6U3-BKC
- 出版社/メーカー: バッファロー
- 発売日: 2016/10/08
- メディア: Personal Computers
- この商品を含むブログを見る
充電がはやい!
これはすごくいいな、と思ったのですが充電されるのが早い。
これもType-Cのおかげですかね。
ちなみにコンセントの部分
これはいいです。
前回までのだと、
こうなっちゃうんですよね。残念ながら。
なのでめちゃ便利になりました!
タイピングが気持ちいい
キーボードの厚みが薄くなりました。
その分タイプ音は大きくなりましたが、うちやすさ倍増です。
ずっとタイピングしていたいぐらい気持ちいいです。
Macタイピング気持ちよすぎてずっとタイピングしていたい・・・。
— かずま (@kazumalab) 2016年12月12日
気持ちがTweetに現れた瞬間!!!
なによりログインが早い
Touchバーが搭載されその横にTouch IDが搭載されています。
ログインはこれだけ!
これはかなり速くなりました。
Youtubeの広告が○○
これはあまり大きな声では言えませんがYoutubeの広告を...
あれ?Youtubeの広告動画も自由に時間を変えられる...?笑
つまり、Macを買って自分で試して見てください、ということです笑
トラックパッドが使いやすい
以前のMacでもかなり使いやすかった(Windowsの端末に比べて)のですが、
今回のMacではバージョンアップしてます。
Windowsではマウスが必要ですが、Macはいらない。ほんとに。
トラックパッドが広い
これは見ればわかりますね。
広くなった分作業しやすいです。
中心にきたときにフィードバックがある
これはアプリケーションによると思います。
Omnigraffleを使う際、よく中央に来たときに軽く固定されるUIが見受けられます。
その時にトラックパッドからもレスポンスがあります。
これは直感的にわかりやすいので便利です。
純正のアプリケーション、Pagesとかはそのレスポンスがありましたが、Illustrator 2017ではそのレスポンスはありませんでした。
残念。
ほかにもこんなにたくさんある!
サウンドがよりクリアに
これは前回のMac bookでは15インチの場合はキーボードの横にありましたが13インチではありませんでした。
今回は13インチでも左右にスピーカーがあるため、聞き取りやすいです。
UnityでOculus Touchを使うメモ ~銃を撃つ編~
かずまです。
昨日の記事ではOculus Touchでものを掴むところを実装しました。
今日は銃を扱うところを実装していきます。
銃の設定
今回はこのアセットをつかいました。
持つ部分にColliderを付けます。
ちなみにもモデルの方ではなくて、一つ上の親の方につけます。
Rigidbodyも付けます。
こんな感じ。
打った時の音も入れたいのでAudiosourceのコンポーネントも付けます。
ちなみにTouchを振動させる場合はAudioClipが必要みたいです。
最後にBulletPointという空のオブジェクトを子オブジェクトとして設定します。
位置は銃の先端にします。
Gun.csを作成
銃を撃つためのスクリプトを書いていきます。
このGun.csを先ほどColliderを付けた銃のモデルにつけます。
OVRInputはOculus Touchの右左によって違うので
if (holdHand.whichController == OVRInput.Controller.LTouch) { hapticsChannel = OVRHaptics.LeftChannel; whichFinger = OVRInput.RawButton.LIndexTrigger; } if (holdHand.whichController == OVRInput.Controller.RTouch) { hapticsChannel = OVRHaptics.RightChannel; whichFinger = OVRInput.RawButton.RIndexTrigger; }
昨日のコードでenumで設定したRTouchか、LTouchかをOVRHandからとってきます。
Triggerはものを持つ部分でつかいました。
今回銃を持ったのち、人差し指で発射します。
人差し指は
OVRInput.RawButton.RIndexTrigger
OVRInput.RawButton.LIndexTrigger
で取れます。
これを掴んだときにどっちの手でつかんだか、というのをgetHandメソッド内でやります。
弾痕を作る
gametukurikata.com
ここでは弾痕の実装を参考にします。
ありがたい。絵も提供されています。
Bullet.csをつくる
using System.Collections; using System.Collections.Generic; using UnityEngine; public class Bullet : MonoBehaviour { public GameObject bullet_hit; // Use this for initialization void Start () { RaycastHit hit; if(Physics.Raycast(transform.position, transform.forward * 100f, out hit)) { GameObject obj = Instantiate (bullet_hit, hit.point - transform.root.forward * 0.001f, Quaternion.FromToRotation(Vector3.forward, hit.normal)); obj.transform.parent = hit.collider.transform; } } private void OnCollisionEnter (Collision col) { Destroy (this.gameObject); } // Update is called once per frame void Update () { GetComponent<Rigidbody> ().velocity = transform.forward * 10f; } }
Bulletオブジェクトをつくる
簡単な感じでそれっぽく作ります。
これにBullet.csをアタッチします。
たぶんこれでOKです。
ほとんどVR要素ないですが。笑
UnityでOculus Touchを使うメモ ~ものを掴む編~
かずまです。
ようやく卒業の方が落ち着いてきたのでOculusの開発メモを残しておきたいと思います。
今回はTouchでものをつかむという部分をメモっておきます。
結構基本的なことですがSteamとはちょっと仕様が違いますので書いておこうと思います。
Touch
Oculus Touch#oculusすごい#卒論終わり次第#開発する#VR
これがOculus Touchです。
めっちゃいい。ボタンとかにもセンサーがついてて、指がどのボタンを触れているか、みたいなのを検知できます。
すごい!
ちょっと発売から遅れましたのですでにTouchの記事はいっぱいあるかも。。。
Oculus SDKを入れる
参考にしたサイトはこちら
いやーk0rinさんのブログは毎回助かる...。
Steam VRの時もお世話になりました。
ここを参考にOculus SDKをOculus Developerサイトから落としてきて入れます。
サンプルシーンを可変していく
Assets/OvrAvater/Samples/Controllers/Controller.unity
を開きます。
今回はこのシーンをいじっていきます。
ものをつかんでみる
ほんとは手の形にあわせた持ち方というのを提案したかったのですがちょっと実装不足。
Touchを表す位置は
OVRCameraRig/TrackingSpace/LeftHandAnchor
OVRCameraRig/TrackingSpace/RightHandAnchor
にあります。
ここにColliderとかスクリプトを追加していきます。
まずはRight,LeftHandAnchorの子としてhavePointを作ります。
次にSphereのColliderのisTriggerをtrueにします。
次にLeftHandAnchorにOVRHand.csというスクリプトを作って貼り付けます。
OVRInputはどこでも呼べる!
UnityのInputのようにどこでも呼べるのは便利ですね。
Steamだと少し面倒だった気がする...。
enumを使ってどっちの手かを認識させる
もっといい方法ありそうですが、
Triggerを引いたときにRightかLeftを指定しないといけません。
if (OVRInput.GetUp (OVRInput.RawButton.RHandTrigger)) { // RightControllerのトリガーを引いた }
あとはControllerのVelocityをとるときにどっちのコントローラーかを書く必要があります。
しかし、面倒なのでpublicのenumでInspectorでRightかLeftを選択できるようにします。
Awake()内でそれに合わせて(OVRInput.RawButton)RHandTriggerやLHandTriggerをセットします。
これで面倒はなくなります。
Oculus TouchのVelocity
OVRInput.GetLocalControllerVelocity(/* どっちのコントローラーかを記述 */);
これで取れます。
つかみたいオブジェクトの設定
2つ設定があります。
tagを"holdable"に設定します
Rigidbodyを付ける
これで再生すればできるはずです!
指とオブジェクトとかぶちゃってるのでほんとはつかんでる感じにしたいのですが...。
それは次回ですかね。
今回はこんな感じです。
第3回 技術的ログ Twitterから
かずまです。
今回もファボがたまったのでやります!
過去はこちら!
blog.kazumalab.com
知らない間のホロレンズブーム
Tohoku #HoloLens meetup 前半ハンズオン始まったよ!
— takesenit (@takesenit) 2017年2月11日
前本さんの赤シャツが目立ち過ぎ。#HoloLensJP #ThMCN #TMCN pic.twitter.com/6o7Slvo9bq
ホロレンズが今熱い!(持ってないけど...)
MBSでハッカソン
ハッカソンのアイスブレイクで「うろ覚えお絵かき」って面白そう♪
— TakashiJona - SKB08 (@takashijona) 2017年2月11日
知ってることを絵だけで表現って難しくても見せ合うと盛り上がれそう#mbshack #ma_2017 pic.twitter.com/TXZlnddNvJ
今週土日に本ハッカソンがあるらしい。
行きたい!!!(交通費&引っ越し!)
A-Frameの更新
A-Frame ✋v0.5.0! New core features (text, glTF), bug fixes (incl. WebVR polyfill), preview of motion capture tools. https://t.co/Mb3pobemCi pic.twitter.com/yWO47TJMqB
— A-Frame (@aframevr) 2017年2月10日
sinariovr.com
このサイトではA-Frame 0.3.0だった....もうバージョン2個上がってる。すごい。
きのこモデル
新キノコリグできました(一瞬)#Blender pic.twitter.com/ixMXTulbEW
— なん (うまい棒SDiv6) (@tarava777) 2017年2月9日
関ゲ部にはキノコさんという方がいるらしい。
前回行ったときは会えなかったので次回トライしたい。
なんかすごい2Dアクション
後輩さんが開発中の2DアクションRPGのキャラクター選択画面動画です。非常にアニメーションが生きている期待作です!日本を含めた海外パブリッシングも考えておりますので、もし興味ある方は気軽く声をかけてください!私が責任持って紹介します(^_-)-☆ pic.twitter.com/895o70Sz4y
— Kyunghun.lee(キョウウン) (@KyunghunL) 2017年2月9日
カメラワークが独特で面白い!
あと絵もきれいだし、表現力すごい。
Hololensのアプリ
HoloLensの発音力をトレーニングできるMRゲーム「ENGLISH BIRD」がWIndowsStoreで公開されました!Storeで「ENGLISH」と検索すればでてきます! #HoloLens @HoloLens pic.twitter.com/yuzvVP1YVY
— のしぷ (@noshipu) 2017年2月8日
これなら英語バッチリ!
痩せる方かと思ったら完全なる技術ログだった
docker-slimによるImageの簡単ダイエット - 技術備忘記 https://t.co/fcwnWut7XC
— キリン (@pinakun1112) 2017年2月8日
....ノーコメントで!!
unity エフェクト
【Unity道場】エフェクト実践編 // Speaker Deckhttps://t.co/LZAVW2pXij 凄い濃い内容だった。お金取れるレベルだ
— nakamura001 (@nakamura001) 2017年2月7日
UMLをテキストで書く
テキストでUML描けるの便利
— いしたー (@sonicair) 2017年2月5日
stackedit.io pic.twitter.com/wJ9IDhY9lj
意外とこういうの便利。
技術ログではないけど沖縄ギークハウスのクラウドファウンディングが181万円!
ギークハウス沖縄のクラウドファウンディング、181万1000円で終了!!!みなさまありがとうございました!!!😭😭😭 pic.twitter.com/TWZLUgGlWC
— さぼ (@saboyutaka) 2017年1月30日
すごい!!これから楽しみ!
手書き数式をLatexに...これは便利でした。
手書きの数式をLaTeXに変換してくれるサービスらしいhttps://t.co/M1exzK3490 pic.twitter.com/ema3zfw1YJ
— GOROman (@GOROman) 2017年2月2日
今回はこのような感じに!
ちょっとためすぎていっぱいになるので定期的にやろうかと。