InputSystem with MultiTouch ( WM_TOUCH )

InputSystem with MultiTouch ( WM_TOUCH )

Hello, everybody!
We keep on working on the Smoke improvements and extensions.
This time we're trying to implement an InputSystem capable of reading Windows Messages, and especially WM_TOUCH messages.
The original code of the Smoke contains PeekMessage calls implemented twice: inside Framework's PlatformManager and SystemGraphicsOgre.
How do we implement that inside InputSystem?
We have tried calling PeekMessage, but the WM_TOUCH events do not appear there. They also don't appear in PlatformManager. They arrive at SystemGraphics.
Mouse and keyboard related messages also arrive at SystemGraphics, but they can be successfully translated using TranslateMessage calls. Though touch related messages fail to get translated successfuly, since they contain pointers to arrays of structures, and those arrays are altered while the message is translated from SystemGraphics.

How do you guys think it's best to handle WM_TOUCH messages for SystemInput?

Has anyone implemented some multi-touch SystemInput for Smoke?

Has anyone implemented some cross-platform SystemInput for Smoke?

http://vigroup.ru/
5 帖子 / 0 全新
最新文章
如需更全面地了解编译器优化,请参阅优化注意事项

We have found a way to pass MultiTouch related messages from SystemGraphics into SystenInput.
For that, we have introduced a special MultiTouchObject extended to carry MultiTouch data along.
When WindowProc of SystemGraphics detects that a WM_TOUCH message appears, it reads the TOUCHINPUT structures, stores their data into MultiTouchObject and does the PostChanges.
InputScene::InputUpdate reads the data.
This method works well so far.

Do you guys think it is the best approach?

http://vigroup.ru/

Quoting - Koichi Senada
We have found a way to pass MultiTouch related messages from SystemGraphics into SystenInput.
For that, we have introduced a special MultiTouchObject extended to carry MultiTouch data along.
When WindowProc of SystemGraphics detects that a WM_TOUCH message appears, it reads the TOUCHINPUT structures, stores their data into MultiTouchObject and does the PostChanges.
InputScene::InputUpdate reads the data.
This method works well so far.

Do you guys think it is the best approach?

Hello Koichi - a quick introduction, I am the community manager for games development on the Intel Software Network. thanks for your interest in the Smoke sample code. Looks like you are doing some good work with this demo code! Not sure if you are aware, we have an incentive program running targeted at the smoke demo code. It is a multi winner contest and basically we are asking our community members to download the smoke demo and tell us what they have done with the code, you can submit code, screenshots, videos, whitepaper or even ideas on how to improve it. Each month we pick some of the best entries and they get a $100 gift certificate to GameStop. You can check out the details at http://www.intel.com/software/thread-like-wildfire
you can email me at arti.gupta@intel.com if you questions.

thanks
Arti

hello, Arti!
Thanks for the information, though we seem to have browsed through anything related to Smoke Demo, including articles, blog posts, videos, downloads, etc.
Sure thing we know about the "Thread Like Wildfire" initiative, though our code is not ready to participate yet.
So I just hope that Orion Granatir and Brad Werth will be able to pay attention to this forum more often.
We still need some support here.
Thanks!
:)

http://vigroup.ru/

Koichi, I'm glad you've had some success with the multi touch messages - your approach sounds reasonable.I don't know of any other work done to support multi touch, so you'releading us allhere! As you can tell, we didn't havemulti touchin mind when we put this code together.

No, we haven't tried porting Smoke to other platforms, although there was some discussion here about how you could support OpenGL.

发表评论

登录添加评论。还不是成员?立即加入