タグ

ブックマーク / qiita.com (51)

  • 【UniRx】Update()をObservableに変換する方法 - Qiita

    UniRxについての記事のまとめはこちら UniRxを使用するとUpdate()をObservableに変換して使う場合が多々あります。 今回はそのUpdateをObservableに変換する方法を紹介したいと思います。 注意 投稿よりもこちらの記事のほうがより詳細に書いてありますので、こちらを御覧ください。 UniRx入門 その4 -Updateをストリームに変換する方法とメリット- 以下古い説明 Update → Observableに変換する UpdateをObservableに変換する方法は2015/04/10の時点で3種類あります。 ObservableMonoBehaviour & UpdateAsObservable ObservableUpdateTrigger & UpdateAsObservable Observable.EveryUpdate それぞれ微妙に違うので

    【UniRx】Update()をObservableに変換する方法 - Qiita
    goinger
    goinger 2016/02/22
  • 【UniRx】UniRxとコルーチン - Qiita

    この記事はちょっと古いのでこちらの新しい記事を参照ください UniRx入門 その5 -コルーチンとの併用- UniRxはコルーチンと組み合わせることでより便利になります。 今回はその方法を紹介します。 コルーチンをObservableに変換する Observable.FromCoroutineを使うことでコルーチンをObservableに変換することができます。 FromCoroutineについては@neueccさん人が詳しく説明されていますので、こちらを参考にされるのが一番良いかと思います。 Unityのコルーチンの分解、或いはUniRxのMainThreadDispatcherについて FromCoroutineは特にコルーチンから戻り値のあるObservableを作る方法の汎用性が高く、ファクトリーメソッドやオペレータを組み合わせるよりもより簡潔に処理を記述できる場合があります。

    【UniRx】UniRxとコルーチン - Qiita
  • RxのHotとColdについて - Qiita

    UniRxについての記事のまとめはこちら RxのIObservable<T>にはHot/Coldという大きな2つの特徴があります。 これら性質を理解しないままストリームを設計すると、意図した動作をしてくれない場合があります。 今回はこのHot/Coldの性質について簡単にまとめたいと思います。 概要 一言で言うと? Cold : ストリームの前後をつなぐだけのパイプ。単体では意味が無い。だいたいのオペレータはこっち。 Hot : ストリームから値を発行し続ける蛇口。常に垂れ流し。後ろにパイプがたくさん接続できる。 細かく説明すると Cold Observable 自発的に何もしない受動的なObservable Observerが登録されて(Subscribeされて)初めて仕事を始める ストリームの前後をただつなぐだけ。ストリームを枝分かれさせる機能は無い。 Hot Observable 自

    RxのHotとColdについて - Qiita
  • Unity+iOSでエラーになるLINQのまとめ - Qiita

    以前Unityでは、AOTコンパイラの不具合により、iOSなどAOTコンパイルが必要なプラットフォームではいくつかのLINQメソッドを使うと実行時例外が発生することがありました。 現在Unityでは、かつてAOTコンパイルが行われていたプラットフォームで、IL2CPPという技術が使われています。 私が把握している限り、IL2CPPでは投稿「Unity+iOSでエラーになるLINQのまとめ」で紹介したメソッドは、問題なく使えているようです。そのため投稿の記事文は、削除しました。 過去の内容を見たい場合は、編集履歴よりご覧ください。 Register as a new user and use Qiita more conveniently You get articles that match your needsYou can efficiently read back useful

    Unity+iOSでエラーになるLINQのまとめ - Qiita
    goinger
    goinger 2016/02/08
  • アセットバンドルの作り方・ロード方法の色々メモ(ver5.4.0f3・ver5.3.0f4・ver5.0.1f・ver4.6.2) - Qiita

    アセットバンドルの作り方・ロード方法の色々メモ(ver5.4.0f3・ver5.3.0f4・ver5.0.1f・ver4.6.2)Unity3D 【2016/08/25追記】 iOS側Unity5.4.0f3 によるシーンアセットバンドルのロード処理(StreamingAssetsフォルダを使用) Xcodeで実行するときの注意点として、 iOSのBuildSettings ->OtherSettings->Strip EngineCodeのチェックを外す。 こうしないとAnimatorControllerがエラーを起こして再生されない。 下記URLにstrippinglevelとAnimatorControllerに関してそれっぽいことが書いてある http://forum.unity3d.com/threads/could-not-produce-class-with-id-91-io

    アセットバンドルの作り方・ロード方法の色々メモ(ver5.4.0f3・ver5.3.0f4・ver5.0.1f・ver4.6.2) - Qiita
  • UnityのUniRxと戯れる #1 ObservableWWW - Qiita

    はじめに FRPがどうこうと熱く語る人がいたがどこからとっついていいのか分からず、結局アレWeb屋さんしかやってないんじゃないか、という疑念を抱きつつも関数型自体は好きなので気になっていた。 業はUnityなので、Unityreactive extensionが使えるというUniRxを見つけたときはときめいた。そしてreactive extensionの記事を読み、意味が分からず撃沈していた。pullとかpushとか。正直Linqですらちゃんと分かってないフシのあるわたしには辛かった。 最初Linqってマジ分からなかった。Linqってどうやって覚えたっけ、と考えると、Linqの適用できる範囲で基的な問題を解きまくることで覚えた。Linqは比較的適用範囲を想像しやすいので、そういうやり方が効くのだ。 ところでreactive extensionだが、適用範囲が正直よく分かっていない。時

    UnityのUniRxと戯れる #1 ObservableWWW - Qiita
  • UnityのAssetBundleダウンロード実装 - Qiita

    UnityのAssetBundleの実装をまとめました。 ハック用のコードもつけたいけど書くと長いので割愛。 最初に、AssetBundleとは? Unityで作成したアプリにコンテンツの追加を行う機能です。 利用目的 iTunesStoreではWiFi以外からのダウンロードに50Mのサイズ制限があるのと、待ち時間のあるアプリ審査をせずにコンテンツの追加を行うのにAssetBundleを利用しています。 起動時にCaching.readyとCaching.enabledがONになるまで待つ アプリ -> サーバーから最新のバージョン番号のみをJSONで取得 アプリ内のAssetBundleバージョンより新しいバージョンの場合、サーバーからAssetBundleのファイル名、version、CRC32をJSON+tsvで取得※1 最新バージョンが有るAssetBundleをLoadFromC

    UnityのAssetBundleダウンロード実装 - Qiita
  • UnityでGET, POST通信(+JSON) - Qiita

    using UnityEngine; using System.Text; using System.Collections; using System.Collections.Generic; using LitJson; public class TestWWW : MonoBehaviour { void Start () { // IEnumeratorインターフェースを継承したメソッドは、StartCoroutineでコールする StartCoroutine(Get("http://www.google.co.jp")); StartCoroutine(Post("http://www.google.co.jp")); // 今回は失敗します } void Update () { } IEnumerator Get (string url) { // HEADERはHashtab

    UnityでGET, POST通信(+JSON) - Qiita
  • Unityでセーブデータを暗号化してSerialize保存 ~その2~ - Qiita

    UnityでセーブデータをSerialize保存する 〜現状〜 ↑ 現状をまとめた 以前の記事の続き。もう少し調べみた☆ C#でのSerialize保存 C#では標準で便利なSerialize保存出来るライブラリが提供されている。 BinaryFormatter・・・オブジェクトをバイナリ化してシリアライズ保存出来る。Unity/iOSで動かないと言われているが・・・? DataContractSerializer・・・オブジェクトをXML形式でシリアライズ保存出来る DataContractJsonSerializer・・・オブジェクトをJson形式でシリアライズ保存出来る(まじかΣ(゚д゚lll)) Jsonのシリアライズ化標準で出来るじゃん_| ̄|○まぁ、LitJsonと同じっちゃ同じだけどね(;^_^A DataContractSerializerとDataContractJson

    Unityでセーブデータを暗号化してSerialize保存 ~その2~ - Qiita
  • 【Unity】ゲーム会社でスマホ向けゲームを開発して得た知識 アセットバンドル編 - Qiita

    2年目のゲームプログラマがゲーム会社でUnityを使用して スマートフォン向けのゲームを開発して感じたことをまとめておきます 【Unityゲーム会社でスマホ向けゲームを開発して得た知識 コーディング編 【Unityゲーム会社でスマホ向けゲームを開発して得た知識 拡張メソッド編 【Unityゲーム会社でスマホ向けゲームを開発して得た知識 デバッグメニュー編 【Unityゲーム会社でスマホ向けゲームを開発して得た知識 UI編 【Unityゲーム会社でスマホ向けゲームを開発して得た知識 アセットバンドル編 今回、初めてアセットバンドル周りの実装を行いました まだ依存関係の仕組みなどがちゃんと理解できていないですが、 今後のためにやったことを書き残しておきます アセットバンドルの作成 リソースのフォルダ管理 今回開発したアプリにおいて、リソースは大きく分けて次の2種類がありました アプリ

    【Unity】ゲーム会社でスマホ向けゲームを開発して得た知識 アセットバンドル編 - Qiita
    goinger
    goinger 2015/11/25
  • Google PlayのTop Grossing 100に入っている+その他のタイトルでどのくらいcocos2d-xが使われているのか調べてみる - Qiita

    Google PlayのTop Grossing 100に入っている+その他のタイトルでどのくらいcocos2d-xが使われているのか調べてみるcocos2d-x 概要 こんにちは。数ヶ月前から趣味でcocos2d-xをさわり始めました。リリースした初日から遊んでいたブレイブフロンティアやGoodiaのアプリがcocos2d-xで作られているのを知り、知っているアプリの中でどれが、cocos2d-xで作られているのか興味を持ちました。 今回のブログでは、2013年12月3日の時点でGoogle PlayのTop Grossing 100位以内とその他、私が興味を持って、cocos2d-xで作られているかもと思ったアプリを調べて、cocos2d-xで作られているかどうか判定していきます。 調べ方 cocos2d-xで作られているかどうか判定するのはどのようにするかといいますと、今回は、.ap

    Google PlayのTop Grossing 100に入っている+その他のタイトルでどのくらいcocos2d-xが使われているのか調べてみる - Qiita
    goinger
    goinger 2015/11/12
  • each を遅延評価しながら複数スレッドで並行処理 - Qiita

    目的 to_a できないが each できるリストについて、複数スレッドで処理したい。 具体的なユースケースは AWS::S3::ObjectCollection の処理で、これは each すると 1000 回ごとに AWSAPI を呼び出す。to_a すると、いちどきに連続して API を呼び出し、巨大な配列をつくってしまうので避けたい。 だめだった方法 parallel gem : 内部で最初に to_a しているため、each は遅延処理されず、すべてのオブジェクトを入れる配列 (+結果を入れる配列) が必要になる。 Enumerator / Fiber : スレッドをまたいで使えない 解決方法 標準ライブラリ thread で追加される SizedQueue をつかう。これは固定サイズのキューで、複数スレッドから扱うことができ、また値の追加時にキューがいっぱいなら待ってくれ

    each を遅延評価しながら複数スレッドで並行処理 - Qiita
  • どきっ!mrubyだらけのTracing JITコンパイラ解説 バグりもあるよ - Qiita

    みなさーん、プログラマの石川某くんはいつもデスマにはまっていていつJITの勉強しているんだろと思ったことはありませんか?その秘密は、mruby-meta-circular。Cも機械語も使いません。だから、忙しい某君にもできるのです。サンプルCoDeを無料で送ります。続きはWebで というわけで(どういうわけだ(定番の突っ込み))、mrubyとmrubyのVMであるRITE VMの命令だけでTracing JITの仕組みを解説しようと思います。 mrubyのJITと基的な構造は大体同じです。 インタープリタ 初めにベースになるVMを見てみましょう。おそらく世の中で2番目にたくさん作られているプログラム、フィボナッチ級数それだけが動くよう注意深く命令セットが選ばれています。これから先、このVMをFibVMと呼びます。また、mrubyのVMはRITE VMです。 この2つを区別することが非常に

    どきっ!mrubyだらけのTracing JITコンパイラ解説 バグりもあるよ - Qiita
  • 早く知ってたら良かったrailsの技 - Qiita

    はじめに 自分が rails をさわり始めたときはバージョン1からバージョン2に変わるあたりだったのですが、バージョン2が出た年を振り返るとなんと2007年でした。 月日の流れが速い事に驚く中、早く知ってたら良かったのになぁって事をつらつらとまとめてみました。 最近 rails さわり始めてみたよ!って方の参考になれば良いなと思います。 今回は便利な gem とかではなく、素のrailsで出来ることを挙げています。 ちなみにバージョンは以下の環境です。 About your application's environment Ruby version 2.1.3-p242 (x86_64-darwin14.0) RubyGems version 2.2.2 Rack version 1.5 Rails version 4.1.8

    早く知ってたら良かったrailsの技 - Qiita
  • golang で streem を実装した。 - Qiita

    この記事は Go Advent Calendar 2014、16日目の記事です。 はじめに Matz さんが streem という、ストリーム指向言語の開発を始めるらしいです。 まだ文法の設計段階ではあるけど、それなのにかなりの量の pull-req がバンバンと来てて凄いなーと思いつつも「この pull-req 量だと僕には出番無いなー」と思ったので、README.md に書かれているサンプルだけを頼りに streemgolang で実装してみました。 先日はネタで streem のマネをして yacc 定義部分だけ公開していましたが、日ネタが無い中にTLがヒートアップして焦りに焦って勢いで実装してみました。いやはや異様な追い込みを感じます。。。 まずは streem を知る streem は README.md に書かれている通り並列実行を行いつつストリームを処理する言語です。

    golang で streem を実装した。 - Qiita
    goinger
    goinger 2014/12/24
  • https://qiita.com/make_now_just/items/6a0a729b00a81b5ec460

    goinger
    goinger 2014/10/02
  • Facebook, Twitter, Instagram等がどうやってIDを生成しているのか まとめ - Qiita

    まえがき データにIDを持たせたいとき、単純な方法としては、DBの提供するauto incrementを使う場合やUUIDを利用することがある。それぞれの方法の利点欠点は以下の通り。 データベースのauto incrementを使う場合 利点: 特別な実装が必要ない 欠点: DBを1台で運用するとデータベースがパフォーマンス・障害のボトルネックになる DBを二台にするとIDのユニークさや順序の保証が困難 UUID(v4)※1を利用する場合 利点: 分散環境で各々がIDを生成しても衝突しない IDを公開したくない場合に、推測されにくいIDを生成できる 欠点: 128ビット必要、DBのインデクシングやプログラミング言語で扱うときに不利なことがある IDから時間の情報が失われる、例えば2つのIDを比べてどちらが古い投稿か判断できない 世界の大企業がどうしてるか 調べてみると多くの企業がブログなど

    Facebook, Twitter, Instagram等がどうやってIDを生成しているのか まとめ - Qiita
    goinger
    goinger 2014/08/18
  • Python3.3で実装したナイーブベイズをBing APIで取得したWebページで学習。文章を分類させる - Qiita

    Python3.3で実装したナイーブベイズをBing APIで取得したWebページで学習。文章を分類させるPython機械学習NaiveBayes この投稿は現実逃避アドベントカレンダー2013の2日目の記事です。 前回実装したナイーブベイズ。せっかく作ったので、これまで書いたコードと組み合わせて実用的なシステムにした。 GithubAPIキー以外のコードをまるごと上げたので、よかったらそのまま使ってください。 https://github.com/katryo/bing_search_naive_bayes 作ったもの概要 与えられた検索クエリで、Bing APIを使ってWeb検索して、50件のWebページを取得する 取得したHTMLファイル内の文章をBag-of-wordsにして、検索クエリをカテゴリとしてナイーブベイズの学習をする。学習を行った分類器はpickle化して保存。 分類

    Python3.3で実装したナイーブベイズをBing APIで取得したWebページで学習。文章を分類させる - Qiita
  • Railsが時代に合わなくなってきた - Qiita

    追記 RailsでJS辛い問題に関しての結論:http://qiita.com/kaiinui@github/items/dad6180f1910c6a4bfd5 -- 近年、(1) Web/App両対応が増えてきたこと、(2) WebでもJSを多用するようになったこと、の二つがあり、以下の点でRailsが微妙になっている。 ViewのJavascriptRailsから独立している API層のサポートが微妙 最初に書いておきますが、特に決定的な解決策もなく、辛いから今後解消されてほしいよね、な話です。 ViewのJavascriptRailsから独立している Railsはとても堅牢。 モデル、コントローラ、ルーティングと、変にいじらない限りはほとんどテストが要らない。 必要なのは、モデルに新たにpublicメソッドを付けたときくらいだろう。 実際、バックエンドはそうそうバグが出ない。

    Railsが時代に合わなくなってきた - Qiita
  • ログ集計/時系列DB/可視化ツールの調査結果 - Qiita

    近年、自分の中で集計/可視化は Fluentd(datacounter)+Growthforecast で定番化していました。 しかしプロダクトで新たに集計/可視化の要件が出てきたことと、 最近可視化ツール周りで 「Kibanaってなんじゃ?」「Graphiteってなんじゃ?」「InfluxDBってなんじゃ?」 など、このツール達は一体何なんだろう…?というのが前々から気になっていました。 今回良い機会なので ◯◯は何をするものなのか? というのを一つ一つ調べてみました。 いわゆる「触ってみた系」の記事なので だいぶ浅い感じです。 大分類 大きく分けると、可視化ツールは以下の3つに分けられそうです。 ログ収集/集計 時系列DB(+API)の担当。バックエンド側。 可視化部分の担当。 今回は バックエンド と 可視化部分 に焦点を当ててみます。 バックエンド 全文検索時エンジン+Restfu

    ログ集計/時系列DB/可視化ツールの調査結果 - Qiita
    goinger
    goinger 2014/05/23