⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 oxnewtonmanager.pas

📁 Newton Game Dynamic 1.52 Delphi下基于GLScene的OpenGL游戏开发控件。功能非常强大和易于使用。 Advanced physics engine for re
💻 PAS
📖 第 1 页 / 共 3 页
字号:
  FFrictionMotion2:= False;
  FGravity:= TGLCoordinates.CreateInitialized( Self, VectorMake( 0, -9.81, 0 ), csUnknown );
  FWorldSize:= TGLCoordinates.CreateInitialized( Self, VectorMake( 500, 500, 500 ), csUnknown );
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
procedure TOXNewtonManager.AddLog( str: string; level: integer; desc: string );
begin
  if FLogEnable then begin
    oxLog( str, level, desc );
  end;
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
procedure TOXNewtonManager.SetColor( val: TGLColor );
begin
  if ( FColor <> val ) then FColor:= val;
  NotifyChange( Self );
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
procedure TOXNewtonManager.SetCadencer( val: TGLCadencer );
begin
   if ( FCadencer <> val ) then begin
     if Assigned( FCadencer) then FCadencer.UnSubscribe( Self );
     FCadencer:= val;
     if Assigned( FCadencer ) then FCadencer.Subscribe( Self );
   end;
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
procedure TOXNewtonManager.Notification( AComponent: TComponent; Operation: TOperation );
begin
   if ( Operation = opRemove ) then begin
     if ( AComponent = Cadencer ) then Cadencer:= nil;
   end;
   inherited;
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
procedure TOXNewtonManager.SetArchitecture( const val: Integer );
begin
  if FArchitecture <> val then begin
    FArchitecture:= val;
    if FActived then begin
      NewtonSetPlatformArchitecture( FWorld, FArchitecture );
    end;
  end;
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
function TOXNewtonManager.GetArchitecture: Integer;
begin
  result:= FArchitecture;
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
procedure TOXNewtonManager.SetMaterialSurface( Custom: boolean; Softness, Elasticity, StaticFriction, KineticFriction: Float; Collidable: integer );
begin
  FMatrialCustom:= Custom;
  FMaterialSoftness:= Softness;
  FMaterialElasticity:= Elasticity;
  FMaterialCollidable:= Collidable;
  FMaterialStaticFriction:= StaticFriction;
  FMaterialKineticFriction:= KineticFriction;
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
procedure TOXNewtonManager.SetMaterialSurfaceMode( const Mode: TOXMaterialSurfaceMode );
begin
  case Mode of
    mdNone: SetMaterialSurface( True, 0.0, 0.0, 0.0, 0.0, 0 );
    mdDefault: SetMaterialSurface( True, 0.05, 0.4, 1.0, 0.5, 1 );
    mdHard: SetMaterialSurface( True, 1.0, 0.5, 1.0, 0.5, 1 );
    mdSoft: SetMaterialSurface( True, 0.01, 0.2, 1.0, 0.5, 1 );
    mdSlide: SetMaterialSurface( True, 0.05, 0.4, 0.25, 0.25, 1 );
    mdStatic: SetMaterialSurface( True, 0.05, 0.4, 1.0, 1.0, 1 );
  end;
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
procedure TOXNewtonManager.SetMaterialSoftness( const val: Float );
begin
  if ( FMaterialSoftness <> val ) then
    FMaterialSoftness:= val;
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
procedure TOXNewtonManager.SetMaterialElasticity( const val: Float );
begin
  if ( FMaterialElasticity <> val ) then
    FMaterialElasticity:= val;
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
procedure TOXNewtonManager.SetMaterialCollidable( const val: integer );
begin
  if ( FMaterialCollidable <> val ) then
    FMaterialCollidable:= val;
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
procedure TOXNewtonManager.SetMaterialStaticFriction( const val: Float );
begin
  if ( FMaterialStaticFriction <> val ) then
    FMaterialStaticFriction:= val;
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
procedure TOXNewtonManager.SetMaterialKineticFriction( const val: Float );
begin
  if ( FMaterialKineticFriction <> val ) then
    FMaterialKineticFriction:= val;
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
function TOXNewtonManager.GetMaterialSoftness: Float;
begin
  result:= FMaterialSoftness;
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
function TOXNewtonManager.GetMaterialElasticity: Float;
begin
  result:= FMaterialElasticity;
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
function TOXNewtonManager.GetMaterialCollidable: integer;
begin
  result:= FMaterialCollidable;
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
function TOXNewtonManager.GetMaterialStaticFriction: Float;
begin
  result:= FMaterialStaticFriction;
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
function TOXNewtonManager.GetMaterialKineticFriction: Float;
begin
  result:= FMaterialKineticFriction;
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
function TOXNewtonManager.GetWorld: PNewtonWorld;
begin
  if ( FWorld<>nil ) then begin
    result:= FWorld
  end else begin
    AddLog( 'init your OXNewtonManager before using the World.', 1, ':Error Message!' );
    result:= nil;
    Application.Terminate;
  end;
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
function TOXNewtonManager.GetLogEnable: boolean;
begin
  result:= FLogEnable;
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
function TOXNewtonManager.GetNewtonStepTime: Float;
begin
  result:= FNewtonStepTime;
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
function TOXNewtonManager.GetNewtonMultiplyTime: Float;
begin
  result:= FNewtonMultiplyTime;
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
function TOXNewtonManager.GetMinimumFrameRate: boolean;
begin
  result:= FMinimumFrameRate;
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
function TOXNewtonManager.GetMinimumFrameRateValue: Float;
begin
  result:= FMinimumFrameRateValue;
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
procedure TOXNewtonManager.SetLogEnable( const val: boolean );
begin
  if ( val <> FLogEnable ) then
    FLogEnable:= val;
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
procedure TOXNewtonManager.SetNewtonStepTime( const val: Float );
begin
  if ( val <> FNewtonStepTime ) then
    FNewtonStepTime:= val;
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
procedure TOXNewtonManager.SetNewtonMultiplyTime( const val: Float );
begin
  if ( val <> FNewtonMultiplyTime ) then
    FNewtonMultiplyTime:= val;
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
procedure TOXNewtonManager.SetWorldMultiplyLimit( const val: Float );
begin
  if ( val <> FWorldMultiplyLimit ) then
    FWorldMultiplyLimit:= val;
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
function TOXNewtonManager.GetWorldMultiplyLimit: Float;
begin
  result:= FWorldMultiplyLimit;
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
procedure TOXNewtonManager.SetWorldMultiplySize( const val: Float );
begin
  if ( val <> FWorldMultiplySize ) then
    FWorldMultiplySize:= val;
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}
function TOXNewtonManager.GetWorldMultiplySize: Float;
begin
  result:= FWorldMultiplySize;
end;
{******************************************************************************}
// [15-9-2007]: TOXNewtonManager last change by Dave Gravel.                 //
{******************************************************************************}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -