asafbibas / jmonkeyengine

Automatically exported from code.google.com/p/jmonkeyengine
0 stars 0 forks source link

Android should have emulated keyboard input through on-screen controls #499

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
What steps will reproduce the problem?
1. Run any jME3 test on a touchscreen only device

What is the expected output? What do you see instead?
Although it is possible to rotate the camera, it is not possible to move it 
around the scene. There should be on-screen controls so that it is possible to 
move the camera.

Original issue reported on code.google.com by ShadowIs...@gmail.com on 30 May 2012 at 12:22

GoogleCodeExporter commented 8 years ago
Some things to keep in mind...

FlyCam's only purpose is to map keyboard+mouse (and alternately joystick) to a 
Camera.  Once the keyboard and mouse are gone, I'm not sure it makes sense to 
use FlyCam.

There are other controls schemes other than on-screen controls.  For example, 
touching and holding to fly forward, drag to turn, etc.

On screen controls should be able to be heavily customized by the game so that 
they fit in with the rest of the style.

On screen controls are likely to cover up normal HUD elements for apps that 
didn't specifically ask for them.  They would cover up the normal HUD stats on 
any test apps.

I really think the app needs to be actively involved in its own UI layout for 
different platforms but I know I'm the minority in that thinking... but I think 
the above is true regardless.

Perhaps a nice default for flycam would be to enable drag to turn by default on 
platforms with only a touch screen.  And then add a click+hold to fly feature 
which might be nice even for mouse-based apps.  This would allow the JME tests 
and stuff to work by default on touch-screen only devices without interfering 
with normal UI elements.

Original comment by PSpee...@gmail.com on 28 Sep 2012 at 5:01

GoogleCodeExporter commented 8 years ago
Note: this comment: "FlyCam's only purpose is to map keyboard+mouse (and 
alternately joystick) to a Camera.  Once the keyboard and mouse are gone, I'm 
not sure it makes sense to use FlyCam."

...was specifically in relation to the idea of trying to shoehorn virtual 
joysticks in.  I'm not sure it makes sense to add fake devices just to keep 
using a class that is really only a mapping from a set of devices to a camera.  
It is easy enough just to create another camera control in that case.

I was originally a fan of the idea of virtual joysticks and almost include it 
as a built-in concept in the joystick rewrite.  But the more I thought of it, 
the more it seemed like a bad idea.  Like a Java app using web services to talk 
to itself... lots of round trip for no good reason.

Original comment by PSpee...@gmail.com on 28 Sep 2012 at 5:04