ivanmunguia / vdrift-ogre

Automatically exported from code.google.com/p/vdrift-ogre
0 stars 0 forks source link

Force feedback #210

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. compile latest git
2. chmod 777 /dev/input/js0
3. define /dev/input/js0 in game.cfg
4. start stuntrally and change control settings

What is the expected output? What do you see instead?
expected: able to select joystick
instead: only keyboard possible

What version are you using? On what operating system?
latest git on gentoo linux

Please pick any relevant labels like Component or OpSys related to problem.

logitech f710 in x-input mode
xpad kernel driver
ogre 1.8.1
ois 1.3

Please provide any additional information below.

part of log.txt:

INFO: ::: Time Sounds: 4.14509 ms
ERROR: force feedback: can not get key bits (Invalid argument) 
[/usr/src/stuntrally/source/vdrift/forcefeedback.cpp:57]
INFO: --------------------------------------  Input devices  BEGIN
INFO: Dumping all registered OISB devices: 
INFO: ** Device: 'Keyboard'
INFO: ** - count: 256
INFO: ** Device: 'Mouse'
INFO: ** - Button 3
INFO: ** - Button 4
INFO: ** - Button 5
INFO: ** - Button 6
INFO: ** - Button 7
INFO: ** - Left Button
INFO: ** - Middle Button
INFO: ** - Right Button
INFO: ** - Wheel - analog
INFO: ** - X Axis - analog
INFO: ** - Y Axis - analog
INFO: End of dump
INFO: --------------------------------------  Input devices  END

ls -ltr /dev/input/js0
crwxrwxrwx 1 root root 13, 0 Jan 12 21:04 /dev/input/js0

Original issue reported on code.google.com by martin.herrman@gmail.com on 12 Jan 2013 at 10:05

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
Force feedback on current git master is gone. It did sometimes work, but only 
on Linux, and it was never adjusted to make some sense (from tires).
I don't have ff in my wheel, I'll try to borrow one with it.
FF is also one of the reasons we need other input library, see Issue 188. Is 
quite difficult probably to change it.

Original comment by Cry...@gmail.com on 13 Jan 2013 at 7:29

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
I'm not looking for force feedback support, but just would like to be able to 
use my joystick (logitech f710 - does not have force feedback). I changed the 
joystick entry in game.cfg to use the correct device (/dev/input/js0).

What should I do to be able to play stuntrally with two joysticks? 
(multiplayer, split screen)

Original comment by martin.herrman@gmail.com on 14 Jan 2013 at 8:22

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
This entry in game.cfg is just for force feedback (which is gone anyway). Not 
needed for usual detection and binding.
So far I know 2 joysticks won't work at all. Something in code is broken 
probably in OISB, OIS or in our. This is yet another reason for issue 188.

Original comment by Cry...@gmail.com on 14 Jan 2013 at 8:33

GoogleCodeExporter commented 9 years ago
Thanks for the info. I'm not a developer. What can I do (what do you need) to 
get it fixed?

Original comment by martin.herrman@gmail.com on 14 Jan 2013 at 8:40

GoogleCodeExporter commented 9 years ago
After this release 1.9, I will try at some point to start with Issue 188, no 
idea now, it may be too problematic and not a success. Either way would be good 
to have someone that has 2 devices and a device with force feedback to actually 
test if the new implementation works. If not I will try to fix those bugs but 
even later. I will reply to let you know if I moved any further. Thanks for 
help.

Original comment by Cry...@gmail.com on 14 Jan 2013 at 3:09

GoogleCodeExporter commented 9 years ago
I have two logitech F710 devices, so here is your volunteer to test with two 
devices :-)

Which force feedback device would you recommend on Linux and want to test with?

Original comment by martin.herrman@gmail.com on 14 Jan 2013 at 3:52

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
Hi. Are you still here ? I'm starting with input rewrite.
There is a test branch which uses SDL for joystick.
It currently just logs the state to ogre.log (or console).
Could you checkout 'sdl_joy' branch from git and tell if it works okay ?
https://github.com/stuntrally/stuntrally/tree/sdl_joy

Original comment by Cry...@gmail.com on 5 Jun 2013 at 1:42

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
Hi,

thanks for your request! I'm sorry that it took a while before I had the chance 
to look into this.

I just tried to compile your branch, but:

[ 60%] Building CXX object 
source/CMakeFiles/stuntrally.dir/vdrift/vertexarray.cpp.o
[ 60%] Building CXX object 
source/CMakeFiles/stuntrally.dir/vdrift/cardifferential.cpp.o
[ 60%] Building CXX object 
source/CMakeFiles/sr-editor.dir/vdrift/configfile.cpp.o
[ 61%] Building CXX object source/CMakeFiles/stuntrally.dir/vdrift/car.cpp.o
In file included from /usr/src/stuntrally-sdl_joy/source/vdrift/car.cpp:16:0:
/usr/src/stuntrally-sdl_joy/source/vdrift/game.h:27:26: fatal error: 
SDL_Joystick.h: No such file or directory
compilation terminated.
make[2]: *** [source/CMakeFiles/stuntrally.dir/vdrift/car.cpp.o] Error 1
make[1]: *** [source/CMakeFiles/stuntrally.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 61%] Building CXX object 
source/CMakeFiles/sr-editor.dir/vdrift/pathmanager.cpp.o
[ 61%] Building CXX object source/CMakeFiles/sr-editor.dir/vdrift/track.cpp.o
In file included from /usr/src/stuntrally-sdl_joy/source/vdrift/track.cpp:11:0:
/usr/src/stuntrally-sdl_joy/source/vdrift/game.h:27:26: fatal error: 
SDL_Joystick.h: No such file or directory
compilation terminated.
make[2]: *** [source/CMakeFiles/sr-editor.dir/vdrift/track.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [source/CMakeFiles/sr-editor.dir/all] Error 2
make: *** [all] Error 2

htpc build # locate SDL_Joystick
=> returns only man pages

But:

htpc build # locate joystick.h
/usr/include/SDL/SDL_joystick.h
(.. and more ..)

So I modified game.h and compiled successfully.

Now I have to leave, but I will update you soon on the testresults!

Original comment by martin.herrman@gmail.com on 25 Jun 2013 at 5:54

GoogleCodeExporter commented 9 years ago
Aj aj aj..

I can't run the game:

MovableObjectFactory for type 'RibbonTrail' registered.
*-*-* OGRE Initialising
*-*-* Version 1.8.1 (Byatis)
*** start setup ***
Loading library /usr/lib64/OGRE/RenderSystem_GL_d
An exception has occured: OGRE EXCEPTION(7:InternalErrorException): Could not 
load dynamic library /usr/lib64/OGRE/RenderSystem_GL_d.  System Error: 
/usr/lib64/OGRE/RenderSystem_GL_d.so: cannot open shared object file: No such 
file or directory in DynLib::load at 
/var/tmp/portage/dev-games/ogre-1.8.1/work/ogre_src_v1-8-1/OgreMain/src/OgreDynL
ib.cpp (line 93)
INFO: Exiting
*-*-* OGRE Shutdown
Unregistering ResourceManager for type Compositor

while:

htpc@htpc /usr/src/stuntrally-sdl_joy/installdir/bin $ locate RenderSystem_GL
/usr/lib64/OGRE/RenderSystem_GL.so
/usr/lib64/OGRE/RenderSystem_GL.so.1.8.1

Original comment by martin.herrman@gmail.com on 26 Jun 2013 at 5:47

GoogleCodeExporter commented 9 years ago
I am running Gentoo and have Ogre 1.8.1 installed, incl. support for boost, cg, 
freeimage, ois, opengl, poco, threads and zip.

Original comment by martin.herrman@gmail.com on 26 Jun 2013 at 5:51

GoogleCodeExporter commented 9 years ago
according to ogre documentation I should have a plugins.cfg and resources.cfg 
in the same directory as the executable?

I only have a plugins.cfg.bz2 in my /usr/share/doc/ogre/examples/ directory. I 
have resources.cfg.bz2 in the same directory, but also in 
/usr/src/stuntrally-sdl_joy/config/ and 
/usr/src/stuntrally-sdl_joy/installdir/share/games/stuntrally/config/

Original comment by martin.herrman@gmail.com on 26 Jun 2013 at 6:00

GoogleCodeExporter commented 9 years ago
Ugh, I'm not sure, but there is some info in Wiki, where it reads plugins from
http://code.google.com/p/vdrift-ogre/wiki/Paths#OGRE_plugins
our resource.cfg is in config, but plugins.cfg isn't present, we do plugin load 
in code (should work just like in that wiki).

Original comment by Cry...@gmail.com on 26 Jun 2013 at 8:16

GoogleCodeExporter commented 9 years ago
Your OGRE libraries are built in release mode, but it's looking for debug 
libraries (_d suffix) because you're building SR in debug mode.

Original comment by scrawl...@gmail.com on 26 Jun 2013 at 9:21

GoogleCodeExporter commented 9 years ago
thanks, you're right!

I now recompiled in release mode and can play the game.

This is what I did:
- clean homedir
- start game
- stop game

During start, the output is like:

INFO: --------------------------------------  Input devices  BEGIN
INFO: Dumping all registered OISB devices: 
INFO: ** Device: 'Keyboard'
INFO: ** - count: 256
INFO: ** Device: 'Mouse'
INFO: ** - Button 3
INFO: ** - Button 4
INFO: ** - Button 5
INFO: ** - Button 6
INFO: ** - Button 7
INFO: ** - Left Button
INFO: ** - Middle Button
INFO: ** - Right Button
INFO: ** - Wheel - analog
INFO: ** - X Axis - analog
INFO: ** - Y Axis - analog
INFO: End of dump
INFO: --------------------------------------  Input devices  END

During game play, in the terminal on the background I have a continuous 
generation of lines like:

<Joy>  ax0:  0.000 ax1: -0.000 ax2: -1.000 ax3:  0.000 ax4: -0.008 ax5: -1.000 
ax6:  0.000 ax7:  0.000  btns 0 0 0 0 0 0 0 0 0 0 0

When I use the joystick, I see that the outputted lines change accordingly. 
Seems to work fine!

When I stop the game, adjust the joystick device from /dev/input/event0 (which 
I do have) to /dev/input/js0 (which I believe is the joystick), and try again, 
the result is the same (proves that event0 = js0?).

Please let me know if/when you need more info or testing!

Original comment by martin.herrman@gmail.com on 27 Jun 2013 at 4:42

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
Nice. Thanks for testing.
Wow, 8 analog axes.
That's it for now, we have a lot to do for next step.

Original comment by Cry...@gmail.com on 27 Jun 2013 at 5:09

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago

Original comment by Cry...@gmail.com on 8 Sep 2013 at 6:37

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago

Original comment by Cry...@gmail.com on 2 Apr 2014 at 11:44