Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

Dark GDK / Is C# a doable language with the SDK?

Author
Message
Alexa Too
19
Years of Service
User Offline
Joined: 21st Sep 2005
Location:
Posted: 21st Sep 2005 10:51
Also, is it better to stick with C++ for speed (i.e. non-interpreted/parsed such as managed languages)?

Any pointers in language selection are welcome (in terms of the SDK and in game programming in general).

Thanks,
Alexa
OSX Using Happy Dude
21
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 21st Sep 2005 12:47
Yes, C# wont work with DarkSDK - dont directly anyway. Best to stick to C/C++

Come to the third DarkBasic Pro Sci Fi Con - Be there and be square
Blog:http://spaces.msn.com/members/BouncyBrick/
Web Site:http://www.nicholaskingsley.co.uk
Raven
19
Years of Service
User Offline
Joined: 23rd Mar 2005
Location: Hertfordshire, England
Posted: 21st Sep 2005 16:24
DGSDK is designed to link through the .lib and header files.
For C# you'll need to exther export a class dll via C++, or use the DLLs to import all of the functions.

To be honest, C# with DirectX9 and Application Framework (provided as part of the SDK) isn't that much more difficult that using DGSDK.

Alexa Too
19
Years of Service
User Offline
Joined: 21st Sep 2005
Location:
Posted: 21st Sep 2005 16:33
Sounds like I should go with C++ for ease.

Thanks for the input guys.

Alexa
AndLabs
19
Years of Service
User Offline
Joined: 7th Dec 2004
Location:
Posted: 21st Sep 2005 22:33
And the million dollar question now is: can DGSDK be ported to C#? YES! C# was built for the .net framework, which is mostly dlls, so why not compile both the DGSDK and DirectX SDK as a dll and build a C# compiler that uses both SDKs as resources, like with the .net framework?

TGC WORKERS PLEASE READ THE ABOVE!! THAT GOES DOUBLE FOR YOU, LEE!!

For the Software You Want, AMPERSAND LABORATORIES is the place!

OSX Using Happy Dude
21
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 21st Sep 2005 22:40
Doubt Lee has any intention of converting it to C# - there is no need to anyway.

Come to the third DarkBasic Pro Sci Fi Con - Be there and be square
Blog:http://spaces.msn.com/members/BouncyBrick/
Web Site:http://www.nicholaskingsley.co.uk
IanM
Retired Moderator
22
Years of Service
User Offline
Joined: 11th Sep 2002
Location: In my moon base
Posted: 21st Sep 2005 23:46
Quote: "can DGSDK be ported to C#? YES!"


That is 100% correct, but let's take a closer look ...

It took around 6 man-years (probably) to get DBPro and DSDK to this stage ... now you want the guys to port to a completely different language? Let's just assume that it'll take half that time to port - 3 man-years, divided by the two primary coders, makes a year-and-a half... Assuming that they spend no more time on FPSC, bug fixes, or new functionality.

Strike 1.

It's enough work to keep the current single-language implementation maintained, so you also want to double their workload once they do have it running under another language.

Strike 2.

With these commands compiled into DLL, the DLLs would need to be distributed with any game you ship. If they are .NET, that opens them up to anyone being able to use them without having bought the product. If you read the license agreement, you'll see that this is specifically covered, and is not allowed, probably for this very reason.

Strike 3 - you're outa here

For free Plug-ins and source code http://www.matrix1.demon.co.uk
AndLabs
19
Years of Service
User Offline
Joined: 7th Dec 2004
Location:
Posted: 22nd Sep 2005 22:37
OK:

So? C# is C++ made easy, so it is easier to port to C# than, say, Euphoria.

Rebuttal 1.

Compile the original code as DLLs and build a C# compiler especially for those dlls, like TGC built the DBPro compiler.

Rebuttal 2.

If you build your own C# compiler to build programs for your own .dll framework, there is no need to include .net

Rebuttal 3 - I'm still in.

For the Software You Want, AMPERSAND LABORATORIES is the place!

OSX Using Happy Dude
21
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 22nd Sep 2005 23:17 Edited at: 22nd Sep 2005 23:18
It still takes time... Plus each user would have to make sure .Net is installed.

It just wont happen.

Come to the third DarkBasic Pro Sci Fi Con - Be there and be square
Blog:http://spaces.msn.com/members/BouncyBrick/
Web Site:http://www.nicholaskingsley.co.uk
AndLabs
19
Years of Service
User Offline
Joined: 7th Dec 2004
Location:
Posted: 22nd Sep 2005 23:23 Edited at: 22nd Sep 2005 23:24
Yes, it will take time, but about the it just won't happen part:

Wrong, wrong, WRONG! You are concered with "C# is for .net" while the fact is "Visual C# is for .net, but C# can be ported, just like any other similar language." Unless Microsoft copyrighted C# so that one could not make a custom compiler for it (which I think absurd), go make a C# compiler that does NOT use .net, but compiles for another DLL! If you want, I can show an example, but I will need a long post.

For the Software You Want, AMPERSAND LABORATORIES is the place!

OSX Using Happy Dude
21
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 22nd Sep 2005 23:29 Edited at: 22nd Sep 2005 23:31
Quote: "Wrong, wrong, WRONG!"

Wrong, wrong, wrong! Do you expect Lee to start learning C# any time soon ? There is quite a big difference...

Didn't know C# could be ported. Very nice of Microsoft to let us...

Come to the third DarkBasic Pro Sci Fi Con - Be there and be square
Blog:http://spaces.msn.com/members/BouncyBrick/
Web Site:http://www.nicholaskingsley.co.uk
AndLabs
19
Years of Service
User Offline
Joined: 7th Dec 2004
Location:
Posted: 23rd Sep 2005 00:55
C# is simple to learn because it is an offset of C++.

Here is an example.

Let's say you wrote a DLL in C++:



If you use a C++ compiler, you can compile that to a DLL.

Now all you need to do is build a C# compiler that compiles the application and expects the DLL in the system folder. That is frameworking!

For the Software You Want, AMPERSAND LABORATORIES is the place!

AndLabs
19
Years of Service
User Offline
Joined: 7th Dec 2004
Location:
Posted: 23rd Sep 2005 00:57
PS - A good namespace for that DLL would be the DLL's filename minus the extnsions. So if the DLL is "easycon.dll", then your C# program would use this command:



This way, one would not have to use easycom.WriteLn(); .

For the Software You Want, AMPERSAND LABORATORIES is the place!

AndLabs
19
Years of Service
User Offline
Joined: 7th Dec 2004
Location:
Posted: 23rd Sep 2005 00:57
PSS - I am Pietro Gagliardi.

For the Software You Want, AMPERSAND LABORATORIES is the place!

OSX Using Happy Dude
21
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 23rd Sep 2005 00:58
And you expect Lee to do that ???
Why not convert DBPro to a Mac and Linux while he's at it?

Come to the third DarkBasic Pro Sci Fi Con - Be there and be square
Blog:http://spaces.msn.com/members/BouncyBrick/
Web Site:http://www.nicholaskingsley.co.uk
IanM
Retired Moderator
22
Years of Service
User Offline
Joined: 11th Sep 2002
Location: In my moon base
Posted: 23rd Sep 2005 01:13 Edited at: 23rd Sep 2005 01:16
Quote: "So? C# is C++ made easy, so it is easier to port to C# than, say, Euphoria."


Yep, that's why I said it'd take half the time.

If it's so easy to convert C++ code to C#, then it must be just as easy for *you* to write in C++ in the first place. After all, C# is a simplified version of C++, right?

Quote: "Compile the original code as DLLs and build a C# compiler especially for those dlls, like TGC built the DBPro compiler."


So now they've got to build a new compiler too huh? How many man-years will be required to reproduce the C# compiler? *YOU* haven't even built the compiler you were designing yet, but you expect TGC to do this.

Before you suggest it, TGC can't take the compiler from the Mono project either - that's GPL code, and would mean that TGC would need to ship source code for their version of the compiler on request - once GPL, always GPL.

Quote: "If you build your own C# compiler to build programs for your own .dll framework, there is no need to include .net"


So you also expect them to design and build a new library format too, and just for fun, make it totally incompatible with the official C#?

Please, think it though, huh? Just a little?

[EDIT]
I've just realised nick - You're the one for sarcasm, so why am I having to do your job for you?

For free Plug-ins and source code http://www.matrix1.demon.co.uk
scooby bloke
20
Years of Service
User Offline
Joined: 4th Nov 2004
Location:
Posted: 23rd Sep 2005 12:43
c# is slower than c++. Not really what you want when making games. It's mainly to do with the automatic memory management / garbage collection etc. You can write much faster code in c++, it just looks more complicated because you have to do everything yourself...
OSX Using Happy Dude
21
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 23rd Sep 2005 13:09 Edited at: 23rd Sep 2005 16:52
Quote: "I've just realised nick - You're the one for sarcasm, so why am I having to do your job for you?"

Because late at night you want easy reading sarcasm, not the full action version

Come to the third DarkBasic Pro Sci Fi Con - Be there and be square
Blog:http://spaces.msn.com/members/BouncyBrick/
Web Site:http://www.nicholaskingsley.co.uk
AndLabs
19
Years of Service
User Offline
Joined: 7th Dec 2004
Location:
Posted: 23rd Sep 2005 22:05
Errrr!

Since the DGSDK libraries are written in C++, all they have to do is compile them to DLLs! C# is simplified, but it is 100% object-oriented. I was just throwing an idea around.

If you are still interested, here is a little C# code that you might like to see that implements the library I made.



For the Software You Want, AMPERSAND LABORATORIES is the place!

AndLabs
19
Years of Service
User Offline
Joined: 7th Dec 2004
Location:
Posted: 23rd Sep 2005 22:06
And I don't build compilers, but I plan to. Check my "How To Make a Compiler Easy" thread if you want to help me by giving me a suggestion.

For the Software You Want, AMPERSAND LABORATORIES is the place!

IanM
Retired Moderator
22
Years of Service
User Offline
Joined: 11th Sep 2002
Location: In my moon base
Posted: 24th Sep 2005 00:10
1. DSDK is 100% not object orientated.

2. .NET DLLs are not standard DLLs, and it would take time to convert the code over to fit the .NET standard. The alternative would be to write a .NET wrapper that would call a DSDK DLL, and that would probably take more time to do it thast way.

3. Shipping DLLs means that anyone can use them. You probably haven't been around long enough to remember, but I wrote an interface library for DBPro plugin writers that allowed you to call the DBPro command functions from your own plugins, and the hardest part was automating the generation of the code, not producing the code.

One last statement, then I'm done with this thread : IT'S NOT GONNA HAPPEN.

For free Plug-ins and source code http://www.matrix1.demon.co.uk
Alexa Too
19
Years of Service
User Offline
Joined: 21st Sep 2005
Location:
Posted: 24th Sep 2005 01:09
Wow. I step away for a day and all heck breaks loose!

Alexa
AndLabs
19
Years of Service
User Offline
Joined: 7th Dec 2004
Location:
Posted: 24th Sep 2005 01:27
OK, I'm cool with that.

For the Software You Want, AMPERSAND LABORATORIES is the place!

OSX Using Happy Dude
21
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 24th Sep 2005 01:51
Quote: " OK, I'm cool with that."

Good to hear!

Quote: " Wow. I step away for a day and all heck breaks loose!"

You should see what happens when someone makes a spelling mistake...

Come to the third DarkBasic Pro Sci Fi Con - Be there and be square
Blog:http://spaces.msn.com/members/BouncyBrick/
Web Site:http://www.nicholaskingsley.co.uk
Cellbloc Studios
20
Years of Service
User Offline
Joined: 15th Mar 2004
Location: Atlanta, GA
Posted: 25th Sep 2005 11:34
All you need for spelling mistakes is to look at just about any posting in the FPSC Forums! It's like I walked into a kindergarten class!

-This...is my boomstick!

Login to post a reply

Server time is: 2024-11-19 02:33:39
Your offset time is: 2024-11-19 02:33:39