Re: Sweng-Gamedev Digest, Vol 54, Issue 1

Don Williamson <[email protected]>
Newsgroups gmane.games.devel.sweng
Message-ID <[email protected]>
> It's not clear what you mean by " completely isolated from the Unreal 
codebase" since you also mention that this uses Unreal.
> Other then that, this sounds very exciting. How did you allow hotloading of c++ code? 
esp in regards to updating structures/classes.

It's isolated in the sense that the dependency is one way: Unreal calls into the engine whereas the engine never calls back. I documented a method on-list a while back so you should easily be able to find it in the archives. You can achieve it all with a very simple library, such as:

    http://bitbucket.org/dwilliamson/reflectabit/

I've been working on a PDB version of the above on and off for the last couple of years - it really transforms the C++ language (e.g. you get a constant-time typeof operator and custom attributes). But it's not sufficiently developed to be releasable yet (and it's crunch time at the moment). But anyway, Microsoft and Sony really need to pull their finger out, step around this C++0NaN nonsense and help us out with some compiler/linker mods.





________________________________
From: "Nicholas "Indy" Ray" <[email protected]>
To: [email protected]; Don Williamson <[email protected]>
Sent: Thu, May 13, 2010 5:14:17 AM
Subject: Re: [Sweng-Gamedev] Sweng-Gamedev Digest, Vol 54, Issue 1

On Wed, May 12, 2010 at 10:17 AM, Don Williamson <[email protected]> wrote:

I did the first one for the Conviction engine, within Unreal and in C++. We built the engine from scratch and hence had very fast compile times (completely isolated from the Unreal codebase, custom windows header, DLL with minimum dependencies, etc). At one point you could load a level within UnrealEd while iterating on some C++ code, hit build and link - this would complete within 2-3 seconds - and then see your changes reloaded within another couple of seconds. If you wanted you could sit editing code for hours (changing data structures, adding/removing functions, etc) without bringing the game/editor down, maintaining the ability to step-debug it. It was stupidly powerful but not fully developed... though certainly proved that "hot-loading" C++ code changes is more than possible and rea
 lly
> should be
> the standard these days.

It's not clear what you mean by " completely isolated from the Unreal codebase" since you also mention that this uses Unreal. Other then that, this sounds very exciting. How did you allow hotloading of c++ code? esp in regards to updating structures/classes.

Indy

_______________________________________________
Sweng-Gamedev mailing list
[email protected]
http://lists.midnightryder.com/listinfo.cgi/sweng-gamedev-midnightryder.com
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.