チュートリアルで使用できる小さなオープンソースゲームエンジン[終了]


8

XNAでゲームエンジンをゼロから作成することを学んでいます。非常に小さなゲームエンジンの例、具体的にはソースファイルのアーキテクチャと構造などを探しています。スクリプトエンジンを含める必要があります。記事も大歓迎です。

より具体的には、スクリプトからモデルをロードするなど、スクリプトエンジンをゲームエンジンの他の部分に接続する方法を知るのに問題があります。


ちょうど興味があるのに、なぜスクリプトエンジンが必要なのですか。C#自体は、スクリプトエンジンを使用して解決する問題のほとんどすべてを既に解決しています。そしてXNAはすでにモデルをロードできる「非常に小さなゲームエンジン」です。
Andrew Russell

私が一緒に仕事をしている人は、ストーリーの何かが変わったときにゲームを再コンパイルする必要がないように、スクリプトエンジンを望んでいると言っていました。
Shawn Mclean 2010

ちょうどあなたが知っているように、その問題に対する純粋なC#ソリューションがあります:stackoverflow.com/questions/1353456/…(C#コンパイラはランタイムの一部です)。
Andrew Russell、

回答:


2

エンジェルエンジンは非常に素晴らしい、C ++とOpenGLで書かれた小さなオープンソースのエンジンです。さらに、Pythonスクリプトインターフェイスがあります。エンジンはC#で記述されていませんが、いくつかのヒントとアイデアが得られるはずです。私がそれで遊んだことから、コードは非常にクリーンで理解しやすく、C ++を完全に理解していなくても理解できます。


4

スクリプティングセクションとして、 『DirectXを使用したロールプレイングゲームのプログラミング』(第2版)が好きです。他の場所でスクリプトエンジンを作成するための最初から最後までのチュートリアルを見たことはありません。そしてもちろん、本であるので、エンジンのスクリプト部分(もちろん、本の中で彼が確立するゲームエンジンの残りの部分全体)を作成する手順を順を追って説明します。残念ながら、ソースコードはオンラインで入手できません。

スクリプトエンジンを入手したら、3Dモデルとスクリプトを分けておきます。スクリプトは通常、ロジックの側面にありますが、3Dモデルはプレゼンテーション/ビューの側面であることが最も確実であり、それらを実際に混合することはできません。スクリプトがキャラクターに「(3,5)まで歩く」ように命令する場合、「歩行アニメーションをロードし、速度を(-1,1)に設定し、3秒待機し、速度をゼロに設定し、アイドルをロードする必要はありません。アニメーション"; あなたは通常、walkTo(x,y)、スクリプトで使用できる関数あり、中間コードは3Dモデル、アニメーションなどを処理します。

ただし、本当に必要な場合は、スクリプトインタープリターで独自の関数を定義して、3Dモデルを取得し、必要なことをすべて実行します。あなたは少し先を考えすぎていると思います。最初に単純なスクリプトインタープリターを作成することについて心配し、スクリプトを作成するときに必要な関数をインタープリターに追加します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.