We are currently developing a multitouch multiuser application which runs on a big touchscreen table.
Obviously the application has a lot of animations and transformations included, i.e. moving and rotating UI elements around using touch gestures, menu opening animations, touch rotations etc.
To better understand what kind of Application this is going to be, here is a Video of a similar application with kind of the behaviour we are targeting (minutes 0:16 - 0:27): https://www.youtube.com/watch?time_continue=13&v=qIOR9FiL97w
Back in the days we used Adobe Flash for such applications, since it was the only way of getting good performance and interactivity but since flash is dead, what is the current best way of implementing such an application?
We tried game engines like Unreal Engine 4 and Unity but the support for multitouch is very meager and most of the gestures etc. have to be implemented yourself and also most of the common controls like scrollviews, carousel controls etc.
We also tried UWP which has good touchscreen support and implements most of gestures and behaviour you are expecting of a touchscreen application and almost all common user controls are already implemented but we got a huge problem regarding performance, especially on higher resolutions like 4K or 8K. The more controls and grids and layout we put in, the slower the application became and moving around and rotation etc. are very slow and only run on one thread. We had a look into the new Composition API but its very complicated and its not very clear whats the best way to combine XAML controls and composition API, also there is Win2D but it only provies basic functionality like drawing rectangles and also no touchscreen support, only through XAML.
So, is there any good Framework or API to implement applications like in the video I linked? Or is Flash still the best way? Is there a Qt library for such things or even Javascript? Or is even Android the way?
https://kivy.org
Kivy - Open source Python library for rapid development of applications
that make use of innovative user interfaces, such as multi-touch apps.
Cross platform, GPU Accelerated, comes with more than 20 widgets, all highly extensible.
Related
I'm a brand identity and ui/ux designer, i've been wondering how to implement these animations we see on dribbble on to native ios/android and hybrids. I do interaction animations on after effects and figma.
Any libraries for react native and native ios /android?
I have spent a lot of time to convert Dribble interactions to real world apps.
Both React Js and React Native.
There are two ways.
You can develop them for lottie animations. using adobe after effects or so. But the animations won't have that control.
Second, You can use react-spring for ReactJs, It is based on react-motion.
It has a very powerful interpolation, which support a lot of inputs. It also supports React-Native(Partial).
On React-Native you can use the animated api and Pan Responder. It's bit hard to get hands on both in starting, but when you do. You could implement a lot.
You can combine, scroll events with Animated Api. etc etc.
For references I would give you some links.
https://www.youtube.com/user/wcandill/videos
https://www.react-spring.io/
Mostly are done with GSAP that is one of the best js libraries for web animations, I suggest you to read this article ;)
https://medium.com/notonlycss/starting-with-gsap-1148ffd7e20b
According to this page, https://docs.unity3d.com/Manual/iphone-basic.html, too many UnityGUI elements is considered bad, but what is too many if my game runs entirely on the canvas? At the moment, my UI will contain about 100 objects, most are buttons and 80 of the objects, use full or portions of 3 textures to display the objects.
Does this mean that uGUI cannot or should not be used for iOS games?
That post is talking about something totally different and you are confusing yourself with uGUI and UnityGUI/IMGUI.
UnityGUI/IMGUI is an old UI System. That's what the article is talking about. Don't use it. I've been warning new users about that too due and they use it due to old tutorials they are following.
The only time you should use this is when you are writing an Editor script to test your game in the Editor but this should never be deployed to your mobile device or used as a standalone build.
How to know when you are using UnityGUI/IMGUI or which tutorials to avoid? When you see OnGUI() anywhere in the code, then stop.
The latest UI System in Unity is simply called uGUI. I don't know if the name has changed but this was the original name when it came out. It is only available from Unity 4.6 and above. You can find this from the UnityEngine.UI; namespace.
This is the link you should be reading for the new UI and here for UI tutorials.
Does this mean that uGUI cannot or should not be used for iOS games?
uGUI should be used for all your UI work.Again, I am not talking about the UI from the article. I am talking about the UI from the UnityEngine.UI; namespace.
my UI will contain about 100 objects, most are buttons and 80 of the
objects
uGUI uses Canvas to drive the UI and they are parent GameObject of UI components.. You may want to separate them into different Canvas. For example, MainMenu Canvas, PauseMenu Canvas, GamePlay Canvas.... Under each Canvas, you can then have your components such as Buttons and Texts.
When you are on the main menu, you enable the MainMenu Canvas and disable the rest. You can do this for your other Canvas in your scene depending on the mode of your game. I can't think of any scenario where you need 80 UI components at the-same time, on the scene. You must separate them.
Several years ago I was curious about creating some objects (spoon, ball, tv, ...) in 3d modeling program, export the textures, and then have a screen in iOS app, that can open one object at a time with a possibility to rotate and zoom it. This seemed quite basic and most used case but I didn't find any simple and ready to use solutions/libraries/plugins, just raw OpenGL ES (GlKit), so I refused to use it, as it would require too much knowledge and time as I haven't done any 3d stuff before and my primary work is not related with 3d.
There are also Unity and Cocos3d engines, and it looks like they allow to extend the code by using iOS plugins (xibs/storyboards, navigation with view controllers and etc), but this means you have to make your app project as Unity/Cocos3d first, and only then add your usual UIKit stuff as a plugin. Now that is not acceptable because the project should be written using UIKit first, and I expect to add 3d viewing stuff as a separate component that encapsulates all the necessary stuff inside it as a black box, because I don't want to mess my project up, as this 3d stuff is an optional feature.
Now, after several years I'v searched for the thing again looking for simple 3d viewing plugins/solutions for UIKit, but the situation is pretty much the same imho. I saw iOS8 there will add Scene Kit, but I'm not sure will it be something close to what I expect. So, still I'm not sure is there any solution that would require minimum time efforts, or is OpenGL ES the best solution for this need.
Check out the CC3DemoMultiScene demo app in the latest version of Cocos3D. It demonstrates how to include a Cocos3D scene in a standard UIKit storyboard, and to have the GL view only a component of a larger UIView.
I've developed a iOS application for a customer and now it's time to make it nicer by implementing/importing the graphic design provided by the graphic designer.
Here is the problem:
the graphic designer gave me just some PNG pictures which show how the application should look like.
I was thus wondering:
What's the best way to implement the graphic design or import it into XCode?
Is there a way for the graphic designer to provide some material I can directly use to implement the graphic design?
Is there any tool (either free or professional) for helping iOS designers and developers to cooperate?
Thanks.
You can use a UIImageView and place it on the background of a uiview so you can layout native buttons and objects to best imitate the graphics they sent you using native controls or you can use other helpers online such as these.
Honestly, IMO it's generally better to use their graphics as a template then recreate what they are wanting to achieve using native controls to adhere to the HIG Apple provides. Giving the user a nice at home feeling while also giving the client the look they are wanting to achieve is the general idea to a successful app. Each OS has it's own "look and feel" that the users come to expect.
http://designthencode.com
http://www.jumpstartyourcode.com
I was wondering if anyone out there knew how to create a form overlay for a FULLSCREEN directX game such as World of Warcraft, using visual basic? I have created an useful application I wanted to use ontop of the fullscreen game. I've searched for hours, only to find that it is possible, but I couldn't find any code for this to be possible. I've found that it uses DirectX to achieve this. It's important not to be confused with windowed mode, my application works on top of that, but not on top of a fullscreen mode.
Thanks,
Possibly you would be best using a solution like this; http://www.unknowncheats.me/forum/c/62019-c-non-hooked-external-directx-overlay.html
The problem with hooking into games to draw overlays is they quite often detect it as a cheat and ban you. Make sure you do not interact with the game's own process and implement the overlay using this method and you should be fine.