タグ

ブックマーク / mizchi.hatenadiary.org (7)

  • 最近のJSの開発環境について知っておくべきライブラリ10個 - mizchi log

    ほんとに10個だと思った?(無意味に煽っていくスタイル) 最近JSだけのリポジトリで無益なゲームを大量に作っては破棄しているのだけど、割とストレスなく出来上がってきたので書く。 長々と書くが、要は次のリポジトリに概要が詰まってる。 mizchi/mizchi_client_boilerplate · GitHub https://github.com/mizchi/mizchi_client_boilerplate 前提として、最近はCSJSでもnodeのインストールを前提とする環境が多い。必須といってもいい。 grunt gruntjs/grunt · GitHub https://github.com/gruntjs/grunt ビルドタスクを簡単に作れる。make、rake、などに相当するが、node製らしくファイルシステムの監視でアクションを作れるのが特長。$ grunt serv

    最近のJSの開発環境について知っておくべきライブラリ10個 - mizchi log
    y-kawaz
    y-kawaz 2013/02/16
    知っておくべきとか言ってディスってばっかで本人使ってないのね。でも概ね同意権だったり…。このなかだとgruntは常用、次に最近bowerってくらいかな。
  • クライアントJSをパッケージ管理できるjamjsが便利 - mizchi log

    nodeのnpmみたいなインターフェースで、クライアントjsの依存管理をする。 インストール $ npm install -g jamjspackage.jsonのjamプロパティ以下に依存モジュール書く { "name": "hogefuga", "version": "0.0.0", "jam": { "baseUrl": ".", "packageDir": "vendor", "dependencies": { "jquery": "1.7.x", "backbone": null, "underscore": null } } }package.jsonの定義に従ってダウンロード $ jam install自分はcompileまでする。 $ jam compile vendor/all.jsあとはみたいに読みこめば、jquery,backbone, underscoreが読み込み

    クライアントJSをパッケージ管理できるjamjsが便利 - mizchi log
    y-kawaz
    y-kawaz 2012/10/10
    最近はGruntでconcat,minとかして不便を感じてないけど、気が向いたらあとで見るかも
  • HTML5でロードオブナイツとかいうゲームを作った - mizchi log

    陣取り戦争ゲーで、iPhoneUnity版からの移植です。 ロードオブナイツ - Yahoo!モバゲー http://yahoo-mbga.jp/game/12011436/detail PC(Chrome/Firefox/IE9以上)とスマホ(Webkit)で同じ物が動きます。ヤバゲーとモバゲーでアカウントは共有してるので、どっちからでも入れます。 HTML版としては既存コードとか一切なかったんで、JSに関してはフルスクラッチです。というか全部CoffeeScriptです。 ある日会社で楽しくHaskellでKPI計算モジュール書いてたら、 「UnityのネイティブのゲームHTML5に移植したい」 みたいな話が降ってきたので、移植しました。3ヶ月ぐらいで。 プラットフォームはモバゲー(スマホ) + ヤバゲーです。HTML5なのは、スマホとブラウザゲーで開発リソースを共通化したかったか

    HTML5でロードオブナイツとかいうゲームを作った - mizchi log
  • socket.ioとenchant.jsでネトゲ作り始めた - mizchi log

    某所に提出するように昔作ったもののコア部分を詰めて作ったんだけど、興が乗ったので今日そのまま作りこんでみた。 同時にログインして相手に近づいて殴ったらHPバーが減って死ぬ。死ぬと4秒でリポップする。 まだマップを実装したりモンスターを徘徊させたりしてない。実質一日で作ったものなので現状この程度。 ガワはenchant.jsで書いた。はじめてまともにつかってみたが、意外と複雑な構成に耐える印象。とくにアニメーション部分はavatar.enchant.jsの仕組みにほぼ乗っかっているのだが、サーバーサイドでステートを決定してクライアントで受け取っている。こんなこと自分以外はやっていないと思う。 一応Githubに置いた。グワーッと作りたかったので、まだテストコードを書いていない。 mizchi/node-mmo https://github.com/mizchi/node-mmo git cl

    socket.ioとenchant.jsでネトゲ作り始めた - mizchi log
  • クライアントのテストはzombie.jsでいいんじゃないか - mizchi log

    zombie.jsとは jsdomというnode製のDOMシミュレータがあります。これを使えば、ブラウザを使わずにDOMイベントを発行することができます。 zombie.jsはセッション管理とブラウザのアクションを管理するjsdomのラッパーです。 個人的には、Ajaxのテストは無理せずJavaScriptでやれとおもってるので、その点zombieは素直に動いてくれます。 利点 AjaxでDOMを書き換えたりするイベントもテストできる (qt-webkitと比較して) 無茶苦茶早い コンパイルが楽(というかQTは定期的に互換崩れてバイナリ壊れてる… 論よりコード サンプルをアップロードしてあります mizchi/zombie-tester-example https://github.com/mizchi/zombie-tester-example インストール等はReadme見てもらうと

    クライアントのテストはzombie.jsでいいんじゃないか - mizchi log
  • サーバーサイドJSのための、JSONで復元できるモデルクラス *追記あり* - mizchi log

    ほとんど自分のためのメモ。 サーバサイドJSを使っているとクライアントにwebsocket経由で渡したりmongodbやnstoreで永続化する際にピュアなJSONとしてデータを宣言しなおす必要があって面倒。 じゃあModelクラス自身が読み込み/書き出しできると嬉しいのでは。 coffee-scriptで書いてみた。 class Model _iparam_ : {} constructor : (data={})-> for k,v of @_iparam_ @[k] = data[k] or @_iparam_[k] toJson : (cls)-> return @toJson(@) if cls is undefined return cls unless cls instanceof Object json = {} for k,v of cls if typeof v is

    サーバーサイドJSのための、JSONで復元できるモデルクラス *追記あり* - mizchi log
  • Canvas/WebSocketなネトゲの、ざっくりとしたロジック解説 - mizchi log

    Canvas/WebSocketでディアブロクローンなネトゲを作ってみた - mizchi logの解説 ちゃんと勉強して実装したわけじゃないけど、つくってみたい!と思った人が一通り実装できる程度の解説をする。 ゲームプログラミングとウェブプログラミングの初歩を知ってるとなお良い。(というか僕自身どっちも微妙なのだが) ソースコードはこちら GitHub - mizchi-sandbox/ws-netgame: WebSocketを用いたネットゲーム 前提として、CoffeeScript、WebSocketを使う なお、以下のコードは概念を説明するために簡略化したもので、socket.io , coffeescriptの微妙な挙動については検証していない。あくまで擬似コードの一種として読むように。 MVCにわけて解説する。 Model サーバーのセーブデータ。基的にログイン中はオンメモリ

    Canvas/WebSocketなネトゲの、ざっくりとしたロジック解説 - mizchi log
  • 1