uka.apple のすべての投稿

パクリアプリ開発日記 57,58日目 ゲームエンジンを使わない覚悟

★☆★ 今回の作業 ★☆★

今回も、Blenderの3Dデータをテクスチャやアニメーションも含めてどうやってアプリに取り込もうか考えていました。

普通、iOSで3Dゲームを作る場合は、SceneKitを使うのが主流みたいです。

でも今回はなるべくたくさんの立方体をスムーズに表示したいし、扱うデータが立方体ばかりの予定なので、フレームワーク的なものは使わないことします。

ただし、その代わりとして本来はフレームワークが担ってくれる膨大な処理を自分で作らなければならないというデメリットがあるので、なかなか踏ん切りがつかずに2日間くらい決断に悩んでいたわけです。決してサボっていたのではありません。

心の中ではフレームワークは使わないことは決定していました。なるべく基礎から作るという作業は楽しいものです。

ただし、その代わりとして本来はフレームワークが担ってくれる膨大な処理を自分で作らなければならないというデメリットがあるので、なかなか踏ん切りがつかずに2日間くらい決断に悩んでいたわけです。決してサボっていたのではありません。

★☆★ 次回の作業 ★☆★

Steveくんデータの手動取り込み

パクリアプリ開発日記 56日目 3Dオブジェクトの取り込み検討

——— 広告 この広告は30日以上更新がないわけではなく、ブログ主が自分のアプリを宣伝するために、頑張って書いています ———

テクスチャを作るのに、自作のDotterを使いました。好評発売中です。透過png作成に特化したドットエディタです。作った画像をメールですぐに送れるよ!

——— 広告 ここまで ———

★☆★ 今回の作業 ★☆★

今回は、作った3Dデータを、テクスチャやアニメーションも含めてどうやってアプリに取り込もうか考えていました。

blenderで出力したデータ形式を取り込むC++のSDKが有るので、それを使えば行けそうですが、取り込んだ後、アプリ用にデータの調整が必要な気がしています。

それならば、座標値だけコピペで持ってきた方が手っ取り早い気がしています。

もうちょっと検討してみます。

★☆★ 次回の作業 ★☆★

3Dデータの取り込み方法検討

パクリアプリ開発日記 54,55日目 Steveくんテクスチャ

——— 広告 この広告は30日以上更新がないわけではなく、ブログ主が自分のアプリを宣伝するために、はりきって書いています ———

テクスチャを作るのに、自作のDotterを使いました。好評発売中です。透過png作成に特化したドットエディタです。作った画像をメールですぐに送れるよ!

——— 広告 ここまで ———

★☆★ 今回の作業 ★☆★

前回、Steveくんの3dモデルを作ったので、今回はそのモデルに貼るテクスチャを作りました。

最初の青いのは、鎧をまとった感じにしたかったんですが、何故か宅急便のお兄さんが出来上がりました。

で、2つ目は、赤い服を着ている女の人を作りました。

★☆★ 次回の作業 ★☆★

テクスチャを貼る。

パクリアプリ開発日記 51日目 3Dモデリングソフト調査

マイ◯ラのSteveくんレベルの3Dオブジェクトをモデリングするための3Dソフトを調査してました。

どのソフトも高機能すぎてびっくりしました。

まずMAYAを調査しました。世界中で使われている総合3D制作ソフトです。機能がありすぎて1人で全ての操作を覚えることが出来ないと言われているそうです。

いや、マイ◯ラのSteveくんレベルの3Dオブジェクト作るだけなんですけど。高機能すぎるんですけど。

次に3DS MAXを調査しました。MAYAのライバルソフトらしいです。豊富なプラグインが便利だそうです。

いや、頭が四角い箱型で、体も箱型で、足や手も箱型の、マイ◯ラのSteveくん作るんですけど。高機能すぎるんですけど。

その他、以下のソフトを調べました。

Cinema 4D、Houdini、MODO、Blender、LightWave3D(7持ってた)、ZBrush、3D-Coat、Mari、Substance

無料のBlenderで十分です。マイ◯ラのSteveくん作るのですから。

★☆★ 次回の作業 ★☆★

Blenderでマイ◯ラのSteveくんを作る。

パクリアプリ開発日記 50日目 3Dモデリングソフト調査

このパクリアプリ開発日記ですが、最近は私の開発過程の単なるメモ書きと化し、はたから見たらよく意味がわからないブログになっている気がしてます。

何かのキーワードで引っかかってたまたま見に来ていただいている方に対して何か申し訳ない気持ちでいっぱいです・・・

・・・が、この日記の目的は私自身がサボらないように毎日作業した内容を記録することなので良しとします。良いのか?

あとは、同じようにアプリ作っている方に対して、少しでも共感していただける事があれば良しとします。あれ?共感してもらえるような記述なんかあったっけ・・・?

★☆★ 本日の作業 ★☆★

大切なことを忘れていました。主人公です。マイ◯ラでいうSteveくんです。単純な形ですが、人をモデリングしてアニメーションして3D空間に配置しなければなりません。

クラ◯ラ的視点から考えると、主人公がいなくても成り立つような気もしますが、フィールドがマ◯クラである限り、フィーリング的に主人公が欲しいです。

あくまで感覚的なものなので根拠はありません。プロトタイプが出来て試遊しているうちにやっぱいらねーやとなるかもしれませんが、とりあえずSteveくんが作りたいので作ろうと思います。仕事じゃこうはいきませんね。仕事じゃなくて良かった。

複雑な形ではないので、手作業でゴリゴリ3Dデータを数値で打ち込んで作ってもなんとかなると思うのですが、今後、各種防衛施設なども同じようにゴリゴリ作りたくないので、簡単に3Dモデリングできて頂点データなどを吐き出してくれるナイスなツールがないか、今日は探していました。

★☆★ 次回の作業 ★☆★

見つからなかったので、明日も良さげなものがないか探します。

パクリアプリ開発日記 49日目 攻撃ユニット

攻撃ユニットを考える前に、まずはユニットを格納する施設の仕様を決めます。

・AI庫

攻撃ユニットは、AIで動く機械的な兵器で、人ではありません。そのため名称はアーミーキャンプではありません。やった!パクってない!!

AGC Lv 1 2 3 4 5 6 7 8 9 10 11
設置上限 1 1 2 2 3 3 4 4 4 4 4
サイズ
4x4x2
Lv 収容数 HP 必要マナ 建造時間 必要AGC Lv
1 20 400 250 5分 1
2 30 500 2,500 1時間 2
3 35 600 10,000 3時間 3
4 40 700 100,000 8時間 4
5 45 800 250,000 1日 5
6 50 1,000 750,000 3日 6
7 55 1,200 2,250,000 5日 9
8 60 1,400 6,750,000 10日 10

次に、武器製造施設です。

・AI舎

短い名前にしたいので、兵舎を元にAI舎の名称にしました。大丈夫かな?意味わかるかな?・・・

AGC Lv 1 2 3 4 5 6 7 8 9 10 11
設置上限 1 2 2 3 3 3 4 4 4 4 4
ブースト費用(ルピー) ブースト時間 サイズ
10 2時間 2x2x2
Lv 収容数 HP 必要マナ 建造時間 必要AGC Lv 解禁兵器
1 20 250 200 1分 1 ブレーカー
2 25 290 1,000 15分 1 レーザラー
3 30 330 2,500 2時間 1 シーカー
4 35 370 5,000 4時間 2 シールダー
5 40 410 10,000 10時間 3 ウォールブレイカー
6 45 450 80,000 16時間 4 フライヤー
7 50 490 240,000 1日 5 ?
8 55 530 700,000 2日 6 ?
9 60 570 1,500,000 4日 7 ?
10 75 610 2,000,000 6日 8 ?

そしていよいよ攻撃ユニットです。

・ブレーカー

近くのものを手当たり次第に破壊します。AIですが頭の中は空っぽです。

尚、攻撃ユニットは全て簡易的な反重力装置を保持し、ブロックの横でも下でも自由にひっついて歩き回ります。

優先攻撃目標 攻撃可能対象 ダメージの種類 死亡時のダメージ 消費スロット 生成時間 移動速度 攻撃速度 必要なAI舎Lv 射程距離
無差別 地上ユニット 単体攻撃 なし 1 20秒 16 / 秒 1秒 (1回あたり) 1 0.4m
Lv ダメージ
(1秒)
HP 作成コスト(マナ) 研究コスト(マナ) ラボLv 研究時間
1 8 45 25
2 11 54 40 50,000 1 6時間
3 14 65 60 150,000 3 1日
4 18 78 100 500,000 5 3日
5 23 95 150 1,500,000 6 5日
6 26 110 200 4,500,000 7 10日
7 30 125 250 6,000,000 8 14日

・レーザラー

レーザー砲を持ち歩く恐ろしいAIです。

優先攻撃目標 攻撃可能対象 ダメージの種類 死亡時のダメージ 消費スロット 生成時間 移動速度 攻撃速度 必要なAI舎Lv 射程距離
無差別 地上&飛行ユニット 単体攻撃 なし 1 25秒 24 / 秒 1秒 (1回あたり) 2 3.5m
Lv ダメージ
(1秒)
HP 作成コスト(マナ) 研究コスト(マナ) ラボLv 研究時間
1 7 20 50
2 9 23 80 50,000 1 12時間
3 12 28 120 250,000 3 2日
4 16 33 200 750,000 5 3日
5 20 40 300 2,250,000 6 5日
6 22 44 400 6,000,000 7 10日
7 25 48 500 7,500,000 8 14日

・シーカー

クリスタルやマナのお宝しか頭にありません。素早いので毒沼や電磁沼の影響を受けません。対資源施設へのダメージが2倍になります。

優先攻撃目標 攻撃可能対象 ダメージの種類 死亡時のダメージ 消費スロット 生成時間 移動速度 攻撃速度 必要な兵舎Lv 射程距離
資源設備(ダメージ×2) 地上ユニット 単体攻撃 なし 1 30秒 32 / 秒 1秒 (1回あたり) 3 0.4m
Lv ダメージ
(1秒)
HP 作成コスト(マナ) 研究コスト(マナ) ラボLv 研究時間
1 11 25 25
2 14 30 40 50,000 1 12時間
3 19 36 60 250,000 3 2日
4 24 43 80 750,000 5 3日
5 32 52 100 2,250,000 6 5日
6 42 68 150 4,500,000 7 8日
7 52 74 200 6,750,000 8 10日

・シールダー

とっても大きな盾を持ちながら移動します。遅いですがとっても耐久力があります。

優先攻撃目標 攻撃可能対象 ダメージの種類 死亡時のダメージ 消費スロット 生成時間 移動速度 攻撃速度 必要な兵舎Lv 射程距離
防衛設備 地上ユニット 単体攻撃 なし 5 2分 12 / 秒 2秒 (1回あたり) 4 1m
Lv ダメージ
(1秒)
ダメージ
(1撃)
HP 作成コスト(マナ) 研究コスト(マナ) ラボLv 研究時間
1 11 22 300 500
2 14 28 360 1,000 100,000 2 1日
3 19 38 430 1,500 250,000 4 2日
4 24 48 520 2,000 750,000 5 3日
5 31 62 670 2,500 2,250,000 6 5日
6 43 86 940 3,000 6,000,000 7 10日
7 50 100 1,100 3,500 7,000,000 8 14日

★☆★ 次回の作業 ★☆★

まだまだ決めきれていない仕様は多々ありますが、まずはプロトタイプを作って試遊し、調整を行なっていく予定です。

パクリアプリ開発日記 48日目 防衛施設

今回は防衛施設の仕様を決めました。

例によって各数値は仮決めで、試験プレイ後に調整予定です。

・石つぶて

そこらへんに転がっている石を投げるお手軽兵器です。

射程は10mです。ただし、途中でブロックに当たると届きません。

尚、この世界のブロックは1辺が1mです。

AGC Lv 1 2 3 4 5 6 7 8 9 10
設置上限 1 1 2 2 3 3 5 5 5 6
射程距離 攻撃速度 ダメージの種類 攻撃目標 優先攻撃目標 サイズ
10m 0.8秒 / 1撃 単体攻撃 地上ユニット 無差別 2x2x1
Lv ダメージ
(1秒)
ダメージ
(1撃)
HP 必要クリスタル 建造
時間
必要AGC Lv
1 9 7 420 250 1分 1
2 11 9 470 1,000 15分 1
3 15 12 520 4,000 45分 2
4 19 15 570 16,000 2時間 3
5 25 20 620 50,000 6時間 4
6 31 25 670 100,000 12時間 5
7 40 32 730 200,000 1日 6
8 48 38 800 400,000 2日 7
9 56 45 880 800,000 3日 8
10 65 52 960 1,600,000 4日 8
11 80 64 1,060 3,200,000 5日 9
12 95 76 1,160 6,400,000 6日 10
13 110 88 1,260 7,500,000 7日 10
14 120 96 1,380 8,500,000 8日 11

・レーザービーム

石つぶてからいきなりグレードアップ。でもなぜか射程は短いです。

球状に6m届きます。ただし、真横よりも下は狙えません。(半球状の範囲に届く)

途中にブロックがあっても貫通するため、石つぶてより射程が短いのです。

レーザービームよりも1段以上下の位置ならば絶対に狙われません。

AGC Lv 1 2 3 4 5 6 7 8 9 10
設置上限 0 1 1 2 3 3 4 5 6 6
射程距離 攻撃速度 ダメージの種類 攻撃目標 優先攻撃目標 サイズ
6m 1秒 / 1撃 単体攻撃 地上&飛行ユニット 無差別 2x2x1
Lv ダメージ
(1秒)
HP 必要クリスタル 建造
時間
必要AGC Lv
1 11 380 1,000 15分 2
2 15 420 2,000 30分 2
3 19 460 5,000 45分 3
4 25 500 20,000 4時間 4
5 30 540 80,000 12時間 5
6 35 580 180,000 1日 5
7 42 620 360,000 2日 6
8 48 660 720,000 3日 7
9 56 705 1,500,000 4日 8
10 65 750 2,500,000 5日 8
11 75 805 4,500,000 6日 9
12 86 870 6,500,000 7日 10
13 98 930 7,500,000 8日 10

・プラズマ砲

プラズマクラスターと違ってちゃんと効果があります。

大勢の敵に、一度にダメージを与えます。近すぎると攻撃出来ません。

途中にブロックがあっても貫通します。

ただし、真横よりも下は狙えません。(半球状の範囲に届く)

ACG Lv 1 2 3 4 5 6 7 8 9 10
設置上限 0 0 1 1 1 2 3 4 4 4
射程距離 攻撃速度 ダメージの種類 攻撃目標 優先攻撃目標 サイズ
4~11m 5秒 / 1撃 範囲攻撃 地上ユニット 無差別 3x3x1
Lv ダメージ
(1秒)
ダメージ
(1撃)
HP 必要クリスタル 建造
時間
必要AGC Lv
1 4 20 400 8,000 8時間 3
2 5 25 450 32,000 12時間 4
3 6 30 500 120,000 1日 5
4 7 35 550 400,000 2日 6
5 8 40 600 800,000 4日 7
6 9 45 650 1,600,000 5日 8
7 11 55 700 3,200,000 7日 9
8 13 65 750 6,400,000 10日 10
9 15 75 800 9,000,000 12日 11

・毒沼

ブロックを毒化して、通過したユニットにダメージを与えます。

AGC Lv 1 2 3 4 5 6 7 8 9 10
設置上限 0 25 50 75 100 125 175 225 250 250
Lv ダメージ
(1秒)
ダメージ
(1撃)
HP 必要クリスタル 必要マナ 建造
時間
必要AGC Lv
1 2 300 200 0秒 2
2 3 500 1,000 0秒 2
3 4 700 5,000 0秒 3
4 5 900 10,000 0秒 4
5 6 1,400 30,000 0秒 5
6 7 2,000 75,000 0秒 6
7 10 2,500 200,000 0秒 7
8 15 3,000 500,000 0秒 8
9 20 4,000 1,000,000 1,000,000 0秒 9
10 25 5,500 3,000,000 3,000,000 0秒 9
11 30 7,000 4,000,000 4,000,000 0秒 10

・磁場沼

強力な磁場で、通過するユニットを足止めします。

AGC LV 1 2 3 4 5 6 7 8 9 10
設置上限 0 25 50 75 100 125 175 225 250 250
LV 足止め時間 ダメージ
(1撃)
HP 必要クリスタル 必要マナ 建造
時間
必要AGC LV
1 2 300 200 0秒 2
2 3 500 1,000 0秒 2
3 4 700 5,000 0秒 3
4 5 900 10,000 0秒 4
5 6 1,400 30,000 0秒 5
6 7 2,000 75,000 0秒 6
7 10 2,500 200,000 0秒 7
8 12 3,000 500,000 0秒 8
9 15 4,000 1,000,000 1,000,000 0秒 9
10 20 5,500 3,000,000 3,000,000 0秒 9
11 25 7,000 4,000,000 4,000,000 0秒 10

とりあえずこのくらいで。

将来的にはもっと追加する予定です。

★☆★ 次回の作業 ★☆★

攻撃ユニットのシステム詳細を考える。

パクリアプリ開発日記 47日目 対戦の仕様

今回はパクってないです!!パクってないよね?パクってないんだろうか。

今日は、対戦の基本仕様についてまとめます。

プレーヤーは、自分と同じく空中都市を構築している他プレーヤーの空中都市を襲撃することが出来ます。

襲撃することによって、クリスタルやマナを獲得可能です。

また、襲撃に成功するとトロフィーがもらえ、トロフィーの数に応じて自分のランキングが上がります。

ランキングが上がることのメリットは別の機会に説明します。

襲撃の成功条件は、以下2つのうちいずれかを満たすことです。

  • 反重力結晶を破壊する
  • 合計ダメージが70%をこえる

★☆★ 次回の作業 ★☆★

防御施設などのシステム詳細を考える。