The official "ZDoom on Mac OS X" thread.

Handy guides on how to do things, written by users for users.

Moderators: GZDoom Developers, Raze Developers

Forum rules
Please don't start threads here asking for help. This forum is not for requesting guides, only for posting them. If you need help, the Editing forum is for you.
User avatar
Chris
Posts: 2942
Joined: Thu Jul 17, 2003 12:07 am
Graphics Processor: ATI/AMD with Vulkan/Metal Support

Re: The official "ZDoom on Mac OS X" thread.

Post by Chris »

jdagenet wrote:Are you able to use .SF2 with the FMOD device? I thought FMOD only supported .DLS files -- Fluidsynth and TiMidi++ were the only two devices in ZDoom that had .SF2 support, right?
According to the headers, FMOD accepts DLS/SF2 "sample sets".
_mental_
 
 
Posts: 3812
Joined: Sun Aug 07, 2011 4:32 am

Re: The official "ZDoom on Mac OS X" thread.

Post by _mental_ »

Blzut3 wrote:Perhaps this would be a good reason to bother with implementing CoreMIDI support? Assuming the OS X system synthesizer sounds any better.
I guess it will use the same default soundfont. If the sound quality does matter, it's better to use FluidSynth which supports more banks with a lot of them available freely.
Chris wrote:According to the headers, FMOD accepts DLS/SF2 "sample sets".
I tried this and this SF2 soundfonts with FMOD 4.26.x and 4.44.x on OS X. Both versions were unable to use them. FMOD::System::createSound() returns FMOD_ERR_FORMAT if one of the given files is specified in FMOD_CREATESOUNDEXINFO::dlsname.
User avatar
Scientist
Posts: 59
Joined: Tue Jul 05, 2005 5:28 pm
Location: the Netherlands
Contact:

Re: The official "ZDoom on Mac OS X" thread.

Post by Scientist »

I recently released a project (Delaweare). I'm getting reports it's not working on OS 10.8. It works fine on 10.6. I can't tell anything from the error message :(. Does anyone know how to fix it?
Here's the mac version of Delaweare:
http://goo.gl/hTHXZQ

Here's the error:
Spoiler:
_mental_
 
 
Posts: 3812
Joined: Sun Aug 07, 2011 4:32 am

Re: The official "ZDoom on Mac OS X" thread.

Post by _mental_ »

Scientist wrote:I'm getting reports it's not working on OS 10.8. It works fine on 10.6. I can't tell anything from the error message :(. Does anyone know how to fix it?
There are two issues here:
1. Overwriting of user's config file. It's very bad idea IMHO.
2. Selection of SDL Framework's version isn't working because a symbolic link Delaweare.app/Contents/Frameworks/SDL.framework is already present. It points to older version which has different issues on 10.7 and above. That's why the game crashes on 10.9 from your report.
User avatar
Scientist
Posts: 59
Joined: Tue Jul 05, 2005 5:28 pm
Location: the Netherlands
Contact:

Re: The official "ZDoom on Mac OS X" thread.

Post by Scientist »

Hey man, Thanks! You have been a great help :D.
vorty
Posts: 9
Joined: Fri Jul 18, 2014 3:17 pm

Re: The official "ZDoom on Mac OS X" thread.

Post by vorty »

Hi all. I'm sorry if this isn't the proper place to ask GZDoom mac issues, but there's no support forum for gzdoom mac. My issue is that I'm unable to get the DHTP doom hi-res texture pack to work in gzdoom using ZDL. I'm using the zdl mac 3.2.2.3 beta to load external files into v. 0.2.7 GZDOOM (For OSX 10.6+). I downloaded the hi-res texture pack that's supposed to be compatible with gzdoom (verified by using the texture pack successfully with GZDOOM for Windows), but it refuses to load with GZDOOM mac using ZDL Mac. I've even tried editing my gzdoom.ini file to include the dhtp texture pack in the doom1 and doom 2 autoload, but no luck there either. HOWEVER, all my pkg's load just fine (including the hi-res pack) if I drag and drop them onto the gzdoom app directly. This leads me to believe that zdl isn't handling multiple pkg files correctly. Is there an error log for gzdoom or zdl? Is there a way to batch load pkg's in gzdoom without zdl and without just dragging a bunch of them onto the gzdoom app every time I want to play? It seems to be a bug with the mac zdl release.
Last edited by vorty on Sat Jul 19, 2014 9:52 am, edited 1 time in total.
Blzut3
 
 
Posts: 3144
Joined: Wed Nov 24, 2004 12:59 pm
Graphics Processor: ATI/AMD with Vulkan/Metal Support
Contact:

Re: The official "ZDoom on Mac OS X" thread.

Post by Blzut3 »

_mental_, What is the state of the Cocoa backend in GZDoom OS X? People are trying to get me to port it over to ZDoom and I'm kind of wondering why you haven't submitted it yourself. I sure Randi would love to see a full native back end like win32.

Speculation says it might be due to the lack of 10.4/10.5 and PowerPC support?
_mental_
 
 
Posts: 3812
Joined: Sun Aug 07, 2011 4:32 am

Re: The official "ZDoom on Mac OS X" thread.

Post by _mental_ »

Yes, native Cocoa backend requires 10.6 but only to create "full screen" window. IIRC Qt does this even on 10.4, using Carbon API I guess. Full screen display capturing on OS X is a real crap. Although this is the minor issue.
The big one is the way how Cocoa backend was implemented. I did it in SVN era of (G)ZDoom, with a term to keep changes in the original code as minimum as possible. That's why it looks like a hack with partial replacements for SDL functions. Post-processing is also introduced in the same way. And thread-based frame timer implementation. Maybe something else I forgot.
Using native backend software rendering works like this: frame buffer is rendered as a quad with texture on OpenGL view. VSync is working in software for this reason. But it has some drawbacks too.
I'm curious why does someone need this backend in ZDoom?
Blzut3
 
 
Posts: 3144
Joined: Wed Nov 24, 2004 12:59 pm
Graphics Processor: ATI/AMD with Vulkan/Metal Support
Contact:

Re: The official "ZDoom on Mac OS X" thread.

Post by Blzut3 »

I'm told SDL 1.2 is crap on the Mac. Apparently it prevents all shortcut keys from working, and I was told "why don't you just pull the Cocoa stuff from GZDoom. It works perfectly." Plus there's the hack that we have two SDL frameworks, that could probably be solved by not using SDL and leaving the OS support in our hands. (Since Objective-C uses run time binding, it should be theoretically painless to switch between code paths based on OS X version.)

SDL 2.0 is a little better, but that drops PowerPC and I believe 10.4 as well, so it's not like it would really be an improvement over using the native code you already wrote.
_mental_
 
 
Posts: 3812
Joined: Sun Aug 07, 2011 4:32 am

Re: The official "ZDoom on Mac OS X" thread.

Post by _mental_ »

OK, I will take a look how complex it will be to use native backend in ZDoom. I have no idea is it possible to overcome 10.6 requirement. CMake is not my expertise but it shouldn't be too many changes here.
Some time ago, just for fun, I put my changes into Zandro 2 and everything was OK. However I didn't update CMake scripts, as I was using hand-crafted Xcode project.

Update: I did very rough integration. The current CMake build system on OS X produces just an executable but not an application bundle.
Blzut3, is it possible to incorporate a bundle creation into CMake scripts? Some time ago you told me that you are using separate shell script for this, i.e. for DRD builds.
This will make my job easier. Actually, I will need to spend some more time on Cocoa backend clean up.
vorty wrote:I've even tried editing my gzdoom.ini file to include the dhtp texture pack in the doom1 and doom 2 autoload, but no luck there either.
1. Open ~/Library/Application Support/GZDoom/GZDoom.ini in your favorite text editor
2. Search for [Doom.Autoload]
3. After that line add new line with the following content

Code: Select all

Path=/full/path/to/zdoom-dhtp-20140616.pk3
Of course, you need to adjust /full/path/to/ (and file name maybe) to the location of your pack. You can put file name only here, without full path, if you copy .pk3 to ~/Library/Application Support/GZDoom folder
4. Save changes and start GZDoom
vorty
Posts: 9
Joined: Fri Jul 18, 2014 3:17 pm

Re: The official "ZDoom on Mac OS X" thread.

Post by vorty »

1. Open ~/Library/Application Support/GZDoom/GZDoom.ini in your favorite text editor
2. Search for [Doom.Autoload]
3. After that line add new line with the following content
CODE: SELECT ALL
Path=/full/path/to/zdoom-dhtp-20140616.pk3
Of course, you need to adjust /full/path/to/ (and file name maybe) to the location of your pack. You can put file name only here, without full path, if you copy .pk3 to ~/Library/Application Support/GZDoom folder
4. Save changes and start GZDoom
Unfortunately, I've tried that, and it won't load for some reason. I have the hi res pack already in my GZDoom folder (within the application support folder). Here's what I have in my .ini. I even put the path for all three doom wads without any luck. This still works just fine by dragging and dropping the pkg's onto the gzdoom app. I can't figure out why gzdoom won't use the .ini autoload settings. Could this be an issue with the latest GZdoom for osx? At first I had assumed it was a zdl issue.

"[Doom.Autoload]
Path=zdoom-dhtp-20140616.pkg

[Doom1.Autoload]
Path=zdoom-dhtp-20140616.pkg

[Doom2.Autoload]
Path=zdoom-dhtp-20140616.pkg"
_mental_
 
 
Posts: 3812
Joined: Sun Aug 07, 2011 4:32 am

Re: The official "ZDoom on Mac OS X" thread.

Post by _mental_ »

Open Terminal.app and enter two commands there:

Code: Select all

ls -lR ~/Library/Application\ Support/GZDoom
cat ~/Library/Application\ Support/GZDoom/GZDoom.ini
Copy everything to text file and attach to the post (or send me PM).
Actually, this is not GZDoom for OS X support thread, there are special places for issue reporting.
Blzut3
 
 
Posts: 3144
Joined: Wed Nov 24, 2004 12:59 pm
Graphics Processor: ATI/AMD with Vulkan/Metal Support
Contact:

Re: The official "ZDoom on Mac OS X" thread.

Post by Blzut3 »

_mental_ wrote:Blzut3, is it possible to incorporate a bundle creation into CMake scripts? Some time ago you told me that you are using separate shell script for this, i.e. for DRD builds.
This will make my job easier. Actually, I will need to spend some more time on Cocoa backend clean up.
http://www.cmake.org/Wiki/CMake:Bundles ... undle_only

It looks like they've improved the bundle creation stuff, but I used to do it with a script since I couldn't find a way to put zdoom.pk3 in there and stuff like that. it looks like now you can try adding the zdoom.pk3 as a source file and setting some properties on it.

But I only ever use a bundle when distributing the application. While developing and testing I just run it like any other unix application. Xcode handles that just fine, just make sure you set your target to ZDoom and not ALL_BUILD.
_mental_
 
 
Posts: 3812
Joined: Sun Aug 07, 2011 4:32 am

Re: The official "ZDoom on Mac OS X" thread.

Post by _mental_ »

Blzut3 wrote:While developing and testing I just run it like any other unix application.
I saw how this was done SDL. To run an executable as a bundle it uses several undocumented API calls and hidden method of NSApplication class. Shitload of hacks and a chance to be broken on future OS releases.
Sorry but I don't want to copy that. There is an official way to create GUI application, and this is the application bundle. Few lines of code and it's working in all versions of OS X.
User avatar
cacouser
Posts: 17
Joined: Sun Jun 23, 2013 10:50 pm

Re: The official "ZDoom on Mac OS X" thread.

Post by cacouser »

I'm averaging 20 fps when looking at moderately complex scenes (like looking out the window in E1M1) on gzdoom on a sandy bridge macbook air. Is this normal? Anything I can do to increase the frame rate? I feel this machine should be able to do better than my old 486.
Post Reply

Return to “Tutorials”