Recent

Author Topic: Lazarus 3DTK  (Read 10545 times)

Barak

  • New member
  • *
  • Posts: 6
Lazarus 3DTK
« on: July 07, 2004, 07:01:48 pm »
Hi Folk,
Just to let you know that I have been working on implementing a 3D Toolkit designed just for Lazarus.
So far I have a generic OpenGL implementation that connects to the TForm nicely and renders to it.
Also added is a heavy duty 3D Math library which includes 3D Vectors, Matrices and Quarternion math rountines as well as 3D Math Functions for performing calculations etc.
So far I have written texture support for BMP, TGA, JPEG and half finished DDS and PNG support.
ATM it works only on Win32, but it is designed to be compatible with minimal effort to other platforms.
Before I release, I expect it to work nicely under Linux and FreeBSD also.
If interested, I'll keep you guys informed.
I HOPE to release at the end of next week IF time permits as I will release with plenty of example code and documentation for use.
If anyone has a specific model format they would like to see the library handle natively please let me know.

  Cheers
       Dave

Anonymous

  • Guest
Lazarus 3DTK
« Reply #1 on: July 08, 2004, 05:11:36 pm »
Will it support 3ds, ms3d, ase or other 3D modelling files ?

Barak

  • New member
  • *
  • Posts: 6
Lazarus 3DTK
« Reply #2 on: July 09, 2004, 02:37:54 am »
lib3ds has been ported to Delphi iirc, so that should be a minimal effort to get it to work.
3DS is quite limited by todays standards though in what it saves but I guess it's a good place to start.
What would probably be more preferable would be .lwo or another format with the more advanced
mesh features, even .X has better features then .3DS and I would be more inclined to spend time
writing supporting code for such a format.
MS3D I will not do because I cannot afford to register milkshape atm which would be required to
maintain the port due to Milkshapes time demo limitation (iirc you get only 2 weeks, it's been along
time since I tried it, and it didn't do much for me to be honest)... I'll look at formats after I finnish
all the texturing support and decide which format would probably be of best value to users... Input
from others here greatly appreciated so I know your needs :)

Cheers
    Dave

Lightning

  • Sr. Member
  • ****
  • Posts: 422
Lazarus 3DTK
« Reply #3 on: July 14, 2004, 12:03:46 pm »
Most delphi programmers use the 3ds, ms3d, ase, .obj, etc. formats and i think they would like to be able to use them in Lazarus too, it should not be difficult to port them in Lazarus :)
The future must be... Fast and OpenSource so...
Think Open and Lightning Fast!

Anonymous

  • Guest
Lazarus 3DTK
« Reply #4 on: July 21, 2004, 12:51:36 pm »
Just a quick update for anyone interested...
The Win32 version of the toolkit is all but complete.
After internal debate with myself I've decided on creating my own 3D Model format so that people don't feel obliged to stick to any given format, which also means it is easily changeable for peoples own needs.  I will provide a tool with source to convert 3DS and/or .X objects to this model format so that people can get off to a fast start, and if I get a chance i'll attempt to make a tool to convert Blender3D scenes as well (I've discovered the documentation on the format is lacking.. i.e non-existant, and it's only through wading through hundreds of C headers and code is the picture of how it works starting to come clear, and want to get this released to you guys waay before Dec 2006).
After I finish the model loading code i'll work on the *NIX ports and then do an upload.

  Cheers
       Dave

Lightning

  • Sr. Member
  • ****
  • Posts: 422
Lazarus 3DTK
« Reply #5 on: July 21, 2004, 03:11:56 pm »
Do you know about the Delphi OpenGL projects, Delphi3D, Sulaco, Quake2Delphi, etc.
They say Quake II has been adapted to compile with Free Pascal but i can only find the Delphi version of the source, we could use these as a foundation for Lazarus implementation, you might not agree but i think "reinventing the wheel is not wise" we should improve the existing Object Pascal projects and show the people currently working with Delphi that there is an Open Source CrossPlatform alternative.

I'm  :D  people want to implement advanced OpenGL support in Lazarus, i'm waiting for OpenAL support too  :lol:  , this way Games and High Quality Graphics apps. will be possible to create with Lazarus.
The future must be... Fast and OpenSource so...
Think Open and Lightning Fast!

Barak

  • New member
  • *
  • Posts: 6
Lazarus 3DTK
« Reply #6 on: July 22, 2004, 05:27:29 am »
No, i'm not really that aware of whats happening in the Delphi comunity, but upon saying this
the Toolkit is written with expandability and easy x-platform porting... Delphi is based on
Win32 and Qt iirc,  which means that the OpenGL front end has to chain to them... The Lazarus
3D Toolkit needs to be easily able to port to OSX and other DE's that Lazarus may well find
itself on.
One thing here, I'm not really reinventing a wheel; most of the toolkit I have ported over
from my own C++ 3D Engine that I wrote for Direct3D, so it's mainly porting and recoding what
worked for D3D over to OpenGL's framework.
When it comes to using Quake etc. there are licensing issues involved... Quake was released if
memory serves me right under the GPL license, which would force people using the toolkit to
go GPL if they were to write there own game with it, this is not my goal, indeed, the license I
choose will probably be more inclinded to be a BSD related one, or atleast LGPL.
When it comes to showing the Delphi community alternatives, my own experience shows me that
Delphi users are quite aware of Lazarus and indeed do show hostility if you bring it up on an IRC
related channel... The way to bring Delphi users over to Lazarus imho is to offer them things they
do not currently have, i.e native FreeBSD and OSX compatiblity (Anyone up for the OSX challenge?).
OpenAL is on my agenda sometime in the near future... I'm tossing up if to port OpenAL, ODE or get
CG running as my next goal.

Cheers
    Dave

Lightning

  • Sr. Member
  • ****
  • Posts: 422
Lazarus 3DTK
« Reply #7 on: July 22, 2004, 01:45:13 pm »
OpenGL is designed to be platform independent so recently i found that Kylix support for OpenGL has improved, the only things that aren't the same is the way OpenGL is initialised, but glut solves most platform dependencies.
Delphi 3D is the best place to get docummentation and working apps.
Sulaco has verrry good demos.
Quake2Delphi project is released under GPL and it shows how a good 3D engine could be made in Delphi.
Quake 3 code has been released but it can't be translated, ID Software doesn't seem to like other languages.
By not reinventing i mean that most code is in Object Pascal and isn't platform specific, it's also optimised.
If i understand you are an C++ developer like the programmer that made delphi3d.net, i think you should visit the site and see how Delphi is doing.
I agree that we should do something if we want Delphi programmers to use and improve Lazarus.
The future must be... Fast and OpenSource so...
Think Open and Lightning Fast!

mathx

  • New member
  • *
  • Posts: 5
Lazarus 3DTK
« Reply #8 on: October 13, 2004, 07:18:03 pm »
This is an old post, but anyways...

Maybe, instead of creating your own engine, you could help out on porting glscene to FPC. GLScene is currently a very mature 3d toolkit for Delphi. There was an attempt made by some people a while ago, and it was pretty much successfull despite a few problems. Check out this thread:

http://www.lazarus.freepascal.org/index.php?name=PNphpBB2&file=viewtopic&t=84&highlight=glscene

Cya.

 

TinyPortal © 2005-2018