Seamless3d for Linux, Android & other OS using Qt

seamless-for-android

Seamless3d is in the process of being ported to Qt. The current online port that you can download is a cut down version. So far it has been tested to compile and run on Linux Mint, Android and Windows. It uses OpenGL ES instead of DirectX.

What it can do:
Load on startup a non g-zipped smls file named model.smls located in your system's downloads folder.

Right drag to change the orientation of the view.

Drag to change the location of a nurbs control point.

Note: Only colour per vertex is currently supported.

You can download the Qt project for Seamless3d from this link.

Download and put this model.smls example  file in your download folder before running the program so that it has a file to load on startup.

If you want to test it using a file you have created your self with the regular version of Seamless3d, make sure the file is saved with the saveGZipped check box clear in settings.
Note: You can save with the current version of regular Seamless3d however you will not be able to drag a control point for that file in the Qt version until more porting is done. Regular Seamless3d 3.003 lets you save without this issue.

There is also a minimalist version you can download from this link that  uses some of the classes I have developed for Seamless3d but is kept to just a few short files to keep it simple, making it ideal for testing things out with a new compiler or operating system. It can not open files containing nurbs patches like the bigger QT version of seamless can, it can only open a file containing a low level mesh of coloured triangles with normals (and render it and let the user orientate the view) but should be helpful for anyone wanting to learn about the inner workings of seamless or 3d rendering in general using OpenGL ES. Don't forget to download this mesh.smls example  file and put it in your system download folder before running the minimalist version so that it has a file to load on startup.

Note: The GCC compiler will display thousands of warnings when compiling. I will try fixing some of these when I have the time but currently this is a very low priority for me.

I have had little trouble getting it to compile and run on Linux Mint or Windows after downloading the seamless3d-qt.7z file but if you want instructions for this let me know.

Generating an APK file for Android


I have found getting Qt to create an APK file for an Android much more challenging than getting it to compile for Linux or Windows. Just downloading and installing all the Java components seemed complicated to begin with but in the end it was not as hard as I initially thought and would have been simpler had I not installed all the components that I did not need.

The components I needed was:
Android Studio which was straight forward to install.
Java NDK, just had to unzip it and specify a folder in Qt. I downloaded the current NDK but later noticed an earlier version (10e) was recomended.
I installed OpenJDK but later downloaded the Java JDK and referenced this in Qt.
Apache Ant, just downloaded and specified the folder in Qt.

I have learnt if I begin without any baggage from a previous installation (like no old android folder for creating an APK and no added settings for Android in the project file) and delete the output folder from the previous compile, I seem to get more success. However after many intensive days working on this I still do not feel confident in being able to reliably generate an APK file. Sometimes it succeeds, sometimes it fails. If you are experianced with Qt and you know what I am doing wrong please let me know. I will be most greatfull for your time.

The procedure I use for generating an APK file is as follows:
 
After unzipping the seamless3d-qt.7z file, open the  seamless3d.pro file in Qt.

Tick the checkbox for Android for armeabi-v7a...
Click the Configure Project button.
Wait untill the screen changes.

build settings

Click Projects
Click the details drop down button for Build Android APK
Click the Create Templates button
At this stage you can set an icon for the APK file by clicking on the icon button and selecting the seamless3d.png file.
Click Finish
Click the Debug button in the left and change the selection to Release and wait for the compile and run buttons to have colour.
Click the hammer button once to leave the menu and then Click the hammer button again to compile the project.
Ignore
the output omitted message or just click clear so new messages can be displayed.
After a successful build the generated APK file will be located in the folder:

build-seamless3d-Android_for_armeabi_v7a_GCC_.../android-build/build/outputs/apk

Copy the APK file to your android and then install it on the android.
Download model.smls and copy it to your androidís downloads folder before running the app or it wont have a file to load on startup.

Would love to hear from you if you have compiled the Seamless3d Qt project and had it running on your system/s.

Compiling for Windows

Open the project file windows-seamless3d.pro in Qt, click configure and then compile.




[3d Modelling Software] [Tutorials] [Forum] [Features] [Download] [Gallery] [FAQ] [Worlds] [Avatars] [Links] [Thyme]