Programmer

Development directions, tasks, and features being actively implemented or pursued by the development team.
Post Reply
gaspode
Just a tourist with a frag'd nav console
Just a tourist with a frag'd nav console
Posts: 3
Joined: Sat Sep 25, 2010 11:40 am

Programmer

Post by gaspode »

Hi,
I am a new one and I wonder how can I help. So, I have a few questions:

1) Is there any task list for programmers?
2) Do you thing that there is a need to clean up the code, make code refactorization or make other work which improve the quality of code. If yes, how can I help.
3) Do you have any ideas how GUI system could be improved? I have an experience in gui system programming, so I can help in this field. For example, there is a possibility to implement a ttf font support.

Thanks,
klauss
Elite
Elite
Posts: 7243
Joined: Mon Apr 18, 2005 2:40 pm
Location: LS87, Buenos Aires, República Argentina

Re: Programmer

Post by klauss »

Implementing a ttf font system isn't easy, because it has to render the ttf through OpenGL and the 3D hardware.

It's not that hard either, and there are tons of libraries to help out with the hard stuff (like actually rasterizing the ttf).

If you feel like giving it a shot, it would help VS quite a bit, because text in VS is rather lacking atm.

A simple API to query a string's width (for proportional fonts) and to render it through the GL with a certain color and background (transparent, solid, etc) should be enough, later that can be used to reimplement the current text rendering API.

Otherwise, there's the bug tracker, and a TRAC in some other server with a few tasks (you can't see the tickets there without login though, and I don't administer it).
Oíd mortales, el grito sagrado...
Call me "Menes, lord of Cats"
Wing Commander Universe
gaspode
Just a tourist with a frag'd nav console
Just a tourist with a frag'd nav console
Posts: 3
Joined: Sat Sep 25, 2010 11:40 am

Re: Programmer

Post by gaspode »

klauss wrote:Implementing a ttf font system isn't easy, because it has to render the ttf through OpenGL and the 3D hardware.

It's not that hard either, and there are tons of libraries to help out with the hard stuff (like actually rasterizing the ttf).
Yes, but if it is allowed to use the SDL_ttf library it can be done in less than 20 lines with full 3D hardware support.
klauss wrote:A simple API to query a string's width (for proportional fonts) and to render it through the GL with a certain color and background (transparent, solid, etc) should be enough, later that can be used to reimplement the current text rendering API.

I have written a font class that use SDL_ttf library:
- full 3d hardware support trough the GL. A text is rendered to a texture and it could be render with a certian color with use of transparency or not.
- I have also a function that returns a string width.

Thanks
klauss
Elite
Elite
Posts: 7243
Joined: Mon Apr 18, 2005 2:40 pm
Location: LS87, Buenos Aires, República Argentina

Re: Programmer

Post by klauss »

gaspode wrote: Yes, but if it is allowed to use the SDL_ttf library it can be done in less than 20 lines with full 3D hardware support.
Hm... that would tie ttf rendering to SDL, I know it doesn't seem much, but a few supported platforms don't use SDL, so it's not usually available there.

We could perhaps use SDL_ttf in those platforms that have it, and something else on those that don't. But it could be better to find a library that is available everywhere (freetype I believe is, but do check).

VS should officially run in linux, windows and Mac. We've been having support issues with windows and mac, mostly because of lack of maintainers, but it would be a shame to loos compatibility with those platforms (you can't argue with Windows, like it or not, it's the most common platform out there).

VS also works with minimal patching in BSD and recently Haiku. I believe Mac and BSD are the ones that don't have SDL out of the box. BSD must have a package with SDL, though, so it wouldn't be a big issue, but Mac might.

So... if all else fails, I'll take SDL_ttf over nothing. But if there's something that's supported on all three main platforms (and hopefully the others too), so much the better.
gaspode wrote:
klauss wrote:A simple API to query a string's width (for proportional fonts) and to render it through the GL with a certain color and background (transparent, solid, etc) should be enough, later that can be used to reimplement the current text rendering API.

I have written a font class that use SDL_ttf library:
- full 3d hardware support trough the GL. A text is rendered to a texture and it could be render with a certian color with use of transparency or not.
- I have also a function that returns a string width.

Thanks
Whenever you have a patch/zip/whatever, I'll be glad to review it. It might take a while I warn you, the following days/weeks will be very busy days/weeks for me, and I'll be struggling to find time for it, but nevertheless, do post it.
Oíd mortales, el grito sagrado...
Call me "Menes, lord of Cats"
Wing Commander Universe
gaspode
Just a tourist with a frag'd nav console
Just a tourist with a frag'd nav console
Posts: 3
Joined: Sat Sep 25, 2010 11:40 am

Re: Programmer

Post by gaspode »

klauss wrote:
gaspode wrote: Yes, but if it is allowed to use the SDL_ttf library it can be done in less than 20 lines with full 3D hardware support.
VS should officially run in linux, windows and Mac. We've been having support issues with windows and mac, mostly because of lack of maintainers, but it would be a shame to loos compatibility with those platforms (you can't argue with Windows, like it or not, it's the most common platform out there).
I have checked some time age that sdl_ttf works good on Windows and Linux. Acording to the sdl home page it should work on BSD and Mac also. But I don't know how it look like in practice.
strook
ISO Party Member
ISO Party Member
Posts: 461
Joined: Fri Sep 03, 2010 12:10 pm

Re: Programmer

Post by strook »

It's à very hard Thing to get it Compiled with mac, i didn't figure it out. Also, the mac Version is compiled with Linux libs, so put it easily to the dependency List(Joystick support belongs to it, too)
and it will run like on Linux, cause mac os has an Unix Kernel.
plz visit my vegastrike project branch here

plz support VegaOgre by donating to it!

My systems: Mac mini 1, 4gig RAM;
i5 Quad Core 2400, 300mbit WLAN, 1,3Tbyte HD, 60 GB SSD,
nvidia geforce 8400gs 512MB, 6gig RAM with Ubuntu 11.4,
win7 and hackintosh installed
segfault
Merchant
Merchant
Posts: 39
Joined: Tue Aug 17, 2010 3:50 am
Location: Ottawa, Canada

Re: Programmer

Post by segfault »

I am running VS on FreeBSD and can test specific things for you if needed. Not sure if anyone else has a BSD handy.
I am not up to speed with what you are currently speaking of but when I get some free time I can certainly look into things more if needed.
Let me know.
pheonixstorm
Elite
Elite
Posts: 1567
Joined: Tue Jan 26, 2010 2:03 am

Re: Programmer

Post by pheonixstorm »

Doesn't VS already use SDL for joystick operations?? As for ttf.. it claims support for linux, win32, and OS X. If I can get a stable VS binary I can eventually check it win side.. anyone know any mac users? OS X shouldn't be too much of an issue since its core is based on unix (one would think)
Because of YOU Arbiter, MY kids? can't get enough gas. OR NIPPLE! How does that mkae you feeeel? ~ Halo
klauss
Elite
Elite
Posts: 7243
Joined: Mon Apr 18, 2005 2:40 pm
Location: LS87, Buenos Aires, República Argentina

Re: Programmer

Post by klauss »

Actually, in private dialogue we've settled with ttf-derived bitmap fonts.

That is, a tool will create a bitmap with the glyphs and a text file with metadata for a small library to render with OpenGL.

I have workable code for that sitting on my email, though it needs adaptation, and the tool to generate the bitmap currently works in windows only (but I bet it works in wine).

Bitmap fonts have always been the best fit for game engines, so this should work, and won't require any new dependency (except for creating the bitmaps, but that's only on the developer side).
Oíd mortales, el grito sagrado...
Call me "Menes, lord of Cats"
Wing Commander Universe
pheonixstorm
Elite
Elite
Posts: 1567
Joined: Tue Jan 26, 2010 2:03 am

Re: Programmer

Post by pheonixstorm »

any status update on this?
Because of YOU Arbiter, MY kids? can't get enough gas. OR NIPPLE! How does that mkae you feeeel? ~ Halo
klauss
Elite
Elite
Posts: 7243
Joined: Mon Apr 18, 2005 2:40 pm
Location: LS87, Buenos Aires, República Argentina

Re: Programmer

Post by klauss »

Only that I'm leaning a lot more towards adopting MyGUI, provided strook manages to make it cooperate with VS.

MyGUI would give us a very powerful tool: render to texture so that interfaces can be mapped into 3D virtual cockpits.
Oíd mortales, el grito sagrado...
Call me "Menes, lord of Cats"
Wing Commander Universe
pheonixstorm
Elite
Elite
Posts: 1567
Joined: Tue Jan 26, 2010 2:03 am

Re: Programmer

Post by pheonixstorm »

I found something else that might be worth a review for practical use. Didn't go to github so not sure of the license.
http://jamesturk.net/projects/glft_font
Because of YOU Arbiter, MY kids? can't get enough gas. OR NIPPLE! How does that mkae you feeeel? ~ Halo
Post Reply