G6】ライトニングトーク Delphi GLScene - Embarcadero Website · 2018. 6. 11. · •...

13
17 Th Developer Camp G6】ライトニングトーク DelphiGLSceneを使って 簡単な3Dプログラミング」 山本 聡 1

Transcript of G6】ライトニングトーク Delphi GLScene - Embarcadero Website · 2018. 6. 11. · •...

Page 1: G6】ライトニングトーク Delphi GLScene - Embarcadero Website · 2018. 6. 11. · • インストール方法 – GLScene_v1.1_August_2010_release_with_demos.zip – や、

17Th

Developer Camp

【G6】ライトニングトーク

「DelphiでGLSceneを使って

簡単な3Dプログラミング」

山本 聡

1

Page 2: G6】ライトニングトーク Delphi GLScene - Embarcadero Website · 2018. 6. 11. · • インストール方法 – GLScene_v1.1_August_2010_release_with_demos.zip – や、

• OpenGL Solution for Delphi

• GLSceneとは

3DCGライブラリであるO GLをD l hiから使いやすく– 3DCGライブラリであるOpenGLをDelphiから使いやすくそして拡張したライブラリです

• 3Dを扱うには実に便利です

• どこまでがOpenGLなのか、どこからがGLSceneなのど までが p なのか、ど からが なのかはよくわかりませんが、とにかく便利すぎです。

2

Page 3: G6】ライトニングトーク Delphi GLScene - Embarcadero Website · 2018. 6. 11. · • インストール方法 – GLScene_v1.1_August_2010_release_with_demos.zip – や、

• どんなことが出来るでしょうか。

• デモをみましょう。

3

Page 4: G6】ライトニングトーク Delphi GLScene - Embarcadero Website · 2018. 6. 11. · • インストール方法 – GLScene_v1.1_August_2010_release_with_demos.zip – や、

• デモプログラムがまだまだ沢山あるので、全部見ることをお勧めしますをお勧めします。

– デモはコンパイルして実行するのがよいです。デモはコンパイルして実行するのがよいです。

– プログラムソースをみてはじめて使い方がわかるものがあります。

が非常に短 に すご デ がある 短– ソースが非常に短いのに、すごいデモがあるので、短い記述で様々な事ができることがわかります。

4

Page 5: G6】ライトニングトーク Delphi GLScene - Embarcadero Website · 2018. 6. 11. · • インストール方法 – GLScene_v1.1_August_2010_release_with_demos.zip – や、

• インストールするには。

いまどきありえないほど気分が滅入るほどめんどくせ• いまどきありえないほど気分が滅入るほどめんどくせーです。

– インストーラなどがあったら教えてください。インスト ラなどがあったら教えてください。

– だれかインストーラ作ってください!アンインストールもできるようにして欲しい。

– 手早く説明します。

例ですので ご参考に– 一例ですので、ご参考に。

5

Page 6: G6】ライトニングトーク Delphi GLScene - Embarcadero Website · 2018. 6. 11. · • インストール方法 – GLScene_v1.1_August_2010_release_with_demos.zip – や、

• インストール方法– GLScene_v1.1_August_2010_release_with_demos.zip– や、

– GLScene_v1.1_March_2011_SVN_revision_5593.7zを手に入れて解凍

– 任意フォルダ¥GLScene フォルダに配置とする– v1.1_August_2010の場合は

任意フォルダ¥GLScene¥Delphi2010をコピー任意フォルダ¥GLScene¥Delphi2010をコピー任意フォルダ¥GLScene¥DelphiXEフォルダを作る

– DelphiIDEで[ツール][オプション][ライブラリ][ライブラリパス]に– DelphiIDEで[ツ ル][オプション][ライブラリ][ライブラリパス]に、任意フォルダ¥GLScene¥Sourceと任意フォルダ¥GLScene¥Source¥以下全てのフォルダを追加します。※実に面倒

6

Page 7: G6】ライトニングトーク Delphi GLScene - Embarcadero Website · 2018. 6. 11. · • インストール方法 – GLScene_v1.1_August_2010_release_with_demos.zip – や、

• インストール方法– 任意フォルダ¥GLScene¥Source¥以下のフォルダに存在するDLLファイ任意フォルダ¥GLScene¥Source¥以下のフォルダに存在するDLLファイ

ルを全部みつけて、BPLのあるフォルダにコピーする。XP:C:¥Documents and Settings¥All Users¥Documents¥RAD Studio¥8.0¥BplVista:C:¥Users¥Public¥Documents¥RAD Studio¥8.0¥Bpl

– 任意フォルダ¥GLScene¥DelphiXEフォルダにある、DesignTime.dpkとあるファイルを開いてインストールする。(g p (インストール出来ないものは無視)RunTime.dpkは自動にコンパイルされるはずだが、必要がればコンパイルする。

– 終わり。これでほとんどのデモがコンパイルできます。

– (コンパイルが遅くなるから、グローバルライブラリパスに全てつっこむやり方が嫌な 個 ご相談 応 ます

7

方が嫌な人は、個別ご相談に応じます。)

Page 8: G6】ライトニングトーク Delphi GLScene - Embarcadero Website · 2018. 6. 11. · • インストール方法 – GLScene_v1.1_August_2010_release_with_demos.zip – や、

17Th

Developer Camp

時間大丈夫?

8

Page 9: G6】ライトニングトーク Delphi GLScene - Embarcadero Website · 2018. 6. 11. · • インストール方法 – GLScene_v1.1_August_2010_release_with_demos.zip – や、

• どうやって3Dオブジェクトを配置するか。

• FormにGLScene1: TGLSceneとGLSceneViewer1: TGLSceneViewerを貼り付けてください。

• GLScene1をダブルクリックしてGLSceneエディタを開き、Scene objectsにGLDummyCube1を作成してくださいい。

• Scene objectsにGLCamera1も作成してください。

• GLCamera1.Position.SetPoint(5,5,5)( , , )• GLDummyCube1の下位にGLLightSource1を作成

• LightSource1.Position.SetPoint(3,4, 10);

9

Page 10: G6】ライトニングトーク Delphi GLScene - Embarcadero Website · 2018. 6. 11. · • インストール方法 – GLScene_v1.1_August_2010_release_with_demos.zip – や、

• GLSceneViewer1.Camera := GLCamera1;• GLCamera1.TargetObject := GLDummyCube1;• これで、設計時から、画面に、立方体が浮かび上がります。

10

Page 11: G6】ライトニングトーク Delphi GLScene - Embarcadero Website · 2018. 6. 11. · • インストール方法 – GLScene_v1.1_August_2010_release_with_demos.zip – や、

• すべてソースコードで、記載してカメラとオブジェクトを配置することもできます置することもできます。

procedure TForm1.FormCreate(Sender: TObject);beginDummyCube1 := TGLDummyCube.Create(Self);y y ( );GLScene1.Objects.AddChild(DummyCube1);

Camera1 := TGLCamera.Create(Self);Camera1.Position.SetPoint(5, 5, 5);GLScene1.Objects.AddChild(Camera1);

Sphere1 := TGLSphere.Create(Self);Camera1.TargetObject := Sphere1;DummyCube1.AddChild(Sphere1);

LightSource1 := TGLLightSource.Create(Self);LightSource1.Position.SetPoint(3,4, 10);DummyCube1.AddChild(LightSource1);

GLSceneViewer1.Camera := GLCamera1;GLCamera1.TargetObject := GLDummyCube1;

end;

11

end;

Page 12: G6】ライトニングトーク Delphi GLScene - Embarcadero Website · 2018. 6. 11. · • インストール方法 – GLScene_v1.1_August_2010_release_with_demos.zip – や、

17Th

Developer Camp

BEER

12

Page 13: G6】ライトニングトーク Delphi GLScene - Embarcadero Website · 2018. 6. 11. · • インストール方法 – GLScene_v1.1_August_2010_release_with_demos.zip – や、

• GLSceneのデモです• 懇親会たのしみましょう。

13

• 以上です