我的第一篇博客-lazarus+opengl离线渲染

本文介绍了作者在开发地图引擎时,如何利用Lazarus集成OpenGL进行离线渲染的探索过程,包括资料收集和实现步骤。
摘要由CSDN通过智能技术生成

       最近开发一个工作上需要的地图引擎。想使用opengl离线渲染。网上查找资料,实现如下。

unit Unit1;

{$mode objfpc}{$H+}

interface

uses
 windows,Classes, SysUtils, Forms, Controls,Graphics, Dialogs, Buttons,
 GDIPAPI,GDIPOBJ,GDIPUTIL,StdCtrls, ExtCtrls ,gl,glu;
type

  { TForm1 }

  TForm1 = class(TForm)
   //MyglTextures:TglTexture;

    procedure FormClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
  //   glbox:tOpenGLControl;
  public
    glmap:Tbitmap;
    Bmp,BmpOld : HBITMAP;
    procedure Draw;
  end;

var
  Form1: TForm1;

implementation

{$R *.lfm}



procedure TForm1.FormCreate(Sender: TObject);
const
pfd:TPIXELFORMATDESCRIPTOR = (
  nSize:sizeof(TPIXELFORMATDESCRIPTOR); // size
  nVersion:1;                           // version
  dwFlags:PFD_DRAW_TO_BITMAP or PFD_SUPPORT_OPENGL;       // support double-buffering
  iPixelType:PFD_TYPE_RGBA;             // color type
  cColorBits:32;                        // preferred color depth
  c
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值