Re: Reflection in game engine (c++)

Xpol Wan <[email protected]> Fri, 15 Mar 2013 11:32:43 +0800
Newsgroups gmane.games.devel.sweng
Message-ID <CAJUe2WF0QwQD7f6sZtW2w_GEzN5r2R5ufNVCquCONnObJwwV8Q@mail.gmail.com>
--===============0005856260==
Content-Type: multipart/alternative; boundary=047d7b3a89e40c31ac04d7ee4cea

--047d7b3a89e40c31ac04d7ee4cea
Content-Type: text/plain; charset=UTF-8

To avoid 1)...5) the are really hard for me.
I prefer create mixed language game engine.
C++ for drawing and low level stuffs
and Script language (eg. Lua) as the interface to game.


Best Regards!

Xpol Wan
// There is a better way!


On Fri, Mar 15, 2013 at 10:56 AM, Will Vale <[email protected]>wrote:

> Looks interesting, I like the decoupling that approach offers.
>
> How do you manage data format updates and builds in that scenario? Are the
> DDL files something the coding team owns and updates, or are they shared
> with (technical) artists, designers etc.?
>
> Will
>
>
> On Fri, Mar 15, 2013 at 2:20 PM, Mike Acton <[email protected]> wrote:
>
>> *5) create serializable/reflected classes in a data format, then run a
>> tool that generates headers and cpps*
>>
>> I'm mostly a fan of #5 (...and don't think it that crazy.) Sandbox off
>> the problem and solve it as it's own problem rather than deeply mixed into
>> other problems (e.g. code building)
>>
>> Our solution shares a lot of similarities with protocol buffers (
>> https://code.google.com/p/protobuf/) as you'd probably expect.
>> DDL that generates a JSON schema (for UI mostly) and code (for concrete
>> structures in-game and tools) that does serialization and all that stuff.
>> We have a variety of different compilers for different things we might want
>> to generate. You can check out the core of it here if you're interested:
>> https://github.com/macton/DDLParser/
>>
>> Mike.
>>
>> _______________________________________________
>> Sweng-Gamedev mailing list
>> [email protected]
>>
>> http://lists.midnightryder.com/listinfo.cgi/sweng-gamedev-midnightryder.com
>>
>>
>
> _______________________________________________
> Sweng-Gamedev mailing list
> [email protected]
> http://lists.midnightryder.com/listinfo.cgi/sweng-gamedev-midnightryder.com
>
>

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

<div dir=3D"ltr">To avoid 1)...5) the are really hard for me.<div><div>I pr=
efer create mixed language game engine.</div><div>C++ for drawing and low l=
evel stuffs</div><div>and Script language (eg. Lua) as the interface to gam=
e.</div>

<div style><br></div></div></div><div class=3D"gmail_extra"><br clear=3D"al=
l"><div>Best Regards!<br><br>Xpol Wan<br>// There is a better way!<font fac=
e=3D"&#39;times new roman&#39;, serif"><br></font></div>
<br><br><div class=3D"gmail_quote">On Fri, Mar 15, 2013 at 10:56 AM, Will V=
ale <span dir=3D"ltr">&lt;<a href=3D"mailto:[email protected]" targe=
t=3D"_blank">[email protected]</a>&gt;</span> wrote:<br><blockquote =
class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid=
;padding-left:1ex">

<div dir=3D"ltr">Looks interesting, I like the decoupling that approach off=
ers.<div><br></div><div>How do you manage data format updates and builds in=
 that scenario? Are the DDL files something the coding team owns and update=
s, or are they shared with (technical) artists, designers etc.?<span class=
=3D"HOEnZb"><font color=3D"#888888"><div>


<br></div><div>Will</div></font></span></div></div><div class=3D"gmail_extr=
a"><br><br><div class=3D"gmail_quote"><div><div class=3D"h5">On Fri, Mar 15=
, 2013 at 2:20 PM, Mike Acton <span dir=3D"ltr">&lt;<a href=3D"mailto:macto=
[email protected]" target=3D"_blank">[email protected]</a>&gt;</span> wrote:<br>


</div></div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;bo=
rder-left:1px #ccc solid;padding-left:1ex"><div><div class=3D"h5"><span sty=
le=3D"color:rgb(34,34,34);font-size:13px;font-family:arial,sans-serif"><i>5=
) create serializable/reflected classes in a data format, then run a tool t=
hat generates headers and cpps</i></span><div>



<span style=3D"color:rgb(34,34,34);font-size:13px;font-family:arial,sans-se=
rif"><br></span></div><div><span style=3D"color:rgb(34,34,34);font-size:13p=
x;font-family:arial,sans-serif">I&#39;m mostly a fan of #5 (...and don&#39;=
t think it that crazy.) Sandbox off the problem and solve it as it&#39;s ow=
n problem rather than deeply mixed into other problems (e.g. code building)=
=C2=A0</span></div>



<div><span style=3D"color:rgb(34,34,34);font-size:13px;font-family:arial,sa=
ns-serif"><br></span></div><div><span style=3D"color:rgb(34,34,34);font-siz=
e:13px;font-family:arial,sans-serif">Our solution shares a lot of similarit=
ies with protocol buffers (</span><a href=3D"https://code.google.com/p/prot=
obuf/" target=3D"_blank">https://code.google.com/p/protobuf/</a>) as you&#3=
9;d probably expect.</div>



<div>DDL that generates a JSON schema (for UI mostly) and code (for concret=
e structures in-game and tools) that does serialization and all that stuff.=
 We have a variety of different compilers for different things we might wan=
t to generate. You can check out the core of it here if you&#39;re interest=
ed:=C2=A0<a href=3D"https://github.com/macton/DDLParser/" target=3D"_blank"=
>https://github.com/macton/DDLParser/</a>=C2=A0</div>


<span><font color=3D"#888888">
<div><br></div><div>Mike.</div>
</font></span><br></div></div><div class=3D"im">___________________________=
____________________<br>
Sweng-Gamedev mailing list<br>
<a href=3D"mailto:[email protected]" target=3D"_blank">=
[email protected]</a><br>
<a href=3D"http://lists.midnightryder.com/listinfo.cgi/sweng-gamedev-midnig=
htryder.com" target=3D"_blank">http://lists.midnightryder.com/listinfo.cgi/=
sweng-gamedev-midnightryder.com</a><br>
<br></div></blockquote></div><br></div>
<br>_______________________________________________<br>
Sweng-Gamedev mailing list<br>
<a href=3D"mailto:[email protected]">Sweng-Gamedev@list=
s.midnightryder.com</a><br>
<a href=3D"http://lists.midnightryder.com/listinfo.cgi/sweng-gamedev-midnig=
htryder.com" target=3D"_blank">http://lists.midnightryder.com/listinfo.cgi/=
sweng-gamedev-midnightryder.com</a><br>
<br></blockquote></div><br></div>

--047d7b3a89e40c31ac04d7ee4cea--

--===============0005856260==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Sweng-Gamedev mailing list
[email protected]
http://lists.midnightryder.com/listinfo.cgi/sweng-gamedev-midnightryder.com

--===============0005856260==--