凹みTips

C++、JavaScript、Unity、ガジェット等の Tips について雑多に書いています。

JavaScript

ネットとつながる LED 時計の LaMetric を手に入れたので遊んでみた

はじめに Kickstarter で Back していた LaMetric が先月届きました。 LaMetric - Customizable Smart Ticker for Life and Business by Smart Atoms — Kickstarter LaMetric Time - clock for smart home and office LaMetric は 2014/7 より Kickstarter …

Unity WebGL x WebSocket で複数クライアント間の大量のオブジェクトを簡単に同期できる仕組みを作ってみた

はじめに まだ実験中なのですが、Unity WebGL x WebSocket で大量のクライアント間で大量のオブジェクトを同期できる仕組みを作っています。UNET や Photon によって近いうちに対応されると思うのですが、現状では使えないのと、制限なく扱えたりチューニン…

Unity 5 の WebGL で WebSocket を利用した通信をする方法について調べてみた

はじめに Unity の WebGL では現状ではネットワーク機能に制約がありますが、WebSocket は使えるようです。 (English) On the future of Web publishing in Unity – Unity Blog 以前の記事では外側の JavaScript で Socket.IO を通じて通信した内容を用いま…

Unity 5 の WebGL で外部からテクスチャを与える方法について調べてみた

はじめに Unity 5 の WebGL 出力で、外部(自分で書いた JavaScript のコード)からテクスチャを与えたいと思い、色々調べてみましたので情報を共有したいと思います。通常の画像をテクスチャとして指定する方法と、base64 エンコードした画像をテクスチャと…

Unity 5 x WebGL について詳しく調べてみた

はじめに 本エントリは Unity Advent Calendar 2014 8日目の記事になります。 Unity 5 からは Build ターゲットに WebGL が追加されます。Unity 5 プリオーダ向けベータ版で現在試すことが出来ます。 Unity - Beta - Unity 5.0 今年の 3/18 に行われた GDC20…

JavaScript(Node.js)で色々なハードウェアモジュールが動くマイコンボード Tessel を手に入れたので詳しく調べてみた

はじめに 今日、昨年夏に Back していた Tessel が届きました。 Tessel 2 次世代マイコン「Tessel」はJavaScriptとNode.jsをサポートしWi-Fiからアップデート可能 - GIGAZINE Tessel は、Node.js ベースの JavaScript 環境を利用してハードウェア制御可能な…

JavaScript で Pebble アプリを開発できる Simply.js をオンライン IDE の CloudPebble 上で試してみた

はじめに スマートウォッチの Pebble は Simply.js を利用することで JavaScript のみの開発が可能です。 Simply.js ひとりぶろぐ » 2.0で面白くなったスマートウォッチPebbleを、JavaScriptゴリゴリでネット監視装置として使う また、Pebble は開発環境とし…

Unity から Node.js を裏でこっそり立ち上げてアレコレ出来るアセットをつくってみた

はじめに 先日書いたエントリ(Unity から Node.js を起動時に裏で実行・通信して諸々の処理を肩代わりしてもらう方法考えてみた - 凹みTips)のネタをだれでも使えるようにアセットにしました。起動時に Node.js を裏で実行して面倒なネットワーク周りの処…

Unity から Node.js を起動時に裏で実行・通信して諸々の処理を肩代わりしてもらう方法考えてみた

はじめに Unity の C# の世界で完結して色々と実行してくれるのはライブラリの利用者側から見るととても楽ですが、プロトタイプをそれで作ろうとすると結構大変です。そこで、Processing なり oF なり自分の慣れ親しんだ環境で作成したものを別途動かし、そ…

Netatmo ウェザーステーションを買ってみたので Node.js でいじってみた

はじめに Netatmo という商品はご存知でしょうか?【日本正規代理店品・保証付】Netatmo ウェザーステーション NET-OT-000001出版社/メーカー: Netatmo発売日: 2013/10/10メディア: エレクトロニクスこの商品を含むブログ (1件) を見る 【レビュー】台風の接…

WebRTC でスクリーンキャプチャ(動画)をしてみた

はじめに WebRTC ではカメラからの映像だけでなくスクリーンキャプチャも可能です。イメージとしては Google Hangouts の画面共有のような形です。余り解説を見かけなかったので調べてみましたので紹介します。 デモ Screensharing with getUserMedia こちら…

Pebble SDK 2.0 Beta の JavaScript framework で Hello World してみた

はじめに 11 月末に $20 ディスカウントセールをやっていたので Pebble を買ってしまいました。Pebble は Kickstarter 発のスマートウォッチで、スマホと Bluetooth で連携してアプリが動いたり通知を垂れ流したりしてくれます(ただし日本語は現状は文字化…

結婚式二次会用に Node.js x ブラウザでタイピング対決アプリを作ってみた

はじめに 先月、友人の結婚式の二次会でタイピング対決をしたいとの企画を、幹事の友人から受けました。面白かった要件としては、 二人の顔を 2 台のカメラで映したい タイピングしてる様子をリアルタイムで見たい というものです。これをサーバは Node.js …

Qt Quick Local Storage で設定をお手軽に保存する

はじめに Qt Quick では Local Storage という SQLite ベースの DB を利用して設定の保存が可能です。 Qt Quick Local Storage QML Types | QtQuick 5.1 | Documentation | Qt Project ただ生で SQL を扱うのは面倒なので key-value ベースでデータを保存し…

Windows でも Node.js C/C++ アドオンを作ってみる

はじめに Linux や Mac で動かしている方が多いと思いますが、Windows でも Node.js を動かすことが出来ます。手順はとても簡単で、インストーラを実行するだけです。 Node.js 日本ユーザグループ 他の PF と比較すると数は減りますが、コンパイルが必要な s…

QML で表示した WebView をシェーダでいじって遊んでみた

はじめに QML では ShaderEffect という要素を利用して、表示している要素をソースにシェーダでいじることが出来ます。 http://qt-project.org/doc/qt-5.0/qtquick/qml-qtquick2-shadereffect.html そこで WebView で表示した Web ページをソースに色々と遊…

Canvas を使ってみんなもお手軽に弾幕作ろうぜ!! - 其の伍 -

はじめに 1年間更新していなかったのですが、先日コメントを頂きまして再開しました。ゲーム用 JS ライブラリを使わずに弾幕シューティング作ってみる企画です。今回が最終回で、弾幕シューティングゲーム一番の醍醐味の弾幕を作ってみる回です。 第1回 〜 …

QML の WebView 内の JavaScript と外の JavaScript でやり取りをする

はじめに QML の WebView 内をゴニョゴニョしたいなと思って調べると、evaluateJavaScript すれば出来るよ!と書いてあったのですが、どうやら Qt Quick 2.0 の QtWebKit 3.0 からは API が変わったようです。 How to call JavaScript methods from HTML con…

Boost.勉強会 #11 東京 での質問への回答

はじめに Boost.勉強会 #11 東京での発表内容(Boost.勉強会 #11 東京で発表してきた - 凹みTips)で頂きましたご質問について、簡単にですが調査しましたのでまとめます。 質問の返答 Emscripten の行数が 12万行になった理由 結論としては「iostream の中…

Boost.勉強会 #11 東京で発表してきた

はじめに 本日、神保町の IIJ さんの本社で行われた Boost.勉強会 #11 東京にて「Hello, C++ + JavaScript World!」というタイトルで発表して来ました。 ちなみに Boost.勉強会ですが、本発表には Boost 成分は1ミリも含まれていないです。。 発表内容 当日…

Qt Quick での C++ × QML バインディングについてまとめてみた

はじめに QML で特定のフォルダ内に含まれる画像をスライドショーする処理を書いてみた - 凹みTips でもチラッと書きましたが、もう少し詳細に Qt Quick での C++ バインディングについて調べてみたのでまとめてみました。 Qt 始めたてなので幾つか間違い含…

QML で特定のフォルダ内に含まれる画像をスライドショーする処理を書いてみた

はじめに QML は JavaScript ベースなので、ファイルを扱うことができません(XHR とかは出来ます)。なので、特定のディレクトリに含まれる画像をスライドショーしたいなぁ、と思っても、画像パスのリストを JS から取得することが出来ず、ファイル名を JS …

Hyperlapse で環状八号線を南下する動画を Google ストリートビューからつくってみた

はじめに Googleストリートビュー上を移動するムービーを制作してくれる「Hyperlapse」 - GIGAZINE Google Street View Hyperlapse Hyperlapse は Google ストリートビューから取得した画像を用いてタイムラプス動画を作ってくれます。コードは github に公…

Emscripten で C++ の Hello World を JavaScript に変換してみた

はじめに Emscripten は今流行りのコンパイラ基盤 LLVM を利用して C/C++ のコード(正確には LLVM-IR)を JavaScript に変換してくれるコンパイラです。フロントエンドである Clang を利用して C/C++ のコードを LLVM-IR という中間言語へ変換、Emscripten …

1文字足すだけで Twitter API 1.1 対応する

はじめに みなさん、API 1.1 対応していますか?私はまだです。 今回は、既存の node-twitter(jdub/node-twitter · GitHub)を使用している人向けに、1文字足すと API 1.1 対応できるよ!というモジュール、mtwitter を紹介したいと思います。 passcod/mtwi…

SimSimi API x Web Speech API x OpenJTalk x mmd.gl.enchant.js でブラウザ上で音声対話できるヤツ作った

はじめに SimSimi とは巷で噂の凄いチャットロボットです。 参考: simsimiってアプリが凄すぎてワロタwwwwww : 無題のドキュメント 例 で、この SimSimi さんですが、API を公開しています。 SimSimi API 無料では使用制限があるようで 1ヶ月しか使え…

WeMo を操作する Node モジュールつくった

はじめに Belkin 社の WeMo を JS から操作するために、「遠隔コンセントタップ WeMo を SOAP で動かすハックやってみた - 凹みTips 」にて書いた内容をモジュール化しました。 インストール & ソースコード インストール $ npm install wemo ソースコード g…

Native Client の導入と Hello World までのまとめ

はじめに Welcome to Native Client - Native Client — Google Developers Google Native Client とは、ブラウザ上でネイティブコードを安全に実行するためのサンドボックス化技術です *1。開発者側から見れば、Chrome 上で高速に動くアプリケーションを既存…

Web Speech API で遊んでみた

はじめに “Web Speech API”をサポートした「Google Chrome 25」のベータ版が公開 - 窓の杜 2013/01/14 公開の Google Chrome v25.0.1364.29 beta-m から Web Speech API が実装されました。これで JavaScript から音声認識が出来ると言うわけで、ユーザビリ…

Google リーダーではてブのコメントを自動で見れるようにした

はじめに 皆さん、Google リーダーで日夜情報収集に励まれていると思います。その際に、はてブ数やコメントを表示してくれる素晴らしい greasemonkey のエクステンションがあることはご存知でしょうか? gr-puls-hatena - GoogleReaderにはてなブックマーク…