2023年9月21日木曜日

エンドレスランナー「ギルガメランナー」の開発日記#4

 


おはこんばんちわ!ギルガメです!

引き続き「ギルガメランナー」の開発を進めていきます!

今回は全体的にUIを追加していきました。

追加したUIは下記になります。
  • タイトルUI
  • PauseUI
  • ステージセレクトUI
  • ゲームオーバーUI

各UIはちょっと適当ですが下記のようにしました。


タイトルUI


ステージセレクトUI

Pause UI

ゲームオーバーUI

上記のUIを追加しました。一気にゲームらしさが出ます。嬉しい・・!!

UIの追加で難しいことは特にありませんでした。Sceneの移行を使いやすくするためにスクリプトで追加しています。シンプルなので難しくはありませんが、ステージごとにボタンを画像で表示するとまた雰囲気が変わりそうですが、また後ほどUIを変更していきたいです。

またゲーム要素の追加しています。
  • ステージ2の追加
  • 敵の追加
  • フィールドの追加
  • ポイントとタイムの保存と表示
上記の追加しました。

ステージ2の追加は、前回のステージで使い回しをできるように作っているので、フィールドのプレハブ、敵のプレハブなどを用意するだけで簡単にステージを作れます。今回はステージセレクトのUIを追加したのでステージも追加しました。雰囲気は夜のエンドレスランと夜のステージなのでゴーストを追加しました。

ポイントとタイムの保存と表示は簡単にPlayerPrefsを使って保存しています。
ステージセレクトUIの追加したのでそちらでステージ毎のタイムとポイントを確認できるようにしました。

ぜひ触って見てください!

Version 0.4


次はスコアなどを他のプレイヤーと競えるようにサーバーにスコアなどを保存してランキングパネルを追加してみようかな。

最後まで読んでいただきありがとうございます!
これからもギルガメを応援していただけるよ嬉しいです!

2023年9月19日火曜日

Unity3DとUnreal Engine 5のどちらが良いか比較

Unity3DとUnreal Engine 5のどちらが良いか比較

• はじめに

• Unity3DとUnreal Engine 5とは

• 使いやすさ

• グラフィックス

• 機能と機能拡張

• パフォーマンス

• アセットストア

• 結論


はじめに

はじめまして!今日はUnity3DとUnreal Engine 5の比較についてお話ししましょう。両方のゲームエンジンは非常に人気がありますが、どちらが良いのでしょうか?興味がある方にとっては重要なテーマですよね。


Unity3DとUnreal Engine 5は、ゲーム開発において非常に強力なツールです。どちらも独自の機能や特徴を持っており、数多くの成功作品を生み出しています。しかし、それぞれに違いもありますので、一つ一つ見ていきましょう。


まずはUnity3Dの概要から始めましょう。Unity3Dは非常に使いやすいインターフェースを持っており、初心者でも比較的簡単にゲーム開発を始めることができます。また、コミュニティも非常に広く活発であり、様々な情報やサポートを得ることができます。


一方、Unreal Engine 5の概要です。Unreal Engine 5は非常に強力なグラフィックスや物理エンジンを持っており、リアルなゲーム体験を実現することができます。また、インベントリシステムやAI機能など、幅広い機能が用意されています。


どちらが使いやすいかという点では、Unity3Dが初心者にとっては優れているかもしれません。しかし、Unreal Engine 5のグラフィックスや物理エンジンの強力さを考えると、それ以上の努力をする価値があるかもしれません。


さて、使いやすさについてはこんな感じです。次はグラフィックスについて見ていきましょう。それではお楽しみに!


Unity3DとUnreal Engine 5とは


Unity3DとUnreal Engine 5、どちらがいいのか悩んでいる人も多いはずです。それぞれのゲームエンジンの特徴や性能を比較して、最適な選択肢を見つけてみましょう。


Unity3Dの概要

まずはじめに、Unity3Dは非常にポピュラーなゲームエンジンです。多くのデベロッパーがUnity3Dを使ってゲームを作っており、その人気の理由は何でしょうか?まずはその使いやすさです。Unity3Dは初心者でも比較的簡単に学べるため、プログラミングの経験がなくてもゲームを作ることができます。


また、Unity3Dには豊富なアセットストアがあります。ここでは、様々なアセットやリソースをダウンロードして使用することができます。これにより、素材作りに時間をかけずにゲーム制作に集中することができます。


Unreal Engine 5の概要

次にUnreal Engine 5です。Unreal Engine 5は、高品質なグラフィックスとパワフルな機能で知られています。映画のようなリアルなグラフィックスを再現することができるため、リアリティのあるゲームを作りたい場合には最適です。


また、Unreal Engine 5は豊富な機能と機能拡張があります。プロジェクトに必要なツールや機能が揃っているため、作業効率を高めることができます。さらに、Unreal Engine 5は大規模なプロジェクトにも対応しており、複数の開発者が同時に作業することができます。


どちらを選ぶべきか?

さて、Unity3DとUnreal Engine 5のどちらを選ぶべきか迷っている方には、以下のポイントを考慮することをおすすめします。


使いやすさ:Unity3Dは初心者に優しいですが、Unreal Engine 5はより高度な機能を提供しています。プログラミングの経験や技術力によって選ぶべきエンジンは異なるかもしれません。


グラフィックス:Unreal Engine 5はリアルなグラフィックスを実現できるため、映画のような演出をしたい場合にはおすすめです。一方、Unity3Dはカートゥーン風やシンプルなグラフィックスを好む人に向いています。


機能と機能拡張:Unreal Engine 5は機能が豊富であり、大規模なプロジェクトにも対応しています。一方、Unity3Dは初心者でも使いやすく、シンプルなプロジェクトに最適です。


パフォーマンス:Unity3Dは軽量なエンジンであり、様々なプラットフォームで動作することができます。Unreal Engine 5はグラフィックスに重点を置いているため、高スペックなPCやコンソールでの利用がおすすめです。


アセットストア:Unity3Dのアセットストアは非常に充実しており、必要な素材やリソースを手に入れやすいです。Unreal Engine 5のアセットストアも豊富ではありますが、Unity3Dほど幅広い品揃えはありません。


以上のポイントを考慮して、自分のプロジェクトや目標に合ったゲームエンジンを選ぶことが重要です。どちらを選んでも素晴らしいゲームを作ることができるので、自分の好みや目的に合ったエンジンを選んでみてください。


さて、このUnity3DとUnreal Engine 5の比較は、いかがでしたか?両方のエンジンにはそれぞれ利点と欠点がありますが、あなたのニーズに合った方を選ぶことが大切です。どちらのエンジンを選んでも、あなたのクリエイティビティで素晴らしいゲームを作ることができるはずです。 Happy coding and gaming!


使いやすさ

Unity3DとUnreal Engine 5のどちらが良いか比較


はじめに:

Unity3DとUnreal Engine 5のどちらを選ぶべきか、迷っている人も多いことでしょう。どちらを選ぶかは、あなたの個人的な好みやプロジェクトのニーズによって異なります。そこで、この比較記事では、両方のエンジンの使いやすさ、グラフィックス、機能と機能拡張、パフォーマンス、アセットストアなどの側面を検討してみましょう。


Unity3DとUnreal Engine 5とは:

まずはじめに、Unity3DとUnreal Engine 5の概要を知っておきましょう。Unity3Dは、使いやすくて初心者にもおすすめのゲームエンジンです。一方、Unreal Engine 5は、高度なグラフィックスとパフォーマンスを提供することで知られています。どちらも有名なエンジンであり、大規模なプロジェクトにも対応しています。


使いやすさ:

さて、最初の比較項目は「使いやすさ」です。Unity3Dはシンプルなインターフェースと使いやすさが売りです。初めてのプロジェクトには最適で、ドラッグ&ドロップの操作や直感的な編集機能があるため、プログラミングの経験がない人でも簡単に学ぶことができます。


一方、Unreal Engine 5は少し学習コストがかかるかもしれません。複雑なツールセットやプログラミング言語(BlueprintやC++)を使いますが、その分高度なカスタマイズやパフォーマンスが可能です。プログラマーやテクニカルな人にとっては魅力的かもしれませんが、初心者には少しハードルが高いかもしれません。


両エンジンの使いやすさでは、Unity3Dが初心者向けに優れていると言えるでしょう。誰でも簡単に使い始めることができるので、手軽にゲーム開発を始めたい人には最適です。一方、Unreal Engine 5はより高度な機能を求めるプロジェクトに向いていて、技術的なチャレンジを求める人にはピッタリです。


グラフィックス

グラフィックスはUnity3DとUnreal Engine 5の比較で重要なポイントです。まずはUnity3Dのグラフィックスから始めましょう。


Unity3Dのグラフィックスは非常に強力であり、美しいビジュアルを作り出すことができます。リアルな照明効果や質感表現、そして多様なエフェクトなど、開発者が求めるさまざまな要素を提供しています。また、Unity3Dはシェーダーラボを使用して独自のシェーダープログラミングも行えます。これにより、より高度なグラフィックス表現を実現することができます。


一方、Unreal Engine 5のグラフィックスも驚くべきものです。この新バージョンでは、Naniteと呼ばれる技術が導入され、ゲーム内のオブジェクトや環境の詳細な表現が可能になりました。また、光の反射や影、粒子エフェクトなど、写実的な表現も容易に実現できます。Unreal Engine 5は、映画やアニメのようなクオリティのグラフィックスを実現するために設計されています。


どちらのエンジンも優れたグラフィックスを提供していますが、その違いは開発者のニーズによります。Unity3Dは柔軟性があり、幅広いプラットフォームに対応しています。また、開発プロセスが迅速であり、リソース効率も優れています。Unreal Engine 5は、よりリアルなビジュアルを求める場合に特に優れていますが、コストやパフォーマンスの点で注意が必要です。


要するに、Unity3DとUnreal Engine 5のどちらが優れているかは、開発者のニーズと制約によります。どちらのエンジンでも素晴らしいグラフィックスが作れるし、どちらも利点があります。開発者は自分のプロジェクトのニーズに合わせて最適なエンジンを選択すべきです。


さぁ、次は機能と機能拡張の比較です。楽しみにしていてくださいね!


機能と機能拡張

Unity3Dの機能と機能拡張は非常に多岐にわたります。まず、Unity3Dはマルチプラットフォーム対応の開発に優れています。この機能により、あなたは同じコードを使用して、さまざまなデバイスやプラットフォーム向けにゲームやアプリを開発できます。


さらに、Unity3Dは強力なエディタを提供しています。エディタは、ビジュアルに直感的な方法でシーンを作成し、オブジェクトやエフェクトを配置することができます。また、スクリプトを使ってゲームのロジックを実装することもできます。エディタの柔軟性は、開発者が自分のビジョンを実現するために必要なツールを提供しています。


また、Unity3Dは豊富なアセットストアを持っています。ここでは、さまざまなアセットパッケージやプラグインを見つけることができます。これにより、開発者は再利用可能なコンテンツや機能を容易に追加できます。アセットストアは、開発者が時間と労力を節約し、効果的な開発を行うための重要な要素です。


一方、Unreal Engine 5の機能と機能拡張も非常に印象的です。これには、リアルなグラフィックスと物理シミュレーションが含まれます。Unreal Engine 5は、フォトリアルなビジュアルを作成するための高度なツールとエフェクトを提供します。また、物理シミュレーションにより、リアルな振る舞いや衝突を実現することができます。


さらに、Unreal Engine 5はビジュアルスクリプティングツールであるBlueprintを提供しています。Blueprintは、プログラミングの知識がない開発者でもゲームのロジックを構築できるようにするものです。これにより、プログラミングに自信のない人でもゲームを開発することができます。


また、Unreal Engine 5はハイエンドのパフォーマンスを提供します。強力な最適化機能により、大規模なプロジェクトでもスムーズに動作します。また、Unreal Engine 5はVRおよびARのサポートも提供しており、新たな領域への進出を支援します。


さて、どちらが優れているかはあなた次第です。Unity3Dは使いやすさと柔軟性を提供し、アセットストアの利便性もあります。一方、Unreal Engine 5はリアルなグラフィックスや物理シミュレーション、ハイエンドのパフォーマンスなどを提供します。


あなたが開発するプロジェクトの要件と優先事項に基づいて、最適な選択肢を選んでください。どちらを選んでも、素晴らしい結果が得られることでしょう。それでは、開発の成功をお祈りしています!


パフォーマンス

えーと、パフォーマンスですね。ユニティちゃん(Unity3D)とアンリアルちゃん(Unreal Engine 5)の力比べです!いいですね、ちょっと両者のパフォーマンスを比較してみましょう!


ユニティちゃんは持ち歩きもできるし、何食べたいかも選べる優れもの!マルチプラットフォーム対応で、どんなデバイスでも動かせるというところがすごいですよね。それにクロスプラットフォームでの開発も可能で、面倒な移植作業が不要ってのもありがたいです。パフォーマンスは結構良いですが、他のグラフィックエンジンと比べると若干物足りなさを感じるかもしれませんね。


それに対して、アンリアルちゃんは専用機特化型の美女!リアルなグラフィックスと高いパフォーマンスがウリです。まるで映画のような臨場感を演出してくれるんですよ。ただ、専用機に特化しているせいか、他のデバイスへの移植がやや面倒かもしれませんね。でもパフォーマンスはかなり優れているといえます。


まとめると、ユニティちゃんはマルチプラットフォーム対応で手軽ですが、グラフィックスにやや物足りなさを感じるかもしれません。一方、アンリアルちゃんは美しいグラフィックスと高いパフォーマンスを持っていますが、専用機特化なので他のデバイスには不向きかもしれません。それに、実際どっちがいいかは自分の好み次第ですから、どちらが良いかはあなた次第です!


では、この辺で切り上げたいと思います。次はアセットストアについてお伝えしますね! それでは、お楽しみに!


アセットストア

Unity3DのアセットストアとUnreal Engine 5のアセットストアを比較すると、個人的に言えば、どちらのエンジンもユニークな利点を提供しています。まず、Unity3Dのアセットストアでは、豊富なアセットライブラリを見つけることができます。ゲームオブジェクト、キャラクターモデル、環境アセットなど、あらゆるものが揃っています。しかも、多くのアセットはフリーか低価格で提供されているため、制作コストを抑えることができます。また、Unity3Dのアセットストアでは、アセットがユーザーレビューに基づいて評価されていますので、品質の高いものを選ぶことができます。


一方、Unreal Engine 5のアセットストアは、より高品質でリアルなアセットを提供しています。3Dモデル、テクスチャ、エフェクトなど、ゲームのビジュアル面を強化するための幅広いリソースが揃っています。Unreal Engine 5は、映画のようなグラフィックスを実現することができるので、これらのアセットはプロジェクトに本当に価値をもたらします。また、Unreal Engine 5のアセットストアでは、エディタ内でのプレビューやアセットの統合がシームレスにできるため、制作プロセスをスムーズに進めることができるでしょう。


どちらのアセットストアも特徴的で使いやすいですが、Unity3Dのアセットストアは利用可能なアセットの幅広さと低価格なアセットの多さにおいて優れています。一方、Unreal Engine 5のアセットストアは、高品質でリアルなアセットを求める場合には非常に便利です。どちらを選ぶかは、プロジェクトのニーズや個人の好みによるでしょう。


結論

Unity3DとUnreal Engine 5、どちらを選ぶか結論を出していこう。両方のプラットフォームは魅力的な特徴を持っているぞ。まず、Unity3Dは使いやすさがウリだ。初心者でも手軽に学び始められるし、コードの知識がなくても簡単なゲームアプリを作ることができる。

一方で、Unreal Engine 5は高度なグラフィックス表現が可能で、リアリティのある世界を作り上げるのに適している。特に、大規模なプロジェクトに向いていると言えるだろう。

また、機能と機能拡張に関しては、Unity3Dは多機能なエディターとアセットストアが魅力で、幅広いリソースを利用できる。一方、Unreal Engine 5は強力なビジュアルスクリプティングと革新的な機能拡張が特徴だ。

パフォーマンス面では、Unity3Dは軽量なゲームに適しているが、Unreal Engine 5はリッチなゲームに向いている。最後に、アセットストアについては、Unity3Dのほうが充実しており、幅広いアセットが手に入る。ここまで見てきたように、Unity3DとUnreal Engine 5はそれぞれ得意とする分野が異なるので、個々のニーズに合わせて選ぶべきだ。では、どちらを選ぶかは君次第だ!



2023年9月14日木曜日

エンドレスランナー「ギルガメランナー」の開発日記#3

 


おはこんばんちわ!ギルガメです!

引き続き「ギルガメランナー」の開発を進めていきます!


今回はかなり雰囲気が変わりました!
やったこと:
  • プレイヤーのモデルの追加
  • プレイヤーの走りとジャンプのアニメーションの追加
  • 敵のモデルの追加
  • 敵のidleのアニメーションの追加
  • フィールドのモデルと自動生成の修正
これだけを追加して雰囲気が一気に変わりました!エンドレスランナーっぽくなりました。
WebGLでExportして試してみたのですが、少しカクツキがあったのでカメラのUpdateをLateUpdateに修正してカクツキが気にならなくなったのでよかったです。

プレイヤー、敵とフィールドのモデルはアセットストアで安くなっていた時に買ったもので、個人的に気にっているので使ってみました。
使ったアセットはこちらになります。
  • 空:AllSky Free - 10 Sky / Skybox Set(無料)
  • プレイヤー:1000+ Character Pack(有料)
  • フィールド:3D Cartoon Box Map(無料)
  • 敵:Level 1 Monster Pack(無料)

コードは複雑になってきたので詳細は載せませんが、興味のある方はコメントいただけると共有いたします。




今回の追加で難しかったこと:
  • プレイヤーのジャンプの修正、今まではOnCollisionEnterで対応していたのですが、たまに地面についていなくても地面判定できてしまい、ジャンプが2回できてしまうバグがったので、こちらをRaycastHitとPhysics.SphereCastコードで地面判定するようにしました。これで二重ジャンプの問題がなくなりました。
  • フィールドの自動生成とプレイヤーが通り過ぎた後の破壊の処理、こちらはそこまで難しくなかったのですが、プレイヤーがある程度過ぎたらフィールドを生成するロジックがうまく機能できていなかった(フィールドの生成が早くて先の先の先まで永遠に生成していた)ので、ずっと生成していると重くなる原因になるので頑張りました。
  • ステージ毎でモンスターやフィールド、時間でスピードの調整など簡単に設定できるように対応しました。
今回のバージョンは下記になります。






次はUIでも追加してみます!

最後まで読んでいただきありがとうございます!
これからもギルガメを応援していただけるよ嬉しいです!

2023年9月8日金曜日

エンドレスランナー「ギルガメランナー」の開発日記#2

 



おはこんばんちわ!ギルガメです!
引き続き「ギルガメランナー」の開発を進めていきます!


今回はもうちょっとエンドレスランナーの要素を追加していきたいので下記を対応してみました。
  • エンドレスランナー中にアイテムを拾ってポイントを稼ぐ(UIを表示)
  • エンドレスのゲームプレイのタイムを測る(UIを表示)
  • タイムによってスピードを加速して難易度を上げていく

対応したコードは下記になります。(ほとんどが追加になります)


対応したことを細かく説明していきます。

  • ポイントを稼ぐ機能は障害物を生成するスクリプトと同じ機能で生成していきます。ポイント用のプレハブを作成してタグをPointに設定します。プレイヤーが接触した時にタグを確認してポイントのオブジェクトを破壊してスコアを更新します。

  • エンドレスのゲームプレイのタイムを測る、こちらはシンプルにTime.timeを使って秒数をIntに変換して更新していきます。

  • UIの表示はTextMesh Proを使っていきます。こちらの方がはっきり表示されるので万能です。デフォルトでは日本語の表示がないのでGoogle Fontsから好きなフォントをダウンロードしてTextMesh Proで対応できるようにFontを生成します。ドットのフォントが好きなのでそちらで進めていきます。

  • タイムによってスピードを加速して難易度を上げていく、こちらはStageというクラスを作成してSerializableを追加して画面上で時間の経過で難易度を設定しやすくします。

NextStage:タイムがその値を超えると反映される
PlayerSpeed:プレイヤーのスピードを加速
ObstacleSpeed:障害物の生成のDelayの短縮

上記を追加してみました。下記でV0.2でデプロイしているのでぜひ触ってみてください




次はデザインでも変えていこうかな。

最後まで読んでいただきありがとうございます!
これからもギルガメを応援していただけるよ嬉しいです!

2023年9月6日水曜日

エンドレスランナー「ギルガメランナー」の開発日記#1


 



おはこんばんちわ!ギルガメです!

引越しが落ち着いたので久々にゲームを開発していきたいと思います。

かなりのブランクがあるので簡単なエンドレスランナーのゲームを作っていきます。

できるだけコードも忘れないように記入していきたいので、もしこうした方がいいなどありましたら指摘していただけると幸いです!


今期は下記を目標に作っていきます。

簡単に遊べるエンドレスランナーの基礎の基礎を作っていきます。


まずやったこと:

  • Unityの更新 2022.3.8f1(かなり古かったので久々に更新)
  • プロジェクトの作成(モバイル用にリリース目標なので3Dモバイルで作成)
  • キャラクターの作成(PlayerController.cs)
  • 地面の作成(PlaneFollow.cs)
  • 障害物の作成(Obstacle.cs)
  • 障害物の自動生成(ObstacleSpawner.cs)
  • カメラの設定(CameraFollow.cs)
  • 障害物に直撃した場合はゲームをリセット(GameManager.cs)


次に各コードを載せていきます。まだシンプルなので細かい調整はないです。


ここからやってみたことを細かく説明していきます。
  • キャラクターの作成ではキャラクターが3方向のみ(左、中央、右)に移動できるように制御、またスムーズに動くようにLerpを使って移動できるようにしています。キャラクターが障害物に当たっ時の処理も一緒に含めています。
  • 地面の作成はキャラクターと一緒に移動するようにしています。エンドレスなので地面を固定のフィールドを作るのは大変なのでシンプルに地面もキャラクターと一緒に移動するようにしてエンドレスっぽく見せています。
  • 障害物の作成では障害物用のタグを作成してプレイヤーが避けてプレイヤーの後ろをある程度離れたら削除するように処理を入れています。
  • 障害物の自動生成はランダムのDelayタイムを設定して障害物を延々と生成するように作りました。本当にシンプルです笑
  • 障害物に直撃した場合はゲームをリセットはシンプルにゲーム全体の処理をここに入れていきます。今のところはプレイヤーが障害物に当たった場合にリセットする処理が含まれています。

上記だけで一応は遊べるぐらいのシンプルなエンドレスランナーっぽいゲームになります。ここから細かくオリジナリティを加えていければと思います。


日記のバージョン毎にWebGLで遊べるようにしていきたいのでぜひ触ってみてください!

Version 0.1




次はちょっと雰囲気でも変えていこうかな。。

最後まで読んでいただきありがとうございます!
これからもギルガメを応援していただけるよ嬉しいです!