Horde3D

Next-Generation Graphics Engine
It is currently 09.11.2024, 00:39

All times are UTC + 1 hour




Post new topic Reply to topic  [ 23 posts ]  Go to page 1, 2  Next
Author Message
PostPosted: 13.04.2008, 03:59 
Offline

Joined: 19.03.2008, 01:22
Posts: 79
For those interested, I've ported Horde Scene Editor to macosx. This is a work in progress.
Image

You can download precompiled (Universal) binaries:
20080416 build
Data files are not included so you will probably want to get those from the official win32 or linux version.


Attachments:
File comment: Lua library built as universal binary. Required to build universal HordeSceneEditor on macosx
liblua.a.zip [205.43 KiB]
Downloaded 2225 times
File comment: Updated code patch. This is a big patch and should be applied to 0.6.1 source tree.
----
2008-04-16 changes:
- Changed Qt include syntax to newer qt4 style (e.g #include <QtCore/QString>)
- Updated makefiles for Universal binaries (compilation requires a universal lua binary, provided above)
---
2008-04-14 (Initial release) changes:
- Rewrote mouse-based camera movement.
- Saves preferences to a standard user preferences .plist

mac-patch-20080416.txt.zip [14.82 KiB]
Downloaded 2307 times


Last edited by Vurlix on 17.04.2008, 00:45, edited 10 times in total.
Top
 Profile  
Reply with quote  
PostPosted: 13.04.2008, 08:51 
Offline
Tool Developer

Joined: 13.11.2007, 11:07
Posts: 1150
Location: Germany
Great job! I personally never had access to a mac so I couldn't check for compatibility issues. Did you still have the problems concerning the mouse events like described here? What other changes did you have to make?

BTW.: Is the frame rate in your screenshot correct? Seems quite fast!


Top
 Profile  
Reply with quote  
PostPosted: 13.04.2008, 17:51 
Offline

Joined: 19.03.2008, 01:22
Posts: 79
I shouldve known swiftcoder had already been there. I'm late to the party it seems :\
Anyway, I've not encountered any crashes so far. I'm using the macports qt4-mac 4.3.4.
Things I'd like to fix:
- save preferences to a standard preferences .plist file
- 3d viewport has sticky/weird mouse interaction (probably what used to crash for swiftcoder)
- tweak the keyboard shortcuts
- tweak the movement keys for better control

I think the framerate is correct. It's a rather simple scene for a nvidia 8800 GTS to handle.


Top
 Profile  
Reply with quote  
PostPosted: 13.04.2008, 21:39 
Offline

Joined: 22.11.2007, 17:05
Posts: 707
Location: Boston, MA
Vurlix wrote:
I shouldve known swiftcoder had already been there. I'm late to the party it seems :\
Anyway, I've not encountered any crashes so far. I'm using the macports qt4-mac 4.3.4.
That is the build I had the problems with. However, the macports version is not a universal binary, so I have switched to the binaries available directly from Trolltech (DMG file near the bottom of the page, here), which seems to have fixed the crash.

_________________
Tristam MacDonald - [swiftcoding]


Top
 Profile  
Reply with quote  
PostPosted: 13.04.2008, 22:14 
Offline
Tool Developer

Joined: 13.11.2007, 11:07
Posts: 1150
Location: Germany
The preferences are saved according to the QSettings class of Qt. So you can just use another constructor to make the settings be saved in a .plist file. But you have to replace all of the calls to QSettings to ensure consistency. I know that some of the things implemented, are quite windows specific. Until now I focused not to much on supporting other platforms. Maybe we can improve this introducing some #ifdef statements.

The movement control is done in the keyPress- and keyReleaseEvent method of the GLWidget class. Currently it is hardcoded using a switch statement. But maybe I will change it to be configurable in a future version. What kind of camera control would you propose?
Next to the W,A,S,D control there is already the possibility to hold down the CTRL key (on Mac I think it is called the Command key) and press the mouse button used for navigation while moving the mouse. The mouse button used for navigation can be configured in the settings dialog. Moving along the Z-axis can be realized using a mouse wheel (does the Mac has a mouse wheel?). You can increase the speed by holding the Shift key pressed.

I'm always open for suggestions. If it requires not to much effort I will try to integrate them into a future version. Of course I can not guarantee that everything will work on a mac, since I don't have one :-)


Top
 Profile  
Reply with quote  
PostPosted: 14.04.2008, 04:47 
Offline

Joined: 19.03.2008, 01:22
Posts: 79
I'm slowly fixing a few things to improve the mac experience. I've redone the mousemove code so far so it works (with added benefit of removing the "ignore" hack)


Top
 Profile  
Reply with quote  
PostPosted: 14.04.2008, 22:21 
Offline

Joined: 19.03.2008, 01:22
Posts: 79
Just uploaded a first build. See thread first post.
- Rewrote mouse-based camera movement.
- Saves preferences to a standard user preferences .plist

I also attached the source patch. It should merge cleanly and probably doesn't break the win32/linux build, but this is unverified.


Top
 Profile  
Reply with quote  
PostPosted: 15.04.2008, 12:48 
Offline

Joined: 22.11.2007, 17:05
Posts: 707
Location: Boston, MA
Your binary can only be run on intel, and the user has to have the macports QT installed. Have you tried switching to the framework version of QT and embedding it?

_________________
Tristam MacDonald - [swiftcoding]


Top
 Profile  
Reply with quote  
PostPosted: 16.04.2008, 00:21 
Offline
Tool Developer

Joined: 13.11.2007, 11:07
Posts: 1150
Location: Germany
Vurlix wrote:
Just uploaded a first build. See thread first post.
- Rewrote mouse-based camera movement.
- Saves preferences to a standard user preferences .plist

I also attached the source patch. It should merge cleanly and probably doesn't break the win32/linux build, but this is unverified.

I will try to integrate it next week. I'm quite busy at the moment, so please exuse that I probably can't release a new version of the editor within the next two weeks.


Top
 Profile  
Reply with quote  
PostPosted: 16.04.2008, 01:11 
Offline

Joined: 19.03.2008, 01:22
Posts: 79
I'm almost done with the universal binary version of this thing. It builds and runs fine, but the library paths aren't quite right and install_name_tool doesn't want to work (yes, i know about headerpad_max_install_names).
In doing so I ported the entire editor to the qt4 style include names (i.e #include <QtGui/QApplication>) so that I could use the framework version of Qt.

I could simply expect users to install Qt framework binaries as a requirement but I won't give up just yet :)


Top
 Profile  
Reply with quote  
PostPosted: 16.04.2008, 03:02 
Offline

Joined: 19.03.2008, 01:22
Posts: 79
Ok, so I figured out the problem. install_name_tool fails silently when used on files residing on a ZFS volume. Sweet.


Top
 Profile  
Reply with quote  
PostPosted: 16.04.2008, 03:12 
Offline

Joined: 22.11.2007, 17:05
Posts: 707
Location: Boston, MA
Vurlix wrote:
Ok, so I figured out the problem. install_name_tool fails silently when used on files residing on a ZFS volume. Sweet.
Good work! Look forward to trying it out.

_________________
Tristam MacDonald - [swiftcoding]


Top
 Profile  
Reply with quote  
PostPosted: 16.04.2008, 04:22 
Offline

Joined: 19.03.2008, 01:22
Posts: 79
OK HERE IT IS. It's been fully tested on both i386 and ppc so this should just work out of the box, with no prerequisites.
Will post a patchfile later, but you can download the binaries:

20080415 build


Top
 Profile  
Reply with quote  
PostPosted: 16.04.2008, 13:13 
Offline

Joined: 22.11.2007, 17:05
Posts: 707
Location: Boston, MA
Vurlix wrote:
OK HERE IT IS. It's been fully tested on both i386 and ppc so this should just work out of the box, with no prerequisites.
20080415 build

Hooray! Confirm working on my ATI X1600!

_________________
Tristam MacDonald - [swiftcoding]


Top
 Profile  
Reply with quote  
PostPosted: 16.04.2008, 15:46 
Offline

Joined: 19.03.2008, 01:22
Posts: 79
Source patch uploaded (see first post).
2008-04-16 changes:
- Changed Qt include syntax to newer qt4 style (e.g #include <QtCore/QString>)
- Updated makefiles for Universal binaries (compilation requires a universal lua binary, also provided)

On a side note...
Doing distributed development like this is slightly cumbersome. I'm already using a private mercurial repository; perhaps we could work out something we could all use? Mercurial is awesome and easy to use and works great on all platforms that I know of. That said, git isn't bad either, but clearly Mercurial wins (in my mind).


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 23 posts ]  Go to page 1, 2  Next

All times are UTC + 1 hour


Who is online

Users browsing this forum: No registered users and 8 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group