タグ

ブックマーク / labs.gree.jp (35)

  • Electronでゲームの設定ツール作ってみた | GREE Engineering

    みなさんご無沙汰しております。ちょびえです。 最近はやりのElectronでゲームの設定ツールを作ってたので事例共有ということで記事を書いてみたいと思います。 事例共有なのであまり技術的な内容ではありませんが、少しでも皆様の参考になれば。 (免責としては、自分のチームの話なので全体としてこう、というわけではありませんのでご了承下さい) モチベーション 元々UnityEditorの機能を使って色んなツールを作っていたのですが、特定のGUI APIに依存した少し複雑なGUIツールとなるとメンテを他の人に託しづらくなってしまう問題があります。 会社として普段からWindowsMac向けのアプリケーションを作っている、とかであれば特に問題にならないと思うのですが。どうしても弊社のようにWebサービスが主力な会社だとHTML,JavaScriptを始めとした技術が得意な人が多く、Nativeアプリ

    Electronでゲームの設定ツール作ってみた | GREE Engineering
  • ゲーム

    みなさんこんにちは。GREE Advent Calendar 2015、24日目は消滅都市というスマートフォン向けゲームのメインプログラマを担当しております、渡部晋司がお送りいたします。クリスマスイヴではありますが、私は(すでに既婚者なので)恋愛云々のドキドキ感もなければ夫婦間でプレゼント交換もすることもなく、目下楽しみと言えば大きなチキンをべることぐらい。欲って怖いですね。 さてさて、今年もあと少しで終わってしまいます。お読みになっている皆様は、今年一年どんな一年だったでしょうか? 私の方は消滅都市の運用を年初から年末までやっておりまして、それ以外のことは何もやってないといった感じでした。 エントリはAdvent Calendarとしての記事ですから、当は技術的な話とか How To 的なお話ができればよかったのですが、実は今年はCocos2d-x talks #2、CEDEC

    ゲーム
  • オーケストレーション入門 - 多種多様化するサービスをConsulで連携させる | GREE Engineering

    こんにちは、インフラストラクチャ部のあだち(@foostan)です。 このエントリは GREE Advent Calendar 2014 19日目の記事です。昨日はにしだ(@hosi_mo)さんによるネイティブゲームクライアントの幸せな設計図でした。 今年のグリーアドベントカレンダーのテーマは「GREEを支える技術」ですが、私からは「GREEを支えるかもしれない技術」としてConsulについてご紹介します。 エントリの対象者 エントリでは、簡単なWebシステムを例にとって、Consulやその周辺ツールの基的な使い方やオーケストレーションする仕組みについて説明していきます。 なので Consulって何? Consulって便利そうだけどどうやって使うの? Consul触ってみたけど、使いどころ分からないんだけど? オーケストレーションって? と思われた方にとって良い情報源になることを期

    オーケストレーション入門 - 多種多様化するサービスをConsulで連携させる | GREE Engineering
  • ReorderableListとPropertyDrawerを組み合わせて使う | GREE Engineering

    たびたびですがちょびえです。今日はReorderableListとPropertyDrawerの組み合わせで悩んでしまったのでまた書いときます。 UnityEditorで並び替えできるリストが欲しい となると、あまり説明がされていないReorderableListをつかうのがとても良い感じです。が海外でも日でもReorderableListとPropertyDrawerの組み合わせって 分かりやすい解説がなくこんがらがりがちです。御多分にもれずハマってしまったので忘れないように書いときます。 PropertyDrawerはSystem.SerializableのAttributeを付けたPrimitiveやクラスなどをいい感じに表示してくれる機能です。 カスタムInspectorはComponentと対、カスタムPropertyDrawerはプロパティやフィールドと対になっています。 例

    ReorderableListとPropertyDrawerを組み合わせて使う | GREE Engineering
  • Ride into the Standard Shader: A Guide to Custom Lighting Models | GREE Engineering

    HOMERide into the Standard Shader: A Guide to Custom Lighting Models このエントリは GREE Advent Calendar 2015 11日目の記事です。 こんにちは、Art グループ / Technical Artist チームの酒井 駿介です。グリーでの今までのお仕事は、東京ゲームショウ2015 に出展した VR ゲーム サラと毒蛇の王冠 や、先月リリースされた モバイル VR ゲーム シドニーとあやつり王の墓 の開発などです。シドニーは iOS / Android で遊ぶことができます。ぜひプレイしてみてください。また、弊社の VR に対する技術的取り組みについては、5日目 の Robin のエントリをご覧ください。 エントリの「グリーをささえる技術」のテーマは Unity の Standard Shader

    Ride into the Standard Shader: A Guide to Custom Lighting Models | GREE Engineering
  • Unity | GREE Engineering

    Unity について GREE Engineering

    Unity | GREE Engineering
    tyosuke2011
    tyosuke2011 2016/05/30
    Unityはアセットがあるしな…
  • Unity x BehaviourTreeで遊んでみる | GREE Engineering

    こんにちは。みなさまお元気しておりますでしょうか? 今日は私のチームで利用している内製のBehaviourTreeについて紹介したいと思います。 実際のコードなどについては共有できませんが、少しでもAIの知見が役に立てばということで書いておきたいと思います。 あと、詳しいBehaviourTreeの説明はしないので他のページをググって読んでください。 (Standardな実装って知らないので、もしかしたらBehaviourTreeの別の解釈をしているかもしれませんのであしからず!) 予測出来うるゲーム開発における振る舞い定義の課題 企画とエンジニアがツーカーの仲でないと企画の意図したAIを実現するのに時間がかかる場合がある APIを提供し、スクリプトでAI書いてもらう場合は品質の担保が難しいこともある 直接振る舞いを書いている場合、企画が大きく変わった時にAIの組み換えが困難な事がある 振

    Unity x BehaviourTreeで遊んでみる | GREE Engineering
    tyosuke2011
    tyosuke2011 2016/05/30
    これは使えそう
  • hhvmのExtension書いてみた | GREE Engineering

    みなさんこんにちは。hackしてますか? 今日はhhvmのC++拡張(Extension)について書いてみます。 前振り hhvmはfacebookが開発・公開しているPHPの処理系のうちの一つでC++で書かれており、linux上でのJITがサポートされており場合によってはとても高速にPHPアプリケーションを実行する事ができます。 勿論Native拡張を書くこともでき、既存のライブラリ資産の有効活用やどうしても速度が出ない部分の改善などが簡単に行えるので手段として知っていると便利です。 この記事をきっかけにhhvm Extensionのとっかかりになれば嬉しいです。 開発環境を作る 開発環境はlinuxの環境を整えましょう。 OSXやその他の環境でのビルドも対応しているのですがJIT未対応だったり予期せぬバグや地雷を踏む可能性が高いので積極的にOSXのバグフィックスを行ってフィードバックし

    hhvmのExtension書いてみた | GREE Engineering
  • PHPカンファレンス2015いってきました | GREE Engineering

    El Capitan‎が覚えられなくてYosemiteの次の奴と言ってしまった白浜(@pandamachine715)です。 今回はグリーも協賛させていただいているPHPカンファレンス2015の参加レポートをお届けしたいと思います。まとめへのリンクもあるので合わせて是非。 どのセッションも内容が濃く大変勉強になったのですが、特に印象に残ったものを3つほど。 SPEEDING UP THE WEB WITH PHP 7 まずはPHPの生みの親、Rasmus Lerdorf氏(@rasmus)の基調講演。 逐次通訳付きのセッションですが、非常に聞き取りやすい英語で話していただいています。 http://talks.php.net/tokyo15#/ 内容もさることながらやはり印象に残ったのはQ&Aの場面。 (php7をプロダクション環境で利用する際にリスクを抑えるにはどうすれば良いかとの質問に

    PHPカンファレンス2015いってきました | GREE Engineering
  • FlatBuffersをPHPで使ってみる | GREE Engineering

    はてさて、最近Unityまわりの記事ばかりを書いていましたがあんまりウケがよくなく、やー、やっぱ自分の専門領域外のネタは(掴みがわからず)きっつぃなぁと、いうことで今日はFlatBuffersのPHP portを書いたので紹介でもしておこうかと思います。 先に断っておくとまだそこまで使い倒していないので解釈の違いなどがあるかと思いますので識者の方はツッコミいただけると助かります。 FlatBuffersは特にゲームに特化してつくられたSerializationライブラリでC++を始めとした主要な言語のライブラリサポートがされています。 https://github.com/google/flatbuffers 詳細は↑読んでね、という感じなのですが、Facebookの記事でFlatBuffersを知られたかも多いかと思います。 https://code.facebook.com/posts

    FlatBuffersをPHPで使ってみる | GREE Engineering
  • Cocos2d-xマルチプレイヤーアクションゲーム事始め | GREE Engineering

    こんにちは、ガレージスタジオでネイティブシフト推進を行っている久富木隆一(@ryukbk)です。 エントリは「GREE Advent Calendar 2014」16日目の記事です。今年も忙しい師走となりましたが、皆様いかがお過ごしでしょうか。Advent Calendarなるものが世間で流行っているようですが、宗教的信条の無い者としてはどうなのと思いつつも、お祭りは何だかんだで放っておけない性分でございます。 今回は、オンラインマルチプレイヤーゲーム、中でもアクションゲームの作り方について考えてみます。その過程で マルチプレイヤーアクションゲームが克服すべき課題と、発展の歴史 Cocos2d-x 3.3、Cocos Studio 2による、C++11を用いた開発 について触れた上で、Cocos2d-x  & node.jsによるオンラインマルチプレイヤーアクションゲームのサンプルコード

    Cocos2d-xマルチプレイヤーアクションゲーム事始め | GREE Engineering
  • Cocos2d-x で 3Dフライトアクションゲームを作ってみた - アメリカでの研修を通して | GREE Engineering

    GREE Advent Calendar 2015, 13日目です! whoami はじめまして、奥畑と申します。 新卒入社からの2年半で、プラットフォームの運用、Webゲームの新規開発・運用に1年ずつ携わり、現在は北米支社と共同で Nativeゲームの運用に携わっています。 私はこの夏、グリーが資業務提携している米Make School社によるアプリ開発者養成講座に、新卒1~4年目の社員8人で参加してきました。世界中から300人ほどの高校生・大学生が集まり、2ヶ月間のカリキュラムの中で、前半3週間は iOSアプリやゲームの作り方を学び、 後半5週間で各々オリジナルのアプリやゲームを作り App Store にリリースするというもので、我々はグリー専用コースとして Cocos2d-x によるゲーム制作を行いました。 その中で私は 3Dフライトアクションゲームを作りました。iOS (ついで

    Cocos2d-x で 3Dフライトアクションゲームを作ってみた - アメリカでの研修を通して | GREE Engineering
  • SWFバイナリ編集のススメ第0回 (解析編) | GREE Engineering

    こんにちは、クライアント基盤チームのよやです。 昨今、Flash Player の自作が流行りのようですが、デバッグやテストに苦労されているとも聞き及んでいます。 丁度タイミング良く、SWFバイナリ編集のススメでサンプルとして引用している IO_SWF パッケージが SWF 解析ツールとして充実してきました。折角ですので、この場で紹介させて下さい。 http://openpear.org/package/IO_SWF http://openpear.org/package/IO_SWF/src/trunk/sample 野良 Flash Player の開発者であれば自前で SWF 解析ツールを用意出来ると思いますが、何かあった時に verify check として利用頂けると幸いです。 IO_SWF のインストール php と pear コマンドが入っていれば3つのコマンドでインストール

    SWFバイナリ編集のススメ第0回 (解析編) | GREE Engineering
  • LWF | GREE Engineering

    サンフランシスコからこんにちは。エンジニアの坂 一樹(@splhack)です。 このエントリは GREE Advent Calendar 2013 9日目の記事です。という書き出しで始まると思った人が大半だと思うのですが、残念ながらこの記事はAdvent Calendarの記事ではありません。こんなにAdvent Calendarの記事が並ぶなか、Advent Calendarの記事ではない記事が一緒に並ぶというのは、なかなか斬新な企画ではないでしょうか。これがシリコンバレー流です。言ってみたかっただけで、当ではありませんが。 そもそもこれを書いている場所がシリコンバレーかというと、あれっ、サンフランシスコってシリコンバレーなんでしたっけ、という疑問が浮かんでしまうわけです。シリコンバレーって、アメリカ合衆国カリフォルニア州北部のサンフランシスコ・ベイエリアの南部に位置しているサンタク

    LWF | GREE Engineering
  • SWFバイナリ編集のススメ番外編 (zlib 伸張) 前編 | GREE Engineering

    こんにちは。アプリケーション基盤チームのよやと申します。 バイナリの目利きや書き換えを主な業務フィールドとし、1% でも多くのユーザの皆様にサービスをお届けする為、より良質のバイナリを探し求める毎日です。 SWF の番外編として zlib 伸張について2回のブログに分けて解説します。(圧縮処理は対象外です) 前編の今回は概要についてお話し、具体的な実装は後編で扱う予定です。 はじめに SWF フォーマットは zlib 圧縮を多用します。例えば、GIF/PNG 画像は独自画像形式(DefineBitsLossless の BitmapPixelData)に変換後 zlib 圧縮して格納します。 http://labs.gree.jp/blog/2010/12/1902/ SWFバイナリ編集のススメ第五回 (PNG) SWF バイナリの中の zlib 圧縮されたデータが怪しい場合に、zlib

    SWFバイナリ編集のススメ番外編 (zlib 伸張) 前編 | GREE Engineering
  • ナウい「LWF」 | GREE Engineering

    こんにちは、WG基盤開発部ゲーム基盤チームの何です。内製プロダクトチームを陰から支える仕事をしています、チーム名を噛みやすいのが玉にキズ。最近はLWFをメインにフロントエンド周りのお・も・て・な・しをしています。滝川クリステルさん大好きです。 『GREE Advent Calendar 2013』15日目では ナウい「LWF」 と題しまして、LWFが最近どのように使われているのかを社内の活用例と共に紹介したいと思います。今更聞けないLWFの豆知識を始め、現場の開発で役立てているアシストツール、LWFの最新の事情についても触れていこうと思います。死語だらけの記事ですが、これを読んであなたもナウいLWFの世界へLet's Dive! LWFの簡単なおさらい 「LWF」- Lightweight SWFとはFlashコンテンツから変換したデータをマルチプラットフォームで再生可能にするアニメーショ

    ナウい「LWF」 | GREE Engineering
  • SWFバイナリ編集のススメ番外編 (zlib 伸張) 中編 | GREE Engineering

    よやと申します。こんにちわ。 今回は zlib 解説の中編です。前編はこちら ↓ http://labs.gree.jp/blog/2012/01/4082/ SWFバイナリ編集のススメ番外編 (zlib 伸張) 前編 前回、zlib ヘッダのバイナリを解説しました。今回はその後ろに続く Deflateストリームのバイナリ構造についてです。 尚、固定ハフマンまでの説明で長くなり過ぎたので、動的ハフマン(カスタムハフマン)は次回の後編で改めて解説いたします。 前回の復習 zlib は「zlib ヘッダ + Deflate ストリーム + ADLER32」のデータ形式です。尚、通常、zlib ヘッダ無しでも Deflate ストリームだけで圧縮元のデータを復元出来ます。(DICTID が存在すると話が少し厄介ですが、通常見かける事はないでしょう) Deflate はデータを任意の長さのブロック

    SWFバイナリ編集のススメ番外編 (zlib 伸張) 中編 | GREE Engineering
  • Lightweight SWF | GREE Engineering

    エンジニアの坂 一樹(@splhack)です。今日はみんなに新しいソリューションを紹介するね★ LWFっていうんだよっ♪ グリー、UnityおよびHTML5に対応したスマートフォンアプリの開発支援ソリューション「LWF」をオープンソースソフトウェアとして公開 「LWF」は、独自ファイルフォーマットに基づくアニメーションエンジンで、Flashコンテンツから変換したアニメーションデータを、UnityHTML5で再生できます。 「Animal Days」での「LWF」使用例 (弊社プレスリリースより抜粋) ねっ、いいでしょ♥ ... すみません。書いてて辛くなってきたんで、もうちょっと堅くさせていただきます。 “新次元ゲーム開発セミナー”が開催! グリーの気鋭が語る、次世代のモバイルゲーム開発で求められるものとは? 坂氏が講演で、「“Lightweight SWF”を“github”でオー

    Lightweight SWF | GREE Engineering
  • SWFバイナリ編集のススメ第五回 (PNG) | GREE Engineering

    こんにちは。メディア開発のよやです。 今回は、PNG 画像入れ替えについてお話します。 PNG の情報を格納できるタグ DefineBitsLossless, DefineBitsLossless2 が利用出来ます。(*1) DefineBitsLossless に透明度情報を加えたのが、DefineBitsLossless2 です。 PNG の特徴 (基礎知識) 可逆圧縮のフォーマットです。(JPEGと違って画像の細部が潰れません) パレット形式とトゥルーカラー形式(24bit(*2)フルカラー)の両方に対応します。 色毎、ピクセル毎に透明度(半透明も可)が指定できます。 (GIFは半透明を扱えません) パレット形式 前回の GIF 編の説明と似ていますが、(GIFと異なり)半透明も扱う為、格納方式が異なります。 以下のは輪郭の外が透明で、黄色を少しだけ半透明した例です。 PLTE ch

    SWFバイナリ編集のススメ第五回 (PNG) | GREE Engineering
  • Flash | GREE Engineering

    Flash について GREE Engineering

    Flash | GREE Engineering