Hi,
I am still experimenting with XAudio2 myself (the only thing I have up and
running is a menu system for my upcoming release). But if you've got any
questions, feel free to ask me ont he development list. I feel this is best,
as others will be able to benefit from the ongoing discussions as well
through the archives.
For DirectInput, well... Resources ont he Internet claim that it is just a
wrapper around the native Windows keyboard support. And this particular
keyboard support system is quite easy to use. To do it, all you have to do
is catch the WM_KEYDOWN and perhaps WM_KEYUP messages with your window
procedure and then process them as required. I, for example, update an array
of key states with the information.
Cheers!
----- Original Message -----
From: "Thomas Ward" <[email protected]>
To: "Gamers Discussion list" <[email protected]>
Sent: Friday, June 19, 2009 10:18 PM
Subject: Re: [Audyssey] creating accessible games
Hi Davy,
Yeah, I'm strongly looking at XAudio2 myself. I've read over the DirectX
documentation and have tinkered with the sample source code some too. Over
all I like the library, but I'm honestly not very familiar with it yet.
I'm wondering since you seam to have a lead on this if you would be
willing to help me with it either off list or on the game developers list.
I'm fairly certain that Mysteries of the Ancients will be my last game
written in C# using the Managed DirectX libraries. While those
technologies have served me well, the games I have created aren't bad by
any means, I'm none-the-less dissatisfied with them from a technical point
of view. For one thing Microsoft has discontinued Managed DirectX and that
is a core component in all of my current game projects. Then, you have the
issue that none of my games will run on a 64 byt processor because I don't
own a professional version of Visual C#, and I can't change the target
platform with the express version. Finally, when you consider the download
size for the .NET Framework updates, the Managed DirectX updates, etc you
end up with nearly 500 MB of additional components just to install one
game. That frankly sucks.
Anyway, I understand your opinion of using C++ for writing games
completely. Recently I have written some test game projects in C++ on my
Linux computer here, and the results are pretty conclusive. The same
application written in C++ is faster, runs smoother, and operates better
than one written in Java, Python, or in C-Sharp. Runtime languages run
much slower and use more memory in the process.
While I find doing my own garbage collection a bit of a pain, kind of like
going back to the dark ages of programming, it is none-the-less much
better for the game in the long run. When I wrote the same application in
Java the Java garbage collecter couldn't keep up. It was too slow to keep
up with everything going on. Java is and always has been designed for
standard applications, and I feel is far to clunky for fast action games.
Python was equally slow and clunky when push comes to shove. C-Sharp held
its own, was almost as fast as C++, but still requires a bunch of
dependancies to be installed and run. Not to mention the fact no native
access to core Linux components like gnome-speech that would come in handy
for an accessible game designed for Linux. All and all C++ would be my
pick based on the evidence.
As far as DirectInput verses using Windows keyboard events that is
interesting. I've always read that DirectInput was faster than using
standard Windows events for keyboards and mice. If you say is true then
I'll have to remind myself on how to recieve standard keyboard input via
Windows than DirectInput. I haven't done it in so long I've forgotten how.
Smile.
Davy Kager wrote:
Hi,
I am developing a new game title (Project Excalibur) myself, using
Unmanaged C++ and XAudio2. So I can tell that XAudio2 definitely is a
superior version of DirectSound. It is extremely flexible, fast and easy
to use once you get used to it.
As for th einput side of things, I was previously using DirectInput for
the keyboard input, but I have changed to standard Windows input
handling. These Windows messages that represent keypresses are easier to
retrieve (Windows sends them anyway), there is no seperate interface
anymore (decreased program size), the Windows input system for keyboards
seems faster than DirectInput, and Windows input allows you to get more
detailed information about the keypress. This last advantage effectively
means that you can detect if a key was previously pressed or not, which
is useful to turn key repeat off in your game title. For joystick support
you would still be best of with DirectInput as far as I can tell. But
then, I ahve never written or researched joystick support in games.
Cheers!
---
Gamers mailing list __ [email protected]
If you want to leave the list, send E-mail to
[email protected].
You can make changes or update your subscription via the web, at
http://audyssey.org/mailman/listinfo/gamers_audyssey.org.
All messages are archived and can be searched and read at
http://www.mail-archive.com/[email protected].
If you have any questions or concerns regarding the management of the
list,
please send E-mail to [email protected].
---
Gamers mailing list __ [email protected]
If you want to leave the list, send E-mail to [email protected].
You can make changes or update your subscription via the web, at
http://audyssey.org/mailman/listinfo/gamers_audyssey.org.
All messages are archived and can be searched and read at
http://www.mail-archive.com/[email protected].
If you have any questions or concerns regarding the management of the list,
please send E-mail to [email protected].