1

製品にいくつかのスクリプト機能を実装する必要があります。スクリプトは通常、次のような単純な目的で使用されます。

IF param1 > 5 + param3 AND current time > 18.00:
  SET param2 TO 3
ELSE
  SET param2 TO 4

もう1つの非常に一般的なタスクは、パラメータを1日を通して変化させることです。できれば、視覚的に移動できる設定値などを含む線図を使用します。

今、私はこれを実装する方法についてのインスピレーションが必要です。クライアントが現在使用している非常に古いツールは、グラフィカルな基本的な方言にすぎません。スクリプトをプレーンテキストで入力する必要はありませんが、「IF」、「THEN」、「ELSE」、「Parameter」などの記号をドラッグできます。 、「現在の時刻」などをキャンバスに表示します。構文とセマンティクスを理解しておく必要があります。もっとうまくやれると思います。

私はグラフィック言語を探していましたが、魅力的なシステムをまだ見つけていません。

たとえば、レゴマインドストーム言語があります。これは非常にシンプルですが、自動化を目的としており、数学やロジックをうまく処理できません。ラボビューがありますが、これは一般的なユーザーには少し複雑すぎるようです。PLCに使用されるラダープログラミングがありますが、私の経験では、PLCも非常に自動化指向であり、数学をうまく処理できません。Yahoo Pipesと一部のソフトウェアシンセサイザーには相互接続ボックスアプローチがありますが、数学が必要な場合は操作が面倒になり、制御シーケンスはあまり自然ではありません。次に、OutlookやEvolutionのフィルターなど、非常に単純なウィザードスタイルの代替手段がありますが、十分な柔軟性はないと思います。

では、どのグラフィック言語に出くわし、好きだったのでしょうか。(私も含めて、この種の言語を楽しんでいるプログラマーはほとんどいないと思いますが、ここでは目的を果たしていると思います。)

4

1 に答える 1

1

式ツリーのようなグラフィカル言語、または命令型言語をお探しですか?

これが私が過去に使用したいくつかのグラフィカル言語です。残念ながら、これらは汎用またはスタンドアロンの製品ではないため、インスピレーションとしてのみ機能します。

Unreal Kismet:グラフィカルなノードベースのスクリプトゲームスクリプト環境。イベントジェネレータとアクションに基づいています。各ノードは、入力イベントを受け取り、出力イベントを生成できます。ゲームがゲーム内の特定のイベントに反応する必要がある単純なスクリプトに適しています(プレーヤーがトリガーボリュームに入ったときにドアをロックするなど)。複雑なロジック(forループ、配列など)の実装は非常に面倒でエラーが発生しやすく、そのような構成は通常、特殊なKismetノードを構築することによりUnrealScriptを使用して実装されます。イベントの流れに基づいています。

Native-instruments Reaktor:モジュラーシンセサイザー環境。Kismetに少し似ていますが、オーディオおよびMIDIイベントの生成と処理に使用されます。同様に、複雑なロジックを作成するのは面倒です。

シェーダー/コンポジション/アニメーションツリーエディター:多くのゲームエンジンと3Dソフトウェアにこれらが含まれています。基本的に、入力と出力を持つ演算子ノードがある式ツリー。

AI動作ツリー:有限状態マシンに似た、式ツリー以上のもの。

于 2011-04-07T08:20:13.137 に答える