www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - SteamOS, games programming, and D

reply Joseph Rushton Wakeling <joseph.wakeling webdrake.net> writes:
Hello all,

So, what with the new SteamOS/SteamBox announcement ...

http://store.steampowered.com/livingroom/SteamOS/
http://store.steampowered.com/livingroom/SteamMachines/

... is this a serious opportunity for D to start carving out space in the games 
industry?  What issues need to be addressed for D to be a superb games 
development tool for Linux?

Best wishes,

     -- Joe
Sep 27 2013
next sibling parent "Dicebot" <public dicebot.lv> writes:
On Friday, 27 September 2013 at 14:43:06 UTC, Joseph Rushton 
Wakeling wrote:
 Hello all,

 So, what with the new SteamOS/SteamBox announcement ...

 http://store.steampowered.com/livingroom/SteamOS/
 http://store.steampowered.com/livingroom/SteamMachines/

 ... is this a serious opportunity for D to start carving out 
 space in the games industry?  What issues need to be addressed 
 for D to be a superb games development tool for Linux?

 Best wishes,

     -- Joe

Sounds more like a serious opportunity for D to get a good debugger :D I doubt that core D issues for game dev are much different in Linux than in Windows.
Sep 27 2013
prev sibling next sibling parent reply Paulo Pinto <pjmlp progtools.org> writes:
Am 27.09.2013 16:43, schrieb Joseph Rushton Wakeling:
 Hello all,

 So, what with the new SteamOS/SteamBox announcement ...

 http://store.steampowered.com/livingroom/SteamOS/
 http://store.steampowered.com/livingroom/SteamMachines/

 ... is this a serious opportunity for D to start carving out space in
 the games industry?  What issues need to be addressed for D to be a
 superb games development tool for Linux?

 Best wishes,

      -- Joe

Be better than Unity.
Sep 27 2013
parent Paulo Pinto <pjmlp progtools.org> writes:
Am 28.09.2013 15:22, schrieb deadalnix:
 On Friday, 27 September 2013 at 15:36:28 UTC, Joseph Rushton Wakeling
 wrote:
 On 27/09/13 17:27, Paulo Pinto wrote:
 Be better than Unity.

I take it you mean Unity3D the game engine, and not Unity the desktop environment <stirs the evil pot ... /> :-P

Being better than the first one is a real challenge. Being better than the second one really isn't :D

Actually the second one is my default GUI when I am on Ubuntu. I think I used most window managers and desktop environments in UNIX land since twm. Nowadays I no longer have the patient to play with them, just use whatever is the default one. As long as I can get my applications, I am alright. -- Paulo
Sep 28 2013
prev sibling next sibling parent Joseph Rushton Wakeling <joseph.wakeling webdrake.net> writes:
On 27/09/13 17:27, Paulo Pinto wrote:
 Be better than Unity.

I take it you mean Unity3D the game engine, and not Unity the desktop environment <stirs the evil pot ... /> :-P
Sep 27 2013
prev sibling next sibling parent reply "evilrat" <evilrat666 gmail.com> writes:
On Friday, 27 September 2013 at 14:43:06 UTC, Joseph Rushton 
Wakeling wrote:
 Hello all,

 So, what with the new SteamOS/SteamBox announcement ...

 http://store.steampowered.com/livingroom/SteamOS/
 http://store.steampowered.com/livingroom/SteamMachines/

 ... is this a serious opportunity for D to start carving out 
 space in the games industry?  What issues need to be addressed 
 for D to be a superb games development tool for Linux?

 Best wishes,

     -- Joe

what serious game engine could go without dynamic libs? add to this existing tools(debuggers/IDE's) problems and you already where you started, no one would bother doing something real for full time... that is the sad truth about current D state.
Sep 27 2013
parent reply Paulo Pinto <pjmlp progtools.org> writes:
Am 27.09.2013 18:02, schrieb Kapps:
 On Friday, 27 September 2013 at 15:50:48 UTC, evilrat wrote:
 On Friday, 27 September 2013 at 14:43:06 UTC, Joseph Rushton Wakeling
 wrote:
 Hello all,

 So, what with the new SteamOS/SteamBox announcement ...

 http://store.steampowered.com/livingroom/SteamOS/
 http://store.steampowered.com/livingroom/SteamMachines/

 ... is this a serious opportunity for D to start carving out space in
 the games industry?  What issues need to be addressed for D to be a
 superb games development tool for Linux?

 Best wishes,

    -- Joe

what serious game engine could go without dynamic libs? add to this existing tools(debuggers/IDE's) problems and you already where you started, no one would bother doing something real for full time... that is the sad truth about current D state.

The next version of DMD will support dynamic loading of C / D libraries on Linux I believe.

I was being a bit polemic on purpose when I referred Unity, but the thing is D has C# against it, at least in two fronts already. Unity with all this cool stuff, http://unity3d.com/unite/archive/2013 PS Vita Suite, http://develop.scee.net/files/presentations/jordan2012/2012-Jordan%20Game%20Summit-PlayStation%20Mobile.pdf Here in Germany, quite a few indie studios are already making heavy use of C# in their tooling and prototypes. As I get to read in the Making Games German magazine. -- Paulo
Sep 27 2013
parent Mike Parker <aldacron gmail.com> writes:
On 9/28/2013 8:55 AM, Klaim - Joël Lamotte wrote:
   2. SteamWorks API compatibility: it's required for Steam, if I
 understand correctly, so you'll need to make sure it's possible to use
 SteamWorks library from D. I think it's all C but not sure.

There's already been one D game released on Steam that IIRC bound the SteamWorks library without issue. And that was in D1.
Sep 27 2013
prev sibling next sibling parent "Kapps" <opantm2+spam gmail.com> writes:
On Friday, 27 September 2013 at 15:50:48 UTC, evilrat wrote:
 On Friday, 27 September 2013 at 14:43:06 UTC, Joseph Rushton 
 Wakeling wrote:
 Hello all,

 So, what with the new SteamOS/SteamBox announcement ...

 http://store.steampowered.com/livingroom/SteamOS/
 http://store.steampowered.com/livingroom/SteamMachines/

 ... is this a serious opportunity for D to start carving out 
 space in the games industry?  What issues need to be addressed 
 for D to be a superb games development tool for Linux?

 Best wishes,

    -- Joe

what serious game engine could go without dynamic libs? add to this existing tools(debuggers/IDE's) problems and you already where you started, no one would bother doing something real for full time... that is the sad truth about current D state.

The next version of DMD will support dynamic loading of C / D libraries on Linux I believe.
Sep 27 2013
prev sibling next sibling parent =?UTF-8?Q?Klaim_=2D_Jo=C3=ABl_Lamotte?= <mjklaim gmail.com> writes:
--001a11c3fe90b6a90f04e76639e5
Content-Type: text/plain; charset=UTF-8

A Unity-like or D implementation of Unity would be cool but really D on
SteamOS needs 2 things:

 1. stable engines for each part of a game-specific engine: I'm making a
game right now that really can't be developped using Unity without totally
fightining it
     so I use a combination of Ogre, RakNet etc. If I had a choice of
composition of libraries to setup my game in D, I would have tried D. (even
if the gc scares me frankly)
 2. SteamWorks API compatibility: it's required for Steam, if I understand
correctly, so you'll need to make sure it's possible to use SteamWorks
library from D. I think it's all C but not sure.

--001a11c3fe90b6a90f04e76639e5
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">A Unity-like or D implementation of Unity would be cool bu=
t really D on SteamOS needs 2 things:<div><br></div><div>=C2=A01. stable en=
gines for each part of a game-specific engine: I&#39;m making a game right =
now that really can&#39;t be developped using Unity without totally fightin=
ing it<br>
=C2=A0 =C2=A0 =C2=A0so I use a combination of Ogre, RakNet etc. If I had a =
choice of composition of libraries to setup my game in D, I would have trie=
d D. (even if the gc scares me frankly)</div><div>=C2=A02. SteamWorks API c=
ompatibility: it&#39;s required for Steam, if I understand correctly, so yo=
u&#39;ll need to make sure it&#39;s possible to use SteamWorks library from=
 D. I think it&#39;s all C but not sure.</div>
<div><br></div></div>

--001a11c3fe90b6a90f04e76639e5--
Sep 27 2013
prev sibling next sibling parent "Jakob Ovrum" <jakobovrum gmail.com> writes:
On Friday, 27 September 2013 at 23:56:00 UTC, Klaim - Joël 
Lamotte wrote:
  2. SteamWorks API compatibility: it's required for Steam, if I 
 understand
 correctly, so you'll need to make sure it's possible to use 
 SteamWorks
 library from D. I think it's all C but not sure.

SteamWorks and the Source SDK both mostly consist of pure virtual interfaces, implementations of which can be fetched through C factory functions. Even with D's currently limited C++ interoperability features, these APIs are remarkably bindable.
Sep 27 2013
prev sibling next sibling parent reply Benjamin Thaut <code benjamin-thaut.de> writes:
Am 27.09.2013 16:43, schrieb Joseph Rushton Wakeling:
 Hello all,

 So, what with the new SteamOS/SteamBox announcement ...

 http://store.steampowered.com/livingroom/SteamOS/
 http://store.steampowered.com/livingroom/SteamMachines/

 ... is this a serious opportunity for D to start carving out space in
 the games industry?  What issues need to be addressed for D to be a
 superb games development tool for Linux?

 Best wishes,

      -- Joe

Really good and easy to setup C++ interoperability. I recently brought up D at the company I work at (Havok) and basically the response was: Looks really nice but as everyone else is using C++ we won't start using D unless other people are already using D. So to get things started teams that want to use D need a easy way to use existing C++ engines and libraries. Also a graphical debugger is usually the base requirement for gamedev. Kind Regards Benjamin Thaut
Sep 28 2013
parent Benjamin Thaut <code benjamin-thaut.de> writes:
Am 28.09.2013 12:06, schrieb evilrat:
 On Saturday, 28 September 2013 at 08:25:22 UTC, Benjamin Thaut wrote:
 Am 27.09.2013 16:43, schrieb Joseph Rushton Wakeling:

 Also a graphical debugger is usually the base requirement for gamedev.

 Kind Regards
 Benjamin Thaut

u mean debugger with GUI or just directx/opengl debugger? for second one can use any existing ones, all works fine with D. as for GUI debugger, IMHO the best one is visuald plugin.

Graphical debugger means something like the visual studio debugger. I use VisualD but it is not quite there yet. There a still numerous issues left where the debugger doesn't work / displays wrong values etc. DirectX/OpenGL debuggers are usually external tools, so this is not an issue. -- Kind Regards Benjamin Thaut
Sep 28 2013
prev sibling next sibling parent "evilrat" <evilrat666 gmail.com> writes:
On Saturday, 28 September 2013 at 08:25:22 UTC, Benjamin Thaut 
wrote:
 Am 27.09.2013 16:43, schrieb Joseph Rushton Wakeling:

 Also a graphical debugger is usually the base requirement for 
 gamedev.

 Kind Regards
 Benjamin Thaut

u mean debugger with GUI or just directx/opengl debugger? for second one can use any existing ones, all works fine with D. as for GUI debugger, IMHO the best one is visuald plugin.
Sep 28 2013
prev sibling next sibling parent "Froglegs" <barf barf.com> writes:
1. Easy C++ interop(don't want to write C wrappers)
2. An awesome IDE(visual D is not there yet) comparable to Visual 
C++ w/ Visual Assist
3. none buggy language implementation
4. Easy to disable GC without breaking everything
Sep 28 2013
prev sibling next sibling parent "deadalnix" <deadalnix gmail.com> writes:
On Friday, 27 September 2013 at 15:36:28 UTC, Joseph Rushton 
Wakeling wrote:
 On 27/09/13 17:27, Paulo Pinto wrote:
 Be better than Unity.

I take it you mean Unity3D the game engine, and not Unity the desktop environment <stirs the evil pot ... /> :-P

Being better than the first one is a real challenge. Being better than the second one really isn't :D
Sep 28 2013
prev sibling next sibling parent Manu <turkeyman gmail.com> writes:
--e89a8ff1cefebc159904e781c657
Content-Type: text/plain; charset=UTF-8

On 29 September 2013 01:20, Benjamin Thaut <code benjamin-thaut.de> wrote:

 Am 28.09.2013 12:06, schrieb evilrat:

  On Saturday, 28 September 2013 at 08:25:22 UTC, Benjamin Thaut wrote:
 Am 27.09.2013 16:43, schrieb Joseph Rushton Wakeling:

 Also a graphical debugger is usually the base requirement for gamedev.

 Kind Regards
 Benjamin Thaut

u mean debugger with GUI or just directx/opengl debugger? for second one can use any existing ones, all works fine with D. as for GUI debugger, IMHO the best one is visuald plugin.

Graphical debugger means something like the visual studio debugger. I use VisualD but it is not quite there yet. There a still numerous issues left where the debugger doesn't work / displays wrong values etc. DirectX/OpenGL debuggers are usually external tools, so this is not an issue.

I've had gDebugger working on Linux, and it works fairly well. It's not quite PIX, but it's definitely useful. It doesn't seem to have shader debugging, but it does have a feature where you can edit the shader at runtime and see it's effect immediately, and you can use that to help isolate shader bugs. --e89a8ff1cefebc159904e781c657 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr">On 29 September 2013 01:20, Benjamin Thaut <span dir=3D"lt= r">&lt;<a href=3D"mailto:code benjamin-thaut.de" target=3D"_blank">code ben= jamin-thaut.de</a>&gt;</span> wrote:<br><div class=3D"gmail_extra"><div cla= ss=3D"gmail_quote"> <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p= x #ccc solid;padding-left:1ex">Am 28.09.2013 12:06, schrieb evilrat:<div><d= iv class=3D"h5"><br> <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p= x #ccc solid;padding-left:1ex"> On Saturday, 28 September 2013 at 08:25:22 UTC, Benjamin Thaut wrote:<br> <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p= x #ccc solid;padding-left:1ex"> Am 27.09.2013 16:43, schrieb Joseph Rushton Wakeling:<br> <br> Also a graphical debugger is usually the base requirement for gamedev.<br> <br> Kind Regards<br> Benjamin Thaut<br> </blockquote> <br> u mean debugger with GUI or just directx/opengl debugger? for second one<br=

IMHO the best one is visuald plugin.<br> </blockquote> <br></div></div> Graphical debugger means something like the visual studio debugger. I use V= isualD but it is not quite there yet. There a still numerous issues left wh= ere the debugger doesn&#39;t work / displays wrong values etc.<br> <br> DirectX/OpenGL debuggers are usually external tools, so this is not an issu= e.</blockquote><div><br></div><div>I&#39;ve had gDebugger working on Linux,= and it works fairly well.</div><div>It&#39;s not quite PIX, but it&#39;s d= efinitely useful. It doesn&#39;t seem to have shader debugging, but it does= have a feature where you can edit the shader at runtime and see it&#39;s e= ffect immediately, and you can use that to help isolate shader bugs.</div> </div></div></div> --e89a8ff1cefebc159904e781c657--
Sep 29 2013
prev sibling next sibling parent "Joseph Rushton Wakeling" <joseph.wakeling webdrake.net> writes:
On Saturday, 28 September 2013 at 13:27:16 UTC, Paulo Pinto wrote:
 Am 28.09.2013 15:22, schrieb deadalnix:
 On Friday, 27 September 2013 at 15:36:28 UTC, Joseph Rushton 
 Wakeling
 wrote:
 On 27/09/13 17:27, Paulo Pinto wrote:
 Be better than Unity.

I take it you mean Unity3D the game engine, and not Unity the desktop environment <stirs the evil pot ... /> :-P

Being better than the first one is a real challenge. Being better than the second one really isn't :D

Actually the second one is my default GUI when I am on Ubuntu.

You're missing a bit of history here. Deadalnix is The Only Person In The Universe Who Genuinely Likes Gnome 3.0. I am The Only Person In The Universe Who Genuinely Likes Unity. Therefore, since we discovered this, it is essential for the health and well-being of humanity that we keep joshing each other about it. ;-)
Sep 29 2013
prev sibling next sibling parent "Dicebot" <public dicebot.lv> writes:
On Sunday, 29 September 2013 at 18:48:52 UTC, Joseph Rushton 
Wakeling wrote:
 You're missing a bit of history here.  Deadalnix is The Only 
 Person In The Universe Who Genuinely Likes Gnome 3.0.  I am The 
 Only Person In The Universe Who Genuinely Likes Unity.

He is not alone ;)
Sep 29 2013
prev sibling next sibling parent Jonathan M Davis <jmdavisProg gmx.com> writes:
On Sunday, September 29, 2013 21:02:33 Dicebot wrote:
 On Sunday, 29 September 2013 at 18:48:52 UTC, Joseph Rushton
 
 Wakeling wrote:
 You're missing a bit of history here.  Deadalnix is The Only
 Person In The Universe Who Genuinely Likes Gnome 3.0.  I am The
 Only Person In The Universe Who Genuinely Likes Unity.

He is not alone ;)

Well, there _are_ the lunatics who developed it... ;) - Jonathan M Davis
Sep 29 2013
prev sibling next sibling parent "evilrat" <evilrat666 gmail.com> writes:
On Monday, 30 September 2013 at 04:40:41 UTC, Jonathan M Davis 
wrote:
 On Sunday, September 29, 2013 21:02:33 Dicebot wrote:
 On Sunday, 29 September 2013 at 18:48:52 UTC, Joseph Rushton
 
 Wakeling wrote:
 You're missing a bit of history here.  Deadalnix is The Only
 Person In The Universe Who Genuinely Likes Gnome 3.0.  I am 
 The
 Only Person In The Universe Who Genuinely Likes Unity.

He is not alone ;)

Well, there _are_ the lunatics who developed it... ;) - Jonathan M Davis

but what if it's just someone's perverted joke to torture people... O_o
Sep 29 2013
prev sibling parent Nick Sabalausky <SeeWebsiteToContactMe semitwist.com> writes:
On Mon, 30 Sep 2013 06:46:31 +0200
"evilrat" <evilrat666 gmail.com> wrote:

 On Monday, 30 September 2013 at 04:40:41 UTC, Jonathan M Davis 
 wrote:
 On Sunday, September 29, 2013 21:02:33 Dicebot wrote:
 On Sunday, 29 September 2013 at 18:48:52 UTC, Joseph Rushton
 
 Wakeling wrote:
 You're missing a bit of history here.  Deadalnix is The Only
 Person In The Universe Who Genuinely Likes Gnome 3.0.  I am 
 The
 Only Person In The Universe Who Genuinely Likes Unity.

He is not alone ;)

Well, there _are_ the lunatics who developed it... ;) - Jonathan M Davis

but what if it's just someone's perverted joke to torture people... O_o

Nah, that's Win8 ;)
Sep 29 2013