Jump to content

- - - - -


4: Adsense


Part of getting ready to modify my scripting solution has been to take a look around at other scripted graphics applications, and see what they are doing well and (perhaps more importantly) what they are doing not so well. There are of course many games and engines out there that utilize Lua, so I have had a look around. I particularly was interested in the Crytek scripting solution, given how successful they have been. However, after trying to research it for a while I found that it wasn't so different than many others that I have read through. There seems to be a commonality in most of the implementations that I have seen...

So I decided to take a look at the graphics ecosystem outside of games. A while back, I had heard about the 'Processing' project which you can find here. For anyone who hasn't heard of it, it is more or less Java with some basic OpenGL wrapping and support for SVG format shapes that was designed to allow artists to begin programming. The results are actually pretty cool, and it is a neat little package to play around with.

After spending some time with the IDE, I realized why it seems so easy to use. It provides a limited number of built in functions, and lets the user simply do what they want. There is a minimum number of 'rules' that the scripter needs to follow... that seems like a great idea! Provide enough of the metal that you can get things done, but don't provide every single class to the scripting interface because a) it is much more work and b) it most likely won't get used.

So, as I progress through the next phase of my scripting upgrade, I will keep that mantra in mind - enough to make it shine, but not so much that it appears shiny [grin].

May 12 2010 11:05 AM
Bloom - my eyes the goggles do nothing :-o
May 12 2010 01:27 PM
That's an interesting point. I remember when I was poking around with Torque a bit (aaaaages ago) that wrestling with a scripting system that was made for a particular game was quite an involved and complicated thing (IMHO). A simple and non-restrictive scripting engine coupled with some powerful content tools & engine would be a real breath of fresh-air when compared to that.
May 13 2010 09:24 AM
It seems that the trick is to figure out what to expose and what not to. I have had some success in narrowing down the number of objects to expose, and in many cases I have found myself trying to recreate some of the aggregate C++ classes as aggregates of Lua objects on the scripting side. I like the Lua aggregates much better, since it is directly visible, easy to change, and can be made very data driven...

But you also need to make sure there is enough there to expose the full functionality of the engine too... it is tricky to find the balance. But that is part of the fun I guess!

Note: GameDev.net moderates comments.