あのぷちゲームジャムを二度三度

また超小規模ゲームジャムのお誘いを受けて、参加してまいりました。

今回は前回より1人多く、3人での開発となりました。

私は今回もゲームのメイン部分の作成を担当しました。

 

youtu.be

ゲーム内容は材料を組み合わせてコロッケを作り、より高得点のコロッケを作れるよう上手く取捨選択してハイスコアを目指すゲームです。

そんな中で詰まった点をまた纏めておこうと思います。

 

ゲームインスタンスの作成

詰まったというか作り直す部分が発生したので面倒くさかったと言う話。

今回はハイスコアを目指すタイプのゲームだったため、得点計算の部分を試験的に書こうと思うと、レベルブループリントに書いてしまう…

そうなるとUI表示であったり、レベルを跨いで変数を渡す時点で手詰まりになってしまったので、大人しくゲームインスタンスに書き直しました。

方法はシンプルでしたがノードの数の多い得点計算方法だったので、単純にコピペするにもヒューマンエラーを起こしそうな状況でした。

 

○今回のゲーム(スコアアタック系)でゲームインスタンスに記述したほうが良いもの

  • 主にUI表示に使用する変数
  • スコア

 

次はスムーズに進めたいですね。

  

■共同で作業する時にDevelopフォルダを各々メインの作業ディレクトリにしない

以前にも触れたと思いますがマージ作業を行う際にUSBを介して行いました。

プロジェクトファイルを共有し、自分の作業、保存するディレクトリを用意して、コンフリクトがおこならいように対処しました。

Content>develop フォルダを見つけてしまい、そこにローカルの作業を行うようにいたしました。

しかし、いざチームで用意したアセットをレベルに持ち込もうとしたりすると

参照できない…具体的には検索しても候補に上がらないと言った事態になり調査を進めました。

 

 すると案の定。

docs.unrealengine.com

 

使う前に説明書読めって話でした。

 

■その他、正攻法な対処ができなかったもの

○Time Remainingによるキャラクターのアニメーション制御

全体モーションフレームの残りx秒でステートの切替を行う、といった内容でアニメーションブループリント(アニメーションBP)が組まれていましたが、

フラグを落として実行した際に、アニメーションが待機状態に戻らない…

と言った状態に陥りました。

参加メンバーの方からその手法では失敗するけど原因が分からないといった記事を見たと言う情報を頂きました。(某Epicなおかずさんの記事、もしくは呟きだったとかなんとか…)

結局、PlayAnimationノードを使って直に呼び出す、アニメーションフレームは一律でしたのでそのカウントまで進んだら待機アニメーションをPlayAnimationで再生!

と言う、聞く人が聞くとグーパンされても仕方ないやり方で通しました。

 

~~ まとめ ~~

今回はどうしようもなく困らされたって状況は殆どなかったので、

そこまで新しい事にチャレンジしたわけでも無かったかもしれません。

 

とは言え、UIとゲームインスタンスに関しては前も引っかかったはずなので、

成長が見えないなこいつって感じですね。

牛歩ですがじっくり行きます。

UE4でGameJam的な事をした際に詰まった箇所

何か今まで誰かに見せようと考えてたけど、

めっちゃ備忘録的に書きまとめます。

 

多分それが良い。

 

某日、某氏からめっちゃ小じんまりとGameJamしません?ってお誘いを受けて、

ゲームジャムしてきました。

 

今まで4人くらいのチームで開発した経験はありましたが、今回は二人。

わからない箇所は自分で何とかする以外なし!といった環境下で、

今回特に詰まった点とか、忘れないうちに書き留めておきます。

  • 別プロジェクト内でAIやアニメーションBPを持たせたPawnの移植

今回一番時間を食われた問題。

スケルタルメッシュやアニメーションBP、適用されてたマテリアルインスタンスの参照するテクスチャやマテリアルをコピーを行って…とやって実際にレベルに持ってくる。

コピーしたのは極め本の敵キャラのうさぎ。

指定したターゲットポイント間を往復するAI。

しかし目的のレベル上に配置してもうんともすんとも言わぬ。

 

待機モーションは行なっているし、ビヘイビアツリーをデバッグしてみてもAIのBPを見ても特におかしい挙動はない。と言うかターゲットポイントまで歩いてもいないのに次のポイントを要求している。勿論ターゲットポイントへの登録はおかしくないし、座標も取れてる。

初日からそんな調子で、一旦後回しにして次の日ふと本を読み直して解説のスクショを見て気づく。

レベル上に配置してるこの緑なんだ???

 

そう、ナビメッシュが敷かれてなかった。

これ自体は特にアセットになっているわけでもないし、

制作時にレベルデザインとして調整するものだからそりゃどこにもないわと。

必要なものは全部移せてたけどただ、巡回AIを作る上で忘れるはずがないものだったのです。

ちゃんとAI制作する手順がイメージできるのであれば

  • SideScrollerサンプルのプレイヤーPawnはZ軸移動出来ないし(多分)存在も出来ない

UE4ならX軸ですよってツッコミは一旦置いとくとして。

今回プレイヤーはSideScrollerサンプルをベースに作成を開始しました。

そいつを俯瞰視点で3Dに移動させようとした所どうしても奥に進まないのでした。*1

f:id:HiraCom:20170306174354p:plain

ここにチェック入れると奥や手前に移動しようとしても無駄です。

また無理やりワープさせるとかそれも出来ませんでした。

これに関しては他の設定項目があるかもです。

そこに関してはまたおいおい調べます。

そしてそのせいで以下の問題に見舞われました。

  • Respawn位置を変更したらエラーが発生する

前述のプレイヤーPawnでチェックポイント通過したらリスポーン位置も変更とした際に必ずエラーが発生しました。

結局先程のフラグを解除することで解決しました。

 

ただ、これは今再現しようとしても発生しなかったので復帰位置に制限がかかっていたため、たまたま奥行きがプレイヤーPawnの生存範囲から外れていたのかもしれません。エラーメッセージの内容を見たかったのですがまた思い出したら追記するかも。

多分しないと思う。

 

結局今回の問題は根底は

一から理解しきれていないので原因が分かりにくい

とはいえ実際にGameJam中に一からまた作り直して…ってのも厳しい。

なんでGameJamの前に

使う前に一度作り直してみる

のは重要ですね。

 

トラブル用のバッファ…ってのは当然取るであろうから言及しません。

 

f:id:HiraCom:20170306180123p:plain

今回こんなダンジョンを探索するゲームを作りました。

今回お話を持ちかけてくれた某氏の意向もあり、

詳細やアプリケーション公開の予定は御座いません。

 

記事に関して、間違いがあるので書き直せと言われたら対応します。

 

*1:最初からTPSサンプル使えばいいじゃんと思われますがそこは事情がありまして…

関西UE4GameJamに参加しました

このブログ参加したか行ってきたしか言ってませんがそういう話です。

もう一ヶ月も前になりますが、思い出しつつ書いてきます。
間違ってたら申し訳。

そうですね、私にとっては初GameJamだったので、
これからGameJamに参加しようとか参加しようかどうか悩んでる人、
何も出来そうにないけどどうしよう…とか考えてる人の参考になればと思います。

◯前提として
UE4歴一ヶ月もないです。
ハンズオンの参加に当たっての予習やエディターをインストールしたまではいいものの、
特にこれといった事はしてなかったので1週間くらいでしょうか。
以前参加したUnity&Unrealハンズオンセミナーがあり、


こちらでUnreal側の講師があまりにも確保できないと言うことで、
Unity側で何を作るか経験したので、簡単なサポーターとしてお手伝いした程度です。
お役に立てたかは非常に怪しいです。

◯何で参加に踏み切ったの?

私、非常にチョロいですね。

結果として非常に楽しい貴重な体験が出来ました。
alweiさんには感謝しかないです。

◯事前にやったこと
ハンズオンの資料が残っていたのでそれを中心に見直しました、前日に。
本当はもっと時間を掛けたかったところですが、
毎日24時前後に帰宅する生活を続けると、その気力はでませんでした。(甘え
三連休の2日・3日目でしたので結局1日目に復習のするしかなかったのです。
とは言え昼間は別件があり結局数時間だけでしたが。

◯ブレスト・アイデア出し〜1日目〜
結論だけ言います。
遅刻しました。
結局、9時集合のところ到着できたのは10時半でした。
そう、既にチーム決めは完了してる状態でしたが、自分以外にも遅刻者は居るとのことで
人数がそれなりになれば遅刻者でチームを組む、
少な過ぎたら各チームへと言う運びになりました。
最終的に4人(2日目に一時的に5人に)のチームとなりました。

ずしさん(@shiba_zushi)が自分より先に居られて、
まだ2人でしたが自分たちが組んだ時の事を考えてアイデアを出しておくことになりました。
ブレストと言えば付箋!って事で思いついた事を書いては貼るようにしてみました。
その間にバンタンの学生さんが1人参加されて
(名前を失念してしまいました申し訳ございません…)
ここでチームFが結成することになりました。
ある程度アイデアを並べたところで、
今回チームとしての最低限の目的というか意識のすり合わせを行い
『どんな内容でも、ゲームとして完成させる』
この点を重視し実現出来そうなアイデアに持っていくことにしました。

消極的と言われたらそこまでですが、
誰も彼もGameJamは初参加、UE4歴も浅いと言う状態でした。
その上で、完成しませんでしたで終わることだけは避けたいと言う事で一致し、
面白さは二の次三の次と言うことで、操作や目的は極力単純にする事にしました。

この時間においては
「ステージを回転させてボールをぶつけて敵を倒すゲーム」
を作ると言うことでブレストは終了しました。
先に言ってしまうと最終的には
「ステージを回転させて敵を避けつつ、時間内にアイテムを回収するゲーム」
になります。
作ってる間にこれは間に合わないのでこうする、これを実現するのは難しいので
こう変更すると言った形で、二転三転しました。
どのタイミングでどう変わったかは正直覚えてません。

◯作業〜1日目〜
プログラマ2人、デザイナ1人と言うことで
まずプログラマは操作周りの実装、敵と当たった際のイベントを分担し、
デザイナは昨日フリーになったInfinity Blade Collectionから
今回の作品に使えそうなものを厳選するという形で分担。
作業に取りかかりはじめたところで甘酢さん(@falcomin)が合流されてUI表示周り、
ゲームの状態遷移部分をお願いすることに。

最終的な統合・マージを行う際は自分のところに…という事で各々作業を進めました。
(正直、どうなるのか全く予想がつかず不安しかありませんでした。)

夕飯で休憩をとった時点で、全体的に遅れが見えてきたので
おそらくこの辺りでゲームの内容をスケールダウンさせていったかと思います。
と言うか自分の作業に関しては回転の操作は何とか検証まではいけたのですが、*1
ボールをジャンプさせるという点に関しては
どうも上手くいかず時間がいたずらに過ぎました。。。
最終的にステージ全体を縦に揺らしてボールを跳ね上げる形になりましたが、
ここに至るまで二日目の昼までかかってしまいました。*2


◯作業〜1日目深夜〜
22時で会場が閉まるので各々明日に備えて帰宅、充分な休みを…取らない人も居た。
これを仕上げますと宣言したわけではないのですが、
自分はゲーム中のBGMを再生させようと思い
帰ってから数時間、素材を探りつつをしつつ実装を進めました。
実装自体は非常に単純で探せばすぐに出てくるレベルのものでした。*3

そして寝ようとしたら

そして朝判明するのですが、バンタンの学生さんも当たりに関するBPが上手くいっておらず
夜中調査を進めてたようです。
チームF、夜更かし大好き。
だからみんな遅刻するんだ

◯作業〜二日目〜
全員揃ったところで簡単なタイムスケジュールを甘酢さん主導で立てていただいて、
再度作業を分担したあたりで、改めてゲーム全体のフローを整理しました。

昼ごろには”敵を倒す”ではなく”アイテムを回収する”ゲームになったと思います。
そして敵にぶつかった際も倒されるのではなく、弾かれてタイムロスするという形になりました。
時間内にアイテムを回収して、残り時間とアイテムでスコアアタックする事ができれば、
繰り返し遊べるゲームになるということで、個人的にはそこをゴールに据えていました。

◯統合・マージ
結局どの部分を持ってくるのか人のソースを見るよりかは相当マシでしたが、
と言うかどういう手順でやったか微妙に覚えてない、と言うか要所要所担当した人に
見てもらいつつやったので。
あれ?ワイ要らなくね…?
とは言えここでまた問題は起ってなんやかんや修正を行ってたら作業時間ギリギリとなりました。
結局このタイミングでスコアの実装は表示するだけで計算は不可能となりました。*4

ただマージ作業中、ずしさんや甘酢さんがパッケージングに関する情報を集めてくださったので
パッケージングに関してはすんなり終わりました。
(こちらの情報が決め手になったとのこと http://historia.co.jp/archives/3658

◯発表
こんな形になりました。

実は結局最後に統合した際に敵との当たりを確認してなかったので、
敵に弾かれる処理は実装できてませんでしたが、敵にぶつからずプレイして触れられないようにしました。
スコアは突っ込まれました、そりゃそうだ。
後、実行ファイルでのBGMはやたらと音割れしてます。
元ファイルは別段悪くないので、これは謎だったりします。

◯全体を通しての失敗点
自分がUE4に対する知識が今ひとつ足りてないのは置いといて、
マージ作業をこまめに行えるようにしておく必要があったのは事実です。
それを踏まえたうえでのタイムスケジュールであったりを考える必要がありました。

地味に困ったところといえばデータの受け渡しでしょうか。
作業中、データを受け取るにしても不要なデータは含まれてるにしても
判別する暇が無かったので膨大な容量となってしまい、
5GBをUSB2.0でコピーすると片道20分はかかりました…
使用するアセット類の判別をつける作業を進める必要がありました。
後、純粋にUSB3.0を使いましょう。もう2015年なんですから。
それっぽく言うなら道具に対しては古いものを使い続けるなんて妥協はしない方がいい、ってとこでしょうか。

◯感想
取り敢えず、駆け足ですがそんなところです。
時間内に出来なかったことは自分も作業の遅れを出してしまったこともあり、
もう少しUE4に対して知識があれば、もっと完成度を高められたのは事実です。
とは言え非常に楽しい二日間であり、
チームを組んでくださった御三方には本当に感謝しています。
初めはUE4で1人でなにか作ったわけでも常に触ってるわけでも無いしマジで何もせずに終わりそうと思いましたが、
そんなことは無かったです。
自分のようにゲームらしい物も作れてないしマトモにUE4経験もないし…
って足踏みしてる人は是非参加してみてください。
(今回であればエディタ?BP?何それってのは流石に論外として)

後、痛い目見るなら早いうちがいいですよと言っときます。

*1:それにしてもレベルブループリントに書けばいい事実に気づくまで時間がかかってる体たらく

*2:個人的にこの実装は避けたいと意地になってた節もあります

*3:BeginPlayノードの適当なタイミングでPlaySoundatLocationを使用

*4:端折ったのはあれです微妙にうろ覚えになってるのです

Unityクリエイターズ勉強会に行ってきた話

2月になったので更新します。

そんなこんなで今回はこちらにおじゃましました。
http://atnd.org/events/35988

Unityクリエイターズって呼ばれるほどの者でないのが行っていいものかと思いましたが、勉強会は関東と比べてそこまで多くないし興味ある分野でしたし参加させて頂きました。
例によって例のごとく、メモし損なった部分もあるので
間違い等あるかもしれませんのでご注意を。

○パーティクルで2Dシューティング(くるくるさん:@mkd214)
一発目は主催者であるくるくるさんのライブコーディング。
プロジェクト作成からParticleSystemを使ってシューティングゲームを作ると言った内容。
詳細はSlideShare(http://www.slideshare.net/masatakamotokurumada/unitycreater0202)
を参照していただくとして、
内容を追っていけば一つのゲームとして出来上がるので、
お時間有る方はチャレンジすると良さげ。
パーティクルの制御の練習として成り立つのでUnityでのエフェクト作成入門としても
非常に有難いです。
こういったライブコーディングによる発表は大抵時間が足りなかったりトラブルでgdるって印象が強かったのですが、大きなトラブルもなく発表されていたのは素晴らしかったです。

○Unityシェーダーを触ってみよう(マニーさん:@Many_san)
Unityのシェーダーを実際にソースに手を加えようと言う内容。発表資料は以下のURL
http://many.chu.jp/Unity/130202/

_人人人人人人人人人_
> UnityWebPlayer <
 ̄Y^Y^Y^Y^Y^Y^Y^Y^ ̄

氏曰く、「何でUnityWebPlayerあんのにパワポ使ってんすか?」とのこと。

諸事情につき一部公開されておられない箇所がありますが、
内容としてはシェーダーの基礎知識から
Unityでのシェーダープログラミングの触りについて解説されていました。
AssetsからShaderを選んで、GUIから設定するとデフォルトで色情報が操作可能なので、
256までの範囲で設定可能
(ちなみにソースから設定する場合は0.0~1.0で設定する)
テクスチャを操作したい場合はMainTexture(Texture型)に記述すれば良い
(テクスチャのリソースを事前に用意しているのが大前提)
UV情報はmainTextureOffsetで操作できる

・シェーダの作成
ProjectからCreate-Shaderを選択し、
InspectorからEditorを押してEditorを立ち上げ、そこから記述が可能。
*1

「一目で気を引けるよう一手間加えて、頭ひとつ抜けた開発をしよう!」

○NGUIとかの苦労話(Walessさん:@waless_s)
有名なUIについてのプラグインであるNGUIを実際に開発で使用された際のお話。
一番の特徴としてはマテリアル単位で描画をすることがメリットであり、
このためDrawCallによる描画回数を抑える事が可能。
ただしこれはデメリットにも繋がっていて、順番に寄っては正しい順序で描画されなかったり、
同じマテリアル内の平均のZ値を算出して描画するため
個別にZ値の調整が出来なかったりと言った事例が起き、問題解決に悩まられたようです。
(UIPanelを更にUIPanelで分けて子供にするといった方法で回避)

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
LT
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

○Prefabで高速共同レベルデザイン(栗坂こなべさん:@kurisaka_konabe)
GGJにもプロジェクトリーダーとして参加された栗坂さんのレベルデザインについてのお話
http://www.slideshare.net/kurisaka_konabe/20130202-unitycreators-prefab

GGJに関しての説明はここではしませんが、とにかくスピードを要求される現場において
負荷の高いレベルデザインを少しでも効率よく作業を回すための豆知識。
システムが組まれなくてもPrefabを利用し予めルールを決めておけば、
オブジェクトの配置も可能!
サンプルのパッケージは公開されているので、
これからチームリーダーをされる方はスライドを要チェック

○Unityでネットワーク(コッペパンさん:@pepa_696)
NetWorkViewを使用した通信処理についての説明
http://www.slideshare.net/koppepan/unity-16450853

色々、メモったものの必要なことは全てスライドにあるので割愛
個人的には通信処理と言えば初めの一歩から面倒なイメージが付きまとうのですが
え、終わり?と思うほどスクリプトもあっさりとしてました。
もちろんいざ使いはじめると色々問題にぶち当たるかもしれませんが、
導入は非常に分かりやすいと思えます。

○NormalizeViewPortRectについて(ひもさん:@himojii)
CameraのパラメータであるNormalizeViewPortRectについての説明
描画位置と範囲を設定することができるので複数のカメラの描画が可能。
複数の窓を表示することでローカル対戦やワイプ等でお世話になるはず。
もちろんスクリプトからcamera.rectで動的に操作できる。
そして、ひもさんはこれを敵の視点に利用し作成されたゲームがこちら
http://www.kongregate.com/games/himojii/second-person-shooter-zato

単純な軌道なのに敵のバリエーションが変わるだけでこんなに新鮮な感覚を得れるとは…

○Unity制作にお勧めのサイト(くるくるさん)
くるくるさん自身が良く参照されるサイト・フォーラム4つの紹介。
Unity作成される方は言わずと知れたサイトでもありますし、
これから始める方も、行き詰まったら参考にされるとかなり捗ることでしょう。

強火で進め http://d.hatena.ne.jp/nakamura001/
テラシュールウェア http://terasur.blog.fc2.com/
Unityユーザー助け合い所 http://www.facebook.com/groups/unityuserj/
UnityAnswers http://answers.unity3d.com/index.html

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
まとめ
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
Unityの勉強会は以前にも有りましたが、Unityクリエイターズ勉強会としては初回且つ
初心者にも意識した発表となったので、多少突っ込んだ知識が必要といったことも無く
私には非常にいい塩梅でした。
少し触り始めたけど何しよう?って人にはシューティングを作ったり
シェーダーを弄ったり…なんてことが出来る!
と言う指針が出来る、いい切っかけになれたのではないかと思います。

ただ、walessさんの発表のようにUnityやその周りのプラグインだけで何とかなるどころか、
トラブルも起こりその対処をするには今までの知識や経験をフル動員して応対されました。
発表中、「Unityは魔法じゃない、実態は今までの技術と知識の詰め合わせ」と仰ったとおり
クリックや一つで箱が出せるからといって、
板ポリがどう書かれるかわからなくてもいいとかそんな事はなく、
制作において問題に直面したとき最後に物を言うのは、
今日までの散々使われてきた知識や経験であるのは
これからも変わらないと言うことを示されました。
Unity上でやれるからと満足せずそれがどのように実現されているか、
それを疎かにしてはいけないのです。

と盛大にブーメランを投げてみます。
もう帰ってきました。超痛いです。

*1:「強火で進め」さんのページに詳しい記事があるとのこと

第二回関西ソーシャルゲーム勉強会に参加しました

用意してから4ヶ月、ようやくこの存在を思い出したので活用してみましょう。

題名どおりこれに参加させていただきました。
http://atnd.org/events/32096

公演中ひたすら箇条書きでメモってここでまとめてみたものの、
そもそもネットワーク関連の知識にそれほど自信はないと言うか
理解できてないこともあったので間違ってる部分もあると思いますので、
ご遠慮なくご指摘しろください。

ソーシャルゲームにおけるAzureデザインパターン
(日本マイクロソフト:砂金信一郎さん)

Azureに関する詳細・強みであったり採用事例などを講演されていました。
正直、ここに来るまで名前ぐらいしか知らなかったのですが、ソーシャルゲームはもちろん、コンシューマ系の利用が多いことに自分の情報収集力の無さを痛感しました。
ドラゴンズドグマWebサービスにも使用されてるとか、多少なりとも遊んでたのにホントにコンシューマ系社員かよってとこです。
しかも利用方法としては非常に興味深いサービスです。
http://game.capcom.co.jp/DD/ja/top/
Webサービスの提供だけに限らず、3Dレンダリングを肩代わりさせるといったことにも利用されているようです。

またAzure上でVMを作成できるため、ウィザード形式の管理が可能。
OS選択も豊富で使いたければRailsアプリケーションも。
自社の.Netだけでなく幅広いユーザーをカバーしようとされているのが印象的でした。

〜宣伝〜

WindowsAzureに関する技術読み物が提供されています。
解説漫画もあるよ!そして有名なクラウディアさん(CV喜多村英梨)の二次創作用素材も公開中!

さぁ下記のページに行ってみよう!!
http://msdn.microsoft.com/ja-jp/windowsazure/default

〜宣伝終〜

ソーシャルゲーム開発パッケージ化とネイティブアプリの取り組みと開発ノウハウ
(サイバーエージェント:山田元基さん)

ソーシャルゲーム開発におけるライブラリ作成とWebアプリからネイティブアプリに移行する際のノウハウについて話されていました。

○ライブラリ開発に関して
昨今のソーシャルゲームにおける規制を鑑みてライブラリ化に踏み切られたそうです。特に頻度の高い部分(ランキング・ガチャ・ショップ。APIに於いてはいいねボタンや掲示板機能の実装等)から落としこむことで開発のスピードアップを測り、その他のゲームとの連携も容易に行えるよう開発中。実際これは非常に効果を上げられているようです。

○ネイティブアプリの取り組み
現状ランキングの上位のほとんどはネイティブアプリであることと、幾つかの利点を述べられてました。またクロスプラットフォーム用の開発フレームワークであるphonegapに関しても説明されてました。
使い方さえわかれば数十分で移植が可能という点は非常に強力ですが、ネイティブ機能やAppStoreの独自通貨を利用する場合は手間が掛かると仰ってました。
しかしWebアプリの移植だけならば使わない手はないかと。

Varnish導入による導入事例
(KLab:安井真伸さん)

すみません、自分が理解できてなかったため、情報がうまくまとめられずあまりメモができてません。
分かる範囲でまとめると、VCLと言う独自の言語で設定を記述してC言語に変換し.soファイルを生成し実際のサーバの設定を行うそうです。
もし記述に問題があった場合、コンパイルで弾くので間違えてアップするなんてことが無くなるのは利点でしょう。

PHPerなら絶対に知っておきたい3つのソーシャルゲーム開発テクニック
(KLab:黒井春人(@halt)さん)

apc_statデプロイ
メンテによりコードを更新するにはサービスを停止する必要がありますが、APCの設定apc_statがありこちらを0にすることでコードのキャッシュをサーバの再起動まで行わないようにできる。
これによってサービスへの影響を及ばさずに実態のコードを変更することが出来るといったテクニックですが、わかっていても勇気のいるテクではあります…

○Jenkinsの利用
言わずと知れたJenkins氏。やはり場所を問わず必要とされています。
導入のコストを掛けれるとことはもはや必須でしょう。

○お菓子駆動開発
テスト駆動・鹿駆動(?)に続く新しい駆動開発です。
導入コストは非常に安く、お菓子を買って配るだけです以上。

…真面目な話をするとお菓子を切っ掛けにコミュニケーションを取っていこうと言った話で、プロジェクト間の人間関係を円滑にすることが何よりの開発効率化を促進するのだと。
注意する点として、なるべく物量が多いお菓子を選ぶことです(気兼ねなくみんな取っていく
きのこやたけのこは戦争に発展する可能性がある

                                                                                                                            • -

ここからはLTですが、トラブルであまりメモが取れなかったので駆け足になります。

PHPフレームワーク Yii 〜豊富な機能で楽しく開発〜
(Biwacoderさん)
それなりに新しいが今注目されているPHPフレームワーク
フレームワークに比べてパフォーマンスが早い。
後、名前がWiiに似ている

iPhoneの位置情報でリアル連動を!
(KLab:越智修司さん(@ponpoko1968) )
特定の範囲に入るとユーザにお知らせをさせると言ったことが出来る。これはコールバックで強制的に呼び出すため常にアプリを起動する必要が無い。


○UnityでFlashアニメーションを再生してみた話
(Aiming:西村哲弥さん(@_tch) )
UnityでSWFを再生留守ため.flaファイルを回答してXMLで書かれているためそちらを解析して実装に移した。そしてそれが完成した頃、UniSWFが発表された…泣けた…

ソーシャルゲームにおけるGoogle Swiffyの使い方
(へんてこらぼ:平野慶之さん)
googleSwiffyはswfをHTML5に変換する。
Flash Light1.1ならキッチリ変換はされるがそれ以外は色々手を加える必要あり。メリットは手軽さスピーディさ。

                                                                                                                            • -

と、ここまでがひと通りの内容です。
お話されている内容がそれぞれバラエティに富んで興味深い内容が多かったです。また、即実践に移せる内容もあり、私も早速実践していきます。取り敢えず明日はハイチュウアソートを会社に持って行こうと思います。

とりあえず

はてなで準備してみました。

特に何を書きたいと思ったんじゃなく、ただなんとなく。
ネタができたら書こうと思うけど、基本放置すると思います。
ゲームやプログラミング的な話、後pillowsとか好きなんでその辺。
何かあって本人がこのブログを覚えてたらついったとかで呟くので、
どうぞよろしくお願いします。

6月の暑い日の事であった…