simplestarの技術ブログ

目的を書いて、思想と試行、結果と考察、そして具体的な手段を記録します。

2019-11-01から1ヶ月間の記事一覧

CubeWalk:R Ctrl でキューブ、SideA, SideB と配置形状が切り替わる

概要 構想に近づけるため、最初のステップを踏みます simplestar-tech.hatenablog.com 右クリックすると無限に 2 x 2 のプリズムを配置する現在 これを右クリック中 R Ctrl キーを押すと、プリズム A, プリズム B と切り替わり その時に右クリックを終了する…

CubeWalk:インベントリシステムの構想

概要 長いことクライアントで閉じていた処理がサーバーで行われるようになりました。 simplestar-tech.hatenablog.comふわふわしているアイテム操作のイメージを少しずつ固めていく工程を記録してみます。 構想というやつです。最後に具体的なアクションリス…

PlayFab:キューブ破壊後にキューブデータをインベントリへ格納

キューブ保存の法則 世界のデータは減りも増えもしない(神様の創造は例外) キューブを破壊しようとしたら、その破壊をバイナリキャッシュサーバーが判定し 成功したならインベントリにそのキューブの情報が格納される仕組みを作ります。 インベントリの操…

CubeWalk:世界の境界の向こう側は無

世界データは最大 67MB まずは事実から バイナリキャッシュサーバーに 16 x 16 x 16 x 16 x 16 x 16 x 4 byte のデータを格納しています。 一時間おきに PlayFab からパスワード付きのリクエストを https で送信して PlayFab の CDN に gzip 圧縮データをア…

PlayFab:ログインタイミングを気にせずプログラミングする術~ファイル編

コンテキスト PlayFab から世界データ拾ってきたいなぁ でもログインまだだった 失敗なんてことが絶対に起こらないようなPlayFab から世界データ取得を成功させる仕組みを考えたい もう作ってた! simplestar-tech.hatenablog.comしばらく Unity から離れて…

CubeWalk:水平な世界データから始める

はじめに PlayFab ログイン成功後、CDNから世界圧縮データを取得し Unity で展開してから、それぞれのチャンク配列を確保し、データを詰めていく 詰め終わったら、ゲームシーンを開始する世界圧縮データを最初は作らなければならない 世界データは16,777,216…

PlayFab:golangサーバーからCDNのFileContentにファイルをアップロード

概要 やりたいことは半年前から変わらず、キューブの世界のデータをバイナリキャッシュサーバーに置き PlayFab ログインユーザーが Unity クライアントから CDN 経由で最新の世界データを引いてくることです。 できれば圧縮したファイルをユーザーに届けたい…

AWS:golangバイナリキャッシュサーバーがS3にバックアップを保存&復帰

前提 http リクエストで int データを受け渡すバイナリキャッシュサーバーが完成しています。前回の作業記録をなぞるだけ simplestar-tech.hatenablog.com 大きな目的 PlayFab の CloudScripts から int or byte x 4 データを受け渡すバイナリキャッシュサー…

AWS:golang Web Server を binary cache DB とする2/2

前回までのあらすじ simplestar-tech.hatenablog.com Amazon にクレジットカードを登録してボタンをいくつか押すと、世界に向けて golang のサーバーが TLS の秘匿通信で公開され ログ拡張でアプリの動作の内容がわかるところまで、初心者でも Web サーバー…

AWS:golang Web Server を binary cache DB とする1/2

go 言語で巨大な int 配列の確保と利用 ゲームではキューブは 4byte の情報構造体で値は int 32bit の配列で格納したいと思っています。 go でも C++ のように int 配列作って、ポインタで保持しておけばいつでもランダムアクセスできるんですよね? をコー…

AWS:WebサーバーをGoLangで

前書き ゲームはローカルでブロックを破壊・配置できる基本の枠組みが整いつつあります。 ここで破壊したときに世界からブロックの情報を破棄してプレイヤーのインベントリに追加しなければならず 配置したときにインベントリから消して、世界に配置しなけれ…