TTimo / GtkRadiant

The open source, cross platform level editor for idtech games
http://icculus.org/gtkradiant/
Other
586 stars 155 forks source link

OSX version - headcount #90

Closed TTimo closed 11 years ago

TTimo commented 12 years ago

http://www.urbanterror.info/forums/topic/28697-gtk-radiant-is-back-under-active-development/page__pid__330489__st__10#entry330489

Using macports? Building from source, or providing a binary package?

If you would use OSX builds of GtkRadiant, or if you are interested in helping the programming side of making an OSX release, post on this task with the following information:

banksy7 commented 12 years ago

I am a level developer, I use OSX, and I really want an updated version of the 1.4 mac port. I have Xquartz and Xcode installed, and use them every day. Bascially want an OSX version of 1.6 with the same features, and without any glitches.

TTimo commented 12 years ago

banksy7: what OSX release, and what game(s) do you map for?

banksy7 commented 12 years ago

Lion. I map for urban terror and tremulous/unvanquished

0bsidian commented 12 years ago

My Mac kicked the bucket, but should be getting an upgrade soon. Will probably be running Lion/Mountain Lion. I can probably do testing for Quake 3/Quake Live.

Edit: Mountain Lion Mid-2012 Macbook Air 13" 2.0GHz Intel Dual-Core Core i7, 256GB SSD, 8GB RAM

Dougy1992 commented 12 years ago

Are you a programmer or a level designer?

Level Designer

What game(s) do you map for?

Urban Terror

Your OSX version and hardware?

Mac OSX 10.5.8 PowerPC Mac, 512 mb ram.

How badly you want an OSX build?

I really want it...

Do you have macports installed, how much do you use it?

Yes, every day for compiling different binaries and keeping different tools up-to-date.

If you are a programmer, what are your suggestions for the OSX version?

I'm not a programmer but a suggestion would be to make Urban Terror a built in mapping game other than having to choose: Quake III Arena/Quake III Team Arena.

banksy7 commented 12 years ago

Yes similar to that of net radiant. Net radiant has all the essential files for tremulous already in it. So it would be nice to if radiant had all the files for urt already added in. Plus maybe another graph level. So we edit even smaller objects?

KAS80 commented 12 years ago

Hey Peepz…

Are you a programmer or a level designer

What game(s) do you map for

Your OSX version and hardware

How badly you want an OSX build

Do you have macports installed, how much do you use it

If you are a programmer, what are your suggestions for the OSX version

TTimo commented 12 years ago

Current code compiles out of the box on my OSX 10.7 system. Just need to use port to install dependencies (scons and gtkglext). Looks like it would be rather straightforward to contribute a ports file.

banksy7 commented 12 years ago

I am very much looking forward to this :D

jdolan commented 11 years ago

I'm a programmer (Quake2World maintainer) and rather poor level designer. I develop on a Mac, and I've produced distributable packages for Quake2World for Mac -- which builds using Macports dependencies.

I'll take a stab at producing a Mac .app build script for Radiant over the next week or two. I'm traveling, so it might be a bit before I have a chunk of time to spend on this.

jdolan commented 11 years ago

Just an update, after about an hour of fiddling around, and some helpful answers from TTimo, I have GtkRadiant running on my Mac -- with Quake2[World] support.

Screen Shot 2013-01-02 at 5 44 27 PM

JanSimek commented 11 years ago

Are you a programmer or a level designer: neither, really What game(s) do you map for: Wolfenstein: Enemy Territory Your OSX version and hardware: MacBook Pro, 10.8 How badly you want an OSX build: my life doesn't depend on it Do you have macports installed, how much do you use it: I use homebrew instead If you are a programmer, what are your suggestions for the OSX version: use Qt instead of that ugly Gtk :-)

IVXCVI commented 11 years ago

Are you a programmer or a level designer:

What game(s) do you map for:

Your OSX version and hardware:

How badly you want an OSX build:

Do you have macports installed, how much do you use it:

If you are a programmer, what are your suggestions for the OSX version:

jdolan commented 11 years ago

Just an update, I have found that the X11 which ships with Lion and lower suffers from a bug which manifests in the GtkRadiant texture browser:

http://xquartz.macosforge.org/trac/ticket/438

This is the culprit behind the glXMakeCurrent() failed messages in the Radiant log, too. As you can see in that ticket, a fix was implemented in XQuartz 2.6.3.

I was able to get the texture browser working more or less okay on OS X Lion by installing the latest XQuartz release (2.7.4) directly from the XQuartz website. The version of XQuartz available through Macports (xorg-server) was not stable for me at all -- I would avoid it.

Install XQuartz 2.7.4 or better, logout and login to activate it, and you should be good to go.


Note that we're still seeing the same error messages in the Radiant log, but the texture browser continues to function. However, it does suffer from some strange delay when opening it, even on subsequent openings.

We're also seeing GL_ERROR's in the Radiant console.. so, definitely some OpenGL state issues to sort out on Mac still, but this is much closer to being usable with XQuartz.

jdolan commented 11 years ago

Here's an excerpt of the console log. This bunch of errors is repeatedly spat out whenever I open the texture browser:

(radiant.bin:77718): GdkGLExt-WARNING **: glXMakeCurrent() failed
Jun  2 13:27:45 Jay-Dolans-MacBook-Pro.local radiant.bin[77718] <Error>: kCGErrorIllegalArgument: CGSGetWindowBounds
Jun  2 13:27:45 Jay-Dolans-MacBook-Pro.local radiant.bin[77718] <Error>: kCGErrorIllegalArgument: CGSGetSurfaceBounds
Jun  2 13:27:45 Jay-Dolans-MacBook-Pro.local radiant.bin[77718] <Error>: kCGErrorIllegalArgument: CGSBindSurface: Invalid window 0xa3
Jun  2 13:27:45 Jay-Dolans-MacBook-Pro.local radiant.bin[77718] <Error>: kCGErrorIllegalArgument: CGSBindSurface: Invalid window 0xa3
Jun  2 13:27:45 Jay-Dolans-MacBook-Pro.local radiant.bin[77718] <Error>: kCGErrorIllegalArgument: CGSBindSurface: Invalid window 0xa3

And here's an excerpt of the Radiant console log:

ERROR: glXMakeCurrent failed..
 Please restart Radiant if the Texture view is not working
Warning: OpenGL Error Unknown error
Warning: OpenGL Error Unknown error
Warning: OpenGL Error Unknown error
Warning: OpenGL Error Unknown error
Warning: OpenGL Error Unknown error

Again, a set of errors like this is generated each time the texture browser is opened.

jdolan commented 11 years ago

Anyone interested in test-driving GtkRadiant on Mac can give this a spin:

http://jdolan.dyndns.org/tmp/GtkRadiant-1.6.4.dmg

Please report back with any issues you have. I'll be trying to wrap this up for the 1.6.4 release.

0bsidian commented 11 years ago

Nice. Any special instructions? Does this just install a .app or does it require Macports, etc.?

jdolan commented 11 years ago

You will be able to just install and run the app on any 10.6-10.8 box. Unfortunately I realized yesterday that I'm missing some FontConfig config file or something. Need to sort that out.

jdolan commented 11 years ago

The .app has been updated (same URL) if you wanna give it another shot.

KAS80 commented 11 years ago

NICE :D

I will give it a Try!!!! Thanks a lot

Edit: Okay…something is not working for me. My Mac running on 10.6.8 The app is Bouncing 1 time at the Dock…and nothing more happen….!?

0bsidian commented 11 years ago

Same issue, application doesn't seem to start, no error messages. 10.8.4

jdolan commented 11 years ago

Interesting. I was able to start the application last night on my wife's MB Air and it wanted to run without issue. The only problem was the fonts missing / misconfigured (which this morning's build attempts to address).

You should run Console.app and capture the output once you launch Radiant. You'll see something like:

Starting Radiant in /Applications/GtkRadaint.app/Contents/Resources

As the first line of useful output. Paste everything you see after that here.

jdolan commented 11 years ago

Also what version of X11 are you guys using? I'm running the latest XQuartz release, my wife's Air is running the stock Apple X11 -- so I think it works on either, but it's worth confirming.

KAS80 commented 11 years ago

28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant[1287] Starting GtkRadiant in /Applications/GtkRadiant.app 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant[1287] + resources=/Applications/GtkRadiant.app/Contents/Resources 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant[1287] + export FONTCONFIG_PATH=/Applications/GtkRadiant.app/Contents/Resources/etc/fonts 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant[1287] + FONTCONFIG_PATH=/Applications/GtkRadiant.app/Contents/Resources/etc/fonts 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant[1287] + export FC_DEBUG=1024 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant[1287] + FC_DEBUG=1024 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant[1287] + export GDK_GL_LIBGL_PATH=/Applications/GtkRadiant.app/Contents/Resources/lib/libGL.1.dylib 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant[1287] + GDK_GL_LIBGL_PATH=/Applications/GtkRadiant.app/Contents/Resources/lib/libGL.1.dylib 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant[1287] + export GDK_GL_LIBGLU_PATH=/Applications/GtkRadiant.app/Contents/Resources/lib/libGLU.1.dylib 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant[1287] + GDK_GL_LIBGLU_PATH=/Applications/GtkRadiant.app/Contents/Resources/lib/libGLU.1.dylib 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant[1287] + export GDK_PATH=/Applications/GtkRadiant.app/Contents/Resources 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant[1287] + GDK_PATH=/Applications/GtkRadiant.app/Contents/Resources 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant[1287] + export GDK_PIXBUF_MODULE_FILE=/Applications/GtkRadiant.app/Contents/Resources/etc/gtk-2.0/gdk-pixbuf.loaders 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant[1287] + GDK_PIXBUF_MODULE_FILE=/Applications/GtkRadiant.app/Contents/Resources/etc/gtk-2.0/gdk-pixbuf.loaders 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant[1287] + export GOBJECT_PATH=/Applications/GtkRadiant.app/Contents/Resources 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant[1287] + GOBJECT_PATH=/Applications/GtkRadiant.app/Contents/Resources 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant[1287] + export GTK_DATA_PREFIX=/Applications/GtkRadiant.app/Contents/Resources 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant[1287] + GTK_DATA_PREFIX=/Applications/GtkRadiant.app/Contents/Resources 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant[1287] + export GTK_EXE_PREFIX=/Applications/GtkRadiant.app/Contents/Resources 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant[1287] + GTK_EXE_PREFIX=/Applications/GtkRadiant.app/Contents/Resources 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant[1287] + export GTK_PATH=/Applications/GtkRadiant.app/Contents/Resources 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant[1287] + GTK_PATH=/Applications/GtkRadiant.app/Contents/Resources 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant[1287] + export PANGO_SYSCONFDIR=/Applications/GtkRadiant.app/Contents/Resources/etc 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant[1287] + PANGO_SYSCONFDIR=/Applications/GtkRadiant.app/Contents/Resources/etc 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant[1287] + export PANGO_LIBDIR=/Applications/GtkRadiant.app/Contents/Resources/lib 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant[1287] + PANGO_LIBDIR=/Applications/GtkRadiant.app/Contents/Resources/lib 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant[1287] + cd /Applications/GtkRadiant.app/Contents/Resources/install 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant[1287] + set +x 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant + ./radiant.bin 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant dyld: Symbol not found: __tlv_bootstrap 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant Referenced from: /Applications/GtkRadiant.app/Contents/Resources/install/./../lib/libpixman-1.0.dylib 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant Expected in: /usr/lib/libSystem.B.dylib 28.06.13 16:38:45 [0x0-0x5b05b].org.icculus.gtkradiant in /Applications/GtkRadiant.app/Contents/Resources/install/./../lib/libpixman-1.0.dylib 28.06.13 16:38:48 ReportCrash[1292] Saved crash report for radiant.bin[1290] version ??? (???) to /Users/deejaykas/Library/Logs/DiagnosticReports/radiant.bin_2013-06-28-163848_DeeJay-KASs-MacBook-Pro.crash

X11 Version: XQuartz 2.3.6 (xorg-server 1.4.2-apple56)

jdolan commented 11 years ago

Oh boy! That looks fun and obscure!

/usr/lib/libSystem.B.dylib

Is (obviously) provided by the system. I'm not sure what I can do to get around that. Maybe my builds will only work on 10.7. Will investigate.

jdolan commented 11 years ago

I've heard from several folks on 10.7 and 10.8. that the latest build works for them. I'm not sure what to do for 10.6 users. Maybe someone with a 10.6 install could try running my build script. If you have Macports installed, building my .app is not very difficult. One word of warning, be sure your system is already using:

LDFLAGS=-headerpad_max_install_names

Or you'll just end up having to recompile things.

jdolan commented 11 years ago

@TTimo Are you onboard with my change to use GDK_GL_LIBGL_PATH to resolve libGL? I think this is better than the two paths already in GtkRadiant:

It's imperative that we use the same libGL as GtkGLExt, so I prefer that we just piggyback on their environment variable. That's how my launcher script now works. I'd like to remove the two aforementioned code paths. Do you know of any official builds that rely on them?

TTimo commented 11 years ago

Yep that's fine @jdolan I merged the code changes. Trying to compile the mac build is failing for me because of the headerpad thing. Has a problem with libpangocairo .. you seem to suggest some system wide setup change and recompile is needed, can you expand on that?

jdolan commented 11 years ago

That's right. I ran into the same issue locally. The solution was to:

export LDFLAGS=-headerpad_max_install_names

Then:

sudo port clean --work --archive pango 
sudo port -n upgrade --force pango

This will force a recompile of pango with longer header padding.

Repeat for any other ports that give this error. For me, I think pango was the only one.

TTimo commented 11 years ago

fixed up macports, but the app packaging is still failing: https://gist.github.com/TTimo/5891883

airscout commented 11 years ago

It looks like I'm a little late to the party.

Are you a programmer or a level designer

More level designer-ish.

What game(s) do you map for

Urban Terror.

Your OSX version and hardware

10.8.3 on a Core i5/Nvidia based Hackintosh desktop.

How badly you want an OSX build

Reliable binaries and/or source from an active community would be swell as NetRadiant has become increasingly difficult to build.

Do you have macports installed, how much do you use it

Yes, regularly.

If you are a programmer, what are your suggestions for the OSX version

While @jdolan has recently done great work getting everything into a working bundle, I think the ultimate product would be a self-contained OSX version with native menus and no X11 requirement. See: GtkOSXApplication.

jdolan commented 11 years ago

Knock yourself out :dancers:

jdolan commented 11 years ago

A brief guide for compiling on OSX is now available in Git: https://github.com/TTimo/GtkRadiant/tree/master/apple/README.md