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"'times new roman', 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"><<a href=3D"mailto:[email protected]" targe= t=3D"_blank">[email protected]</a>></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"><<a href=3D"mailto:macto= [email protected]" target=3D"_blank">[email protected]</a>></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'm mostly a fan of #5 (...and don'= t think it that crazy.) Sandbox off the problem and solve it as it'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= 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'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==--