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