Hi Ryan,
Yeah, That’s pretty much why I was thinking of using C# .Net with the
Mono Framework rather than port the C++ version of the engine to Mac
OS, Linux, etc. Mono seems to be fairly stable, and I’ve used it
myself a number of times for cross-platform projects between windows
and Linux. It is not perfect, but is probably the easiest solution in
terms of developing cross-platform applications without a lot of
overhead.
Plus I know that C# .Net is a fairly straight forward and simple
programming language to use. It borrows some concepts as well as the
C-Style syntax from C++, but without all the extra overhead,
complications, and headaches to go with C++. I know the moment I began
converting Genesis from C# to C++ it took quite a long time to do the
code conversions just because of all the extra little steps involved
in getting something done.
For example, in the .Net Engine I had a simple Speech class that
wrapped the SAPI 5 library Speechlib.dll. That was pretty easy to do
because the String  class automatically can convert ascii strings into
Unicode on the fly so no conversions had to be done on my part. Of
course, with C++ nothing is quite that simple.
In my C++ speech class I basically had to create a Speak() function
that wraps the SAPI library and converts a standard C-style ascii
string into Unicode before passing it to the SAPI speak function. I
can’t remember but it was a good 10 to 12 lines of code to take a
standard character string, get the length, create an Unicode string
variable of equal length, convert the string from multibite to wide
char, pass the converted string to the Unicode string variable, and
then finally give it to SAPI to speak. In my opinion that’s just a bit
ridiculous and a lot of unnecessary work just to give one of
Microsoft’s com based libraries a simple string of text. However, that
is the way it is since Windows XP on up are all heavily Unicode based
so we are stuck with doing those kinds of lengthy code conversions
from ascii to Unicode in C++. Fortunately, .Net languages using Mono
or the .Net Framework don’t have to mess with that hassle.
As far as Python goes I just don’t know. I am sort of bias towards the
language primarily because I like C-style languages like C++, C#, and
Java as I like the C-style syntax. I’ve never gotten use to Python’s
loose free style format where you just use spacing to keep track of
blocks and statements. I always get lost without some kind of comment
to tell me where a block of code ends and where a new one begins. It
is just things like that which irritate me when working with Python so
that’s not really my first choice that’s for sure.
However, as for network programming I agree that UDP would be my first
choice. To my knowledge SDL supports UDP so that’s not a big deal. I
imagine we can look at that aspect of the engine when and if we get
that far with it.
I’m glad you are excited about this project as I was beginning to
think that people weren’t that interested in it. I know that the Linux
and Mac user base is way smaller than the Windows user base, but I
thought those users would be happy to hear about an engine being aimed
at those platforms. So far response has been pretty much limited to a
couple of Mac users and a couple of programmers like yourself.
Everyone else appears not to care to much about it. It is a bit
discurraging not to have much feedback on this project.


Cheers!

---
Gamers mailing list __ Gamers@audyssey.org
If you want to leave the list, send E-mail to gamers-unsubscr...@audyssey.org.
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/gam...@audyssey.org.
If you have any questions or concerns regarding the management of the list,
please send E-mail to gamers-ow...@audyssey.org.

Reply via email to