ゼロからゲーム
どこからでもゲームが完成するまでの、難しいが非常に興味深い方法についての投稿。
はじめに
私は長い間、あまり知られていない会社の支店の平均的な3Dアーティストの作品によってのみゲームビルディングに接続していましたが、気の抜けた自由は、その無限の自由と素晴らしい収入で、最終的にインディーズ開発の分野に参入しようとします。 少なくともそれは、多数の成功事例を読んだ後、独立したゲーム開発者が私にどのように見えたかです。
しかし、現実は常に私の熱意を冷やし、プログラミングスキル、プロジェクト管理、何かを販売する能力、少なくとも何かの開発経験の不足を思い出しました...実際、あなた自身のゲームで作業を始めるために必要なすべての不足を思い出しました。 おそらく、あるレベルでの3Dの所有権を除きます。
お金も緊張した状況だったので、「有名な$ 70kを開発に投入して投資し、完成したキャンディを手に入れるためのアウトプットで、ゲーマーがホットケーキとしてつかむ」という選択肢も、私にはアクセスできませんでした。
しかし、熱意の火室では、欲望は力と主力で膨らんでいました。 したがって、私は常に考えているゲームの多くのアイデアの1つを実装するために、開始することを決定しました(そして、必ず終了するようにしてください!)。 それで、ある晴れた朝、素晴らしいUnity3dツールがゆっくりとインストールされ、コンピューターに起動されました。数秒後、新しいプロジェクトの新しい空のウィンドウで私を期待していたのです。
次の数ヶ月は、私のために膨大な量の新しい情報を研究し、私の将来の発案について実験するという非常に興味深い雰囲気に費やされました。 このプロセスについてお話ししたいと思います。
コンセプトとプロトタイプの準備
私は大きくて複雑な何かに取り組みたくありませんでした。 シンプルなほど良い-それが私のモットーでした。 乗り越えられないタスクや、単独でやり直すことのできない大量の作業にこだわる計画はありませんでした。 アイデアはシンプルで比較的独創的でした。個々の正方形のセクションをスクロールできる迷路、配管工のゲームです。 迷路のセクションでタイルを回すと、プレイヤーは出口へのパスを構築します。
テクスチャに加えて各ピース(タイル)は、単純な一連の特性です。
- タイルには常に貫通通路があります
- タイルには、空白の外壁および/または1つの行き止まりがあります
- タイルの名前は、外壁を特徴付ける4つの数字で構成され、上から時計回りに始まります。 たとえば、 0212という名前は、タイルの上に空白の壁、下から1つの行き止まりの通路、および左右を接続する1つの貫通通路があることを示しています。
- 問題のタイルで移動した距離の接続を記述する4ビット(各側に1つ)。 たとえば、 0001は、プレイヤーが移動したパスが左側のタイルに隣接することを意味します
- 前の2つの数値の乗算によって取得された4つの整数の配列。 この配列の要素は、タイル内のどの通路が既に構築されたパスに結合するかを示します。
スケマティックタイルの例
図に示されているすべてのタイルがルールに準拠しているわけではないため、ゲームで使用したタイルの一部のみ
図に示されているすべてのタイルがルールに準拠しているわけではないため、ゲームで使用したタイルの一部のみ
ゲームでのタイルの見え方
ゲーム内の各タイルは、3つのクワッド(四角形)で構成され、上下に配置されています。 一番下の四角形は裏地を示しています-壁の基本的なテクスチャと移動していない暗いパス。 他の2つのクワッドには、渡されたタイルのセクションのテクスチャがあり、プレーヤーがパスを構築した場合に「含まれ」ます。 わかりやすくするために、写真を添付しています。
タイルとは
互いの上に重ねられ、直接等角図を持つクワッドは完成したタイルの写真を提供します
互いの上に重ねられ、直接等角図を持つクワッドは完成したタイルの写真を提供します
2次元配列である競技場は、これらのタイルで構成されています。 配列の最初の要素は常に迷路の始まりを表し(
[0, 0]
左下タイル)、最後は終わりです(
[width – 1, height - 1]
右上タイル)。
大ざっぱな運動場
黄色のタイルの名前は2210 、入力の配列0001
黄色のタイルの名前は2210 、入力の配列0001
最も興味深いのは、ユーザーが作成したパスを描画するアルゴリズムを考え出し、実装することでした。 ここでも私は哲学をしませんでした、そして、下のネタバレであなたは私がしたことを見ることができます。
簡素化された経路探索アルゴリズム
パンを追加して考えを抑える
作業用プロトタイプの仕上げと並行して、テクスチャの準備が本格化しました。 このステージは私にとって最も簡単で、特別なものではありません。 私は写真をできる限り目に見えるようにし、ピクセルごとに各ステップをチェックしようとしました。 カスタムフォントだけで苦しむ必要がありました。 事実、私は絶対にTTFを使用したくなく、BitMapフォントのみに集中していました。 アルファチャネルに透明度のあるテクスチャで実装されたフォントを使用するために、現在Unityには便利な無料ツールがありません。 そして、私は最初から最後まで金銭的な経費をゼロにすることを決めたので、各文字の描画やUVマッピングなど、最初から最後まで手でフォントを作成する必要がありました。 退屈な単調な作業に対する報酬は、完全に使用可能なきれいなフォントでした。 別の投稿で 、フォントの作成方法について詳しく説明しました。
フォント
元々、ゲームは3つの設定で実行され、それぞれにゲームプレイの元の機能があり、さまざまなモンスター、破壊用の武器などが含まれています。 特定の物質的価値を砂漠でさまよいながら旅行者の列から奪う可能性を含む。 しかし、作業の過程で、このような量のコンテンツだけを引き出すことはできないことがすぐに明らかになりました。 したがって、迷宮のさまざまなコーナーに散らばる宝物、宝箱/ドア、鍵の施錠された鍵に、自分を1つの「石」の設定に限定することが決定されました。 このようなシンプルなセットは、「よりシンプルで優れた」戦略に適合し、実装にほとんど労力を必要としません
ゲーム内のアイテム
プロセス完了
作品は議論の余地があり、メインの作品からプロジェクトに自由な時間しか割けないという事実にもかかわらず、かなり目立って終わりました。 ある種の進歩について考えるのはちょうどいいことでした。 数日間質問を勉強し、斜めにいくつかの本を読んだ後、私は再び落胆した。 議題については、まともな広告費がなければ面白い利益さえ考えられないという理解をtheい出しました。 プロセス全体を通して「開発コストをゼロに削減する」というルールを忠実に維持するのに役立ったお金の不足も今回は失敗しませんでした。 そして、広告にお金をかける必要はありませんでした。 ただし、Googleの販売者のアカウントとホスティングのあるドメインを購入するには、半額の$ 50を支払う必要がありました。
私にとってもう一つの不愉快な瞬間は、対応するリストに私の苦しんでいる国が不足しているため、Google Playでゲームを販売する方法がないというニュースでした(しかし、ゲーム内の広告を通じて何らかの形で収益化する機会が残っていました)。
しかし、ほとんど既成のプロジェクトに打ち込む意味はありませんでした。私は、単語を主観的に理解する上で、ゲームを仕上げて理想に近い状態になめることに力を注ぎました。 私がしたこと。 夢が実現したと自信を持って言える日はそう遠くありませんでした。
まとめ
そして今、開始から6か月後、ゲームの準備ができました! ゲーム構築の最も多様な側面を研究するために費やした数ヶ月にわたって、私は膨大な経験を積んで、多くの興味深く魅力的なことを
ゲームの人気について話すのはまだ早すぎますし、ゲーマーにとっても興味があります。 すべてがうまくいけば、これに別の投稿を捧げます。
あとがき
Apple開発者アカウントをスクレイピングできる場合は、ゲームをiOSに移植する計画があります。 強力なUnity3dのおかげで、ポートに問題はないはずです。 また、新しい機能の段階的な追加に対処し、ゲーム内販売を通じて収益化の土壌を調査します(間違っていなければ、AppStoreを使用してウクライナの居住者向けの通貨取引を行うことができます)、このプロジェクトに関する他の多くのアイデアの実装、およびまだ登場していない比較的新しいもの光。