Google-apps
Hoofdmenu

Post a Comment On: C0DE517E

"Live coding"

5 Comments -

1 – 5 of 5
Blogger Unknown said...

We've had a long tradition of being able to dynamically load code. Back in the days of Jak it was quite the touted feature of GOAL. Now with some finagling from SN systems we can reload .o files as well. Not quite as snappy but still much, much faster than recompiling and reloading.

All our scripts are reloadable too... provided you have enough memory ;)

June 6, 2008 at 6:12 PM

Anonymous Anonymous said...

In Unity we can reload script assemblies on the fly while the game is running as well. State of objects is serialized and restored back after reload is done. Of course if your changed script removes some variables or adds new ones, then old values will be lost and new ones will be default for those.

June 6, 2008 at 10:21 PM

Anonymous Anonymous said...

Re-loadable code is possible. We do this on PC, more complicated on Consoles. And this apply to native code and/or scripts. The idea is similar to a serialization process for data and DLL swapping for code. TiZ

June 6, 2008 at 11:58 PM

Blogger Nick said...

As Aras implied, if you design your script system for it, you can do it. It's particularly easy if you are running your own virtual machine since all aspects of execution are under your control. I prefer to include on the fly script modification in most of my engines.

June 7, 2008 at 12:46 PM

Blogger DEADC0DE said...

I like Unity. And I know that it suppports dynamic script reloading. Actually I wanted to add a link to Unity in the article, but then I forgot (sorry, my posts are always done in a rush).
But that's easier as it's only about scripts, I was hinting about the ability of doing it for native code, that's possible as TiZ says. Possible, but not easy, and not common, so I felt it was an interesting thing to blog on.

June 7, 2008 at 3:09 PM

You can use some HTML tags, such as <b>, <i>, <a>

Comment moderation has been enabled. All comments must be approved by the blog author.

You will be asked to sign in after submitting your comment.
Please prove you're not a robot