GLUT Celestia for Windows.

The place to discuss creating, porting and modifying Celestia's source code.
Topic author
marc
Posts: 426
Joined: 13.03.2002
With us: 22 years 8 months
Location: Outback Australia

GLUT Celestia for Windows.

Post #1by marc » 12.09.2003, 07:30

For the developers:
Do you think there would be any major issues in compiling a GLUT Celestia for windows?
For my game I'm thinking of stripping the existing GUIs off Celestia and creating a new cross platform one using the plib/pui OpenGL rendered menus and widgets.
http://plib.sourceforge.net/pui/

Any comments?

chris
Site Admin
Posts: 4211
Joined: 28.01.2002
With us: 22 years 9 months
Location: Seattle, Washington, USA

Post #2by chris » 13.09.2003, 01:46

I don't see any problems building the GLUT version of Celestia on Windows. If there is the odd compile error, it should be trivial to resolve it.

--Chris

Paolo
Posts: 502
Joined: 23.09.2002
With us: 22 years 1 month
Location: Pordenone/Italy

Post #3by Paolo » 13.09.2003, 14:22

Hi Marc

I'm interested in helping you with this project.
I'm already doing some experiments in this direction.
I don'know if I will be able to give you a lot of effort, because I havn't so much esxperience in C++/OGL, but I would like to try.

If you accept my offer we should collaborate.

Bye - Paolo
Remember: Time always flows, it is the most precious thing that we have.
My Celestia - Celui

Topic author
marc
Posts: 426
Joined: 13.03.2002
With us: 22 years 8 months
Location: Outback Australia

Post #4by marc » 14.09.2003, 09:01

Thanks for the confirmation Chris, I definitley will be going ahead with this approach.

Paolo,
It was your website that started this in the first place., thanks for the insight.
As for help, thanks for the offer but I'm just tossing ideas around for now, Ive got a few other things on my list to do first. Ill let everyone know when i start messing around with GLUT and pui.
Lastly, just to make it clear, the new gui will not be for Celestia.

Enough talk, time to pull my finger out and put some code where my mouth is. (touch wood) :)

Paolo
Posts: 502
Joined: 23.09.2002
With us: 22 years 1 month
Location: Pordenone/Italy

Post #5by Paolo » 14.09.2003, 15:40

Marc

Until you won't start with this project I will continue to study C++, Celestia code, GLUT and PUI so hopefully when the time will come a I will be ready to give a hand. :D

Bye - Paolo
Remember: Time always flows, it is the most precious thing that we have.

My Celestia - Celui

Paolo
Posts: 502
Joined: 23.09.2002
With us: 22 years 1 month
Location: Pordenone/Italy

Post #6by Paolo » 16.10.2003, 20:00

Hi Marc

Does you project proceed?

I've studied PLIB/PUI for a while, and I think that for some purposes it has too many features and for other aspects is too poor of functionalities and gadgets.

I've planned to create another library that I'll call celui. Perhaps sometimes in the future will be used by Celestia too.

This UI will be natively optimized and integrated with celestia objects and surely will be useful for Mostly Harmless too.

I've identified the following celui specifications
- Graphical UI based on OpenGL
- Not uses only GLUT for user input management
- Native multilanguage capability
- Non scalable Texture fonts (Like Celestia without mipmapping)
- UI Widgets created at runtime: coded or loaded from plain text files
- Extendable collection of widgets
- Animated graphics (fading effects, sqeeze/stretch, roll down/up, path animation, animated text);

The initial list of available widgets will have the following items:
- uiManager (to dispatch user's input, load from file or create widgets)
- uiWindow (for dialog boxes)
- uiMessage (standard message box)
- uiToolbar (for non modal dialog boxes)
- uiBevel
- uiLabel
- uiTooltip
- uiText
- uiLargeText
- uiButton
- uiButtonExt (Button with images for toolbars)
- uiOptionButton (up/down, radio, check)
- uiOptionGroup
- uiListBox
- uiComboBox
- uiMenu
- uiScrollBar
- uiSlider (mono, bi, tri-slider)
- uiRoundSlider (mono, bi, tri-slider)
- uiTable
- uiTree
- uiGauge
- uiGraphic
- uiLine
- uiBox
- uiCircle
- uiImage

I've already prepared the basic Classes and the visualization routines.
I hope to be able to prepare a demo with some widgets within a pair of weeks.

Bye - Paolo
Remember: Time always flows, it is the most precious thing that we have.

My Celestia - Celui

Topic author
marc
Posts: 426
Joined: 13.03.2002
With us: 22 years 8 months
Location: Outback Australia

Post #7by marc » 17.10.2003, 05:24

I have to disagree with you here Paolo.
My work continues, slowly but it continues. I have been playing around with pui and I am very impressed with what it can do. It could quite easily be used to replace all of celestia's non openGl gui stuff. (with a bit of work of course). It is missing a treeview and date/time picker but im sure custom widgets could be made.
The transparent widgets it can do look really great by the way. :)

From your list of specs the only things pui cant do are
animated graphics, and non scalable texture fonts.
(celestias current fonts dont have to go remember)

Dont take offence, but you're mad writing a new set of widgets for celestia. Have you looked at pui's source code?
To achieve your goal I strongly suggest modifying pui, please dont waste your time re-inventing the wheel.

nuff said.

Topic author
marc
Posts: 426
Joined: 13.03.2002
With us: 22 years 8 months
Location: Outback Australia

Post #8by marc » 17.10.2003, 07:24

I just found this, a graphical pui gui builder!

http://plib.sourceforge.net/dist/p-guide-0.0.1.tar.gz

Paolo
Posts: 502
Joined: 23.09.2002
With us: 22 years 1 month
Location: Pordenone/Italy

Post #9by Paolo » 18.10.2003, 22:43

Hi Marc.

Thank you for your opinions and, yes I've studied the pui source in deep. :D

I've deliberately choosen to reinvent the wheel, because I think that is the best way to familiarize with C++, STL and OpenGL.

I think that my celui project is compex enough to accumulate experience to be able, within a few months, to put the hands on Celestia code.

So I'm using this project as a gym playground for experimentation.

Stay tuned, perhaps I will be able to surprise you. The ui designer that is in my mind is slightly better than the pui gui builder. :wink:

Bye - Paolo
Remember: Time always flows, it is the most precious thing that we have.

My Celestia - Celui

Topic author
marc
Posts: 426
Joined: 13.03.2002
With us: 22 years 8 months
Location: Outback Australia

Post #10by marc » 19.10.2003, 03:51

Now using it as a learning experience is a different story.
Good luck with it, and keep everyone posted.

Paolo
Posts: 502
Joined: 23.09.2002
With us: 22 years 1 month
Location: Pordenone/Italy

Post #11by Paolo » 31.10.2003, 21:29

Hi Marc.
Does your work proceed?
Are you still testing PUI?

Marc wrote:Good luck with it, and keep everyone posted.

I've kept you literally so here I am with the news.

My celui project is going on slowly but I'm going to be slightly proud of my work.
I've finished the loading from file of widgets and the widget animation stuff.

Actually I have some problems with celtxf, but I hope to able to solve them soon.
The next step will be the input management to get the celui interactive.

I want to have your opinion.
I hope to be able to prepare a demo within the weekend.

Bye - Paolo
Remember: Time always flows, it is the most precious thing that we have.

My Celestia - Celui

Topic author
marc
Posts: 426
Joined: 13.03.2002
With us: 22 years 8 months
Location: Outback Australia

Post #12by marc » 01.11.2003, 02:27

Sounds great Paolo. Im looking forward to seeing a demo.
Lately I've been learning Lua, and thinking of how to mix it with SQL. Except for playing with the complex demo I havn't done any further work with Pui.

I dont now much about celtxf. There is a linux program available to create txf's from ttf's and I have a bunch of links to GPL and free fonts if your interested.

Marc

Paolo
Posts: 502
Joined: 23.09.2002
With us: 22 years 1 month
Location: Pordenone/Italy

Post #13by Paolo » 16.11.2003, 17:03

Hi Marc. Monthly update.

AAAAAARRRRGGGHHHHH :evil:
I'm still going to fix the problems with text. :cry:
I've completely rewritten the texture font classes, but I still have problems.
I think that I'll go forward with other issues for the moment.

In any case you can find an example CIO2 on my website.

You can do some experiments changing the file with ui extension in the package.

Bye - Paolo
Remember: Time always flows, it is the most precious thing that we have.

My Celestia - Celui

Topic author
marc
Posts: 426
Joined: 13.03.2002
With us: 22 years 8 months
Location: Outback Australia

Post #14by marc » 17.11.2003, 03:49

Hi Paolo, good to hear progress is still going.

I couldnt run your program, you forgot to put the glut32.dll in with the executable.

I tried using the dll i have from glut version. 3.7, and i get the error "The procedure entry point __glutInitWithExit could not be located.....in glut32.dll"
The error is the same for the binary I got from the opengl website and a glut32.dll that I compiled from source.

I did a bit of a google and it looks the methods glutInitWithExit and glutCreateWindowWithExit you are using are windows specific. You must have an old or beta version of glut. Can you tell me what version of glut you are using and where you got it?
To stay cross platform i think you should use glutInit and glutCreateWindow instead. (if it works of course).

I have finished my MySQL addon work, only bug fixes on that now. After i finish re-coding the planet generator ill be on to the pui stuff. It could be a while before i get to that though.

Good luck with the txf stuff, I know how frustrating it can be. It took me ages to create the constant width txf fonts that I use for the SQL tables.

Topic author
marc
Posts: 426
Joined: 13.03.2002
With us: 22 years 8 months
Location: Outback Australia

Post #15by marc » 17.11.2003, 04:10

It looks like development on opengl's glut stopped back in 1998.

freeglut.sourceforge.net has been in active development more recently, it claims be compatible with glut and has fixed some of the bugs.

Might be work a look.

Paolo
Posts: 502
Joined: 23.09.2002
With us: 22 years 1 month
Location: Pordenone/Italy

Post #16by Paolo » 17.11.2003, 21:32

Hi Marc
First of all sorry because I've not tested the program on other PC's. :oops:

marc wrote:I couldnt run your program, you forgot to put the glut32.dll in with the executable.

I tried using the dll i have from glut version. 3.7, and i get the error "The procedure entry point __glutInitWithExit could not be located.....in glut32.dll"
The error is the same for the binary I got from the opengl website and a glut32.dll that I compiled from source.


I have 3 different glut32.dll on my system.
One of them is in c:\windows\system.
I haven't installed it manually so I don't know which version is nor where does it come from. Perhaps it came with WinXP pro or with the ATI Radeon 8500 drivers. I don't know.

marc wrote:I did a bit of a google and it looks the methods glutInitWithExit and glutCreateWindowWithExit you are using are windows specific. You must have an old or beta version of glut. Can you tell me what version of glut you are using and where you got it?
To stay cross platform i think you should use glutInit and glutCreateWindow instead. (if it works of course).


As base I've taken one of the examples of PUI.
The PUI example uses:

Code: Select all

    glutInitWindowPosition (0, 0 ) ;
    glutInitWindowSize (800, 600);
    glutInit (&argc, argv);
    glutInitDisplayMode (GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH );
    glutCreateWindow ("CIO GL test");


And I did so without any modification.
Have you any other suggestion?

Bye - Paolo
Remember: Time always flows, it is the most precious thing that we have.

My Celestia - Celui

Paolo
Posts: 502
Joined: 23.09.2002
With us: 22 years 1 month
Location: Pordenone/Italy

Post #17by Paolo » 17.12.2003, 22:47

1 month, to get out of txf font format problems. :cry:

1 month, it is a heap of time :x

1 month..... I can't believe, as C++ and OpenGL programmer I still have to improve a lot. :oops:

By the way I've abandoned txf format. I've asked my younger brother Davide to build a new program to create another Texture font format. :roll: He is a professional Delphi programmer. :wink:

We are pretty satisfied about the result. With this program it is possible to convert a Unicode TrueType font in a texture font format similar to txf but if possible more powerful.
It is possible to:
- use antialiasing to render TrueType fonts with a smoother appearance.
- set a filter to select the available charsets contained in a TrueType file.
- save power of two texture with a size up to 1024 x 1024.

We are defining the final packaging so if someone is interested within a pair of days it will be available for download on my website.

Bye - Paolo
Remember: Time always flows, it is the most precious thing that we have.

My Celestia - Celui

Paolo
Posts: 502
Joined: 23.09.2002
With us: 22 years 1 month
Location: Pordenone/Italy

Post #18by Paolo » 19.12.2003, 00:43

The First version of ADGLFont Creator is available for use. :D
You can find it at the following address. :wink:
http://members.xoom.virgilio.it/pangeli ... /index.htm

A few days ago a discussion was started in the development mail list about charsets different from latin. The discussion was conducted in order to find a solution to render correctly the names of the Earth's locations when unicode is used. :roll:
Perhaps someone will be interested in this small program that is able to create texture font files even for Japanese ideograms. 8)

Many many thanks to my brother Davide :!:

Bye - Paolo
Remember: Time always flows, it is the most precious thing that we have.

My Celestia - Celui

don
Posts: 1709
Joined: 12.07.2003
With us: 21 years 4 months
Location: Colorado, USA (7000 ft)

Post #19by don » 19.12.2003, 08:38

Howdy Paolo,

Thank you for posting this information. I have copied it to the Developer's mailing list in hopes that someone there will take notice. I am not into character sets, foreign fonts, or OpenGL, so there is not much I can do myself.

Thanks again!

Happy Holidays,

-Don G.

chris
Site Admin
Posts: 4211
Joined: 28.01.2002
With us: 22 years 9 months
Location: Seattle, Washington, USA

Post #20by chris » 19.12.2003, 09:56

Paolo wrote:1 month, to get out of txf font format problems. :cry:
By the way I've abandoned txf format. I've asked my younger brother Davide to build a new program to create another Texture font format. :roll: He is a professional Delphi programmer. :wink:

We are pretty satisfied about the result. With this program it is possible to convert a Unicode TrueType font in a texture font format similar to txf but if possible more powerful.
It is possible to:
- use antialiasing to render TrueType fonts with a smoother appearance.
- set a filter to select the available charsets contained in a TrueType file.
- save power of two texture with a size up to 1024 x 1024.


I'm just wondering: why did you decide to invent the new format? It seems like txf would suffice, and would be immediately compatible with Celestia. The txf format also supports antialiased fonts, different character sets, and large texture sizes . . . This is just a question, not criticism.

--Chris


Return to “Development”