8

Delphi X3のFiremonkeyアプリケーションのメインTForm3DウィンドウにはContext:TContext3D、現在使用されているデバイスへのアクセスを提供するがあります。
私のWindows764の場合、常にTDX10Contextからのオブジェクトが表示されFMX.Context.DX10.pasます。

TDX9Context祖先を確認するためだけに、FMX.Context.DX9.pasのクラスから新しいインスタンスを作成するための可視性がありませんTCustomDX9Context

TContextManager登録された3Dコンテキストを厳密なプライベートで収集するクラスを見つけましたTList:(、これはコンストラクターを呼び出すことができる唯一のクラスです...

{ Don't call contructor directly from TContext - only using TContextManager class }
constructor CreateFromWindow(const AParent: TFmxHandle; const AWidth, AHeight: Integer;`

新しいフォームを作成するときにコンテキストを取得するために呼び出しTContextManager、次に読み取り専用プロパティTContextManager.DefaultContextClassが使用されます。

以外のコンテキストへのアクセスを見つける方法はありませんDefaultContextClass

4

1 に答える 1

3

記録のために:

プロジェクトファイルに次の行を入力します。

GlobalUseDX10 := False;  <<-- add this.
Application.Initialize;  <<-- just before this line.
于 2012-12-19T15:25:16.343 に答える