亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? unit1.pas

?? delphi 最好的3D控件GLScene_Demos
?? PAS
字號:
{: Octree raycast/mesh sample.<p>

   Demonstrating how to find the intersection point between eye-screen ray
   and a high poly mesh with an Octree property.

   To see the performance difference:

   -move mouse around on the scene with octree disabled (default)
   -check the "octree enabled" box.  Note the frame-rate difference.

   .<p>
}
unit Unit1;

interface

uses
  Windows, SysUtils, Classes, Controls, Forms,
  GLMisc, GLScene, GLVectorFileObjects, GLObjects, GLWin32Viewer,
  GLCadencer, ExtCtrls, StdCtrls, GLGeomObjects;

type
  TForm1 = class(TForm)
    GLScene1: TGLScene;
    GLLightSource1: TGLLightSource;
    DummyCube1: TGLDummyCube;
    FreeForm1: TGLFreeForm;
    Sphere1: TGLSphere;
    ArrowLine1: TGLArrowLine;
    GLSceneViewer2: TGLSceneViewer;
    GLCamera2: TGLCamera;
    GLCadencer1: TGLCadencer;
    Timer1: TTimer;
    Panel1: TPanel;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label5: TLabel;
    LABuild: TLabel;
    CheckBox1: TCheckBox;
    CBOctree: TCheckBox;
    Label4: TLabel;
    procedure FormCreate(Sender: TObject);
    procedure GLSceneViewer2MouseDown(Sender: TObject;
      Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
    procedure GLSceneViewer2MouseMove(Sender: TObject; Shift: TShiftState;
      X, Y: Integer);
    procedure GLCadencer1Progress(Sender: TObject; const deltaTime,
      newTime: Double);
    procedure Timer1Timer(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    mousex, mousey: integer;
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

uses VectorGeometry, GLCrossPlatform, VectorLists, GLFile3DS;

procedure TForm1.FormCreate(Sender: TObject);
var
   t : Int64;
begin
   // Load high poly mesh (10,000 triangles).
   FreeForm1.LoadFromFile('..\..\media\HighPolyObject.3ds');

   t:=StartPrecisionTimer;

   FreeForm1.BuildOctree;

   LABuild.Caption:=Format('Build time: %.3f ms', [StopPrecisionTimer(t)*1000]);

   with FreeForm1.Octree do begin
      Label1.Caption:='Octree Nodes: '+inttostr(NodeCount);
      Label2.Caption:='Tri Count Octree: '+inttostr(TriCountOctree);
      Label3.Caption:='Tri Count Mesh: '+inttostr(TriCountMesh);
   end;

   mousex:= -1;
   mousey:= -1;
end;

procedure TForm1.GLSceneViewer2MouseDown(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var
   rayStart, rayVector, iPoint, iNormal : TVector;
   t : Int64;
begin
   SetVector(rayStart, GLCamera2.AbsolutePosition);
   SetVector(rayVector, GLSceneViewer2.Buffer.ScreenToVector(AffineVectorMake(x, GLSceneViewer2.Height-y, 0)));
   NormalizeVector(rayVector);

   t:=StartPrecisionTimer;
   if CBOctree.Checked then begin
      // Octree method (fast)
      if FreeForm1.OctreeRayCastIntersect(raystart, rayvector, @iPoint, @iNormal) then begin
         Sphere1.Visible:=True;
         Sphere1.Position.AsVector:=iPoint;
         Sphere1.Direction.AsVector:=VectorNormalize(iNormal);
      end else Sphere1.Visible:=False;
      Label4.Hint:='# Nodes hit with raycast: '+inttostr(High(FreeForm1.Octree.ResultArray)+1);
   end else begin
      // Brute-Force method (slow)
      if FreeForm1.RayCastIntersect(rayStart, rayVector, @iPoint, @iNormal) then begin
         Sphere1.Visible:=True;
         Sphere1.Position.AsVector:=iPoint;
         Sphere1.Direction.AsVector:=VectorNormalize(iNormal);
      end else Sphere1.Visible:=False;
   end;
   Label5.Hint:=Format('Intersect Time: %.3f ms', [StopPrecisionTimer(t)*1000]);
end;

procedure TForm1.GLSceneViewer2MouseMove(Sender: TObject;
  Shift: TShiftState; X, Y: Integer);
begin
   mousex:=x;
   mousey:=y;
end;

procedure TForm1.GLCadencer1Progress(Sender: TObject; const deltaTime,
  newTime: Double);
begin
   if CheckBox1.Checked then
      GLSceneViewer2MouseDown(Sender, mbLeft, [ssShift], mousex, mousey);

   FreeForm1.RollAngle:=5*newTime; // 45

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲电影在线免费观看| 国产白丝精品91爽爽久久| 国内成人免费视频| 在线日韩一区二区| 久久久国产午夜精品 | 国产精品久久久久一区二区三区共| 亚洲欧美另类综合偷拍| 国产在线精品不卡| 欧美日本韩国一区二区三区视频| 国产欧美一区二区精品性| 亚洲第一在线综合网站| 不卡视频免费播放| 久久亚洲精精品中文字幕早川悠里 | 欧美三级电影网| 国产色婷婷亚洲99精品小说| 视频一区二区三区入口| 91精品福利在线| 亚洲天堂成人在线观看| 国产v综合v亚洲欧| 久久看人人爽人人| 国产在线观看一区二区| 亚洲精品在线三区| 久久狠狠亚洲综合| 欧美精品一区二区在线播放| 日韩av网站在线观看| 欧美乱妇23p| 日本亚洲一区二区| 日韩一区二区三区免费观看| 奇米在线7777在线精品| 91精品久久久久久蜜臀| 亚洲视频一区在线| 成人高清视频在线| 亚洲视频在线一区二区| 成人黄色电影在线| 国产成人精品三级麻豆| 中文字幕免费不卡| 日本不卡在线视频| 欧美sm美女调教| 蜜桃一区二区三区在线| 欧美一卡二卡三卡四卡| 香蕉久久夜色精品国产使用方法| 色婷婷av一区二区三区gif | 一本一道综合狠狠老| 国产日产欧美精品一区二区三区| 日韩高清在线电影| 欧美猛男超大videosgay| 一区二区三区不卡视频 | 欧美国产成人精品| 麻豆精品视频在线观看免费| 欧美日韩精品电影| 午夜欧美2019年伦理| 不卡的av网站| 成人欧美一区二区三区小说| 99国产精品国产精品久久| 欧美国产一区二区在线观看 | 亚洲免费观看高清| 日本道色综合久久| 国产精品久久久99| 日本精品视频一区二区| 一区二区三区精品视频| 欧美日韩综合一区| 蜜桃视频在线观看一区| 精品久久久久一区| 国产白丝精品91爽爽久久| 中文字幕在线不卡视频| 波多野结衣中文字幕一区二区三区| 欧美色精品天天在线观看视频| 久久综合视频网| 91久久奴性调教| 日韩高清不卡一区二区三区| 欧美一级国产精品| 国产精品一区一区三区| 国产精品家庭影院| 欧美色图激情小说| 毛片一区二区三区| 中文字幕国产一区二区| 欧洲另类一二三四区| 免费av成人在线| 国产精品美女久久久久久2018| 99国产欧美另类久久久精品| 亚洲在线成人精品| 久久久久九九视频| 精品乱码亚洲一区二区不卡| 狠狠色丁香婷婷综合久久片| 中文字幕字幕中文在线中不卡视频| 在线观看免费成人| 韩国午夜理伦三级不卡影院| 日韩理论片一区二区| 日韩小视频在线观看专区| 成人免费av网站| 午夜激情一区二区| 国产精品嫩草99a| 在线不卡a资源高清| 成人性生交大片免费看在线播放| 一区二区三区国产精华| 日韩一区二区影院| 成人av影视在线观看| 午夜精品免费在线观看| 欧美国产精品v| 精品国产亚洲在线| 一区二区三区在线观看动漫| 在线看国产一区| 国产精品国产三级国产aⅴ原创| 久久成人羞羞网站| 亚洲精品一区二区三区影院| 日日夜夜一区二区| 日韩欧美aaaaaa| 国产传媒日韩欧美成人| 日本一区二区三区免费乱视频 | 国产日韩精品一区| 日本精品裸体写真集在线观看| 久久99精品久久只有精品| 亚洲精品成人a在线观看| 久久蜜桃av一区精品变态类天堂| 国产性做久久久久久| 欧美日韩免费在线视频| 成人美女在线观看| 国产传媒欧美日韩成人| 免费看欧美美女黄的网站| 亚洲男人的天堂在线aⅴ视频| 久久久久久久网| 精品99一区二区三区| 91麻豆精品国产91| 欧美精品在欧美一区二区少妇| 色哟哟国产精品免费观看| 粉嫩绯色av一区二区在线观看| 亚洲成人av一区| 亚洲欧美综合在线精品| 欧美日韩免费观看一区三区| 91麻豆福利精品推荐| 成人精品gif动图一区| 粉嫩久久99精品久久久久久夜| 国产在线精品一区二区不卡了| 青青青伊人色综合久久| 蜜臀av国产精品久久久久| 制服.丝袜.亚洲.中文.综合| 日本色综合中文字幕| 日本欧美一区二区在线观看| 自拍偷拍亚洲综合| 国产精品免费免费| 欧美一区二区三区免费| 日韩一区二区免费高清| 91亚洲国产成人精品一区二区三| 国产日韩av一区| 在线成人免费视频| 欧美一级xxx| 一本久道中文字幕精品亚洲嫩| 国内外精品视频| 波多野结衣中文字幕一区| 亚洲一区二三区| 久久精品久久综合| 亚洲男人都懂的| 亚洲欧美一区二区三区极速播放| 欧美一区二区不卡视频| 欧美一区二区私人影院日本| 日韩欧美一级二级三级久久久| 青青国产91久久久久久| 中文字幕中文字幕在线一区| 51精品秘密在线观看| 99re66热这里只有精品3直播 | 一级做a爱片久久| 中文字幕av一区 二区| 国产欧美日韩麻豆91| 伊人性伊人情综合网| 欧美精品一区二区高清在线观看| 欧美成人一区二区三区| 欧美成人一级视频| 久久精品国产一区二区三区免费看| 国产不卡高清在线观看视频| 成人小视频免费观看| 色婷婷av一区二区| 欧美撒尿777hd撒尿| 国产日韩欧美高清在线| 亚洲黄色片在线观看| 激情五月播播久久久精品| 91久久精品国产91性色tv| 精品国产伦一区二区三区观看体验| 亚洲欧洲三级电影| 久久电影网电视剧免费观看| 99久久综合色| 欧美videofree性高清杂交| 亚洲欧美区自拍先锋| 激情五月播播久久久精品| 欧美亚洲综合在线| 国产精品女同一区二区三区| 美女一区二区三区在线观看| 成人动漫一区二区在线| 精品少妇一区二区三区在线播放 | 喷水一区二区三区| 91网站最新网址| 欧美精品一区二| 亚洲v中文字幕| 99精品视频一区二区三区| 欧美精品一区二区三区很污很色的| 一区二区三区美女| av在线播放成人| 精品久久免费看| 男人的j进女人的j一区| 欧美亚洲自拍偷拍| 亚洲精品五月天|